From ae83f166390f8c62210efd180f8fd19382a73ef8 Mon Sep 17 00:00:00 2001 From: Vadim Lopatin Date: Thu, 5 Mar 2015 17:40:19 +0300 Subject: [PATCH] dark theme, part 1 --- examples/example1/src/example1.d | 8 +- examples/example1/views/res/i18n/en.ini | 5 +- examples/example1/views/res/i18n/ru.ini | 1 + src/dlangui/platforms/common/platform.d | 6 + src/dlangui/widgets/controls.d | 23 +- src/dlangui/widgets/styles.d | 21 +- src/dlangui/widgets/widget.d | 3 + views/res/btn_background_dark.xml | 18 + views/res/btn_background_transparent_dark.xml | 17 + views/res/btn_check_dark.xml | 45 ++ views/res/btn_default_normal_dark.9.png | Bin 0 -> 1623 bytes views/res/btn_default_pressed_dark.9.png | Bin 0 -> 1889 bytes views/res/btn_default_selected_dark.9.png | Bin 0 -> 1185 bytes views/res/btn_default_small_dark.xml | 33 ++ .../btn_default_small_transparent_dark.xml | 26 ++ views/res/btn_radio_background_dark.xml | 11 + views/res/btn_radio_dark.xml | 34 ++ views/res/combobox_background_dark.xml | 18 + views/res/editbox_background_dark.xml | 8 + views/res/list_item_background_dark.xml | 18 + views/res/list_item_background_solid_dark.xml | 18 + views/res/main_menu_item_background_dark.xml | 11 + ...main_menu_item_background_hover_dark.9.png | Bin 0 -> 191 bytes ...ain_menu_item_background_normal_dark.9.png | Bin 0 -> 189 bytes ...n_menu_item_background_selected_dark.9.png | Bin 0 -> 208 bytes .../res/mdpi/arrow_right_down_black_dark.png | Bin 0 -> 154 bytes views/res/mdpi/arrow_right_hollow_dark.png | Bin 0 -> 2877 bytes views/res/mdpi/btn_check_off_dark.png | Bin 0 -> 334 bytes .../res/mdpi/btn_check_off_disabled_dark.png | Bin 0 -> 244 bytes views/res/mdpi/btn_check_off_focused_dark.png | Bin 0 -> 332 bytes views/res/mdpi/btn_check_off_pressed.png | Bin 593 -> 289 bytes views/res/mdpi/btn_check_off_pressed_dark.png | Bin 0 -> 274 bytes views/res/mdpi/btn_check_on_dark.png | Bin 0 -> 484 bytes views/res/mdpi/btn_check_on_disabled_dark.png | Bin 0 -> 378 bytes views/res/mdpi/btn_check_on_focused_dark.png | Bin 0 -> 484 bytes views/res/mdpi/btn_check_on_pressed_dark.png | Bin 0 -> 494 bytes views/res/mdpi/btn_default_dark.9.png | Bin 0 -> 489 bytes .../mdpi/btn_default_small_normal_dark.9.png | Bin 0 -> 542 bytes ...tn_default_small_normal_disable_dark.9.png | Bin 0 -> 517 bytes ...lt_small_normal_disable_focused_dark.9.png | Bin 0 -> 503 bytes .../mdpi/btn_default_small_pressed_dark.9.png | Bin 0 -> 472 bytes .../btn_default_small_selected_dark.9.png | Bin 0 -> 462 bytes views/res/mdpi/btn_disabled_dark.9.png | Bin 0 -> 333 bytes views/res/mdpi/btn_hover_dark.9.png | Bin 0 -> 449 bytes views/res/mdpi/btn_normal_dark.9.png | Bin 0 -> 398 bytes views/res/mdpi/btn_pressed_dark.9.png | Bin 0 -> 475 bytes views/res/mdpi/btn_radio_off_dark.png | Bin 0 -> 595 bytes .../res/mdpi/btn_radio_off_disabled_dark.png | Bin 0 -> 565 bytes views/res/mdpi/btn_radio_off_focused_dark.png | Bin 0 -> 587 bytes views/res/mdpi/btn_radio_off_pressed_dark.png | Bin 0 -> 596 bytes views/res/mdpi/btn_radio_on_dark.png | Bin 0 -> 593 bytes views/res/mdpi/btn_radio_on_disabled_dark.png | Bin 0 -> 591 bytes views/res/mdpi/btn_radio_on_focused_dark.png | Bin 0 -> 596 bytes views/res/mdpi/btn_radio_on_pressed_dark.png | Bin 0 -> 593 bytes .../editbox_background_disabled_dark.9.png | Bin 0 -> 220 bytes ...itbox_background_disabled_focus_dark.9.png | Bin 0 -> 257 bytes .../mdpi/editbox_background_focus_dark.9.png | Bin 0 -> 259 bytes .../mdpi/editbox_background_normal_dark.9.png | Bin 0 -> 216 bytes .../mdpi/popup_window_background_dark.9.png | Bin 0 -> 503 bytes .../mdpi/tab_btn_dark_up_focused_dark.9.png | Bin 0 -> 210 bytes ...ab_btn_dark_up_focused_selected_dark.9.png | Bin 0 -> 205 bytes .../res/mdpi/tab_btn_dark_up_hover_dark.9.png | Bin 0 -> 210 bytes .../mdpi/tab_btn_dark_up_normal_dark.9.png | Bin 0 -> 210 bytes .../mdpi/tab_btn_dark_up_selected_dark.9.png | Bin 0 -> 209 bytes .../tab_up_background_dark_focused_dark.9.png | Bin 0 -> 187 bytes .../tab_up_background_dark_normal_dark.9.png | Bin 0 -> 193 bytes .../res/mdpi/toolbar_background_3d_dark.9.png | Bin 0 -> 247 bytes views/res/mdpi/toolbar_background_dark.9.png | Bin 0 -> 252 bytes .../res/mdpi/toolbar_button_hover_dark.9.png | Bin 0 -> 246 bytes .../mdpi/toolbar_button_pressed_dark.9.png | Bin 0 -> 245 bytes .../mdpi/toolbar_control_disabled_dark.9.png | Bin 0 -> 249 bytes .../mdpi/toolbar_control_normal_dark.9.png | Bin 0 -> 249 bytes views/res/mdpi/toolbar_separator_dark.png | Bin 0 -> 224 bytes views/res/mdpi/tooltip_background_dark.9.png | Bin 0 -> 562 bytes views/res/menu_item_background_dark.xml | 18 + .../popup_menu_background_normal_dark.9.png | Bin 0 -> 374 bytes views/res/tab_btn_dark_up_dark.xml | 17 + views/res/tab_btn_normal_dark.9.png | Bin 0 -> 1145 bytes views/res/tab_btn_up_dark.xml | 14 + views/res/tab_btn_up_focused_dark.9.png | Bin 0 -> 2120 bytes .../tab_btn_up_focused_selected_dark.9.png | Bin 0 -> 2120 bytes views/res/tab_btn_up_hover_dark.9.png | Bin 0 -> 252 bytes views/res/tab_btn_up_normal_dark.9.png | Bin 0 -> 273 bytes views/res/tab_btn_up_selected_dark.9.png | Bin 0 -> 255 bytes .../res/tab_up_background_focused_dark.9.png | Bin 0 -> 261 bytes .../res/tab_up_background_selected_dark.9.png | Bin 0 -> 263 bytes views/res/tab_up_background_theme_dark.xml | 8 + views/res/theme_dark.xml | 412 ++++++++++++++++++ views/res/theme_default.xml | 4 + views/res/toolbar_button_background_dark.xml | 23 + views/res/toolbar_control_background_dark.xml | 23 + .../transparent_button_background_dark.xml | 23 + views/standard_resources.list | 81 ++++ 93 files changed, 937 insertions(+), 10 deletions(-) create mode 100644 views/res/btn_background_dark.xml create mode 100644 views/res/btn_background_transparent_dark.xml create mode 100644 views/res/btn_check_dark.xml create mode 100644 views/res/btn_default_normal_dark.9.png create mode 100644 views/res/btn_default_pressed_dark.9.png create mode 100644 views/res/btn_default_selected_dark.9.png create mode 100644 views/res/btn_default_small_dark.xml create mode 100644 views/res/btn_default_small_transparent_dark.xml create mode 100644 views/res/btn_radio_background_dark.xml create mode 100644 views/res/btn_radio_dark.xml create mode 100644 views/res/combobox_background_dark.xml create mode 100644 views/res/editbox_background_dark.xml create mode 100644 views/res/list_item_background_dark.xml create mode 100644 views/res/list_item_background_solid_dark.xml create mode 100644 views/res/main_menu_item_background_dark.xml create mode 100644 views/res/main_menu_item_background_hover_dark.9.png create mode 100644 views/res/main_menu_item_background_normal_dark.9.png create mode 100644 views/res/main_menu_item_background_selected_dark.9.png create mode 100644 views/res/mdpi/arrow_right_down_black_dark.png create mode 100644 views/res/mdpi/arrow_right_hollow_dark.png create mode 100644 views/res/mdpi/btn_check_off_dark.png create mode 100644 views/res/mdpi/btn_check_off_disabled_dark.png create mode 100644 views/res/mdpi/btn_check_off_focused_dark.png create mode 100644 views/res/mdpi/btn_check_off_pressed_dark.png create mode 100644 views/res/mdpi/btn_check_on_dark.png create mode 100644 views/res/mdpi/btn_check_on_disabled_dark.png create mode 100644 views/res/mdpi/btn_check_on_focused_dark.png create mode 100644 views/res/mdpi/btn_check_on_pressed_dark.png create mode 100644 views/res/mdpi/btn_default_dark.9.png create mode 100644 views/res/mdpi/btn_default_small_normal_dark.9.png create mode 100644 views/res/mdpi/btn_default_small_normal_disable_dark.9.png create mode 100644 views/res/mdpi/btn_default_small_normal_disable_focused_dark.9.png create mode 100644 views/res/mdpi/btn_default_small_pressed_dark.9.png create mode 100644 views/res/mdpi/btn_default_small_selected_dark.9.png create mode 100644 views/res/mdpi/btn_disabled_dark.9.png create mode 100644 views/res/mdpi/btn_hover_dark.9.png create mode 100644 views/res/mdpi/btn_normal_dark.9.png create mode 100644 views/res/mdpi/btn_pressed_dark.9.png create mode 100644 views/res/mdpi/btn_radio_off_dark.png create mode 100644 views/res/mdpi/btn_radio_off_disabled_dark.png create mode 100644 views/res/mdpi/btn_radio_off_focused_dark.png create mode 100644 views/res/mdpi/btn_radio_off_pressed_dark.png create mode 100644 views/res/mdpi/btn_radio_on_dark.png create mode 100644 views/res/mdpi/btn_radio_on_disabled_dark.png create mode 100644 views/res/mdpi/btn_radio_on_focused_dark.png create mode 100644 views/res/mdpi/btn_radio_on_pressed_dark.png create mode 100644 views/res/mdpi/editbox_background_disabled_dark.9.png create mode 100644 views/res/mdpi/editbox_background_disabled_focus_dark.9.png create mode 100644 views/res/mdpi/editbox_background_focus_dark.9.png create mode 100644 views/res/mdpi/editbox_background_normal_dark.9.png create mode 100644 views/res/mdpi/popup_window_background_dark.9.png create mode 100644 views/res/mdpi/tab_btn_dark_up_focused_dark.9.png create mode 100644 views/res/mdpi/tab_btn_dark_up_focused_selected_dark.9.png create mode 100644 views/res/mdpi/tab_btn_dark_up_hover_dark.9.png create mode 100644 views/res/mdpi/tab_btn_dark_up_normal_dark.9.png create mode 100644 views/res/mdpi/tab_btn_dark_up_selected_dark.9.png create mode 100644 views/res/mdpi/tab_up_background_dark_focused_dark.9.png create mode 100644 views/res/mdpi/tab_up_background_dark_normal_dark.9.png create mode 100644 views/res/mdpi/toolbar_background_3d_dark.9.png create mode 100644 views/res/mdpi/toolbar_background_dark.9.png create mode 100644 views/res/mdpi/toolbar_button_hover_dark.9.png create mode 100644 views/res/mdpi/toolbar_button_pressed_dark.9.png create mode 100644 views/res/mdpi/toolbar_control_disabled_dark.9.png create mode 100644 views/res/mdpi/toolbar_control_normal_dark.9.png create mode 100644 views/res/mdpi/toolbar_separator_dark.png create mode 100644 views/res/mdpi/tooltip_background_dark.9.png create mode 100644 views/res/menu_item_background_dark.xml create mode 100644 views/res/popup_menu_background_normal_dark.9.png create mode 100644 views/res/tab_btn_dark_up_dark.xml create mode 100644 views/res/tab_btn_normal_dark.9.png create mode 100644 views/res/tab_btn_up_dark.xml create mode 100644 views/res/tab_btn_up_focused_dark.9.png create mode 100644 views/res/tab_btn_up_focused_selected_dark.9.png create mode 100644 views/res/tab_btn_up_hover_dark.9.png create mode 100644 views/res/tab_btn_up_normal_dark.9.png create mode 100644 views/res/tab_btn_up_selected_dark.9.png create mode 100644 views/res/tab_up_background_focused_dark.9.png create mode 100644 views/res/tab_up_background_selected_dark.9.png create mode 100644 views/res/tab_up_background_theme_dark.xml create mode 100644 views/res/theme_dark.xml create mode 100644 views/res/toolbar_button_background_dark.xml create mode 100644 views/res/toolbar_control_background_dark.xml create mode 100644 views/res/transparent_button_background_dark.xml diff --git a/examples/example1/src/example1.d b/examples/example1/src/example1.d index 997666f3..fa6b2c8b 100644 --- a/examples/example1/src/example1.d +++ b/examples/example1/src/example1.d @@ -316,21 +316,26 @@ extern (C) int UIAppMain(string[] args) { viewItem.add(langItem); MenuItem themeItem = new MenuItem(new Action(62, "MENU_VIEW_THEME")); MenuItem theme1 = (new MenuItem(new Action(621, "MENU_VIEW_THEME_DEFAULT"))).type(MenuItemType.Radio).checked(true); - MenuItem theme2 = (new MenuItem(new Action(622, "MENU_VIEW_THEME_CUSTOM1"))).type(MenuItemType.Radio); + MenuItem theme2 = (new MenuItem(new Action(622, "MENU_VIEW_THEME_DARK"))).type(MenuItemType.Radio); + MenuItem theme3 = (new MenuItem(new Action(623, "MENU_VIEW_THEME_CUSTOM1"))).type(MenuItemType.Radio); auto onThemeChange = delegate (MenuItem item) { if (!item.checked) return false; if (item.id == 621) { platform.instance.uiTheme = "theme_default"; } else if (item.id == 622) { + platform.instance.uiTheme = "theme_dark"; + } else if (item.id == 623) { platform.instance.uiTheme = "theme_custom1"; } return true; }; theme1.onMenuItemClick = onThemeChange; theme2.onMenuItemClick = onThemeChange; + theme3.onMenuItemClick = onThemeChange; themeItem.add(theme1); themeItem.add(theme2); + themeItem.add(theme3); viewItem.add(themeItem); MenuItem windowItem = new MenuItem(new Action(3, "MENU_WINDOW"c)); @@ -842,7 +847,6 @@ void main() window.mainWidget = contentLayout; tabs.selectTab("tab3"); - } else { window.mainWidget = (new Button()).text("sample button"); } diff --git a/examples/example1/views/res/i18n/en.ini b/examples/example1/views/res/i18n/en.ini index 87cfc368..5016474a 100644 --- a/examples/example1/views/res/i18n/en.ini +++ b/examples/example1/views/res/i18n/en.ini @@ -18,8 +18,9 @@ MENU_VIEW_LANGUAGE=Interface &Language MENU_VIEW_LANGUAGE_EN=English MENU_VIEW_LANGUAGE_RU=Русский MENU_VIEW_THEME=&Theme -MENU_VIEW_THEME_DEFAULT=&Default -MENU_VIEW_THEME_CUSTOM1=&Custom 1 +MENU_VIEW_THEME_DEFAULT=Default +MENU_VIEW_THEME_DARK=Dark +MENU_VIEW_THEME_CUSTOM1=Custom 1 MENU_WINDOW=&Window MENU_WINDOW_PREFERENCES=&Preferences MENU_HELP=&Help diff --git a/examples/example1/views/res/i18n/ru.ini b/examples/example1/views/res/i18n/ru.ini index 82f24a22..ab52d3d0 100644 --- a/examples/example1/views/res/i18n/ru.ini +++ b/examples/example1/views/res/i18n/ru.ini @@ -17,6 +17,7 @@ MENU_VIEW_LANGUAGE_EN=English MENU_VIEW_LANGUAGE_RU=Русский MENU_VIEW_THEME=&Тема MENU_VIEW_THEME_DEFAULT=Стандартная +MENU_VIEW_THEME_DARK=Тёмная MENU_VIEW_THEME_CUSTOM1=Пример 1 MENU_WINDOW=&Окно MENU_WINDOW_PREFERENCES=&Настройки diff --git a/src/dlangui/platforms/common/platform.d b/src/dlangui/platforms/common/platform.d index 5c16b962..38449d45 100644 --- a/src/dlangui/platforms/common/platform.d +++ b/src/dlangui/platforms/common/platform.d @@ -386,6 +386,8 @@ class Window { _eventList = new EventList(); _timerQueue = new TimerQueue(); _backgroundColor = 0xFFFFFF; + if (currentTheme) + _backgroundColor = currentTheme.customColor(STYLE_COLOR_WINDOW_BACKGROUND); } ~this() { debug Log.d("Destroying window"); @@ -778,6 +780,10 @@ class Window { } if (_tooltip.popup) _tooltip.popup.onThemeChanged(); + if (currentTheme) { + _backgroundColor = currentTheme.customColor(STYLE_COLOR_WINDOW_BACKGROUND); + } + invalidate(); } diff --git a/src/dlangui/widgets/controls.d b/src/dlangui/widgets/controls.d index 6654fc32..abee249b 100644 --- a/src/dlangui/widgets/controls.d +++ b/src/dlangui/widgets/controls.d @@ -305,16 +305,18 @@ class UrlImageTextButton : ImageTextButton { } } + + /// checkbox class CheckBox : ImageTextButton { this(string ID = null, string textResourceId = null) { - super(ID, "btn_check", textResourceId); + super(ID, getCustomDrawableId("btn_check"), textResourceId); } this(string ID, dstring labelText) { - super(ID, "btn_check", labelText); + super(ID, getCustomDrawableId("btn_check"), labelText); } this(string ID, UIString label) { - super(ID, "btn_check", label); + super(ID, getCustomDrawableId("btn_check"), label); } override protected void init(string drawableId, UIString caption) { super.init(drawableId, caption); @@ -330,15 +332,20 @@ class CheckBox : ImageTextButton { checked = !checked; return super.handleClick(); } + /// handle theme change: e.g. reload some themed resources + override void onThemeChanged() { + if (currentTheme) + _icon.drawableId = getCustomDrawableId("btn_check"); + } } /// radio button class RadioButton : ImageTextButton { this(string ID = null, string textResourceId = null) { - super(ID, "btn_radio", textResourceId); + super(ID,getCustomDrawableId("btn_radio"), textResourceId); } this(string ID, dstring labelText) { - super(ID, "btn_radio", labelText); + super(ID, getCustomDrawableId("btn_radio"), labelText); } override protected void init(string drawableId, UIString caption) { super.init(drawableId, caption); @@ -350,6 +357,12 @@ class RadioButton : ImageTextButton { checkable = true; } + /// handle theme change: e.g. reload some themed resources + override void onThemeChanged() { + if (currentTheme) + _icon.drawableId = getCustomDrawableId("btn_radio"); + } + void uncheckSiblings() { Widget p = parent; if (!p) diff --git a/src/dlangui/widgets/styles.d b/src/dlangui/widgets/styles.d index 199d24c1..ad67ca9f 100644 --- a/src/dlangui/widgets/styles.d +++ b/src/dlangui/widgets/styles.d @@ -166,6 +166,12 @@ immutable string STYLE_SETTINGS_PAGES = "SETTINGS_PAGES"; /// standard style id for settings dialog page title immutable string STYLE_SETTINGS_PAGE_TITLE = "SETTINGS_PAGE_TITLE"; +/// window background color resource id +immutable string STYLE_COLOR_WINDOW_BACKGROUND = "window_background"; +/// dialog background color resource id +immutable string STYLE_COLOR_DIALOG_BACKGROUND = "dialog_background"; + + // Layout size constants /// layout option, to occupy all available place immutable int FILL_PARENT = int.max - 1; @@ -277,6 +283,14 @@ class Style { protected FontRef _font; protected DrawableRef _backgroundDrawable; + void onThemeChanged() { + _backgroundDrawable.clear(); + foreach(s; _substates) + s.onThemeChanged(); + foreach(s; _children) + s.onThemeChanged(); + } + @property const(Theme) theme() const { if (_theme !is null) return _theme; @@ -334,7 +348,7 @@ class Style { (cast(Style)this)._backgroundDrawable = drawableCache.get(image); } else { uint color = backgroundColor; - (cast(Style)this)._backgroundDrawable = new SolidFillDrawable(color); + (cast(Style)this)._backgroundDrawable = isFullyTransparentColor(color) ? new EmptyDrawable() : new SolidFillDrawable(color); } return (cast(Style)this)._backgroundDrawable; } @@ -1357,6 +1371,11 @@ class DrawableAttribute { } } +/// returns custom drawable replacement id for specified id from current theme, or returns passed value if not found or no current theme +string getCustomDrawableId(string id) { + string res = currentTheme ? currentTheme.customDrawableId(id) : id; + return !res ? id : res; +} shared static ~this() { currentTheme = null; diff --git a/src/dlangui/widgets/widget.d b/src/dlangui/widgets/widget.d index 1e0b74e5..3c848f1c 100644 --- a/src/dlangui/widgets/widget.d +++ b/src/dlangui/widgets/widget.d @@ -247,6 +247,9 @@ class Widget { // default implementation: call recursive for children for (int i = 0; i < childCount; i++) child(i).onThemeChanged(); + if (_ownStyle) { + _ownStyle.onThemeChanged(); + } } /// returns widget id, null if not set diff --git a/views/res/btn_background_dark.xml b/views/res/btn_background_dark.xml new file mode 100644 index 00000000..7c86b3e0 --- /dev/null +++ b/views/res/btn_background_dark.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + diff --git a/views/res/btn_background_transparent_dark.xml b/views/res/btn_background_transparent_dark.xml new file mode 100644 index 00000000..be66fbed --- /dev/null +++ b/views/res/btn_background_transparent_dark.xml @@ -0,0 +1,17 @@ + + + + + + + + diff --git a/views/res/btn_check_dark.xml b/views/res/btn_check_dark.xml new file mode 100644 index 00000000..2ce27eda --- /dev/null +++ b/views/res/btn_check_dark.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/views/res/btn_default_normal_dark.9.png b/views/res/btn_default_normal_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..708090584023d90222e5e6c7fb96304663837b63 GIT binary patch literal 1623 zcmV-d2B`UoP)e^yU~MF55)*(5z+QKe;hqxU?%D!qyU*yb$Cx4jd*|op2aCnx%f(``Xxo;U znTRN;j(r&ssnZ>*XJ&M&&Q(?M)z#J2&CSir<#Krg;7un~5R)i1;MwWv={IL*XU|Vg zPF}bShlG&?lo$?`x#brZ7e8EHUjDRPE`J2@I#&<^@X^7+!PiGeN8h(?JMEe63Hyxq zOt>@S*ZJRl!QAi1$H(8@-QB$c@H2qFu$z@+K`H<3m3-(8&A0V}fkAThw*U0H)YEn<%pq zhZTTnUDuPgZ6B%4Sa4OBnb9=O9^MHe64#8Kn3)`J^5D}a>@p+GV9Z;&_0H^=Tz;iB z=sNN{4>A#BHdHS4<&<$TLH;Yy1R;MEtu|tvrAGw4{;l_EHuAPJ-!@#rzI|v+Sb||l zWn;*)kq}c>q89rK#2HNuSXC_(cOD}p+gW)?Hujvr7b_3tYdKJDBos$n#!?8!(iFuN z4|2Z@&udA6D;E|cFB%YYTQkf9C#ofE zr0?KCCt4iQgi47cPSU8tVk4G*O!r7$%g~o9Oj3#hgjLDvh86D=O5rW+0WhvdB&K}_ z5UNW>Zn9Y-CYtlg>maGLWI1XOS72Q3K5Ml zr^@zlPR97nfK%s!Bj(RLUNUACI8;J5I)iR~=64Aaqbq!&#i=t_~iJ8#v zn9wnUAA;niZmAWWNHDX%LB=lWzF#NJgw)o9DIlsTici>$A${Hziy>AulLRkjBiucq zDv3m!C=w6}f!)SThQxa$^>i}rA~OPxaICpfjbTH8En_2o90}P)3^~En9f-CS9~(YE zk==O9=!V+olu0PQ)Xhm2B@j{HxSx9QX3LC-#xB9?94tb!af8lcBM*qWam3eeOZ@N| z4KV(Qo(0;L>4T)vl22KYaQ`@u-n5-Y3oNlDb)b^hBSVcjg~5_u>(S=L8eAse@y+ow+_MAr(lATj1+429|>m5S7t zkL=cUgmiCeK(w|`em;`IL`s`TdxF7pC2wL&xz<>zz7^yjU5$4ZCFG7vU`Rj7XHiN*iYZ5OOXlZE@=~7}^!HkrK=ly)T48=e0g06nm;$Y8Sl%g^^J9WAfWKF()$R55^>6d}{E!1L#f*VYt$4j&-`?Kdz67vF zU(M(9Z}<227esW(%oAqbgEBe;K}57AqBqR^$Nl~N@2l177XZHkxR+?h1la?y58yKZ zpLE|RP+rF_ge`V2;s1%#nN1#x#7!PK{asHFnH5c=tyZ z$%6F$yZ;A{$|)OFwYvU$fm{JZJF$-JzwUY+eE4a_6Q1ydC;X2wViL&SH5!;1{{XZI VFd7cJj`IKj002ovPDHLkV1kD509gP4 literal 0 HcmV?d00001 diff --git a/views/res/btn_default_pressed_dark.9.png b/views/res/btn_default_pressed_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..849cd48e62d26d26c8e07bbc9c036c83bde4d640 GIT binary patch literal 1889 zcmV-n2cGzeP)h5)m_!~ud231RS^-k zfNpc}6)~w{s!KL$$Cx@4ZveM}n?Mow)j$QfcpdAO67cbR8IK_z=aS!SpT^C{eMS6U z#n1l$e*>?8)m%Xe;P|UA?tJ>-o#Rh#zj^C!U26eQIH}7*YVTDPL}KHrT1)4|1JquN zvXCl%cB(iLyc1CX@6{ow6HzC41nOD~5z(@cs`6T%o&Ndkn_R-0gAAfNB^ONJlBfK9u*oGhYR00{g)b8K}B{;BNy*94Xhwxig zcBz5NT;^$O2TgGbh2kZjYAG7-ZL?^nPK*f>dO|gyAPUmnyH~M?1Th2i!7IJS#%+n% zi#2e;3_oIeSvjY^G4!R4U6fT#Nvl>{QxqGKLcPlR?xhgg>qOH)trJuHh$t%AX0GT& zB4*i$vEPiA4hVQ{rr+LRXe>e$plnEE4g^iG82+4|hK#9Jom?yrRH4*$plSa=n@{HX;CfaUNfuqBNmh`=<|M#$Ev0QpTkv3A8GvX)UMRi7BcTC`w-E zZa!^2Vofl~k4QEl!ia>9>}I`&F&l|JVLV}ZBN0G@jamk!6JvR;b|@9H*hq*Fjlgc! zVj66rS{Y;ZHXYQ9u~4@JT)rAz^v4q%;#jC#0)?td9@QcQR)M0_LpLAuBSKa`5}+Zk zWhI4945?NfH<#CsD77~Ex87|0l$gDUG&+<#mqf!Eo8-qVKa$K8mWh|;g#knw#=1vO ziF(Y~jcZL|(mR6M$_8bi&OXJnyEe_3$=D}^x|2v_oBPdBQ)qpdX-FrgOursfv-uH1 zPZB2{W>&0Xf-WybNoK9OuOX9S_VrYJ1{-N_Jj)@r3AzT0r{Wn{?68Kh8sdtEMaMNj zO9$gVCAD6au zY1l6en8LJpB(?P=(Nfkc=YFF@G#Z`5kAU}Tsx`~l3j#$6nZ_)$7NBYr1wsw+FSc}u z&8&qYLBaBP_UOm@7M%gptGZeJNNoP)rHKi)sE_3HBf1{yc4Ev%4geQ)%C40`7-`zG zPYCw5CXJyyozvKXxL#~<`W;*5RFUR>Gug<-GN-L=L7eAR;)TPB^#e_g=uU?TriM6EOrTF zHd2wq0L!!Aa6hk2JTlvl$l%wV!-~mbEaOV`k)+0+N01nyT3FGEF(clPJ`-uwCRx~v zDHLUc`7SApaV<4tKVSxpx06N0*zcgd?EoPRa?$3Q86g@=TwSc3$6rwH$EUD2O=gM- zZTi!x^sTD#-dzwL(4Q3{3ZVy1pZqFM5BJXx_sW0E>G?Hq2K)$o3w%$H zY7Ggp2OJXKGH{3R&WAnPa-7A`FQae;?eu63Dia~oluj9iu6hJF+P)&F)ERI}$Z2)1 zM;Q~u5$bkFvC+1_rcF+~V*SMwM)0iH(^0Z2m@UV+NRF|6&67m&|2gYMe%{sCDbKUp z$@a#L6|JtmN{%zt+I&k#`W(8@_GtRKNH!C;PL8qBUHZ}OYh2?R*SN<21v^~8uN&LW bpsM@_<>&Z)LzYnb00000NkvXXu0mjf=L&>A literal 0 HcmV?d00001 diff --git a/views/res/btn_default_selected_dark.9.png b/views/res/btn_default_selected_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..2be8da670761dd83be735eb833fd1be92f272186 GIT binary patch literal 1185 zcmV;S1YY}zP)+QgPNJM-@OoO5Pkk}xxt zfR?#=MYtv=rJT~55n^mW0bB=e*1wk$---}$2>b;c)1eK+z=Hhy`RqM0SAtpL}@pv&Z|_K7D6*xK}3B$HI)~ zuk7ccY4r5q=miy#xd;&%0r%eDzxDB3!^1m=-#$-jSZ2n%`}glYxOd|r{I&NTtxCKmV!y1SGD?JCozb)p0zf};kA}12SNHYo;DhW2KK}e%dScYl86@zBKrpLKT<6LwRnW^sOEo^ymB$q^#!!YJdqznEy zl3OTI0%C0=S-8}@A3|`gM`kIcZ%%_}sq2g*m|pvu7E$9!53D^#5qtWy^iZ^gRWDpt z2>o7!YaK90}RvklT*CSaFYt0UqrLB;! z+9+m?ebo&Exof6jxT+{^1tkl7zTdm2F?Vo>xZ7pZi={SlMVAGtons>b(39uZV)1JIn3>4Kq>Y;y5c<6Q@) z43;|s8ym6eTJ)ej9VNt0=5Gp{vr; zGLls)VXODqC&2N)Cpy(oy!rMdxsr_$XJ?!MCtdf2h@1hxfAtIB?+hnzTpuwk6Shjs z(BUyBKfL58;14>CwKMDkcYu$8hrk11myQ$6Yrq)z6Zi)B0{9v@op)o1$OyPaMQ9he zN+rb + + + + + + + + + + + + diff --git a/views/res/btn_default_small_transparent_dark.xml b/views/res/btn_default_small_transparent_dark.xml new file mode 100644 index 00000000..17527d3f --- /dev/null +++ b/views/res/btn_default_small_transparent_dark.xml @@ -0,0 +1,26 @@ + + + + + + + + + diff --git a/views/res/btn_radio_background_dark.xml b/views/res/btn_radio_background_dark.xml new file mode 100644 index 00000000..005b6fc7 --- /dev/null +++ b/views/res/btn_radio_background_dark.xml @@ -0,0 +1,11 @@ + + + + + + diff --git a/views/res/btn_radio_dark.xml b/views/res/btn_radio_dark.xml new file mode 100644 index 00000000..c196fff1 --- /dev/null +++ b/views/res/btn_radio_dark.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/views/res/combobox_background_dark.xml b/views/res/combobox_background_dark.xml new file mode 100644 index 00000000..f9bedd80 --- /dev/null +++ b/views/res/combobox_background_dark.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + diff --git a/views/res/editbox_background_dark.xml b/views/res/editbox_background_dark.xml new file mode 100644 index 00000000..1b19d1e1 --- /dev/null +++ b/views/res/editbox_background_dark.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/views/res/list_item_background_dark.xml b/views/res/list_item_background_dark.xml new file mode 100644 index 00000000..31b659c2 --- /dev/null +++ b/views/res/list_item_background_dark.xml @@ -0,0 +1,18 @@ + + + + + + + + diff --git a/views/res/list_item_background_solid_dark.xml b/views/res/list_item_background_solid_dark.xml new file mode 100644 index 00000000..86d565ba --- /dev/null +++ b/views/res/list_item_background_solid_dark.xml @@ -0,0 +1,18 @@ + + + + + + + + diff --git a/views/res/main_menu_item_background_dark.xml b/views/res/main_menu_item_background_dark.xml new file mode 100644 index 00000000..005b6fc7 --- /dev/null +++ b/views/res/main_menu_item_background_dark.xml @@ -0,0 +1,11 @@ + + + + + + diff --git a/views/res/main_menu_item_background_hover_dark.9.png b/views/res/main_menu_item_background_hover_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..b3d29f1da9c80cbede8a3c51aa55f248202c878c GIT binary patch literal 191 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6T^OD- zykK~f`>X#qP=vFwn1(<{ph6dHZ_7)q<=A8#Wsn83u67@F+0zW7c5&zw%LQAhX*Z#vY#&mfbqS f8&v&+zA!M%@#c^_yXB}W&?p8^S3j3^P6X#qP=vF*#cR~q!efngQu&X%Q~loCIIwKGnW7W literal 0 HcmV?d00001 diff --git a/views/res/main_menu_item_background_selected_dark.9.png b/views/res/main_menu_item_background_selected_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..a8d989971e7fda1ff4f56ca6d899a1f8fb68fd5e GIT binary patch literal 208 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6T^OD- zykK~f`>X#qP=vF$1hJ*(5e@)Yd t#48Pf%o0E_b3(CLq*{Xayd^If87BL3D>VH}(FdB%;OXk;vd$@?2>^iDI_v-d literal 0 HcmV?d00001 diff --git a/views/res/mdpi/arrow_right_down_black_dark.png b/views/res/mdpi/arrow_right_down_black_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..e4adc299332bea75dd819e06c02383eb25ae813d GIT binary patch literal 154 zcmeAS@N?(olHy`uVBq!ia0vp^{2zL)$t o;52m~TTOWI0@f%n`gQmqQ_^dRRA$ybZJ-tgPgg&ebxsLQ0IdiqPyhe` literal 0 HcmV?d00001 diff --git a/views/res/mdpi/arrow_right_hollow_dark.png b/views/res/mdpi/arrow_right_hollow_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..1a30a31200d6fcb9a3554b15a272d99105d84bc7 GIT binary patch literal 2877 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 literal 0 HcmV?d00001 diff --git a/views/res/mdpi/btn_check_off_disabled_dark.png b/views/res/mdpi/btn_check_off_disabled_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..c09449a310b43714fabe8560e9ffaeefe6cabcbf GIT binary patch literal 244 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4Pvb__>W@|Vg3MK}vQ zB8wRqxP?KOkzv*x37{Z*iKnkC`+a6sJ|;o!f>j=AZ}p~inEFRN2ES+%z^I&dV;XHD)|!^H4l@ATd@wn+>D_vd{6 zdVlt!1j$5^Fr}aamfxAqu6h3;M?v%8c@C}|$Nm-NjdC_m9-MynfiG(E)D68i=G;2C mCZTsi(63UTn7wX?lVnBx`LBoP{n`X{41=eupUXO@geCx#k5;e% literal 0 HcmV?d00001 diff --git a/views/res/mdpi/btn_check_off_focused_dark.png b/views/res/mdpi/btn_check_off_focused_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..88fe7240d150c26cc3c90909f48ee68069102bf3 GIT binary patch literal 332 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4Pvb__>W@|Vg3MK}vQ zB8wRqxP?KOkzv*x37{Z*iKnkC`+a6sJ|<1o8<8s9=@`8tasAm3d7@bA0VbJ-&Ax2v}}FbS`j&hMr1^=IPt9Hz4mzFfC^cX0B86GA!@ zzE>}1^V(i?#l~Bp=Ewq{>n!gCcy*SV^y^FPXtZQGc&9hQWvvr?2{Rk3%wG9*`@Zqb znAye~z&QKiD_)-qOolyE1X%VzpLXi#ndnsvir*FH@=L7|tNgnE+QIz=|84G1T=vf` bd6C}Q2MW=T{?F_IdXmA@)z4*}Q$iB})c}9f literal 0 HcmV?d00001 diff --git a/views/res/mdpi/btn_check_off_pressed.png b/views/res/mdpi/btn_check_off_pressed.png index 2e64acc26da59d30bef6fb106a91fa3811d632b1..c71fc57de28764b05b300b6719cb64a0ed44d3de 100644 GIT binary patch delta 255 zcmcb}vXE(lR=qrf9mA28{H5{?3=EtF9+AZi4BWyX%*Zfnjs#GUy~NYkmHj?5D<6y4 z(I=Om1BKRkx;TbdoKF7p;UP1#YC~&dW8=YP8QqSzT)aUtySC!36~cBuE?$UdSPd0;L7 zeo2c+$-pBsJih*Z9{*p%m_e4uoVlfy^@Mll2baT#4i&sUod1cpBj|Z*0uVe%NK6q( zN>BT7{=k6`|DMOU$=ClAHe;}?oWvxddA3*NI1|Gj8I3%tvaszyr!#oE`njxgN@xNA DZ2o3Q delta 562 zcmV-20?qxQ0?`DJDu4d~{{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G` z2j2k=4JaoNIen!700G`fL_t(I%gvHaPZMDjg`aocnJF_&2PD%0i$JM-m{4J%k|>FB zqb}ST{)h3G5dMc@tz~CI2njJ{024m6QwgM0Y=se|Ez{S9v44?J-RfE1zB18~#t;%>&{`TYs;S3r1hsOA^f85r=H98Ht;T>w6oPY8An*xM`f z;_+=V>E70!{yShUACS8>$irNQ)xs&8dsP5@*WlUoIB)F)bNQgXgN5Zy6@HI-dS{H+ z8^?H-q{sfrkALb-smBVEU}d+=)M!6z#WPa2POoE-&;?G1By-JV zu*+ntRAXwipOxKm%RvheRw9P|B!^LhRHsft7ucr6Nl2`OWT4xm9xI0ZBw;0@Z3X~_ zA+QXM4pYN2G#pby3V~AKS&~LmAvJN;!BCG&c=U}v*MB5xC~Q;1Nod%*hHVHG3g6M$ zubgtDJ9!l_o%IN|_nAmrRO>NOt%*b+fX0QQ5i49r5^V1?o%OB)W@mDuP%N?ZKIB2R z6CvUA*#*_}m~#{zj%0DIK%rP-b|xqOSfsgp!0=EXxsmIP^>zWUb9ln~?g52jiI-0% zFBPe6l`CH@ZK!vjzOYsL3c!fxaxa^@bou|$4>**f;(xh|UH||907*qoM6N<$f-7qS AMF0Q* diff --git a/views/res/mdpi/btn_check_off_pressed_dark.png b/views/res/mdpi/btn_check_off_pressed_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..fa035657b4979174f42677fb9c71de231d8bbed0 GIT binary patch literal 274 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4Pvb__>W@|Vg3MK}vQ zB8wRqxP?KOkzv*x37{Z*iKnkC`+a6sK33+9N^HJBq4}OJjv*GOlmC2p$jq$T(AwD8 z=;#yp-F~H1{N4R$ILsSB0{0IIEl=_@OJgfjV{6N=|7ZB;*XQ{UA9X%nq1Vtj`+NMu zt)U@49gZ#SqL;Z(IK&3>EN6Vb?_Xkq>*a$ktM1qT`{zHC@kPQ8$peQDy2g3ANE|=& z;oWQbPrLzQ&s#V)85k98c98l0^}KzXef>XSGX~4bNlX%&XM07CGcjB&QD3f5&A@? literal 0 HcmV?d00001 diff --git a/views/res/mdpi/btn_check_on_dark.png b/views/res/mdpi/btn_check_on_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..e4f85adf95913208cb667ca65ed5c08b1a399ad2 GIT binary patch literal 484 zcmV2P?Lr%ryW20dYx0 zK~y-)rIR~L15pr#zqz{`)U4T9_`nE)_(DNUV~T)aAqbXM7AiJ2w)P5wzrZGyg_Q^v zLbOO7AyqmNEEKd5i6Ia*5#x@97>thv$$<-ZV9s|h!x<@+N;D%IARdqFe~tNkUg`jV zL?ZELvoQt{!S{Vsm0T{@_=8WKUtIn$M zPF6QII5^8uC_W-0!GKSR5!`Sqmsj^BXXnXg(!{zwR5ch73OTrL8;)(!?uOYtJ_Xqdx zMN}2rv4a86PZf6776I7aKdiq#I@p7%Vp&!&pjLaOwZ&m+W*UHOCe6cb0Rcn=%b4Gj z_%$$3k7dS&V=T{1BO*-22dPx6sIM4f2Lt+Iz4d!?Y6Mlq_kBW+6TAyRLp=W@X?7b8 aP3j$A^Kg|!pC~8*0000W@|Vg3MK}vQ zB8wRqxP?KOkzv*x37{Z*iKnkC`+a6sK2Fh>&VPW$FtU5PIEGl9UOL&Z?~s9j>wO+O zhIc~WUuqOF`87;2@;bYAfpYi>PK!oWE~zZ5B`UF98X>Rmp0&y-mpr-26t$TYgJTo-ZkcYW)9&^IlShK2i3o@k`x)w1!D6r5e>(??k7I58^ z;a>Hct@r;OyyIeAUmmLJ8|=4SSgEP_-Eq;yEXCz>i@RL|n@&Idv_5fC`SQR@<9So( WJJ3Km;u{%HUJ0dYx0 zK~y-)#goe`L~#_yKlgWU?o8xL7GugIbqyJh1rnjAA&DZ7g+eK|)GVxQ`~z4i3k&QJ zC5nY)#mpo{QWnU3@#&zb+(|Nl{ysKW*3pv$XQ^cXRCx-h_vdkbYuW?yT`~Y;i!+?;9n$D40wBlh zMws|tI-&Y8i)-~a%Dks$#5dM*vMh1?n7P$YZ6`Hg`V@1(iJ2f*BFh|H{P9)v)a zz@dCR_M4OiY~MO*YN(*K)Q^xPx;tw)x-u~>h!NiaDm@ZlB1;-wJ$27p85WLM3NmM88n^%e0eeYA zK~y-)#goq~g8>-FKktvddpB!i#aK}$+Q#<2uY)YJyd}v~&*gcZ@8@~?)&su`0l-$-Z2VN1zCIEFqr8 zlrXon0Kod{7MICv(V_x?+wEj-c8a^>Gitpqd`&F?40MGFwEM_pHFH3X#{t0n@*>(} zl2AATKyzyYPp>)-RW=7C9$%Q5oB&{adJ2HSU=LmXdR`3!nLknb}Pe?ApqjB zO&Xhgq;*gP0lTFbPSjz;r68UO$Q07*qoM6N<$g7+TCJpcdz literal 0 HcmV?d00001 diff --git a/views/res/mdpi/btn_default_dark.9.png b/views/res/mdpi/btn_default_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..d91cdb6a9a1f52eb625195ea2fd264cfaf44ca9f GIT binary patch literal 489 zcmV!B3`vqy)1PwLve~F{eST`b z0ekU*+`o)4tzFD=MFo)8G19wZr@q4V#i@w^9tR$?-DYLg5?9|;fKFr?ZSC^-&;=j@ zBuz6)l?rk7jcQ5NpSYTFl~qX74CkCgIe7@8>;LQd9Dp!MMNy#;5D*~9A{2xo1wn05 zp@ND3i^yO)$!PkH%;NuQk<7~=2&31rI^>Z6;b&P({B!+eAOfP_1LUjMyeSgVzwvC3 z{2qv)9aIrhum|B&ny3N!U6`>*cvo8_#owaEC@@6;`9=S`g8UR2Ya>aMgxm5O?b1*M z=!P033D!n|qpX2Wsc?=fz+xQXgI1zCdW_h>d;{?LyPkLBsvlcu_utzBYc-O;%` fGdaM2{kD7ny5+hWu;VFC00000NkvXXu0mjfOU~C5 literal 0 HcmV?d00001 diff --git a/views/res/mdpi/btn_default_small_normal_dark.9.png b/views/res/mdpi/btn_default_small_normal_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..0fc795090024f1716937e33764ed8edf847cb17c GIT binary patch literal 542 zcmV+(0^$9MP)#yLx6qY95@3s6UYItz#8~2Lg2-6xxAat=Zj7j5xnmb^xpse zSJ(CZYPDJc&k7VkHJi;A&N-iRdGEb*&R12n04ks;0#ND05|K{!6q{(TY=QQG1Ls^v zQm+FBBzpb;cvoNpsLj5^Qi3cjkoUgFDrRGnc7P;)c&J-3hyjxh&`@B@YKTn|Xh^)3 zJLd2r);Seq*@Szy*ljyiwPyj#%+yFnrHvIkOIqByF+(O94UL2CnypXRPZv9*Q)xrm zpd4q1d!JFRvyC*3CCL>3Y(plpO`c1C^3fP09qZb^&!ee2nK2nI_SC>m6$)tY&JFU1~>tZfE(ZzxC9O}9sLEo01v>U1Xf4D32+>~m7XR* gu7PjhBQW~>0X?v)l0I&+C;$Ke07*qoM6N<$f`(Ax$p8QV literal 0 HcmV?d00001 diff --git a/views/res/mdpi/btn_default_small_normal_disable_dark.9.png b/views/res/mdpi/btn_default_small_normal_disable_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..8514950721d49ada3a62ce4dacde6c7905e2879f GIT binary patch literal 517 zcmV+g0{Z=lP)*)9RY4kDg; z$D<`-8jfWlqaV&WL_~pm;4WQI2?zWDU(PuzKCwL<4$r&YZZ9H;jIl%n=f;IvYdM`x zugBx@1-KYMfo<1yd*>X!!g?tlwClP(@CJMuUy-ra-t005;ruu3V>|6ab_{C>UPx>%ZM=jgmf?0BXt_Yo2HPA_XJj!sZ0$-L6+ zKie`8(XDh(GA%X{D~InTBa%?q)%r<@a!ju#Vz?aHN2itUe&{ZqMB>KxS8*D=ym6C= zrg4Q!9U+`c?%k7pO;e|H(?3ff^@vQKR3xs5y~SwHNWH}4JdQXQG0r^MC`VStp%GXo zf4~tffujmlGYru-`e-xNFpX?ZZh$HzJN~ZW`+V-~y;xd|+<^Sph^!?yD20tWIY zaSai&|D&1)07X077z4%_&!<=0w&WR?OL>TXK9*zLA2;-iN=fzv_6P)Q_fm={<7^>WYJD?mPNK`ZkR}lzeVHCha z;Wf@mM)BG%7;Bo9=ljo}8PCFI(;Dv}*0+IU;0WkZ&%S|2-~sqBKmeRvUYuQzM~4v} z_7p$gPH*N{z}x@^n2f`NX!R1Kn$-dk2^fcA1WbVY0%!n=>Q`+x`3IFe7Gta?eN;gd zFH;5R14&?ydWt6qU}Jh%q4VmgKahapy3LXR6Ygg-~e0$PC=D2M*xWe(L_Q*N)*K+ z{8{W$c;m!BQtYuu+Q#xczj^a^#;`kVgLhEw>;or21o$+IKVS;H0^b_&fb;9C)7vNv zVp_!Xefe-dez^f2HK2jBC=BAC`5bE-Rf1BAC_IXRJK%W@bO07>Ok+0L2Q67HT02b! zU^BH^g(b`7!*fr3Sq4RL;fH(&xx)aECG5ioSS{AmZs1&{)tKmvUI13%Yo$f>fE8vpW@|Vg3MK}vQ zB8wRqxP?KOkzv*xkRJ9DPhVH|`^>DoI$B#N?4Jx2y5;HO7~*mK?KMNc!v+#ZKmHd_ zvd-D(Fl)|&ApHgrMZew&OXHXnr?tf#klq@b#dfRfT%P&w{81@zGU!p^>bP0l+XkK)ggmE literal 0 HcmV?d00001 diff --git a/views/res/mdpi/btn_hover_dark.9.png b/views/res/mdpi/btn_hover_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..0fc630b495e617cccb2f6c53f26a67e1550eadec GIT binary patch literal 449 zcmV;y0Y3hTP)vI9BfGT*$Jc_gH@h8;>NhDT_v$-dJTaC&{mn=b>yUil%2(2oS(p6_V~NGCJy z#RE()QVf&67vTM4gQu4aRaqcg%t-=3RSVos$54Y9pOv4281Bs2;Ty zbT9*4M)UxO`yEQ00000NkvXXu0mjf@ieJZ literal 0 HcmV?d00001 diff --git a/views/res/mdpi/btn_normal_dark.9.png b/views/res/mdpi/btn_normal_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..1ba7a69ba317678986ea862738d482f028346fbd GIT binary patch literal 398 zcmV;90df9`P)>2&W1u*MkDG(~HTE40?6X^Jt1 zJkRZJEm&)v{eR|KvHPyD6(n!Qi$z;?@KK9CC$KCF^E_`t8iwI7g#7n2_#fAFtGDQ* z0`eX9Jab7vNGX}7iJ~YTVgGa$MZq*pNGVZD-6vWQ1dQWIRaNZwd#BT1E*HjeBnX1n spd^nKrF7zXho@UCym7cm>mtS#K8M*si-07*qoM6N<$f~5DM761SM literal 0 HcmV?d00001 diff --git a/views/res/mdpi/btn_pressed_dark.9.png b/views/res/mdpi/btn_pressed_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..ae38921f5f8eafdede0aedd4f73cce6b0f9e316c GIT binary patch literal 475 zcmV<10VMv3P)vnW3tf2$RVhwwg12dK3>}ZkMBOLNDu)_4|lOJ%e0%nN9#0 zk6!_BYvw|7kdXEJG*vG(}iEow_kYrka( zxe-O>7nQZ!PVnrRgxLp6_t$o>tHMn~i}uV*a&TSV)4K7=5H({o$A&+z+QL>xF* z<8L-F!!&2{KBMg&FCmC*ri#JYg)Ns_@1yxKMhNY;Ap=0l=j#9f0pLkQ zK~y-)#gofU+fWdOKilz1d~BzYMJ>n0*;N7&iLUVrlJZe#d@B07@1_L^2%4jqqK02b+YH3>vlu{%~LKueZ z?d|dH`a3si7l1cqmk)=BTwPs}Bne6>9+hkqd^|qR=kq!BdY#YhuN18kmL<{ASg)2W zmrM5d-}9y2MoP)2^K`76IYff+mf;^+3`HqYlZLoOlPydUqKX1EK5)l0%;X7O%q+$d3XRR zEtFDdnzpULaU6!jA(cv*hxK|>EQCM^L7pod$6+)YVcYh0gK7}aNmHVCA&X!4+%FdB z`k(M>wL&R{l#))GQVoJ_4wO3xBR%fBaUO9(x|y~1 literal 0 HcmV?d00001 diff --git a/views/res/mdpi/btn_radio_off_disabled_dark.png b/views/res/mdpi/btn_radio_off_disabled_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..a075121377b32b9342c398cc75d13e67beee4bde GIT binary patch literal 565 zcmV-50?Pe~P)Ar!+IVk`gv0m4Z{ zK~y-)#gkob+CUVAKYMJCF@$*HB2^0MPaa?m?4U}?5?CEe2#vY})?l6>YO5CTub|+< z*nMeH2yI{T(EB)=J9F+i-!;-S-7O;r4*yl=-(*+mu>tB-95YU-l3P300000NkvXXu0mjf D*H-#! literal 0 HcmV?d00001 diff --git a/views/res/mdpi/btn_radio_off_focused_dark.png b/views/res/mdpi/btn_radio_off_focused_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..56c9e7693bcf5dd3fa5606c85307861fac0277d1 GIT binary patch literal 587 zcmV-R0<`^!P)AuXI7>LdUF0oX}I zK~y-)#goly6LA#9fB*SPn9NKYCW&o2qoE)r7^rywDY&%@^9b4I30z5W zg1D$)p$dMW5HV&NNHc{b(?Lx$^LG&mwee%og%|GTa=G`Md(IWZ;gE}j!UaP+UzjE- zjb=-Bdm&MD0)TB>_~in-4<86k{dK1}OX1Gl9r@(>0d~RVa>c_d7XS!)AzwZRMBy>F zZq&JdZ$~T)m?kOLZ#HD{${N=;tGw+>PU2aUWkJmoym|eeLFbTHPj}}?=6D*-mUK!k z8?`EX?D#4#<>(4gJ9o)66Xn@Vz3PcEHt= zAo`XNpU&V3V3N!-Z>DtG0lrt{uQG1dtMo?-Is(g>(b2OB`}>PB&TpWp3fo(C9zQ$a z<=5}{l{HrV*{1GcNas_)=qO}+tIkA_g0cK&Joz0pUqR zK~y-)#gj`;+W-)TKije6R|uiVvRllmi$+aFw}cCnV-$sZjtSvm8z&1 z)lN`C2o{AT6L(P&0a3eQ(OJ$*|IB=&j7B4#V=B+I!c&Kc(AeM4(=;W!z6QW8mGFI^ z*1>_IY1*TF<>3g;W;2hDkEv8DY=$A8=K;{~_c@DWE-x>sZ*S9VHkBm>B0@Wg2z;Mv zwaT~eKj_9k0VuDOc)zv9>FFu$C_+TISF%v>ac?ibxw+wOt;UzmSBj>IW!oqy$aKPF zGNJnBH76%0*tX55!$alK64NAMGYsi=V@%V=bzJmNwR!} zEX(jbk8yTQ$#p3fbxO8L*|8`&7V9r6%w}^u&m+sSzhA*96tFA;J7Xq7ZpFQZxUS1^IK*+BF{*Cf~`NrSSS-xBLwW25Xt}m0p3YO zK~y-)&5}QF5&;;-e|H5*IKXo1^)Nlqq7WL&U_wnHaj_)h#awk*qBi9~q1@{-!%EK|vO1m6UezKiEC zUJ;2#k!6`oHfxUnOv50kX?&tRvRdaf@N990LSlN6-AM@(c;l+gCn2BfpeU1 zdtY$_4u_NBa0r4hnn3b+=yWkr z1XPu#t}_!)@a6Ryw(BC_pWR2W!RhvL$z>5x!W2s-0;BRg9DJ@)_r0o+MM zK~y-)&5}!N6JZpFpG?x4q?1rH$>$IlL?ss?bLSpla+r!x@`V|=sJJIMiCLM z7Q}_Ikq|K6LP?_O#L0~ggiI}J;dk-G5yFX=V`8?i*ARl)3xc_jI zL?VHrDCBZEX9m#icF{DAH*dG`9Y4Y9>Q%1YxXzWeH9mcHaQPQ`_r8s$X>_|?W&pNr zBZQ#QY9cukd?LcF=UZ&OY!F+y%)UKlyU{`jfovM`4b5e&mXRaK6RF_lWO)9KLO=^#mNlJPS{!eMH) z+MiBpJZp>eK)L0pUqR zK~y-)#nQ`a69E*)@qaG8wPgjmFtmhSrkf))xsfs3MaCv;&R z!L0;bcv%!Fx~S4XQZZ;W*9lG%wV9;3kYwCw5E6>Jp5&GO4|N=4Piy?->6AMWsq0D3SW2VRKA#Z~YDrwjOfh(H2e2OwF43RA>?i zN)(mq=;{%mHCu>Y7iuQWwBA7v1$a`-@#;XsbZebn^AI(YM)bPSnynFFo|KDPQP_T& zXDHa{7_78=Ev&$d2?qKAqml6o>~Brt+)a<~8h0p3YO zK~y-)&5}QF5&;;-e|H5*IKXo1^)Nlqq7WL&U_wnHaj_)h#awk*qBi9~q1@{-!%EK|vO1m6UezKiEC zUJ;2#k!6`oHfxUnOv50kX?&tRvRdaf@N990LSlN6-AM@(c;l+gCn2BfpeU1 zdtY$_4u_NBa0r4hnn3b+=yWkr z1XPu#t}_!)@a6Ryw(BC_pWR2W!RhvL$z>5x!W2s-0;FdgVpOKGO#pU^cgc$81Bd>Y?$VIUgctSJnQ_dwJt5H<;%CaX|~Rd zl|EPh^xfk}i}`9EFw6fazfrb$l8&d+^F6hXSp)>li_@% literal 0 HcmV?d00001 diff --git a/views/res/mdpi/editbox_background_disabled_focus_dark.9.png b/views/res/mdpi/editbox_background_disabled_focus_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..ddfc4bb7c8a222d1493625b1bc2302444f29ee59 GIT binary patch literal 257 zcmeAS@N?(olHy`uVBq!ia0vp^Vn8g)!3HFq6y&A?DYhhUcNd2LAh=-f^2tCE&H|6f zVg?3oVGw3ym^DWND9B#o>FdgVpOKH(oUb>nWo%4#=5eY*KMW7xtQipTHe#~`UaU_|NPSUc-h97KD|P{8JxPm8@^n)b1T({WuBeG6qjqKbLh*2~7a$TU?6( literal 0 HcmV?d00001 diff --git a/views/res/mdpi/editbox_background_focus_dark.9.png b/views/res/mdpi/editbox_background_focus_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..30929e17efb69ea4031586d21656b8fb949b4e51 GIT binary patch literal 259 zcmeAS@N?(olHy`uVBq!ia0vp^Vn8g)!3HFq6y&A?DYhhUcNd2LAh=-f^2tCE&H|6f zVg?3oVGw3ym^DWND9B#o>FdgVpOKH(LUEyPsy~drY?MZf{XqIs4z1`tuuO?zAoTwz)gM?3#>>`CpF&FdgVpOKGOMKV94;SEqI)zif>#NzbZs~ZImDDbcxoP6B! zzT(*L{9~2&P?J8U1ktogJ$uM_oQbpqIsMlH+r!6l>aWi;n)~0XUX*TD- zSJ3_+E12bf9AN(^+jn=x+a0-+gKq8n$a^MSY32Gnt7q(cZ3_OcFLE^lTFBt(>gTe~ HDWM4fE%Hec literal 0 HcmV?d00001 diff --git a/views/res/mdpi/popup_window_background_dark.9.png b/views/res/mdpi/popup_window_background_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..bf3f04b55e13e561c36cf330a7a87399d8d9276d GIT binary patch literal 503 zcmVLy;0A5p%yB@Czx==L z+%H|a&44Pjy*Cn9dsS20_Bi^vcwmf4G?2L0z@ROSZh0i0;0@1IKXQkp#bqJZwdu4 znf(7vE*KR-A|Ki3Ekz^o08$_dRR@U`)SPBd|5TRS1df3NU>B&VaN^8;H%d#**}b)h z7vLFq0`84diB+fM8^Dgfmpu2}LX4_+3=Dz3=8>Fr$tr9|nrIk#eC#PIcg%o+{=uhu z!q5dw_25U%!e|$Xyggo1Ty|4K^@6rEdM;oj@i+aTuk@4!Sa+4(K5V<$EAZ_C1`=6l t-Er=AoC7d-ve1)w*XJGSKRsw=`~t~3VvU*huW9s&X_7YEDSN8ji0)mFp!jiQ)K%pQ{7sn8b({Cql zU`(Vwka5n$atl>4I3xA$gSpdt9ej wTJg8X92DK*px$)deD0aqo9us>d)%*N+|?}btNOPnC(v{TPgg&ebxsLQ0GGi(9smFU literal 0 HcmV?d00001 diff --git a/views/res/mdpi/tab_btn_dark_up_focused_selected_dark.9.png b/views/res/mdpi/tab_btn_dark_up_focused_selected_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..95057205fc244c26ce01eb8d0455bd4e4d6dc492 GIT binary patch literal 205 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6U4S$Y z{B+)352QE?JR*x37`Qt@n9=;?>9s&X_7YEDSN8ji0)k4ao2M&=0)>1%T^vI!PQRVJ zk@tXt0Q334tZ6BF(^43hKUAIaZvM2_wMB`iiy0PN^JO}($e`<}wMUV$PwZvMYa5v& r)^Gu)xg7T*QVsJ%>p$cN?EB3A?1$*-CTqqlpur5Du6{1-oD!M<_isJ~ literal 0 HcmV?d00001 diff --git a/views/res/mdpi/tab_btn_dark_up_hover_dark.9.png b/views/res/mdpi/tab_btn_dark_up_hover_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..c4ac1a8becda6c37e4d9d6d2559ef46215245cff GIT binary patch literal 210 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6U4S$Y z{B+)352QE?JR*x37`Qt@n9=;?>9s&X_7YEDSN8ji0)mFT&(EH)1quaux;TbdoPIlb zBQJv@5A*r;^E(YAS|cM`4I{KnT&ilPUntt^ua`6R7Q>9i(u`iYOc%sj4#}$=*yB3I x(u%)5=Ah^f2lb}w=5x=?-emv7+~a;F9s&X_7YEDSN8ji0)htm+S_)_015?px;TbdoPIlb zBQJv@5A*r;^E(YAS|cM`4I{KnT&ilPUntt^ua`6R7Q>9i(u`iYOc%sj4#}$=*yB3I x(u%)5=Ah^f2lb}w=5x=?-emv7+~a;F9s&X_7YEDSN8ji0)mE&@2XqGfI@+uE{-7R$i-FVdQ&MBb@09oBa?f?J) literal 0 HcmV?d00001 diff --git a/views/res/mdpi/tab_up_background_dark_focused_dark.9.png b/views/res/mdpi/tab_up_background_dark_focused_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..90c8b6b21b0cdc3c79cd76078a949edc49b5c0c8 GIT binary patch literal 187 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjY)RhkE(~T2ehm2q+FDUS5zYdS z$YKTt?oJS9G(UNIEl`lX#M9T6{XU}rAHSAJMN=A3$ivgcF~sBe+o^%P3<@Gl{LB%T zVy105@cA;+qi4rhA3WeL)Oe>97kKW&Grjj>0*)+#E&>PnfBbjYy6mmlRrd2@3+&dd eTVcw&f$>Kw-==U|z6n4x89ZJ6T-G@yGywnwMmWL% literal 0 HcmV?d00001 diff --git a/views/res/mdpi/tab_up_background_dark_normal_dark.9.png b/views/res/mdpi/tab_up_background_dark_normal_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..30b65db8b22e02842f8b77f3229a8405106ef589 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjY)RhkE(~T2ehm2q+FDUS5zYdS z$YKTt?oJS9G(UNIEl`lX#M9T6{XU}rpR~yD?H)6LLVlhujv*e$lT#cT{_|X6?cw>t z^glDxLU^sLe>S&-o36yxgey&f+&~6b!?&-D-819u&hprA%~X2(xIyq)bMS1npskcdx@v7EBk#$0d6@xH}>T%K%o{-7sn8f(MJY;4z5)cqbP+<7? zcru8qY&8Gl;dXu=`Tc+YpLa+tc=@T6ExK6OO>D-2-Te0@G8kt_Wbn+GaQM&3$L&0i z7ByAeT*AP}*!X|TcgBSwhCd!BTxkmAcGHzm6Eon;ls~ZAC+m8Kznp!_2Gi?FOLp={ jB#4^$Hg`-rE5=acVsc*L&(AQRdl)=j{an^LB{Ts5H;h&F literal 0 HcmV?d00001 diff --git a/views/res/mdpi/toolbar_background_dark.9.png b/views/res/mdpi/toolbar_background_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..c348ca45899fd20d85c0ab0de97612452b3e7201 GIT binary patch literal 252 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjY)RhkE)3@xt}#44oirOLz`$AH z5n0T@z%2~Ij105pfb_7Jc>21s-)EHLGLZhYuDl;8)amKs7~*mK?X-!-8NpFcLKpS}LkECudK+ZlW>umI6EhksTFBWKF> smdP*9XPPwMZ(XiVx8C;s*SA0Ay*E+kXPTVeW{~SWUHx3vIVCg!04*wArvLx| literal 0 HcmV?d00001 diff --git a/views/res/mdpi/toolbar_button_hover_dark.9.png b/views/res/mdpi/toolbar_button_hover_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..97bdd49e58fbaf194475d621edc5e366dd2dfc9f GIT binary patch literal 246 zcmeAS@N?(olHy`uVBq!ia0vp^Vn8g)!3HFq6y&A?DYhhUcNd2LAh=-f^2tCE&H|6f zVg?3oVGw3ym^DWND9B#o>FdgVpHYCD+wxQ5k#L|;v!{z=h{fsTKOY`4gFtgb0|T?j zpL7L&10w?ig9B&4GKa69Uiw6;?Xr*?8yj2O^7i2W-V$zsM~{d~AcITA~V>1rAePMt6x6A8pq%>Yr;L$&)zj)oj4Xaqfnhic% g{8PXF`$P?ctgXs%*{iGO0iDC(>FVdQ&MBb@0GQEJ#sB~S literal 0 HcmV?d00001 diff --git a/views/res/mdpi/toolbar_button_pressed_dark.9.png b/views/res/mdpi/toolbar_button_pressed_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..6e4bd8b73bd8389d300bbdb181f8bf0cfafe83b8 GIT binary patch literal 245 zcmeAS@N?(olHy`uVBq!ia0vp^Vn8g)!3HFq6y&A?DYhhUcNd2LAh=-f^2tCE&H|6f zVg?3oVGw3ym^DWND9B#o>FdgVpHYCDPjX9zz%8Iqlc$Sgh{fsTKOY`4gFtgb0|T?j zpL7L&10w?ig9B&4GKa69Uiw6;?Xr*?8yj2O^7i2W-Y+5ojvf&Y_cQR2a5FSAyue`) zD6q_e(YXI{{j6OTR~`g5yYtG0u^9*5zOX<3+vRmPQW~!*@aV6bvtZr94Xa!Z8F0l- foAkOi#g0LHx5_)u+u!_vu3_+W^>bP0l+XkK0xeSC literal 0 HcmV?d00001 diff --git a/views/res/mdpi/toolbar_control_disabled_dark.9.png b/views/res/mdpi/toolbar_control_disabled_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..1ecea1bb46c118a2a363532f24cd5ba7d86b2b5e GIT binary patch literal 249 zcmeAS@N?(olHy`uVBq!ia0vp^Vn8g)!3HFq6y&A?DYhhUcNd0!20;eFy$ee_fg+p* z9+AZi4BWyX%*Zfnjs#GUy~NYkmHj@WD4#sL&Tg9mpirBqi(`nz>Eu5j9x{VKb3+3I zv&f%x1%3k~0|SEtXTUOtr|n&S!jwn5KqUI?i4zA79N3WZcHRHBUsWN7U;Z5R=9&0z zO^*+c36qaVi>BX!Gmn4FU#2H#T5;t;U~~J_gFRQwzPz9QcZ;@Jr)m1qCspz@`5A=#)$SB8WpxI+h{4m<&t;ucLK6T^a#r&I literal 0 HcmV?d00001 diff --git a/views/res/mdpi/toolbar_control_normal_dark.9.png b/views/res/mdpi/toolbar_control_normal_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..fbfb7acba51e3f7d41f6e9f2dc0c2fa9dd3bd673 GIT binary patch literal 249 zcmeAS@N?(olHy`uVBq!ia0vp^Vn8g)!3HFq6y&A?DYhhUcNc~}hS>~zj^>bP0l+XkK9wSXl literal 0 HcmV?d00001 diff --git a/views/res/mdpi/toolbar_separator_dark.png b/views/res/mdpi/toolbar_separator_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..cfa5a1acb77e7c574040a48fffe36cabcce1be96 GIT binary patch literal 224 zcmeAS@N?(olHy`uVBq!ia0vp^96&6=!3HFc-`pbrq}Y|gW!U_%O?XxI14-? ziy0WWg+Z8+Vb&Z8pdfpRr>`sfeMSK;OQ!WVgiV1$xt=bLAsXkC|9p7J%xokeAmH$D zvjGr%`26`W>%ag1`&TwJHa0#y^fjHwU(Wtdeoo4P51+nPyUnl=W@bFllBdpNQ~76t zV@${d4q-P@9(C3inL=zSDNiNi_SN~{U^&JwZ)YH5SIN7dspg~{gYj%d=^r0OtAQ3X Nc)I$ztaD0e0svT`NS^=z literal 0 HcmV?d00001 diff --git a/views/res/mdpi/tooltip_background_dark.9.png b/views/res/mdpi/tooltip_background_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..2fa29203c9a5370f0090fa6d945d0b09c9db2ae2 GIT binary patch literal 562 zcmV-20?qx2P)WFU8GbZ8()Nlj2>E@cM*00EXsL_t(Y$F-KhPQpMC zhQD3ARl=n)@xsBt5uX4bhww^-Hz4t%Pr==TJ=K`N!HbCy4~S8^z*FSi&%r z(P$(<6F3LZ08tdt>)j#()=H%Xif;FY>2wMZI1oG_EsKayleK^aF!z$3O%%1+wF~~) zOB9m?uT=iYl1a9Jue3w})}7SkBiM2X`yA}n-%^x8DS!*W>;ohm=mLOpTwKUhtqV9fQf=D|-1xBtBnTA&wi)nG8Av$?$2NP0ic}pc%E}-~p_V?#;2`Z} z>gZ&hNcE5d>hA*uNX^q!xgn}N0N?jF3O^CUZkuTB)~4j0PKVj-<)j-ejxFKSBgPnj z58yN9U@#bX!{KoKaDR7F2F4hIAOLs;-gn8+ZoD>uOW?|Vn{Hp1toa&P0(0OEh`gP5 zQ0#7@1@P^D@`1Cz-aHu=13#`jOL7iM1=VEQFC4r@R@7BPkpKVy07*qoM6N<$g4q%1 AzW@LL literal 0 HcmV?d00001 diff --git a/views/res/menu_item_background_dark.xml b/views/res/menu_item_background_dark.xml new file mode 100644 index 00000000..31b659c2 --- /dev/null +++ b/views/res/menu_item_background_dark.xml @@ -0,0 +1,18 @@ + + + + + + + + diff --git a/views/res/popup_menu_background_normal_dark.9.png b/views/res/popup_menu_background_normal_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..3c322655f969aabc6d0c1680808e5db5518526e0 GIT binary patch literal 374 zcmeAS@N?(olHy`uVBq!ia0vp^N+8U^1|+TAxeoy;#^NA%Cx&(BWL^R}Y)RhkE)4x3 z7&|-804Ty);1OBOz`!jG!i)^F=12eq*-JcqUD@xk@H6SLxV^0~0t$Weba4!cIQ;g; zLC$6a5w-{RkC^s)R+ljf?rOHJc*npu!Si3F%;Esq1-9FtTob(I&7>6QWZHY-kGiAc z{7Q*?!3S*fYvdn(Ik0uVe&i9$)QSF0LB)kP-tSS8J1_2WE$Gy>GW&!1mnYcdF%~fe z+%(wV#&AH=!R()alfxQSF4luPToe^0rfHb4q=ipvRezS{xnZJKH}B`+w;fY9sjg%w+4c1M)Z02P$$Bb`3$E{etUWjGFrT5s-78uQ zQ`I{hHJ0CJ-F5h!P2!agN9UfKu<~GKCQlOIrfVG!Ya;3xJZIV--Fv9H9~c4*p00i_ I>zopr0L#9LQ2+n{ literal 0 HcmV?d00001 diff --git a/views/res/tab_btn_dark_up_dark.xml b/views/res/tab_btn_dark_up_dark.xml new file mode 100644 index 00000000..b00959da --- /dev/null +++ b/views/res/tab_btn_dark_up_dark.xml @@ -0,0 +1,17 @@ + + + + + + + + diff --git a/views/res/tab_btn_normal_dark.9.png b/views/res/tab_btn_normal_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..405bb9f7e5e33e639bd97c736e68946b570bd568 GIT binary patch literal 1145 zcmV-<1cv*GP)Px#32;bRa{vGfi2wi#i2*ms%dG$a00(qQO+^RZ1OWyK2jcfc0ssI63rR#lRA}DK zTD@))K@grfUpPbu!q8D9(jkQ^Wt#LUffu03i&6R+pha})63H)M8YF@uA=`L|<_@j* zW@cx99OWd-&f2##H}lOmKO2PUMey(!!ehVCdv5?>HoWkGw5Q><0{}O?(M>$=z5?e;#j5+_`;nxs^y zjIUJJb*~WdB>+4FfM26h?RvdN=iDxa5l%7AA~6g3YrEYJHk%Crz!3n<8UR=Wz|m&2 zX`OQu*BmVDJ$MiiY`5Flpw#aX=txB9MaABGxQV~9WLYih1b6h>sx>9-w7E|NouIlVCjVh4C6xJwZW27nNLCI1;iu71` z$AlZmc#5fzr#Kvy6nwF%o^viyC2xKLWlE{AgxvBFuzt)j4VZahiT8wUy8 z+7Q)}TFf)guu{;XJ25fS_YDqlVe zbV+FJ04WRv%XyAAbrH=iP4FxcXE~7M+}Gr6tkFl#P$c|)tC44|C^XWEocm(c=Ap`) zD0y1u2DN5XT#LmX*GePCFe+0j3B$=dvV&O5lWTO5QkR=%3Aq_RHR6=95Ec#14tVji zgp?<((GP05k5aH?SuerWBq3W9aSb;IIJBM3)b4Do`?MuFD_05SpK + + + + + diff --git a/views/res/tab_btn_up_focused_dark.9.png b/views/res/tab_btn_up_focused_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..790a08e3863fba8223d9bab3e979a44772b76287 GIT binary patch literal 2120 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 literal 0 HcmV?d00001 diff --git a/views/res/tab_btn_up_normal_dark.9.png b/views/res/tab_btn_up_normal_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..190afc552e285b114c801f6e034fef8a36a372ff GIT binary patch literal 273 zcmeAS@N?(olHy`uVBq!ia0vp^szB_?!3HFEt$42lq}Yu8SEI2tmH412a0eO zctjR6FmQK*Fr)d&(`$i(>?NMQuI%@jS$Qp__CAlu0t(IZba4#HxcBzfM$W?q0&WlQ zA6sH3=~BJ&qSPzX8=NgB9qb046OZ&}TZivqXD`2Ne!$o2`=!6W%NI{k(qB4d%bz}h zL-!rmntERPBkQlbdC6VnQ_=kWE6yr=EpTXLV&xLi2q3^Ht@ZC;@%2Vh&#S$s&n!8= o{`u43?5Q&|dlt_5oLI>mFw1Ch9BcS~pi3D%UHx3vIVCg!01dTZkpKVy literal 0 HcmV?d00001 diff --git a/views/res/tab_btn_up_selected_dark.9.png b/views/res/tab_btn_up_selected_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..1b93ed2b5775c4596375194314c81c8512ef9a64 GIT binary patch literal 255 zcmeAS@N?(olHy`uVBq!ia0vp^szB_?!3HFEt$42lq}Yu8SEI2tmH412a0eO zctjR6FmQK*Fr)d&(`$i(>?NMQuI%@jS$Qo?5)DI_0)=`!T^vI)?!CQb$j788z+y#upKW+da>Cs+mYZD<#@MfZ zy>~uaWcJ?aYh8~ljtE@)=!c$Y;P*-VvRnkgtM5ye{gW&`t?&t;ucLK6V@-%POp literal 0 HcmV?d00001 diff --git a/views/res/tab_up_background_focused_dark.9.png b/views/res/tab_up_background_focused_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..67592d1fbda1c690b79a6d0edfc6157e8e728f33 GIT binary patch literal 261 zcmeAS@N?(olHy`uVBq!ia0vp^szB_?!3HFEt$42lq}Yu8SEI2tmH412a0eO zctjR6FmQK*Fr)d&(`$i(>?NMQuI%@jS@{@b&7#g{1BE7ex;Tbp+-q&*}9`{h?kg66wc&g{azP#17XY?*_$~pHwyZdln{SBr~xBi-K)nk2q z&prI$71c^HXWLVD@*;%56|Pk?uk2s+OGUCRS@J@~+^G2~(?72i$ojH;-@D6JGq&&f Z&l+9MH^0eRITPqQ22WQ%mvv4FO#tL1R4f1h literal 0 HcmV?d00001 diff --git a/views/res/tab_up_background_selected_dark.9.png b/views/res/tab_up_background_selected_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..09a2f72a7536cb6a809d7c81925747c2f52f5279 GIT binary patch literal 263 zcmeAS@N?(olHy`uVBq!ia0vp^szB_?!3HFEt$42lq}Yu8SEI2tmH412a0eO zctjR6FmQK*Fr)d&(`$i(>?NMQuI%@jS@{^OpM-l&0}4&?ba4#HxcBy!As3UOfWyU^ z3LIhE!Zw8q?D?sR=?95IkN)sQ#+W3ScxzSe;2UzY7#`(1X; czUM!g{L=WQZ7pFD1iFvG)78&qol`;+0B5#VK>z>% literal 0 HcmV?d00001 diff --git a/views/res/tab_up_background_theme_dark.xml b/views/res/tab_up_background_theme_dark.xml new file mode 100644 index 00000000..801b3a6a --- /dev/null +++ b/views/res/tab_up_background_theme_dark.xml @@ -0,0 +1,8 @@ + + + + + diff --git a/views/res/theme_dark.xml b/views/res/theme_dark.xml new file mode 100644 index 00000000..1f35dfa2 --- /dev/null +++ b/views/res/theme_dark.xml @@ -0,0 +1,412 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/views/res/theme_default.xml b/views/res/theme_default.xml index c4abad48..8b4f559d 100644 --- a/views/res/theme_default.xml +++ b/views/res/theme_default.xml @@ -4,6 +4,8 @@ fontFace="Verdana,Arial,DejaVu Sans" fontFamily="SansSerif" > + +