992 Commits

Author SHA1 Message Date
Juan Cruz Viotti
bad9500bc6 Add missin param annotation caught by JSCS 2016-01-31 21:15:40 -04:00
Juan Cruz Viotti
826710950d Merge pull request #134 from resin-io/refactor/track
Move TrackJS integration to a separate Angular module
2016-01-26 12:04:13 -04:00
Juan Cruz Viotti
bf63f1ac26 Merge pull request #135 from resin-io/refactor/drive-scanner-every
Inline DriveScannerRefreshService in DriveScannerService
2016-01-26 12:04:05 -04:00
Juan Cruz Viotti
4cf9ea70a5 Inline DriveScannerRefreshService in DriveScannerService
No need for this extra level of abstraction.
2016-01-26 10:27:29 -04:00
Juan Cruz Viotti
fd86807f86 Move TrackJS integration to a separate Angular module 2016-01-26 10:21:47 -04:00
Juan Cruz Viotti
cc5d6456b8 Prevent click events on disable buttons
For some reasons, despite being disabled, buttons still call the action
defined as `ngClick`. In the case of the burn progress button, this
results in:

```sh
TypeError: Cannot read property 'device' of undefined
```

Fixes: https://github.com/resin-io/etcher/issues/132
2016-01-26 08:40:43 -04:00
Juan Cruz Viotti
9de813f8cf Remove unused variables caught by jshint 2016-01-24 19:26:32 -04:00
Juan Cruz Viotti
f88bb3a31a Rename project to Etcher 2016-01-24 17:40:45 -04:00
Juan Cruz Viotti
03e9b977cb Prevent pointer events in hero-progress-button if active is true
Fixes: https://github.com/resin-io/resin-etcher/issues/121
2016-01-22 13:10:21 -04:00
Juan Cruz Viotti
111529ee71 Fix sporadic Cannot read property 'then' of undefined
This error happened when trying to burn an image when there is already a
burn in progress.

Fixes: https://github.com/resin-io/resin-etcher/issues/96
2016-01-22 13:10:13 -04:00
Juan Cruz Viotti
9d68199ecd Merge pull request #119 from resin-io/refactor/state-log-app
Move burn state log to app controller
2016-01-22 12:48:31 -04:00
Juan Cruz Viotti
84d87e5a10 Move burn state log to app controller
This change required re-architecting the way we store the burn state.
2016-01-22 12:30:42 -04:00
Juan Cruz Viotti
1faa631f89 Use Bluebird's filter to simplify listRemovable() 2016-01-22 11:55:01 -04:00
Juan Cruz Viotti
9026e6ce2d Merge pull request #117 from resin-io/refactor/es6
Make use of ES6 in Etcher
2016-01-22 11:52:52 -04:00
Juan Cruz Viotti
30fc989c86 Merge pull request #116 from resin-io/feat/trackjs-npm
Install TrackJS from NPM
2016-01-22 11:40:02 -04:00
Juan Cruz Viotti
122f136ff8 Refactor Etcher using ES6 features 2016-01-22 11:38:46 -04:00
Juan Cruz Viotti
f7ddce3000 Enable ES6 in JSHint
- Also rename `Promise` to `Bluebird` since now JSHint complains that
`Promise` is already defined.
2016-01-22 10:53:16 -04:00
Juan Cruz Viotti
d2e3c3106e Install TrackJS from NPM
See https://www.npmjs.com/package/trackjs
2016-01-22 10:48:02 -04:00
Juan Cruz Viotti
573d237569 Convert angular.scss and desktop.scss to plain CSS files
These are files that contain static rules that are not likely change nor
require the advanced functionality that SASS requires.

