From bbb4a20dcd12f109ac692a569d9762bb8e372ac1 Mon Sep 17 00:00:00 2001
From: Vojtech Kral <vojtech@kral.hk>
Date: Mon, 11 Nov 2019 12:08:04 +0100
Subject: [PATCH 1/3] Disable Dark Mode on Mac OS for now in the Info.plist

wxWidgets upgrade (or backport) is required first
---
 src/platform/osx/Info.plist.in | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/platform/osx/Info.plist.in b/src/platform/osx/Info.plist.in
index f4e298180..d09f015b9 100644
--- a/src/platform/osx/Info.plist.in
+++ b/src/platform/osx/Info.plist.in
@@ -116,5 +116,7 @@
     <string>NSApplication</string>
     <key>NSHighResolutionCapable</key>
     <true/>
+    <key>NSRequiresAquaSystemAppearance</key>
+    <true/>
   </dict>
 </plist>

From 7a24f87c7f514d132c8b1e4d06ab2e13cc11991d Mon Sep 17 00:00:00 2001
From: Vojtech Kral <vojtech@kral.hk>
Date: Mon, 11 Nov 2019 15:44:12 +0100
Subject: [PATCH 2/3] Fix deps build on Mac

Fix #2264
---
 deps/deps-macos.cmake       | 6 ++----
 deps/deps-unix-common.cmake | 2 +-
 deps/deps-windows.cmake     | 1 -
 3 files changed, 3 insertions(+), 6 deletions(-)

