diff --git a/build/browser/app.js b/build/browser/app.js
index 806df0db..b47084c1 100644
--- a/build/browser/app.js
+++ b/build/browser/app.js
@@ -93,6 +93,29 @@ app.controller('AppController', function($q, DriveScannerService, SelectionState
console.debug('Drive selected: ' + drive.device);
};
+ this.reselectImage = function() {
+ if (self.writer.isBurning()) {
+ return;
+ }
+
+ // Reselecting an image automatically
+ // de-selects the current drive, if any.
+ // This is made so the user effectively
+ // "returns" to the first step.
+ self.selection.clear();
+
+ console.debug('Reselecting image');
+ };
+
+ this.reselectDrive = function() {
+ if (self.writer.isBurning()) {
+ return;
+ }
+
+ self.selection.removeDrive();
+ console.debug('Reselecting drive');
+ };
+
this.burn = function(image, drive) {
// Stop scanning drives when burning
@@ -669,6 +692,30 @@ selectionState.service('SelectionStateService', function() {
return !!self.getImage();
};
+ /**
+ * @summary Remove drive
+ * @function
+ * @public
+ *
+ * @example
+ * SelectionStateService.removeDrive();
+ */
+ this.removeDrive = function() {
+ self.setDrive(undefined);
+ };
+
+ /**
+ * @summary Remove image
+ * @function
+ * @public
+ *
+ * @example
+ * SelectionStateService.removeImage();
+ */
+ this.removeImage = function() {
+ self.setImage(undefined);
+ };
+
/**
* @summary Clear all selections
* @function
diff --git a/lib/browser/app.js b/lib/browser/app.js
index d0450ef6..dad82f44 100644
--- a/lib/browser/app.js
+++ b/lib/browser/app.js
@@ -92,6 +92,29 @@ app.controller('AppController', function($q, DriveScannerService, SelectionState
console.debug('Drive selected: ' + drive.device);
};
+ this.reselectImage = function() {
+ if (self.writer.isBurning()) {
+ return;
+ }
+
+ // Reselecting an image automatically
+ // de-selects the current drive, if any.
+ // This is made so the user effectively
+ // "returns" to the first step.
+ self.selection.clear();
+
+ console.debug('Reselecting image');
+ };
+
+ this.reselectDrive = function() {
+ if (self.writer.isBurning()) {
+ return;
+ }
+
+ self.selection.removeDrive();
+ console.debug('Reselecting drive');
+ };
+
this.burn = function(image, drive) {
// Stop scanning drives when burning
diff --git a/lib/browser/modules/selection-state.js b/lib/browser/modules/selection-state.js
index 8b7b1788..567db922 100644
--- a/lib/browser/modules/selection-state.js
+++ b/lib/browser/modules/selection-state.js
@@ -123,6 +123,30 @@ selectionState.service('SelectionStateService', function() {
return !!self.getImage();
};
+ /**
+ * @summary Remove drive
+ * @function
+ * @public
+ *
+ * @example
+ * SelectionStateService.removeDrive();
+ */
+ this.removeDrive = function() {
+ self.setDrive(undefined);
+ };
+
+ /**
+ * @summary Remove image
+ * @function
+ * @public
+ *
+ * @example
+ * SelectionStateService.removeImage();
+ */
+ this.removeImage = function() {
+ self.setImage(undefined);
+ };
+
/**
* @summary Clear all selections
* @function
diff --git a/lib/index.html b/lib/index.html
index b28190e5..ffa9fa03 100644
--- a/lib/index.html
+++ b/lib/index.html
@@ -30,7 +30,7 @@