summaryrefslogtreecommitdiffstats
path: root/win
diff options
context:
space:
mode:
authorfvogel <fvogelnew1@free.fr>2017-06-21 19:52:31 (GMT)
committerfvogel <fvogelnew1@free.fr>2017-06-21 19:52:31 (GMT)
commit909a3581a93d96ece8c35842d56b8c54c954da82 (patch)
tree8e062f441b02b799c87a9f812ddeca35cb47c9d8 /win
parentb41984dae647a16f22099a7d71989653f435180e (diff)
downloadtk-909a3581a93d96ece8c35842d56b8c54c954da82.zip
tk-909a3581a93d96ece8c35842d56b8c54c954da82.tar.gz
tk-909a3581a93d96ece8c35842d56b8c54c954da82.tar.bz2
Fix [92e028b41b] and [c5eb909f86]: Theme changes to xpnative after switching user on Windows. Patch from Brad Lanam
Diffstat (limited to 'win')
-rw-r--r--win/ttkWinMonitor.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/win/ttkWinMonitor.c b/win/ttkWinMonitor.c
index c6e906b..6e46374 100644
--- a/win/ttkWinMonitor.c
+++ b/win/ttkWinMonitor.c
@@ -122,12 +122,15 @@ WndProc(HWND hwnd, UINT msg, WPARAM wp, LPARAM lp)
case WM_THEMECHANGED:
/*
- * Reset the application theme to 'xpnative' if present,
- * which will in turn fall back to 'winnative' if XP theming
- * is disabled.
+ * Reset the application theme.
+ * On windows, it is possible to sign in as a second user, change
+ * the theme to 'winnative' (by setting the ui to 'best performance'),
+ * which is a machine-wide change, and then sign back on to the original user.
+ * Ttk_UseTheme needs to be executed again in order to process the fallback
+ * from vista/xpnative to winnative.
*/
- theme = Ttk_GetTheme(interp, "xpnative");
+ theme = Ttk_GetCurrentTheme(interp);
if (theme) {
Ttk_UseTheme(interp, theme);
/* @@@ What to do about errors here? */