This is the first step towards an attempt to get rid of preprocessor and
use native supported web technologies.
2016-01-22 10:40:05 -04:00
Juan Cruz Viotti
13af009b4c Fix style issues detected by JSCS 2016-01-22 10:25:33 -04:00
Juan Cruz Viotti
34b7bdb59f Move LoggerService timestamp to $log decorator 2016-01-22 10:17:18 -04:00
Juan Cruz Viotti
efb055eb89 Upgrade Electron to v0.36.4 2016-01-22 09:37:57 -04:00
Juan Cruz Viotti
96bf7f3624 Get rid of Browserify
Electron already exposes `require()` in the renderer process.
2016-01-21 23:57:04 -04:00
Juan Cruz Viotti
a50a07a233 Merge pull request #104 from resin-io/feat/trackjs
Integrate Etcher with TrackJS
2016-01-20 16:38:45 -04:00
Federico Martín Alconada Verzini
6331ee4aa1 Add button to burn the same image again. Fixes #74 2016-01-20 12:28:15 -04:00
Juan Cruz Viotti
9a125c2a36 Integrate Etcher with TrackJS 2016-01-19 14:00:20 -04:00
Juan Cruz Viotti
1f3baf3f4d Merge pull request #103 from resin-io/feat/-logger
Make LoggerService use Angular's $log
2016-01-19 10:39:55 -04:00
Juan Cruz Viotti
4ab2dc1948 Merge pull request #102 from resin-io/fix/use-logger-service
Make use of LoggerService in reselection routines
2016-01-19 10:31:35 -04:00
Juan Cruz Viotti
26f2104163 Merge pull request #101 from resin-io/doc/ng-cloak
Explain why we toggle body's display manually instead of using ngCloak
2016-01-19 10:27:45 -04:00
Juan Cruz Viotti
238c459d01 Make LoggerService use Angular's $log
This has the added benefit that services like TrackJS, which deeply
integrate with Angular, will share the messages with the service.
2016-01-19 10:26:51 -04:00
Juan Cruz Viotti
7d6a43e091 Make use of LoggerService in reselection routines 2016-01-19 10:25:13 -04:00
Juan Cruz Viotti
f20fb36328 Merge pull request #100 from resin-io/feat/logger
Implement a decent debug logger service
2016-01-19 10:16:33 -04:00
Juan Cruz Viotti
817a6f591b Explain why we toggle body's display manually instead of using ngCloak 2016-01-19 10:14:37 -04:00
Juan Cruz Viotti
f1a91ddebc Merge pull request #99 from resin-io/style/image-supported-label
Only show supported files label when there is no selected image
2016-01-19 10:08:49 -04:00
Juan Cruz Viotti
6478982896 Implement a decent debug logger service
This service prints the exact date and time of the messages.
2016-01-19 10:07:59 -04:00
Juan Cruz Viotti
347d965e52 Only show supported files label when there is no selected image 2016-01-19 09:50:00 -04:00
Juan Cruz Viotti
8026cef1df Allow to re-select the first two step selections
You can click on the selected image/drive label to select them again.

The re-selection is disabled if there is a burning in process.

Fixes: https://github.com/resin-io/resin-etcher/issues/90
2016-01-19 09:47:58 -04:00
Juan Cruz Viotti
b3dde83083 Implement removeDrive and removeImage in selection service 2016-01-19 09:42:57 -04:00
Juan Cruz Viotti
2f301ad382 Add image format footer explanation
Fixes: https://github.com/resin-io/resin-etcher/issues/86
2016-01-18 15:35:40 -04:00
Juan Cruz Viotti
9dcc7b40ac Merge pull request #95 from resin-io/fix/window-lint-warn
Require electron-window as ElectronWindow
2016-01-18 15:29:32 -04:00
Juan Cruz Viotti
7f724b6295 Show burn speed information during write
The speed is shown right below the Burn button.
2016-01-18 14:55:13 -04:00
Juan Cruz Viotti
cf41b6279d Save burn progress speed in image writer state 2016-01-18 14:55:13 -04:00
Juan Cruz Viotti
d9641fc557 Rename setProgress to setProgressState
It shows the intention more clearly now that the function not only
accepts a plain percentage.
2016-01-18 14:55:13 -04:00
Juan Cruz Viotti
a46a716512 Make setProgress accept an options object
This allows us to pass more things than just the percentage to
`setProgress`.
2016-01-18 14:55:13 -04:00
Juan Cruz Viotti
e30de45707 Implement ImageWriterService.reset()
This function allows the client to easily reset the progress state
without breaking encapsulation.
2016-01-18 14:55:13 -04:00
Juan Cruz Viotti
3705d0fc3a Namespace ImageWriter progress in state object
This change allows us to scale the state information to more properties
than just the percentage.
2016-01-18 14:55:13 -04:00
Juan Cruz Viotti
6a50015ddc Require electron-window as ElectronWindow
JSHint complains about `Window` as a redefinition warning.
2016-01-18 14:12:54 -04:00
Juan Cruz Viotti
9ffc642784 Autoselect a single drive by using DriveScanner scan event
- The autoselection only happens once the user has selected an image to
prevent weird behaviour.

- The autoselection happens only if the current selected drive is
different from the new drive in order to avoid selecting the same driver
over and over again if it still is the only one.
2016-01-18 13:46:52 -04:00
Juan Cruz Viotti
f218cc1b59 Make DriveScanner.start() return an EventEmitter instance 2016-01-18 13:46:51 -04:00
Juan Cruz Viotti
491a0ae9c9 Trigger drive scans after slight delays
This allows unit tests to easily capture the first run, as otherwise
happens too fast.
2016-01-18 13:46:51 -04:00