[PATCH] [Kimchi 0/2] Issue #733: Handle relative paths/URLs

From: Paulo Vital <pvital@linux.vnet.ibm.com> This patch-set adds support to new Wok support to handle relative paths. It depends on patch-ser [Wok 0/4] Add support to relative paths/URLs. Paulo Vital (2): Issue #733: Fix UI to handle relative paths. Issue #733: CSS updates to handle relative path support. ui/css/kimchi.css | 95 ++++++++++++++++++++------------------ ui/css/src/modules/_guests.scss | 14 +++--- ui/css/src/modules/_iso-list.scss | 14 +++--- ui/css/src/modules/_network.scss | 2 +- ui/css/src/modules/_storage.scss | 18 ++++---- ui/css/src/modules/_templates.scss | 28 +++++------ ui/js/src/kimchi.api.js | 19 ++++++-- 7 files changed, 103 insertions(+), 87 deletions(-) -- 2.7.4

From: Paulo Vital <pvital@linux.vnet.ibm.com> Updated necessary SCSS and JS files to handle the usage of relative paths. Signed-off-by: Paulo Vital <pvital@linux.vnet.ibm.com> --- ui/css/src/modules/_guests.scss | 14 +++++++------- ui/css/src/modules/_iso-list.scss | 14 +++++++------- ui/css/src/modules/_network.scss | 2 +- ui/css/src/modules/_storage.scss | 18 +++++++++--------- ui/css/src/modules/_templates.scss | 28 ++++++++++++++-------------- ui/js/src/kimchi.api.js | 19 ++++++++++++++++--- 6 files changed, 54 insertions(+), 41 deletions(-) diff --git a/ui/css/src/modules/_guests.scss b/ui/css/src/modules/_guests.scss index 4947123..8175ddf 100644 --- a/ui/css/src/modules/_guests.scss +++ b/ui/css/src/modules/_guests.scss @@ -682,25 +682,25 @@ background-repeat: no-repeat; background-position: 100% 50%; &.icon-centos { - background-image: url('#{$wok-icon-path}/icon-centos.png'); + background-image: url('../../#{$wok-icon-path}/icon-centos.png'); } &.icon-debian { - background-image: url('#{$wok-icon-path}/icon-debian.png'); + background-image: url('../../#{$wok-icon-path}/icon-debian.png'); } &.icon-fedora { - background-image: url('#{$wok-icon-path}/icon-fedora.png'); + background-image: url('../../#{$wok-icon-path}/icon-fedora.png'); } &.icon-opensuse { - background-image: url('#{$wok-icon-path}/icon-opensuse.png'); + background-image: url('../../#{$wok-icon-path}/icon-opensuse.png'); } &.icon-ubuntu { - background-image: url('#{$wok-icon-path}/icon-ubuntu.png'); + background-image: url('../../#{$wok-icon-path}/icon-ubuntu.png'); } &.icon-gentoo { - background-image: url('#{$wok-icon-path}/icon-gentoo.png'); + background-image: url('../../#{$wok-icon-path}/icon-gentoo.png'); } &.icon-unknown { - background-image: url('#{$wok-icon-path}/icon-unknown.png'); + background-image: url('../../#{$wok-icon-path}/icon-unknown.png'); } } } diff --git a/ui/css/src/modules/_iso-list.scss b/ui/css/src/modules/_iso-list.scss index 22a5a9c..a2e50a9 100644 --- a/ui/css/src/modules/_iso-list.scss +++ b/ui/css/src/modules/_iso-list.scss @@ -122,25 +122,25 @@ text-overflow: ellipsis; white-space: nowrap; &.centos { - background-image: url('#{$wok-icon-path}/icon-centos.png'); + background-image: url('../../#{$wok-icon-path}/icon-centos.png'); } &.debian { - background-image: url('#{$wok-icon-path}/icon-debian.png'); + background-image: url('../../#{$wok-icon-path}/icon-debian.png'); } &.fedora { - background-image: url('#{$wok-icon-path}/icon-fedora.png'); + background-image: url('../../#{$wok-icon-path}/icon-fedora.png'); } &.opensuse { - background-image: url('#{$wok-icon-path}/icon-opensuse.png'); + background-image: url('../../#{$wok-icon-path}/icon-opensuse.png'); } &.ubuntu { - background-image: url('#{$wok-icon-path}/icon-ubuntu.png'); + background-image: url('../../#{$wok-icon-path}/icon-ubuntu.png'); } &.gentoo { - background-image: url('#{$wok-icon-path}/icon-gentoo.png'); + background-image: url('../../#{$wok-icon-path}/icon-gentoo.png'); } &.unknown { - background-image: url('#{$wok-icon-path}/icon-unknown.png'); + background-image: url('../../#{$wok-icon-path}/icon-unknown.png'); } } } diff --git a/ui/css/src/modules/_network.scss b/ui/css/src/modules/_network.scss index ab47c89..b030ee4 100644 --- a/ui/css/src/modules/_network.scss +++ b/ui/css/src/modules/_network.scss @@ -41,7 +41,7 @@ #network-root-container { .wok-nw-loading-icon { - background: transparent url('#{$wok-icon-path}/spin5.svg') no-repeat 50% 50%; + background: transparent url('../../#{$wok-icon-path}/spin5.svg') no-repeat 50% 50%; @include animation(spin 3s infinite linear); height: 16px; width: 16px; diff --git a/ui/css/src/modules/_storage.scss b/ui/css/src/modules/_storage.scss index cc2244e..2e15cbb 100644 --- a/ui/css/src/modules/_storage.scss +++ b/ui/css/src/modules/_storage.scss @@ -46,13 +46,13 @@ display: none; } .usage-icon.icon-high { - background-image: url('#{$wok-icon-path}/high_disabled.png') !important; + background-image: url('../../#{$wok-icon-path}/high_disabled.png') !important; } .usage-icon.icon-med { - background-image: url('#{$wok-icon-path}/med_disabled.png') !important; + background-image: url('../../#{$wok-icon-path}/med_disabled.png') !important; } .usage-icon.icon-low { - background-image: url('#{$wok-icon-path}/low_disabled.png') !important; + background-image: url('../../#{$wok-icon-path}/low_disabled.png') !important; } } } @@ -118,13 +118,13 @@ } .volume-icon.icon-high { - background-image: url('#{$wok-icon-path}/high.png'); + background-image: url('../../#{$wok-icon-path}/high.png'); } .volume-icon.icon-med { - background-image: url('#{$wok-icon-path}/med.png'); + background-image: url('../../#{$wok-icon-path}/med.png'); } .volume-icon.icon-low { - background-image: url('#{$wok-icon-path}/low.png'); + background-image: url('../../#{$wok-icon-path}/low.png'); } .volume-progress { @@ -507,13 +507,13 @@ background-position: 0 50%; background-color: transparent; &.icon-high { - background-image: url('#{$wok-icon-path}/high.png'); + background-image: url('../../#{$wok-icon-path}/high.png'); } &.icon-med { - background-image: url('#{$wok-icon-path}/med.png'); + background-image: url('../../#{$wok-icon-path}/med.png'); } &.icon-low { - background-image: url('#{$wok-icon-path}/low.png'); + background-image: url('../../#{$wok-icon-path}/low.png'); } } } diff --git a/ui/css/src/modules/_templates.scss b/ui/css/src/modules/_templates.scss index 55b804a..be7e5bc 100644 --- a/ui/css/src/modules/_templates.scss +++ b/ui/css/src/modules/_templates.scss @@ -461,25 +461,25 @@ $kimchi-icon-path: '../images'; background-repeat: no-repeat; background-position: 8px 50%; &.icon-centos { - background-image: url('#{$wok-icon-path}/icon-centos.png'); + background-image: url('../../#{$wok-icon-path}/icon-centos.png'); } &.icon-debian { - background-image: url('#{$wok-icon-path}/icon-debian.png'); + background-image: url('../../#{$wok-icon-path}/icon-debian.png'); } &.icon-fedora { - background-image: url('#{$wok-icon-path}/icon-fedora.png'); + background-image: url('../../#{$wok-icon-path}/icon-fedora.png'); } &.icon-opensuse { - background-image: url('#{$wok-icon-path}/icon-opensuse.png'); + background-image: url('../../#{$wok-icon-path}/icon-opensuse.png'); } &.icon-ubuntu { - background-image: url('#{$wok-icon-path}/icon-ubuntu.png'); + background-image: url('../../#{$wok-icon-path}/icon-ubuntu.png'); } &.icon-gentoo { - background-image: url('#{$wok-icon-path}/icon-gentoo.png'); + background-image: url('../../#{$wok-icon-path}/icon-gentoo.png'); } &.icon-unknown { - background-image: url('#{$wok-icon-path}/icon-unknown.png'); + background-image: url('../../#{$wok-icon-path}/icon-unknown.png'); } } } @@ -576,25 +576,25 @@ $kimchi-icon-path: '../images'; background-repeat: no-repeat; background-position: 100% 50%; &.icon-centos { - background-image: url('#{$wok-icon-path}/icon-centos.png'); + background-image: url('../../#{$wok-icon-path}/icon-centos.png'); } &.icon-debian { - background-image: url('#{$wok-icon-path}/icon-debian.png'); + background-image: url('../../#{$wok-icon-path}/icon-debian.png'); } &.icon-fedora { - background-image: url('#{$wok-icon-path}/icon-fedora.png'); + background-image: url('../../#{$wok-icon-path}/icon-fedora.png'); } &.icon-opensuse { - background-image: url('#{$wok-icon-path}/icon-opensuse.png'); + background-image: url('../../#{$wok-icon-path}/icon-opensuse.png'); } &.icon-ubuntu { - background-image: url('#{$wok-icon-path}/icon-ubuntu.png'); + background-image: url('../../#{$wok-icon-path}/icon-ubuntu.png'); } &.icon-gentoo { - background-image: url('#{$wok-icon-path}/icon-gentoo.png'); + background-image: url('../../#{$wok-icon-path}/icon-gentoo.png'); } &.icon-unknown { - background-image: url('#{$wok-icon-path}/icon-unknown.png'); + background-image: url('../../#{$wok-icon-path}/icon-unknown.png'); } } } diff --git a/ui/js/src/kimchi.api.js b/ui/js/src/kimchi.api.js index 950ca00..c0a1412 100644 --- a/ui/js/src/kimchi.api.js +++ b/ui/js/src/kimchi.api.js @@ -315,15 +315,18 @@ var kimchi = { }).done(function(data, textStatus, xhr) { proxy_port = data['websockets_port']; ssl_port = data['ssl_port']; + relative_path = data['relative_path']; wok.requestJSON({ url : "plugins/kimchi/vms/" + encodeURIComponent(vm) + "/serial", type : "POST", dataType : "json" }).done(function() { url = 'https://' + location.hostname + ':' + ssl_port; + url += relative_path; url += "/plugins/kimchi/serial/html/serial.html"; url += "?port=" + ssl_port; - url += "&path=websockify?token=" + wok.urlSafeB64Encode(vm+'-console').replace(/=*$/g, ""); + url += "&path=" + relative_path + "/websockify"; + url += "?token=" + wok.urlSafeB64Encode(vm+'-console').replace(/=*$/g, ""); url += '&encrypt=1'; window.open(url); }).error(function(data) { @@ -337,14 +340,17 @@ var kimchi = { vncToVM : function(vm) { proxy_port = wok.config['websockets_port']; ssl_port = wok.config['ssl_port']; + relative_path = wok.config['relative_path']; wok.requestJSON({ url : "plugins/kimchi/vms/" + encodeURIComponent(vm) + "/connect", type : "POST", dataType : "json" }).done(function() { url = 'https://' + location.hostname + ':' + ssl_port; + url += relative_path; url += "/plugins/kimchi/novnc/vnc_auto.html"; url += "?port=" + ssl_port; + url += "&path=" + relative_path + "/websockify"; /* * From python documentation base64.urlsafe_b64encode(s) * substitutes - instead of + and _ instead of / in the @@ -352,7 +358,7 @@ var kimchi = { * contain = which is not safe in a URL query component. * So remove it when needed as base64 can work well without it. * */ - url += "&path=websockify?token=" + wok.urlSafeB64Encode(vm).replace(/=*$/g, ""); + url += "?token=" + wok.urlSafeB64Encode(vm).replace(/=*$/g, ""); url += '&encrypt=1'; window.open(url); }); @@ -361,14 +367,21 @@ var kimchi = { spiceToVM : function(vm) { proxy_port = wok.config['websockets_port']; ssl_port = wok.config['ssl_port']; + relative_path = wok.config['relative_path']; wok.requestJSON({ url : "plugins/kimchi/vms/" + encodeURIComponent(vm) + "/connect", type : "POST", dataType : "json" }).done(function(data, textStatus, xhr) { url = 'https://' + location.hostname + ':' + ssl_port; + url += relative_path; url += "/plugins/kimchi/spice_auto.html"; - url += "?port=" + ssl_port + "&listen=" + location.hostname; + /* + * When using relative_path we need pass the value with port + * argument to be used correctly by spice_auto.html scripts + */ + url += "?port=" + ssl_port + relative_path; + url += "&listen=" + location.hostname; /* * From python documentation base64.urlsafe_b64encode(s) * substitutes - instead of + and _ instead of / in the -- 2.7.4

