From c7ef1feaf0720981a2418d80cc5844ca1ca3ef25 Mon Sep 17 00:00:00 2001
From: YuSanka <yusanka@gmail.com>
Date: Fri, 22 May 2020 16:59:28 +0200
Subject: [PATCH] Added missed icons for the dark mode.

Fixed typos from the previous commit
---
 resources/icons/white/dot.svg           |  8 ++++++++
 resources/icons/white/drop_to_bed.svg   | 15 +++++++++++++++
 resources/icons/white/eye_closed.svg    | 13 +++++++++++++
 resources/icons/white/eye_open.svg      | 11 +++++++++++
 resources/icons/white/lock_closed_f.svg | 10 ++++++++++
 src/slic3r/GUI/MainFrame.cpp            |  2 +-
 src/slic3r/GUI/ObjectDataViewModel.cpp  |  2 +-
 src/slic3r/GUI/OptionsGroup.cpp         |  2 --
 src/slic3r/GUI/Tab.cpp                  |  6 ++----
 9 files changed, 61 insertions(+), 8 deletions(-)
 create mode 100644 resources/icons/white/dot.svg
 create mode 100644 resources/icons/white/drop_to_bed.svg
 create mode 100644 resources/icons/white/eye_closed.svg
 create mode 100644 resources/icons/white/eye_open.svg
 create mode 100644 resources/icons/white/lock_closed_f.svg