diff --git a/deps/deps-macos.cmake b/deps/deps-macos.cmake
index fc08c6290..9e51735fd 100644
--- a/deps/deps-macos.cmake
+++ b/deps/deps-macos.cmake
@@ -16,8 +16,8 @@ include("deps-unix-common.cmake")
 
 ExternalProject_Add(dep_boost
     EXCLUDE_FROM_ALL 1
-    URL "https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.gz"
-    URL_HASH SHA256=96b34f7468f26a141f6020efb813f1a2f3dfb9797ecf76a7d7cbd843cc95f5bd
+    URL "https://dl.bintray.com/boostorg/release/1.70.0/source/boost_1_70_0.tar.gz"
+    URL_HASH SHA256=882b48708d211a5f48e60b0124cf5863c1534cd544ecd0664bb534a4b5d506e9
     BUILD_IN_SOURCE 1
     CONFIGURE_COMMAND ./bootstrap.sh
         --with-toolset=clang
@@ -90,8 +90,6 @@ ExternalProject_Add(dep_wxwidgets
     EXCLUDE_FROM_ALL 1
     GIT_REPOSITORY "https://github.com/prusa3d/wxWidgets"
     GIT_TAG v3.1.1-patched
-#    URL "https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.2/wxWidgets-3.1.2.tar.bz2"
-#    URL_HASH SHA256=4cb8d23d70f9261debf7d6cfeca667fc0a7d2b6565adb8f1c484f9b674f1f27a
     BUILD_IN_SOURCE 1
 #    PATCH_COMMAND "${CMAKE_COMMAND}" -E copy "${CMAKE_CURRENT_SOURCE_DIR}/wxwidgets-pngprefix.h" src/png/pngprefix.h
     CONFIGURE_COMMAND env "CXXFLAGS=${DEP_WERRORS_SDK}" "CFLAGS=${DEP_WERRORS_SDK}" ./configure
diff --git a/deps/deps-unix-common.cmake b/deps/deps-unix-common.cmake
index eae319efc..74582f601 100644
--- a/deps/deps-unix-common.cmake
+++ b/deps/deps-unix-common.cmake
@@ -62,7 +62,7 @@ ExternalProject_Add(dep_qhull
         -DCMAKE_INSTALL_PREFIX=${DESTDIR}/usr/local
         ${DEP_CMAKE_OPTS}
     UPDATE_COMMAND ""
-    PATCH_COMMAND ${GIT_EXECUTABLE} apply --whitespace=fix ${CMAKE_CURRENT_SOURCE_DIR}/qhull-mods.patch
+    PATCH_COMMAND patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/qhull-mods.patch
 )
 
 ExternalProject_Add(dep_blosc
diff --git a/deps/deps-windows.cmake b/deps/deps-windows.cmake
index 514a90a9e..4aae07d4a 100644
--- a/deps/deps-windows.cmake
+++ b/deps/deps-windows.cmake
@@ -227,7 +227,6 @@ ExternalProject_Add(dep_qhull
         -DCMAKE_POSITION_INDEPENDENT_CODE=ON
         -DCMAKE_DEBUG_POSTFIX=d
     UPDATE_COMMAND ""
-    PATCH_COMMAND ${GIT_EXECUTABLE} apply --whitespace=fix ${CMAKE_CURRENT_SOURCE_DIR}/qhull-mods.patch
     BUILD_COMMAND msbuild /m /P:Configuration=Release INSTALL.vcxproj
     INSTALL_COMMAND ""
 )

From e12512dec0c4ab141e41d0d62da7a2834fb578b6 Mon Sep 17 00:00:00 2001
From: Vojtech Kral <vojtech@kral.hk>
Date: Mon, 11 Nov 2019 17:10:29 +0100
Subject: [PATCH 3/3] Fix: Rename DPI changed event to not clash with impl in
 wxwidgets

---
 src/slic3r/GUI/GUI_App.cpp   | 2 +-
 src/slic3r/GUI/GUI_Utils.cpp | 2 +-
 src/slic3r/GUI/GUI_Utils.hpp | 4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/slic3r/GUI/GUI_App.cpp b/src/slic3r/GUI/GUI_App.cpp
index bcfb9ad39..7d37baa66 100644
--- a/src/slic3r/GUI/GUI_App.cpp
+++ b/src/slic3r/GUI/GUI_App.cpp
@@ -105,7 +105,7 @@ static void register_dpi_event()
         const auto rect = reinterpret_cast<PRECT>(lParam);
         const wxRect wxrect(wxPoint(rect->top, rect->left), wxPoint(rect->bottom, rect->right));
 
-        DpiChangedEvent evt(EVT_DPI_CHANGED, dpi, wxrect);
+        DpiChangedEvent evt(EVT_DPI_CHANGED_SLICER, dpi, wxrect);
         win->GetEventHandler()->AddPendingEvent(evt);
 
         return true;
diff --git a/src/slic3r/GUI/GUI_Utils.cpp b/src/slic3r/GUI/GUI_Utils.cpp
index d5753f2cc..5090382ce 100644
--- a/src/slic3r/GUI/GUI_Utils.cpp
+++ b/src/slic3r/GUI/GUI_Utils.cpp
@@ -55,7 +55,7 @@ void on_window_geometry(wxTopLevelWindow *tlw, std::function<void()> callback)
 #endif
 }
 
-wxDEFINE_EVENT(EVT_DPI_CHANGED, DpiChangedEvent);
+wxDEFINE_EVENT(EVT_DPI_CHANGED_SLICER, DpiChangedEvent);
 
 #ifdef _WIN32
 template<class F> typename F::FN winapi_get_function(const wchar_t *dll, const char *fn_name) {
diff --git a/src/slic3r/GUI/GUI_Utils.hpp b/src/slic3r/GUI/GUI_Utils.hpp
index c47714e46..f7bebd577 100644
--- a/src/slic3r/GUI/GUI_Utils.hpp
+++ b/src/slic3r/GUI/GUI_Utils.hpp
@@ -50,7 +50,7 @@ struct DpiChangedEvent : public wxEvent {
     }
 };
 
-wxDECLARE_EVENT(EVT_DPI_CHANGED, DpiChangedEvent);
+wxDECLARE_EVENT(EVT_DPI_CHANGED_SLICER, DpiChangedEvent);
 
 template<class P> class DPIAware : public P
 {
@@ -75,7 +75,7 @@ public:
 
 //        recalc_font();
 
-        this->Bind(EVT_DPI_CHANGED, [this](const DpiChangedEvent &evt) {
+        this->Bind(EVT_DPI_CHANGED_SLICER, [this](const DpiChangedEvent &evt) {
             m_scale_factor = (float)evt.dpi / (float)DPI_DEFAULT;
 
             m_new_font_point_size = get_default_font_for_dpi(evt.dpi).GetPointSize();