From: Paulo Vital <pvital@linux.vnet.ibm.com> Signed-off-by: Paulo Vital <pvital@linux.vnet.ibm.com> --- ui/css/kimchi.css | 95 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 49 insertions(+), 46 deletions(-) diff --git a/ui/css/kimchi.css b/ui/css/kimchi.css index 5526fb3..ba66785 100644 --- a/ui/css/kimchi.css +++ b/ui/css/kimchi.css @@ -96,7 +96,7 @@ #guest-add-window.modal-content label.box-iso-outer span.box-iso-border { display: block; border: 3px solid transparent; - transition: all .1s ease-in-out; + transition: all 0.1s ease-in-out; } #template-add-window.modal-content label.box-iso-outer .iso-radio-hidden:checked + span.box-iso-border, @@ -118,7 +118,7 @@ display: block; border: 1px solid transparent; background: #fff; - transition: all .1s ease-in-out; + transition: all 0.1s ease-in-out; } #template-add-window.modal-content label.box-iso-outer span.box-iso-inner .tooltip-inner, @@ -231,37 +231,37 @@ #template-add-window.modal-content h3.iso-title.centos, #guest-add-window.modal-content h3.iso-title.centos { - background-image: url("/images/theme-default/icon-centos.png"); + background-image: url("../../../images/theme-default/icon-centos.png"); } #template-add-window.modal-content h3.iso-title.debian, #guest-add-window.modal-content h3.iso-title.debian { - background-image: url("/images/theme-default/icon-debian.png"); + background-image: url("../../../images/theme-default/icon-debian.png"); } #template-add-window.modal-content h3.iso-title.fedora, #guest-add-window.modal-content h3.iso-title.fedora { - background-image: url("/images/theme-default/icon-fedora.png"); + background-image: url("../../../images/theme-default/icon-fedora.png"); } #template-add-window.modal-content h3.iso-title.opensuse, #guest-add-window.modal-content h3.iso-title.opensuse { - background-image: url("/images/theme-default/icon-opensuse.png"); + background-image: url("../../../images/theme-default/icon-opensuse.png"); } #template-add-window.modal-content h3.iso-title.ubuntu, #guest-add-window.modal-content h3.iso-title.ubuntu { - background-image: url("/images/theme-default/icon-ubuntu.png"); + background-image: url("../../../images/theme-default/icon-ubuntu.png"); } #template-add-window.modal-content h3.iso-title.gentoo, #guest-add-window.modal-content h3.iso-title.gentoo { - background-image: url("/images/theme-default/icon-gentoo.png"); + background-image: url("../../../images/theme-default/icon-gentoo.png"); } #template-add-window.modal-content h3.iso-title.unknown, #guest-add-window.modal-content h3.iso-title.unknown { - background-image: url("/images/theme-default/icon-unknown.png"); + background-image: url("../../../images/theme-default/icon-unknown.png"); } /* Create Guest Modal */ @@ -1037,31 +1037,31 @@ } #guest-content-container .distro-icon.icon-centos { - background-image: url("/images/theme-default/icon-centos.png"); + background-image: url("../../../images/theme-default/icon-centos.png"); } #guest-content-container .distro-icon.icon-debian { - background-image: url("/images/theme-default/icon-debian.png"); + background-image: url("../../../images/theme-default/icon-debian.png"); } #guest-content-container .distro-icon.icon-fedora { - background-image: url("/images/theme-default/icon-fedora.png"); + background-image: url("../../../images/theme-default/icon-fedora.png"); } #guest-content-container .distro-icon.icon-opensuse { - background-image: url("/images/theme-default/icon-opensuse.png"); + background-image: url("../../../images/theme-default/icon-opensuse.png"); } #guest-content-container .distro-icon.icon-ubuntu { - background-image: url("/images/theme-default/icon-ubuntu.png"); + background-image: url("../../../images/theme-default/icon-ubuntu.png"); } #guest-content-container .distro-icon.icon-gentoo { - background-image: url("/images/theme-default/icon-gentoo.png"); + background-image: url("../../../images/theme-default/icon-gentoo.png"); } #guest-content-container .distro-icon.icon-unknown { - background-image: url("/images/theme-default/icon-unknown.png"); + background-image: url("../../../images/theme-default/icon-unknown.png"); } body.wok-gallery { @@ -1456,7 +1456,7 @@ body.wok-gallery { border: 1px solid #eee !important; margin-bottom: 3px; display: block; - padding: .2em .6em .3em; + padding: 0.2em 0.6em 0.3em; font-weight: 700; line-height: 1; text-align: left; @@ -1750,7 +1750,7 @@ body.wok-gallery { height: 664px; width: 2164px; left: 0; - transition: left .2s ease-in-out; + transition: left 0.2s ease-in-out; } #template-add-window.modal-content p { @@ -2047,31 +2047,31 @@ body.wok-gallery { } #templates-root-container .wok-vm-list .distro-icon.icon-centos { - background-image: url("/images/theme-default/icon-centos.png"); + background-image: url("../../../images/theme-default/icon-centos.png"); } #templates-root-container .wok-vm-list .distro-icon.icon-debian { - background-image: url("/images/theme-default/icon-debian.png"); + background-image: url("../../../images/theme-default/icon-debian.png"); } #templates-root-container .wok-vm-list .distro-icon.icon-fedora { - background-image: url("/images/theme-default/icon-fedora.png"); + background-image: url("../../../images/theme-default/icon-fedora.png"); } #templates-root-container .wok-vm-list .distro-icon.icon-opensuse { - background-image: url("/images/theme-default/icon-opensuse.png"); + background-image: url("../../../images/theme-default/icon-opensuse.png"); } #templates-root-container .wok-vm-list .distro-icon.icon-ubuntu { - background-image: url("/images/theme-default/icon-ubuntu.png"); + background-image: url("../../../images/theme-default/icon-ubuntu.png"); } #templates-root-container .wok-vm-list .distro-icon.icon-gentoo { - background-image: url("/images/theme-default/icon-gentoo.png"); + background-image: url("../../../images/theme-default/icon-gentoo.png"); } #templates-root-container .wok-vm-list .distro-icon.icon-unknown { - background-image: url("/images/theme-default/icon-unknown.png"); + background-image: url("../../../images/theme-default/icon-unknown.png"); } #templates-root-container .wok-vm-gallery { @@ -2137,7 +2137,9 @@ body.wok-gallery { font-size: 32px; } -#templates-root-container .wok-vm-gallery .item-hidden.column-type, #templates-root-container .wok-vm-gallery .item-hidden.column-version, #templates-root-container .wok-vm-gallery .item-hidden.column-processors { +#templates-root-container .wok-vm-gallery .item-hidden.column-type, +#templates-root-container .wok-vm-gallery .item-hidden.column-version, +#templates-root-container .wok-vm-gallery .item-hidden.column-processors { padding-bottom: 11px; } @@ -2178,31 +2180,31 @@ body.wok-gallery { } #templates-root-container .wok-vm-gallery .name-distro-icon.icon-centos { - background-image: url("/images/theme-default/icon-centos.png"); + background-image: url("../../../images/theme-default/icon-centos.png"); } #templates-root-container .wok-vm-gallery .name-distro-icon.icon-debian { - background-image: url("/images/theme-default/icon-debian.png"); + background-image: url("../../../images/theme-default/icon-debian.png"); } #templates-root-container .wok-vm-gallery .name-distro-icon.icon-fedora { - background-image: url("/images/theme-default/icon-fedora.png"); + background-image: url("../../../images/theme-default/icon-fedora.png"); } #templates-root-container .wok-vm-gallery .name-distro-icon.icon-opensuse { - background-image: url("/images/theme-default/icon-opensuse.png"); + background-image: url("../../../images/theme-default/icon-opensuse.png"); } #templates-root-container .wok-vm-gallery .name-distro-icon.icon-ubuntu { - background-image: url("/images/theme-default/icon-ubuntu.png"); + background-image: url("../../../images/theme-default/icon-ubuntu.png"); } #templates-root-container .wok-vm-gallery .name-distro-icon.icon-gentoo { - background-image: url("/images/theme-default/icon-gentoo.png"); + background-image: url("../../../images/theme-default/icon-gentoo.png"); } #templates-root-container .wok-vm-gallery .name-distro-icon.icon-unknown { - background-image: url("/images/theme-default/icon-unknown.png"); + background-image: url("../../../images/theme-default/icon-unknown.png"); } #templates-root-container span.template-status { @@ -2256,7 +2258,7 @@ body.wok-gallery { } #network-root-container .wok-nw-loading-icon { - background: transparent url("/images/theme-default/spin5.svg") no-repeat 50% 50%; + background: transparent url("../../../images/theme-default/spin5.svg") no-repeat 50% 50%; -webkit-animation: spin 3s infinite linear; -o-animation: spin 3s infinite linear; animation: spin 3s infinite linear; @@ -2363,15 +2365,15 @@ body.wok-gallery { } #storage-root-container .wok-datagrid-body .inactive .usage-icon.icon-high { - background-image: url("/images/theme-default/high_disabled.png") !important; + background-image: url("../../../images/theme-default/high_disabled.png") !important; } #storage-root-container .wok-datagrid-body .inactive .usage-icon.icon-med { - background-image: url("/images/theme-default/med_disabled.png") !important; + background-image: url("../../../images/theme-default/med_disabled.png") !important; } #storage-root-container .wok-datagrid-body .inactive .usage-icon.icon-low { - background-image: url("/images/theme-default/low_disabled.png") !important; + background-image: url("../../../images/theme-default/low_disabled.png") !important; } #storage-root-container .volumes { @@ -2443,15 +2445,15 @@ body.wok-gallery { } #storage-root-container .volumes .volume-icon.icon-high { - background-image: url("/images/theme-default/high.png"); + background-image: url("../../../images/theme-default/high.png"); } #storage-root-container .volumes .volume-icon.icon-med { - background-image: url("/images/theme-default/med.png"); + background-image: url("../../../images/theme-default/med.png"); } #storage-root-container .volumes .volume-icon.icon-low { - background-image: url("/images/theme-default/low.png"); + background-image: url("../../../images/theme-default/low.png"); } #storage-root-container .volumes .volume-progress { @@ -2563,7 +2565,7 @@ body.wok-gallery { border-style: solid; border-color: transparent; border-color: rgba(255, 255, 255, 0); - transition: border-color .1s ease-in-out; + transition: border-color 0.1s ease-in-out; } #storage-root-container .volumes .wok-gallery .volume-box-inner { @@ -2577,7 +2579,7 @@ body.wok-gallery { border-style: solid; border-color: #fff; background: #fff; - transition: border-color .1s ease-in-out; + transition: border-color 0.1s ease-in-out; } #storage-root-container .volumes .wok-gallery span.column-name, @@ -2892,17 +2894,17 @@ body.wok-gallery { #storage-root-container .wok-datagrid > .wok-datagrid-header > span.column-usage .usage-icon.icon-high, #storage-root-container .wok-datagrid > .wok-datagrid-body > .wok-datagrid-row > span.column-usage .usage-icon.icon-high { - background-image: url("/images/theme-default/high.png"); + background-image: url("../../../images/theme-default/high.png"); } #storage-root-container .wok-datagrid > .wok-datagrid-header > span.column-usage .usage-icon.icon-med, #storage-root-container .wok-datagrid > .wok-datagrid-body > .wok-datagrid-row > span.column-usage .usage-icon.icon-med { - background-image: url("/images/theme-default/med.png"); + background-image: url("../../../images/theme-default/med.png"); } #storage-root-container .wok-datagrid > .wok-datagrid-header > span.column-usage .usage-icon.icon-low, #storage-root-container .wok-datagrid > .wok-datagrid-body > .wok-datagrid-row > span.column-usage .usage-icon.icon-low { - background-image: url("/images/theme-default/low.png"); + background-image: url("../../../images/theme-default/low.png"); } #storage-root-container .wok-datagrid > .wok-datagrid-header > span.column-capacity, @@ -3058,7 +3060,8 @@ body.wok-gallery { white-space: nowrap; } -.storage-modal .filter-select.popable .popover ul li:hover, .storage-modal .filter-select.popable .popover ul li:focus, +.storage-modal .filter-select.popable .popover ul li:hover, +.storage-modal .filter-select.popable .popover ul li:focus, .storage-modal .storage-target-input .popover ul li:hover, .storage-modal .storage-target-input .popover ul li:focus, .storage-modal .storage-add-input .popover ul li:hover, -- 2.7.4

Reviewed-By: Lucio Correia <luciojhc@linux.vnet.ibm.com> On 06/10/2016 16:11, pvital@linux.vnet.ibm.com wrote:
From: Paulo Vital <pvital@linux.vnet.ibm.com>
This patch-set adds support to new Wok support to handle relative paths. It depends on patch-ser [Wok 0/4] Add support to relative paths/URLs.
Paulo Vital (2): Issue #733: Fix UI to handle relative paths. Issue #733: CSS updates to handle relative path support.
ui/css/kimchi.css | 95 ++++++++++++++++++++------------------ ui/css/src/modules/_guests.scss | 14 +++--- ui/css/src/modules/_iso-list.scss | 14 +++--- ui/css/src/modules/_network.scss | 2 +- ui/css/src/modules/_storage.scss | 18 ++++---- ui/css/src/modules/_templates.scss | 28 +++++------ ui/js/src/kimchi.api.js | 19 ++++++-- 7 files changed, 103 insertions(+), 87 deletions(-)
-- Lucio Correia Software Engineer IBM LTC Brazil
participants (2)
-
Lucio Correia
-
pvital@linux.vnet.ibm.com