diff --git a/resources/icons/white/dot.svg b/resources/icons/white/dot.svg
new file mode 100644
index 000000000..90fbaf7fb
--- /dev/null
+++ b/resources/icons/white/dot.svg
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.0.3, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<g>
+	<circle fill="#FFFFFF" cx="8" cy="8" r="3"/>
+</g>
+</svg>
diff --git a/resources/icons/white/drop_to_bed.svg b/resources/icons/white/drop_to_bed.svg
new file mode 100644
index 000000000..76243f897
--- /dev/null
+++ b/resources/icons/white/drop_to_bed.svg
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.0.4, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<g id="modifer_x5F_bed">
+	
+		<line fill="none" stroke="#ED6B21" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="2" y1="13" x2="13" y2="13"/>
+	<path fill="#FFFFFF" d="M10.87,7.48c-0.2,0-0.37,0.16-0.37,0.37v1.47v0.74c0,0.2-0.17,0.37-0.37,0.37H4.97
+		c-0.2,0-0.37-0.17-0.37-0.37L4.57,4.91c0-0.1,0.04-0.19,0.11-0.26c0.07-0.07,0.16-0.11,0.26-0.11l2.25,0v0
+		c0.2,0,0.37-0.16,0.37-0.37c0-0.2-0.16-0.37-0.37-0.37H5.71c0,0-0.01,0-0.01,0l-0.76,0c-0.3,0-0.57,0.12-0.78,0.33
+		C3.95,4.34,3.83,4.61,3.83,4.91l0.03,5.15c0,0.61,0.5,1.1,1.11,1.1h5.16c0.61,0,1.11-0.5,1.11-1.11V9.32V7.85
+		C11.24,7.65,11.07,7.48,10.87,7.48z"/>
+	<circle fill="#FFFFFF" stroke="#FFFFFF" stroke-miterlimit="10" cx="10.88" cy="4.12" r="2.12"/>
+</g>
+</svg>
diff --git a/resources/icons/white/eye_closed.svg b/resources/icons/white/eye_closed.svg
new file mode 100644
index 000000000..0cdd16ae0
--- /dev/null
+++ b/resources/icons/white/eye_closed.svg
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.0.4, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<g id="eye_x5F_close">
+	<path fill="none" stroke="#FFFFFF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
+		M2,8c0,0,2,4,6,4s6-4,6-4s-2-4-6-4S2,8,2,8z"/>
+	
+		<circle fill="none" stroke="#FFFFFF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" cx="8" cy="8" r="1"/>
+	
+		<line fill="none" stroke="#ED6B21" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="2" y1="14" x2="14" y2="2"/>
+</g>
+</svg>
diff --git a/resources/icons/white/eye_open.svg b/resources/icons/white/eye_open.svg
new file mode 100644
index 000000000..1b320da07
--- /dev/null
+++ b/resources/icons/white/eye_open.svg
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.0.4, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<g id="eye_x5F_open">
+	<path fill="none" stroke="#FFFFFF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
+		M2,8c0,0,2,4,6,4s6-4,6-4s-2-4-6-4S2,8,2,8z"/>
+	
+		<circle fill="none" stroke="#FFFFFF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" cx="8" cy="8" r="1"/>
+</g>
+</svg>
diff --git a/resources/icons/white/lock_closed_f.svg b/resources/icons/white/lock_closed_f.svg
new file mode 100644
index 000000000..412c93c16
--- /dev/null
+++ b/resources/icons/white/lock_closed_f.svg
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.0.3, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<g id="lock_x5F_closed">
+	<path fill="none" stroke="#FFFFFF" stroke-width="3" stroke-miterlimit="9" d="M4,8V4c0,0,0-2,2-2c1,0,3,0,4,0c2,0,2,2,2,2v4"/>
+	<path fill="#FFFFFF" d="M13,8H3C2.45,8,2,8.45,2,9v5c0,0.55,0.45,1,1,1h10c0.55,0,1-0.45,1-1V9C14,8.45,13.55,8,13,8z M10,12H8.91
+		c-0.21,0.58-0.76,1-1.41,1C6.67,13,6,12.33,6,11.5S6.67,10,7.5,10c0.65,0,1.2,0.42,1.41,1H10V12z"/>
+</g>
+</svg>
diff --git a/src/slic3r/GUI/MainFrame.cpp b/src/slic3r/GUI/MainFrame.cpp
index 0bcf1bd95..47cd3443d 100644
--- a/src/slic3r/GUI/MainFrame.cpp
+++ b/src/slic3r/GUI/MainFrame.cpp
@@ -97,7 +97,7 @@ DPIFrame(NULL, wxID_ANY, "", wxDefaultPosition, wxDefaultSize, wxDEFAULT_FRAME_S
     // Otherwise, MainFrame will be maximized by height
     if (slNew) {
         wxSize size = wxGetApp().get_min_size();
-        size.SetWidth(int(0.5*size.GetHeight()));
+        size.SetHeight(int(0.5*size.GetHeight()));
         m_plater->SetMinSize(size);
         m_tabpanel->SetMinSize(size);
     }
diff --git a/src/slic3r/GUI/ObjectDataViewModel.cpp b/src/slic3r/GUI/ObjectDataViewModel.cpp
index d9b9af016..336475d2e 100644
--- a/src/slic3r/GUI/ObjectDataViewModel.cpp
+++ b/src/slic3r/GUI/ObjectDataViewModel.cpp
@@ -138,7 +138,7 @@ void ObjectDataViewModelNode::update_settings_digest_bitmaps()
     std::map<std::string, wxBitmap>& categories_icon = Slic3r::GUI::wxGetApp().obj_list()->CATEGORY_ICON;
 
     std::string scaled_bitmap_name = m_name.ToUTF8().data();
-    scaled_bitmap_name += "-em" + std::to_string(Slic3r::GUI::wxGetApp().em_unit());
+    scaled_bitmap_name += "-em" + std::to_string(wxGetApp().em_unit()) + (wxGetApp().dark_mode() ? "-dm" : "");
 
     wxBitmap *bmp = m_bitmap_cache->find(scaled_bitmap_name);
     if (bmp == nullptr) {
diff --git a/src/slic3r/GUI/OptionsGroup.cpp b/src/slic3r/GUI/OptionsGroup.cpp
index 5c2d6d38e..fa94e6321 100644
--- a/src/slic3r/GUI/OptionsGroup.cpp
+++ b/src/slic3r/GUI/OptionsGroup.cpp
@@ -578,8 +578,6 @@ void ConfigOptionsGroup::sys_color_changed()
 	// update undo buttons : rescale bitmaps
 	for (const auto& field : m_fields)
 		field.second->sys_color_changed();
-
-    m_grid_sizer->Layout();
 }
 
 boost::any ConfigOptionsGroup::config_value(const std::string& opt_key, int opt_index, bool deserialize) {
diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp
index b1ff64608..da48224b3 100644
--- a/src/slic3r/GUI/Tab.cpp
+++ b/src/slic3r/GUI/Tab.cpp
@@ -190,15 +190,13 @@ void Tab::create_preset_tab()
     add_scaled_button(panel, &m_search_btn, "search");
     m_search_btn->SetToolTip(format_wxstr(_L("Click to start a search or use %1% shortcut"), "Ctrl+F"));
 
-    // Determine the theme color of OS (dark or light)
-    auto luma = wxGetApp().get_colour_approx_luma(wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW));
     // Bitmaps to be shown on the "Revert to system" aka "Lock to system" button next to each input field.
-    add_scaled_bitmap(this, m_bmp_value_lock  , luma >= 128 ? "lock_closed" : "lock_closed_white");
+    add_scaled_bitmap(this, m_bmp_value_lock  , "lock_closed");
     add_scaled_bitmap(this, m_bmp_value_unlock, "lock_open");
     m_bmp_non_system = &m_bmp_white_bullet;
     // Bitmaps to be shown on the "Undo user changes" button next to each input field.
     add_scaled_bitmap(this, m_bmp_value_revert, "undo");
-    add_scaled_bitmap(this, m_bmp_white_bullet, luma >= 128 ? "dot" : "dot_white");
+    add_scaled_bitmap(this, m_bmp_white_bullet, "dot");
 
     fill_icon_descriptions();
     set_tooltips_text();