diff options
author | Wouter Paesen <wouter@blue-gate.be> | 2012-12-28 21:55:51 +0100 |
---|---|---|
committer | Emmanuele Bassi <ebassi@gnome.org> | 2013-01-16 22:28:26 +0000 |
commit | 1b1cffbb43f61d3f90995419d967aed26e597c65 (patch) | |
tree | 6c8353f7db4373d3f76c47fdbac8886adebbc05c | |
parent | 650366c9042130f184dd65cedd9f0f4392175590 (diff) | |
download | clutter-1b1cffbb43f61d3f90995419d967aed26e597c65.tar.gz |
* use requested value of fullscreen state in clutter_stage_win32_set_fullscreen instead of old value
https://bugzilla.gnome.org/show_bug.cgi?id=690836
-rw-r--r-- | clutter/win32/clutter-stage-win32.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/clutter/win32/clutter-stage-win32.c b/clutter/win32/clutter-stage-win32.c index fcfbd600c..bcc39a7d3 100644 --- a/clutter/win32/clutter-stage-win32.c +++ b/clutter/win32/clutter-stage-win32.c @@ -267,12 +267,13 @@ clutter_stage_win32_set_cursor_visible (ClutterStageWindow *stage_window, } static LONG -get_window_style (ClutterStageWin32 *stage_win32) +get_requested_window_style (ClutterStageWin32 *stage_win32, + gboolean want_fullscreen) { ClutterStage *wrapper = stage_win32->wrapper; /* Fullscreen mode shouldn't have any borders */ - if (_clutter_stage_is_fullscreen (wrapper)) + if (want_fullscreen) return WS_POPUP; /* Otherwise it's an overlapped window but if it isn't resizable then it shouldn't have a thick frame */ @@ -282,6 +283,15 @@ get_window_style (ClutterStageWin32 *stage_win32) return WS_OVERLAPPEDWINDOW & ~WS_THICKFRAME & ~WS_MAXIMIZEBOX; } +static LONG +get_window_style (ClutterStageWin32 *stage_win32) +{ + ClutterStage *wrapper = stage_win32->wrapper; + + return get_requested_window_style (stage_win32, + _clutter_stage_is_fullscreen (wrapper)); +} + static void clutter_stage_win32_set_user_resize (ClutterStageWindow *stage_window, gboolean value) @@ -327,7 +337,7 @@ clutter_stage_win32_set_fullscreen (ClutterStageWindow *stage_window, { /* Update the window style but preserve the visibility */ SetWindowLongW (hwnd, GWL_STYLE, - get_window_style (stage_win32) + get_requested_window_style (stage_win32, value) | (old_style & WS_VISIBLE)); /* Update the window size */ if (value) |