Skip to content

Commit 4b5796b

Browse files
committed
Banner Added Dark Mode support.
1 parent 4dfc79b commit 4b5796b

File tree

7 files changed

+60
-4
lines changed

7 files changed

+60
-4
lines changed

src/main/java/gwt/material/design/addins/client/banner/MaterialBanner.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,12 @@
66
import com.google.gwt.event.logical.shared.OpenEvent;
77
import com.google.gwt.event.logical.shared.OpenHandler;
88
import com.google.gwt.event.shared.HandlerRegistration;
9+
import com.google.gwt.user.client.ui.Panel;
910
import com.google.gwt.user.client.ui.Widget;
1011
import gwt.material.design.addins.client.MaterialAddins;
1112
import gwt.material.design.addins.client.banner.event.HasBannerHandlers;
13+
import gwt.material.design.addins.client.bubble.MaterialBubbleDarkTheme;
14+
import gwt.material.design.addins.client.dark.AddinsDarkThemeReloader;
1215
import gwt.material.design.client.MaterialDesignBase;
1316
import gwt.material.design.client.base.HasOpenClose;
1417
import gwt.material.design.client.base.MaterialWidget;
@@ -27,7 +30,7 @@ public class MaterialBanner extends MaterialWidget implements HasOpenClose, HasB
2730
private final MaterialPanel actions;
2831
private int translateY = 0;
2932
private int durationInMillis = 300;
30-
private MaterialWidget targetContainer;
33+
private Widget targetContainer;
3134

3235
private ToggleStyleMixin<MaterialBanner> openMixin;
3336

@@ -63,6 +66,8 @@ protected void onLoad() {
6366

6467
calculateTranslateY();
6568
updateTransition();
69+
70+
AddinsDarkThemeReloader.get().reload(MaterialBannerDarkTheme.class);
6671
}
6772

6873
@Override
@@ -100,14 +105,14 @@ protected void calculateTranslateY() {
100105

101106
protected void pushTargetContainer(int translateY) {
102107
if (targetContainer != null) {
103-
targetContainer.setTransform("translateY(" + translateY + "px)");
108+
$(targetContainer.getElement()).css("transform", "translateY(" + translateY + "px)");
104109
}
105110
}
106111

107112
protected void updateTransition() {
108113
$(getElement()).css("transition", "all " + durationInMillis + "ms ease");
109114
if (targetContainer != null) {
110-
$(targetContainer).css("transition", "all " + durationInMillis + "ms ease");
115+
$(targetContainer.getElement()).css("transition", "all " + durationInMillis + "ms ease");
111116
}
112117
}
113118

@@ -152,7 +157,7 @@ public MaterialLabel getMessageLabel() {
152157
return messageLabel;
153158
}
154159

155-
public MaterialWidget getTargetContainer() {
160+
public Widget getTargetContainer() {
156161
return targetContainer;
157162
}
158163

src/main/java/gwt/material/design/addins/client/banner/MaterialBannerClientBundle.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,4 +34,7 @@ public interface MaterialBannerClientBundle extends ClientBundle {
3434

3535
@Source("resources/css/banner.min.css")
3636
TextResource bannerCss();
37+
38+
@Source("resources/css/banner-dark.min.css")
39+
TextResource bannerDarkCss();
3740
}
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
/*
2+
* #%L
3+
* GwtMaterial
4+
* %%
5+
* Copyright (C) 2015 - 2019 GwtMaterialDesign
6+
* %%
7+
* Licensed under the Apache License, Version 2.0 (the "License");
8+
* you may not use this file except in compliance with the License.
9+
* You may obtain a copy of the License at
10+
*
11+
* http://www.apache.org/licenses/LICENSE-2.0
12+
*
13+
* Unless required by applicable law or agreed to in writing, software
14+
* distributed under the License is distributed on an "AS IS" BASIS,
15+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16+
* See the License for the specific language governing permissions and
17+
* limitations under the License.
18+
* #L%
19+
*/
20+
package gwt.material.design.addins.client.banner;
21+
22+
import gwt.material.design.addins.client.MaterialAddins;
23+
import gwt.material.design.addins.client.dark.AddinsWidgetDarkTheme;
24+
25+
public class MaterialBannerDarkTheme extends AddinsWidgetDarkTheme {
26+
27+
public MaterialBannerDarkTheme() {
28+
super(MaterialAddins.isDebug() ? MaterialBannerDebugClientBundle.INSTANCE.bannerDarkCss() : MaterialBannerClientBundle.INSTANCE.bannerDarkCss());
29+
}
30+
}

src/main/java/gwt/material/design/addins/client/banner/MaterialBannerDebugClientBundle.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,4 +34,7 @@ public interface MaterialBannerDebugClientBundle extends ClientBundle {
3434

3535
@Source("resources/css/banner.css")
3636
TextResource bannerDebugCss();
37+
38+
@Source("resources/css/banner-dark.css")
39+
TextResource bannerDarkCss();
3740
}

src/main/java/gwt/material/design/addins/client/dark/AddinsDarkThemeLoader.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
package gwt.material.design.addins.client.dark;
2121

2222
import gwt.material.design.addins.client.autocomplete.MaterialAutoCompleteDarkTheme;
23+
import gwt.material.design.addins.client.banner.MaterialBannerDarkTheme;
2324
import gwt.material.design.addins.client.bubble.MaterialBubbleDarkTheme;
2425
import gwt.material.design.addins.client.carousel.MaterialCarouselDarkTheme;
2526
import gwt.material.design.addins.client.combobox.MaterialComboBoxDarkTheme;
@@ -40,6 +41,7 @@ public class AddinsDarkThemeLoader extends DarkThemeLoader {
4041
public AddinsDarkThemeLoader() {
4142
super(new MaterialAutoCompleteDarkTheme(),
4243
new MaterialBubbleDarkTheme(),
44+
new MaterialBannerDarkTheme(),
4345
new MaterialComboBoxDarkTheme(),
4446
new MaterialCarouselDarkTheme(),
4547
new MaterialFileUploaderDarkTheme(),
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
.banner {
2+
background: #363636;
3+
border: none;
4+
}
5+
6+
.banner button {
7+
color: #bb86fc;
8+
}
9+
10+
.banner i.banner-icon {
11+
background: #bb86fc;
12+
}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
.banner{background:#363636;border:none}.banner button{color:#bb86fc}.banner i.banner-icon{background:#bb86fc}

0 commit comments

Comments
 (0)