diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/DropdownItem.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/DropdownItem.gss new file mode 100644 index 00000000000..e6ca44462e1 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/DropdownItem.gss @@ -0,0 +1,115 @@ +.jsdropdown { + position: relative; +} +.jsdropdown_head, +.jsdropdown_content { + text-indent: 0; +} +.dropdown { + font-size: 1rem; + width: 100%; + max-width: 100%; + display: inline-block; + text-align: left; + min-width: 21.333333333333332em; + margin-left: -0.666666666666667em; +} +.dropdown_head { + display: inline-block; + position: relative; + padding-left: 0.75em; + padding-right: 1.75em; + border-radius: 0.107142857142857em; + border: 1px solid transparent; + cursor: pointer; +} +.dropdown_head:hover { + border: 1px solid #cfcfcf; + background-color: #eee; + text-decoration: none; +} +.dropdown_head_title { + font-size: 1.866666666666667em; + color: #333; + height: 1.464285714285714em; + line-height: 1.428571428571429em; + font-weight: 700; +} +.dropdown_head_title_button { + position: absolute; + top: 0.75em; + right: 0; + display: inline-block; + margin-left: 0.714285714285714em; + height: 0.285714285714286em; + width: 0.428571428571429em; + background-image: resourceUrl("arrowDownFilledBlack"); + background-position: center bottom; + background-repeat: no-repeat; + background-size: 100%; + -webkit-transform: translate(-50%, -50%); + -moz-transform: translate(-50%, -50%); + -ms-transform: translate(-50%, -50%); + transform: translate(-50%, -50%); + float: none; +} +.dropdown_content { + position: absolute; + z-index: 1; + display: none; + height: auto; + max-height: 23.333333333333332em; + overflow: auto; + width: auto; + background-color: #fff; + border: 1px solid #ccc; + box-shadow: 0.133333333333333em 0.133333333333333em 0.333333333333333em #ccc; +} +.dropdownregattas_content { +} +.jsdropdownactive .dropdown_content { + display: block; +} +.dropdown_content_link { + display: block; + cursor: pointer; + padding: 1.333333333333333em 3.333333333333333em 1em 1em; + border-bottom: 1px solid #f4f4f4; + position: relative; + border: none; +} +.dropdown_content_link:hover, +.dropdown_content_link:focus { + background: #f8f8f8; + text-decoration: none; +} +.dropdown_content_link:hover .dropdown_content_link_title, +.dropdown_content_link:focus .dropdown_content_link_title { + text-decoration: underline; +} +.dropdown_content_link_title { + display: block; + font-weight: 600; + font-size: 1.2em; + color: #666; +} +.dropdown_content_link_subtitle { + color: #cfcfcf; + font-size: 1.066666666666667em; +} +.dropdown_content_linkactive:after { + content: ''; + position: absolute; + right: 1.333333333333333em; + top: 50%; + height: 0.933333333333333em; + width: 0.933333333333333em; + background-image: resourceUrl("dropdownCheck"); + background-repeat: no-repeat; + background-position: right center; + background-size: contain; + -webkit-transform: translate(0, -50%); + -moz-transform: translate(0, -50%); + -ms-transform: translate(0, -50%); + transform: translate(0, -50%); +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/DropdownItem.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/DropdownItem.java index 558b572fbae..6cd8276fe26 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/DropdownItem.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/DropdownItem.java @@ -15,7 +15,7 @@ public class DropdownItem extends Widget { interface DropdownItemUiBinder extends UiBinder { } - @UiField EventHeaderResources local_res; + @UiField DropdownItemResources local_res; @UiField AnchorElement link; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/DropdownItem.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/DropdownItem.ui.xml index d6b308be8ce..421e89ec144 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/DropdownItem.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/DropdownItem.ui.xml @@ -2,7 +2,7 @@ - + .important { font-weight: bold; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/DropdownItemResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/DropdownItemResources.java new file mode 100644 index 00000000000..7ffd5114a2e --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/DropdownItemResources.java @@ -0,0 +1,28 @@ +package com.sap.sailing.gwt.home.desktop.partials.eventheader; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.resources.client.CssResource; +import com.sap.sailing.gwt.home.desktop.resources.SharedDesktopResources; + +public interface DropdownItemResources extends SharedDesktopResources { + public static final DropdownItemResources INSTANCE = GWT.create(DropdownItemResources.class); + + @Source("DropdownItem.gss") + LocalCss css(); + + public interface LocalCss extends CssResource { + String jsdropdown(); + String jsdropdown_head(); + String jsdropdown_content(); + String dropdown(); + String dropdown_head(); + String dropdown_head_title(); + String dropdown_head_title_button(); + String dropdown_content(); + String jsdropdownactive(); + String dropdown_content_link(); + String dropdown_content_link_title(); + String dropdown_content_link_subtitle(); + String dropdown_content_linkactive(); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeader.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeader.gss index 199dd59d12d..d67c7f7b136 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeader.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeader.gss @@ -1,121 +1,6 @@ /** * The header of the pages to an event */ -.jsdropdown { - position: relative; -} -.jsdropdown_head, -.jsdropdown_content { - text-indent: 0; -} -.dropdown { - font-size: 1rem; - width: 100%; - max-width: 100%; - display: inline-block; - text-align: left; - min-width: 21.333333333333332em; - margin-left: -0.666666666666667em; -} -.dropdown_head { - display: inline-block; - position: relative; - padding-left: 0.75em; - padding-right: 1.75em; - border-radius: 0.107142857142857em; - border: 1px solid transparent; - cursor: pointer; -} -.dropdown_head:hover { - border: 1px solid #cfcfcf; - background-color: #eee; - text-decoration: none; -} -.dropdown_head_title { - font-size: 1.866666666666667em; - color: #333; - height: 1.464285714285714em; - line-height: 1.428571428571429em; - font-weight: 700; -} -.dropdown_head_title_button { - position: absolute; - top: 0.75em; - right: 0; - display: inline-block; - margin-left: 0.714285714285714em; - height: 0.285714285714286em; - width: 0.428571428571429em; - background-image: resourceUrl("arrowDownFilledBlack"); - background-position: center bottom; - background-repeat: no-repeat; - background-size: 100%; - -webkit-transform: translate(-50%, -50%); - -moz-transform: translate(-50%, -50%); - -ms-transform: translate(-50%, -50%); - transform: translate(-50%, -50%); - float: none; -} -.dropdown_content { - position: absolute; - z-index: 1; - display: none; - height: auto; - max-height: 23.333333333333332em; - overflow: auto; - width: auto; - background-color: #fff; - border: 1px solid #ccc; - box-shadow: 0.133333333333333em 0.133333333333333em 0.333333333333333em #ccc; -} -.dropdownregattas_content { -} -.jsdropdownactive .dropdown_content { - display: block; -} -.dropdown_content_link { - display: block; - cursor: pointer; - padding: 1.333333333333333em 3.333333333333333em 1em 1em; - border-bottom: 1px solid #f4f4f4; - position: relative; - border: none; -} -.dropdown_content_link:hover, -.dropdown_content_link:focus { - background: #f8f8f8; - text-decoration: none; -} -.dropdown_content_link:hover .dropdown_content_link_title, -.dropdown_content_link:focus .dropdown_content_link_title { - text-decoration: underline; -} -.dropdown_content_link_title { - display: block; - font-weight: 600; - font-size: 1.2em; - color: #666; -} -.dropdown_content_link_subtitle { - color: #cfcfcf; - font-size: 1.066666666666667em; -} -.dropdown_content_linkactive:after { - content: ''; - position: absolute; - right: 1.333333333333333em; - top: 50%; - height: 0.933333333333333em; - width: 0.933333333333333em; - background-image: resourceUrl("dropdownCheck"); - background-repeat: no-repeat; - background-position: right center; - background-size: contain; - -webkit-transform: translate(0, -50%); - -moz-transform: translate(0, -50%); - -ms-transform: translate(0, -50%); - transform: translate(0, -50%); -} .leaderboardquickaccess { font-size: 1rem; text-align: right; @@ -203,66 +88,6 @@ .eventnavigationnormal { position: relative; } -.eventnavigation_dropdown { - display: inline-block; - position: relative; -} -.eventnavigation_dropdown_toggle { - cursor: pointer; - display: inline-block; -} -@media (min-width: 61em) { - .eventnavigation_dropdown_toggle { - display: none; - } -} -.eventnavigation_dropdown_toggle_icon { - display: inline-block; - position: relative; - top: 50%; - width: 0.8em; - height: 0.533333333333333em; - vertical-align: middle; - background-image: resourceUrl("arrowDownFilledBlack"); - background-size: 100%; - background-repeat: no-repeat; - background-position: center bottom; -} -.eventnavigation_dropdown_container { - position: absolute; - left: 0; - z-index: 99; -} -@media (min-width: 61em) { - .eventnavigation_dropdown_container { - display: inline-block; - position: relative; - left: auto; - } -} -.eventnavigation_dropdown_containerhidden { - display: none; -} -@media (min-width: 61em) { - .eventnavigation_dropdown_containerhidden { - display: inline-block; - } -} -.eventnavigation_dropdown_container .navbar_button { - border-top-width: 0; - width: 16.666666666666668em; -} -@media (min-width: 61em) { - .eventnavigation_dropdown_container .navbar_button { - border-top-width: 1px; - width: auto; - } -} -@media (min-width: 61em) { - .eventnavigation_dropdown_container .navbar_buttonhidden { - display: inline-block; - } -} .eventnavigation .navbar_button { font-size: 1.2rem; } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeader.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeader.java index 772e67b1d86..46e99b04e71 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeader.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeader.java @@ -26,7 +26,6 @@ import com.sap.sailing.gwt.home.desktop.places.event.EventView.Presenter; import com.sap.sailing.gwt.home.shared.partials.shared.SharingMetadataProvider; import com.sap.sailing.gwt.home.shared.places.ShareablePlaceContext; import com.sap.sailing.gwt.home.shared.places.event.AbstractEventPlace; -import com.sap.sailing.gwt.home.shared.utils.DropdownHandler; import com.sap.sailing.gwt.home.shared.utils.EventDatesFormatterUtil; import com.sap.sailing.gwt.home.shared.utils.LabelTypeUtil; import com.sap.sailing.gwt.home.shared.utils.LogoUtil; @@ -34,6 +33,7 @@ import com.sap.sailing.gwt.ui.client.StringMessages; import com.sap.sailing.gwt.ui.shared.databylogo.DataByLogo; import com.sap.sse.common.Util; import com.sap.sse.gwt.client.LinkUtil; +import com.sap.sse.gwt.client.controls.dropdown.DropdownHandler; public class EventHeader extends Composite { private static EventHeaderUiBinder uiBinder = GWT.create(EventHeaderUiBinder.class); @@ -71,6 +71,7 @@ public class EventHeader extends Composite { this.event = presenter.getEventDTO(); this.presenter = presenter; EventHeaderResources.INSTANCE.css().ensureInjected(); + DropdownItemResources.INSTANCE.css().ensureInjected(); initWidget(uiBinder.createAndBindUi(this)); initFields(); initSharing(); @@ -173,9 +174,9 @@ public class EventHeader extends Composite { @Override protected void dropdownStateChanged(boolean dropdownShown) { if (dropdownShown) { - dropdownTitle.addClassName(EventHeaderResources.INSTANCE.css().jsdropdownactive()); + dropdownTitle.addClassName(DropdownItemResources.INSTANCE.css().jsdropdownactive()); } else { - dropdownTitle.removeClassName(EventHeaderResources.INSTANCE.css().jsdropdownactive()); + dropdownTitle.removeClassName(DropdownItemResources.INSTANCE.css().jsdropdownactive()); } } }; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeader.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeader.ui.xml index 25f9bc81f96..cc838ed4310 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeader.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeader.ui.xml @@ -5,6 +5,7 @@ +
@@ -12,19 +13,19 @@
-
- - +
+ +
-
+
- + diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeaderResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeaderResources.java index 2d04bf42eb4..261a88d36f2 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeaderResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeaderResources.java @@ -15,19 +15,6 @@ public interface EventHeaderResources extends SharedDesktopResources { ImageResource location(); public interface LocalCss extends CssResource { - String jsdropdown(); - String jsdropdown_head(); - String jsdropdown_content(); - String dropdown(); - String dropdown_head(); - String dropdown_head_title(); - String dropdown_head_title_button(); - String dropdown_content(); - String jsdropdownactive(); - String dropdown_content_link(); - String dropdown_content_link_title(); - String dropdown_content_link_subtitle(); - String dropdown_content_linkactive(); String leaderboardquickaccess(); String eventheader(); String eventheader_breadcrumb(); @@ -44,12 +31,6 @@ public interface EventHeaderResources extends SharedDesktopResources { String locationicon(); String eventnavigation(); String eventnavigationnormal(); - String eventnavigation_dropdown(); - String eventnavigation_dropdown_toggle(); - String eventnavigation_dropdown_toggle_icon(); - String eventnavigation_dropdown_container(); - String eventnavigation_dropdown_containerhidden(); String navbar_button(); - String navbar_buttonhidden(); } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java index 94b89f4a601..bf586f30969 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java @@ -54,9 +54,9 @@ import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace.SolutionsNavigationTabs; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; import com.sap.sailing.gwt.home.shared.places.subscription.SubscriptionPlace; -import com.sap.sailing.gwt.home.shared.utils.DropdownHandler; import com.sap.sailing.gwt.ui.client.EntryPointLinkFactory; import com.sap.sailing.gwt.ui.client.StringMessages; +import com.sap.sse.gwt.client.controls.dropdown.DropdownHandler; import com.sap.sse.gwt.client.mvp.PlaceChangedEvent; import com.sap.sse.gwt.shared.ClientConfiguration; import com.sap.sse.gwt.shared.DebugConstants; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/regattanavigation/DropdownFilter.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/regattanavigation/DropdownFilter.java index 19d24acfbc2..1dc57a9c106 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/regattanavigation/DropdownFilter.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/regattanavigation/DropdownFilter.java @@ -14,8 +14,8 @@ import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.FlowPanel; import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.gwt.home.desktop.partials.regattanavigation.RegattaNavigationResources.LocalCss; -import com.sap.sailing.gwt.home.shared.utils.DropdownHandler; import com.sap.sse.gwt.client.LinkUtil; +import com.sap.sse.gwt.client.controls.dropdown.DropdownHandler; public class DropdownFilter extends Composite { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java index 3a52ed66afa..6a47bdf8081 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java @@ -24,9 +24,9 @@ import com.sap.sailing.gwt.home.shared.app.PlaceNavigation; import com.sap.sailing.gwt.home.shared.app.ResettableNavigationPathDisplay; import com.sap.sailing.gwt.home.shared.partials.header.HeaderConstants; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace.SolutionsNavigationTabs; -import com.sap.sailing.gwt.home.shared.utils.DropdownHandler; import com.sap.sailing.gwt.ui.client.StringMessages; import com.sap.sse.gwt.client.LinkUtil; +import com.sap.sse.gwt.client.controls.dropdown.DropdownHandler; import com.sap.sse.gwt.shared.ClientConfiguration; import com.sap.sse.security.shared.impl.SecuredSecurityTypes.ServerActions; import com.sap.sse.security.ui.authentication.AuthenticationContextEvent; diff --git a/java/com.sap.sse.gwt/META-INF/MANIFEST.MF b/java/com.sap.sse.gwt/META-INF/MANIFEST.MF index 6c06a47d21d..dbcb6fe5fc8 100644 --- a/java/com.sap.sse.gwt/META-INF/MANIFEST.MF +++ b/java/com.sap.sse.gwt/META-INF/MANIFEST.MF @@ -35,6 +35,7 @@ Export-Package: com.google.gwt.user.client.rpc.core.java.util, com.sap.sse.gwt.client.controls.busyindicator, com.sap.sse.gwt.client.controls.carousel, com.sap.sse.gwt.client.controls.datetime, + com.sap.sse.gwt.client.controls.dropdown, com.sap.sse.gwt.client.controls.filestorage, com.sap.sse.gwt.client.controls.languageselect, com.sap.sse.gwt.client.controls.listedit, diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/utils/DropdownHandler.java b/java/com.sap.sse.gwt/src/com/sap/sse/gwt/client/controls/dropdown/DropdownHandler.java similarity index 98% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/utils/DropdownHandler.java rename to java/com.sap.sse.gwt/src/com/sap/sse/gwt/client/controls/dropdown/DropdownHandler.java index 85a87ce30d4..a2117965e3f 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/utils/DropdownHandler.java +++ b/java/com.sap.sse.gwt/src/com/sap/sse/gwt/client/controls/dropdown/DropdownHandler.java @@ -1,4 +1,4 @@ -package com.sap.sailing.gwt.home.shared.utils; +package com.sap.sse.gwt.client.controls.dropdown; import com.google.gwt.core.client.Scheduler; import com.google.gwt.core.client.Scheduler.ScheduledCommand;