From 78fdc5b07e3704d224f37d0f269870e2b5519e2d Mon Sep 17 00:00:00 2001 From: Juan Cruz Viotti Date: Wed, 11 Oct 2017 03:53:34 +0100 Subject: [PATCH] feat(GUI): add some branding to usbboot-discovered devices (#1764) - Add a nice icon in the drive selector dialog when a device has been discovered through usbboot - Change the name of usbboot-initialized devices to "Compute Module" Change-Type: minor Changelog-Entry: Add eye candy to usbboot initialized devices. Signed-off-by: Juan Cruz Viotti --- lib/gui/assets/device-types/raspberrypi.svg | 17 +++++++++++++++++ .../drive-selector/styles/_drive-selector.scss | 16 ++++++++++------ .../templates/drive-selector-modal.tpl.html | 9 +++++++-- lib/gui/css/main.css | 10 ++++++---- lib/shared/sdk/standard/index.js | 9 +++++++++ 5 files changed, 49 insertions(+), 12 deletions(-) create mode 100644 lib/gui/assets/device-types/raspberrypi.svg diff --git a/lib/gui/assets/device-types/raspberrypi.svg b/lib/gui/assets/device-types/raspberrypi.svg new file mode 100644 index 00000000..27192bef --- /dev/null +++ b/lib/gui/assets/device-types/raspberrypi.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/lib/gui/components/drive-selector/styles/_drive-selector.scss b/lib/gui/components/drive-selector/styles/_drive-selector.scss index 56700037..0536a519 100644 --- a/lib/gui/components/drive-selector/styles/_drive-selector.scss +++ b/lib/gui/components/drive-selector/styles/_drive-selector.scss @@ -15,7 +15,7 @@ */ .modal-drive-selector-modal .modal-content { - width: 300px; + width: 315px; height: 320px; } @@ -30,7 +30,7 @@ .modal-drive-selector-modal { - .list-group-item-footer { + .list-group-item-footer:has(span) { margin-top: 8px; } @@ -52,12 +52,16 @@ border-color: darken($palette-theme-light-background, 7%); padding: 12px 0; - > .tick { - font-size: 11px; + .list-group-item-section-expanded { + flex-grow: 1; } - :first-child { - flex-grow: 1; + .list-group-item-section + .list-group-item-section { + margin-left: 10px; + } + + > .tick { + font-size: 11px; } &:first-child { diff --git a/lib/gui/components/drive-selector/templates/drive-selector-modal.tpl.html b/lib/gui/components/drive-selector/templates/drive-selector-modal.tpl.html index 5a741966..137d32e1 100644 --- a/lib/gui/components/drive-selector/templates/drive-selector-modal.tpl.html +++ b/lib/gui/components/drive-selector/templates/drive-selector-modal.tpl.html @@ -9,7 +9,12 @@ ng-disabled="!modal.constraints.isDriveValid(drive, modal.state.getImage())" ng-dblclick="modal.selectDriveAndClose(drive)" ng-click="modal.toggleDrive(drive)"> -
+ Drive device type logo +

{{ drive.description }} - {{ drive.size | closestUnit }}

@@ -27,7 +32,7 @@
- diff --git a/lib/gui/css/main.css b/lib/gui/css/main.css index a4a51322..1a33c79d 100644 --- a/lib/gui/css/main.css +++ b/lib/gui/css/main.css @@ -6365,7 +6365,7 @@ body { * limitations under the License. */ .modal-drive-selector-modal .modal-content { - width: 300px; + width: 315px; height: 320px; } .modal-drive-selector-modal .modal-body { @@ -6375,7 +6375,7 @@ body { .modal-drive-selector-modal .list-group-item[disabled] { cursor: not-allowed; } -.modal-drive-selector-modal .list-group-item-footer { +.modal-drive-selector-modal .list-group-item-footer:has(span) { margin-top: 8px; } .modal-drive-selector-modal .list-group-item-heading, @@ -6393,10 +6393,12 @@ body { border-radius: 0; border-color: #ededed; padding: 12px 0; } + .modal-drive-selector-modal .list-group-item .list-group-item-section-expanded { + flex-grow: 1; } + .modal-drive-selector-modal .list-group-item .list-group-item-section + .list-group-item-section { + margin-left: 10px; } .modal-drive-selector-modal .list-group-item > .tick { font-size: 11px; } - .modal-drive-selector-modal .list-group-item :first-child { - flex-grow: 1; } .modal-drive-selector-modal .list-group-item:first-child { border-top: 0; } .modal-drive-selector-modal .list-group-item[disabled] .list-group-item-heading { diff --git a/lib/shared/sdk/standard/index.js b/lib/shared/sdk/standard/index.js index bcc5be6e..ad9f9b13 100644 --- a/lib/shared/sdk/standard/index.js +++ b/lib/shared/sdk/standard/index.js @@ -51,6 +51,15 @@ exports.scan = (options = {}) => { }).map((drive) => { drive.pending = false drive.adaptor = exports.name + + // TODO: Find a better way to detect that a certain + // block device is a compute module initialized + // through usbboot. + if (drive.description === '0001') { + drive.description = 'Compute Module' + drive.icon = 'raspberrypi' + } + return drive }) }