summaryrefslogtreecommitdiff
path: root/src/window.c
diff options
context:
space:
mode:
authorHavoc Pennington <hp@pobox.com>2002-08-15 05:14:49 +0000
committerHavoc Pennington <hp@src.gnome.org>2002-08-15 05:14:49 +0000
commit9ed1636ffe3160ea89935266e64e3506bdba69c0 (patch)
tree58c9cc1891b5b5e842f14b37bcf042ebdea9d5ed /src/window.c
parentbb9cc21d8e1104d8486276e15bcb28028b35ed77 (diff)
downloadmetacity-9ed1636ffe3160ea89935266e64e3506bdba69c0.tar.gz
metacity-9ed1636ffe3160ea89935266e64e3506bdba69c0.tar.bz2
leave has_fullscreen_func set to TRUE if the window is screen sized and
2002-08-15 Havoc Pennington <hp@pobox.com> * src/window.c (recalc_window_features): leave has_fullscreen_func set to TRUE if the window is screen sized and undecorated, even if the window isn't resizable. idea from Christian - Manny Calavera - Neumair * src/keybindings.c (handle_toggle_fullscreen) (handle_toggle_maximize): these disabled fullscreen/maximize if the window wasn't resizable, should have used has_fullscreen_func has_maximize_func instead. 2002-08-15 Havoc Pennington <hp@pobox.com> * src/keybindings.c: implement raise/lower * src/metacity.schemas.in: add raise/lower * src/prefs.c: add "raise" and "lower" prefs to keybindings * src/display.c (meta_display_set_grab_op_cursor): assert that the screen arg is non-NULL in appropriate cases
Diffstat (limited to 'src/window.c')
-rw-r--r--src/window.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/window.c b/src/window.c
index 5a8846f..49faa24 100644
--- a/src/window.c
+++ b/src/window.c
@@ -5284,11 +5284,20 @@ recalc_window_features (MetaWindow *window)
window->size_hints.min_height == window->size_hints.max_height)
window->has_resize_func = FALSE;
- /* don't allow fullscreen if we can't resize */
+ /* don't allow fullscreen if we can't resize, unless the size
+ * is entire screen size (kind of broken, because we
+ * actually fullscreen to xinerama head size not screen size)
+ */
if (!window->has_resize_func)
{
window->has_maximize_func = FALSE;
- window->has_fullscreen_func = FALSE;
+
+ if (window->size_hints.min_width == window->screen->width &&
+ window->size_hints.min_height == window->screen->height &&
+ !window->decorated)
+ ; /* leave fullscreen available */
+ else
+ window->has_fullscreen_func = FALSE;
}
/* no shading if not decorated */