From f217b11443bb1b4679b92320fdf66d5dd3d081c8 Mon Sep 17 00:00:00 2001 From: Georg Ehrke Date: Thu, 16 Jul 2020 14:39:26 +0200 Subject: [PATCH] Fix breaking changes of nc/vue update Signed-off-by: Georg Ehrke --- apps/files/css/detailsView.scss | 42 +++---- apps/files/src/views/Sidebar.vue | 2 +- apps/settings/src/views/Apps.vue | 4 +- apps/settings/src/views/Users.vue | 110 +++++++++--------- .../bootstrap/AppNavigationContext.php | 2 +- .../bootstrap/AppsManagementContext.php | 10 +- .../features/bootstrap/FilesAppContext.php | 2 +- .../bootstrap/SettingsMenuContext.php | 4 +- .../features/bootstrap/ToastContext.php | 2 +- 9 files changed, 90 insertions(+), 88 deletions(-) diff --git a/apps/files/css/detailsView.scss b/apps/files/css/detailsView.scss index e13cf0d7a4..d035b24de9 100644 --- a/apps/files/css/detailsView.scss +++ b/apps/files/css/detailsView.scss @@ -1,19 +1,19 @@ -#app-sidebar .detailFileInfoContainer { +.app-sidebar .detailFileInfoContainer { min-height: 50px; padding: 15px; } -#app-sidebar .detailFileInfoContainer > div { +.app-sidebar .detailFileInfoContainer > div { clear: both; } -#app-sidebar .mainFileInfoView .icon { +.app-sidebar .mainFileInfoView .icon { display: inline-block; background-size: 16px 16px; } -#app-sidebar .mainFileInfoView .permalink { +.app-sidebar .mainFileInfoView .permalink { padding: 6px 10px; vertical-align: top; opacity: .6; @@ -23,22 +23,22 @@ opacity: 1; } } -#app-sidebar .mainFileInfoView .permalink-field>input { +.app-sidebar .mainFileInfoView .permalink-field>input { clear: both; width: 90%; } -#app-sidebar .thumbnailContainer.large { +.app-sidebar .thumbnailContainer.large { margin-left: -15px; margin-right: -35px; /* 15 + 20 for the close button */ margin-top: -15px; } -#app-sidebar .thumbnailContainer.large.portrait { +.app-sidebar .thumbnailContainer.large.portrait { margin: 0; /* if we don't fit the image anyway we give it back the margin */ } -#app-sidebar .large .thumbnail { +.app-sidebar .large .thumbnail { width:100%; display:block; background-repeat: no-repeat; @@ -49,21 +49,21 @@ height: auto; } -#app-sidebar .large .thumbnail .stretcher { +.app-sidebar .large .thumbnail .stretcher { content: ''; display: block; padding-bottom: 56.25%; /* sets height of .thumbnail to 9/16 of the width */ } -#app-sidebar .large.portrait .thumbnail { +.app-sidebar .large.portrait .thumbnail { background-position: 50% top; } -#app-sidebar .large.portrait .thumbnail { +.app-sidebar .large.portrait .thumbnail { background-size: contain; } -#app-sidebar .large.text { +.app-sidebar .large.text { overflow-y: scroll; overflow-x: hidden; padding-top: 14px; @@ -71,7 +71,7 @@ margin-left: 0; } -#app-sidebar .thumbnail { +.app-sidebar .thumbnail { width: 100%; min-height: 75px; display: inline-block; @@ -81,44 +81,44 @@ background-repeat: no-repeat; } -#app-sidebar .ellipsis { +.app-sidebar .ellipsis { white-space: nowrap; text-overflow: ellipsis; overflow: hidden; } -#app-sidebar .fileName { +.app-sidebar .fileName { font-size: 16px; padding-top: 13px; padding-bottom: 3px; } -#app-sidebar .fileName h3 { +.app-sidebar .fileName h3 { width: calc(100% - 42px); /* 36px is the with of the copy link icon, but this breaks so we add some more to be sure */ display: inline-block; padding: 5px 0; margin: -5px 0; } -#app-sidebar .file-details { +.app-sidebar .file-details { color: var(--color-text-maxcontrast); } -#app-sidebar .action-favorite { +.app-sidebar .action-favorite { vertical-align: sub; padding: 10px; margin: -10px; } -#app-sidebar .action-favorite > span{ +.app-sidebar .action-favorite > span{ opacity: .7 !important; } -#app-sidebar .detailList { +.app-sidebar .detailList { float: left; } -#app-sidebar .close { +.app-sidebar .close { position: absolute; top: 0; right: 0; diff --git a/apps/files/src/views/Sidebar.vue b/apps/files/src/views/Sidebar.vue index 16abb3ca76..1fc89c6a7e 100644 --- a/apps/files/src/views/Sidebar.vue +++ b/apps/files/src/views/Sidebar.vue @@ -454,7 +454,7 @@ export default { } diff --git a/tests/acceptance/features/bootstrap/AppNavigationContext.php b/tests/acceptance/features/bootstrap/AppNavigationContext.php index 427af0e40c..df6ed22896 100644 --- a/tests/acceptance/features/bootstrap/AppNavigationContext.php +++ b/tests/acceptance/features/bootstrap/AppNavigationContext.php @@ -31,7 +31,7 @@ class AppNavigationContext implements Context, ActorAwareInterface { * @return Locator */ public static function appNavigation() { - return Locator::forThe()->id("app-navigation")-> + return Locator::forThe()->xpath("//*[@id=\"app-navigation\" or contains(@class, 'app-navigation')]")-> describedAs("App navigation"); } diff --git a/tests/acceptance/features/bootstrap/AppsManagementContext.php b/tests/acceptance/features/bootstrap/AppsManagementContext.php index 1e36ac72ef..1f3b2dbe28 100644 --- a/tests/acceptance/features/bootstrap/AppsManagementContext.php +++ b/tests/acceptance/features/bootstrap/AppsManagementContext.php @@ -59,7 +59,7 @@ class AppsManagementContext implements Context, ActorAwareInterface { * @return Locator */ public static function bundleButton($bundle) { - return Locator::forThe()->xpath("//main[@id='app-content']//div[@class='apps-header']/h2[normalize-space() = '$bundle']/input")-> + return Locator::forThe()->xpath("//main[@id='app-content' or contains(@class, 'app-content')]//div[@class='apps-header']/h2[normalize-space() = '$bundle']/input")-> describedAs("Button to enable / disable bundles"); } @@ -67,7 +67,7 @@ class AppsManagementContext implements Context, ActorAwareInterface { * @return Locator */ public static function rowForApp($app) { - return Locator::forThe()->xpath("//main[@id='app-content']//div[@class='app-name'][normalize-space() = '$app']/..")-> + return Locator::forThe()->xpath("//main[@id='app-content' or contains(@class, 'app-content')]//div[@class='app-name'][normalize-space() = '$app']/..")-> describedAs("Row for app $app in Apps Management"); } @@ -75,7 +75,7 @@ class AppsManagementContext implements Context, ActorAwareInterface { * @return Locator */ public static function emptyAppList() { - return Locator::forThe()->xpath("//main[@id='app-content']//div[@id='apps-list-empty']")-> + return Locator::forThe()->xpath("//main[@id='app-content' or contains(@class, 'app-content')]//div[@id='apps-list-empty']")-> describedAs("Empty apps list view"); } @@ -83,7 +83,7 @@ class AppsManagementContext implements Context, ActorAwareInterface { * @return Locator */ public static function appEntries() { - return Locator::forThe()->xpath("//main[@id='app-content']//div[@class='section']")-> + return Locator::forThe()->xpath("//main[@id='app-content' or contains(@class, 'app-content')]//div[@class='section']")-> describedAs("Entries in apps list"); } @@ -109,7 +109,7 @@ class AppsManagementContext implements Context, ActorAwareInterface { * @return Locator */ public static function sidebar() { - return Locator::forThe()->id("app-sidebar")-> + return Locator::forThe()->xpath("//*[@id=\"app-sidebar\" or contains(@class, 'app-sidebar')]")-> describedAs("Sidebar in apps management"); } diff --git a/tests/acceptance/features/bootstrap/FilesAppContext.php b/tests/acceptance/features/bootstrap/FilesAppContext.php index a5dcfb700b..906a57b9e6 100644 --- a/tests/acceptance/features/bootstrap/FilesAppContext.php +++ b/tests/acceptance/features/bootstrap/FilesAppContext.php @@ -80,7 +80,7 @@ class FilesAppContext implements Context, ActorAwareInterface { * @return Locator */ public static function detailsView() { - return Locator::forThe()->id("app-sidebar")-> + return Locator::forThe()->xpath("//*[@id=\"app-sidebar\" or contains(@class, 'app-sidebar')]")-> describedAs("Details view in Files app"); } diff --git a/tests/acceptance/features/bootstrap/SettingsMenuContext.php b/tests/acceptance/features/bootstrap/SettingsMenuContext.php index 485f945f04..678d7c5eab 100644 --- a/tests/acceptance/features/bootstrap/SettingsMenuContext.php +++ b/tests/acceptance/features/bootstrap/SettingsMenuContext.php @@ -88,7 +88,7 @@ class SettingsMenuContext implements Context, ActorAwareInterface { * @return Locator */ private static function settingsPanelFor($itemText) { - return Locator::forThe()->xpath("//div[@id = 'app-navigation']//ul//li[@class = 'app-navigation-caption' and normalize-space() = '$itemText']")-> + return Locator::forThe()->xpath("//div[@id = 'app-navigation' or contains(@class, 'app-navigation')]//ul//li[@class = 'app-navigation-caption' and normalize-space() = '$itemText']")-> describedAs($itemText . " item in Settings panel"); } @@ -97,7 +97,7 @@ class SettingsMenuContext implements Context, ActorAwareInterface { * @return Locator */ private static function settingsPanelEntryFor($itemText) { - return Locator::forThe()->xpath("//div[@id = 'app-navigation']//ul//li[normalize-space() = '$itemText']")-> + return Locator::forThe()->xpath("//div[@id = 'app-navigation' or contains(@class, 'app-navigation')]//ul//li[normalize-space() = '$itemText']")-> describedAs($itemText . " entry in Settings panel"); } diff --git a/tests/acceptance/features/bootstrap/ToastContext.php b/tests/acceptance/features/bootstrap/ToastContext.php index 62b15c74c7..5a67d7f258 100644 --- a/tests/acceptance/features/bootstrap/ToastContext.php +++ b/tests/acceptance/features/bootstrap/ToastContext.php @@ -39,7 +39,7 @@ class ToastContext implements Context, ActorAwareInterface { * @return Locator */ private static function toastContainer() { - return Locator::forThe()->id("content")-> + return Locator::forThe()->xpath("//*[@id=\"content\" or contains(@class, 'content')]")-> describedAs("Toast container"); }