summaryrefslogtreecommitdiff
path: root/gdk
diff options
context:
space:
mode:
authorMichael Natterer <mitch@imendio.com>2006-08-08 21:00:23 +0000
committerMichael Natterer <mitch@src.gnome.org>2006-08-08 21:00:23 +0000
commitd451252f73fdb696ff111895e699271d033d2391 (patch)
tree6fbd343ebd64d1137d20da3c132be598b29095a2 /gdk
parentd3ee9f833a672e1efd7343b21541500b0b115988 (diff)
downloadgtk+-d451252f73fdb696ff111895e699271d033d2391.tar.gz
implement.
2006-08-08 Michael Natterer <mitch@imendio.com> * gdk/quartz/gdkwindow-quartz.c (gdk_window_maximize) (gdk_window_unmaximize): implement. (gdk_window_iconify) (gdk_window_deiconify): remove unneeded autorelease pools.
Diffstat (limited to 'gdk')
-rw-r--r--gdk/quartz/gdkwindow-quartz.c45
1 files changed, 29 insertions, 16 deletions
diff --git a/gdk/quartz/gdkwindow-quartz.c b/gdk/quartz/gdkwindow-quartz.c
index 7688d67981..110c0f9c07 100644
--- a/gdk/quartz/gdkwindow-quartz.c
+++ b/gdk/quartz/gdkwindow-quartz.c
@@ -640,7 +640,9 @@ gdk_window_new (GdkWindow *parent,
impl->toplevel = [[GdkQuartzWindow alloc] initWithContentRect:content_rect
styleMask:style_mask
- backing:NSBackingStoreBuffered defer:NO];
+ backing:NSBackingStoreBuffered
+ defer:NO];
+
if (attributes_mask & GDK_WA_TITLE)
title = attributes->title;
else
@@ -1524,12 +1526,12 @@ gdk_window_set_type_hint (GdkWindow *window,
level = NSTornOffMenuWindowLevel;
shadow = TRUE;
break;
-
+
case GDK_WINDOW_TYPE_HINT_SPLASHSCREEN:
level = NSPopUpMenuWindowLevel;
shadow = TRUE;
break;
-
+
case GDK_WINDOW_TYPE_HINT_POPUP_MENU:
case GDK_WINDOW_TYPE_HINT_COMBO:
level = NSPopUpMenuWindowLevel;
@@ -1714,17 +1716,34 @@ gdk_window_unstick (GdkWindow *window)
void
gdk_window_maximize (GdkWindow *window)
{
+ GdkWindowImplQuartz *impl;
+
g_return_if_fail (GDK_IS_WINDOW (window));
- /* FIXME: Implement */
+
+ if (GDK_WINDOW_DESTROYED (window))
+ return;
+
+ impl = GDK_WINDOW_IMPL_QUARTZ (GDK_WINDOW_OBJECT (window)->impl);
+
+ if (impl->toplevel && ![impl->toplevel isZoomed])
+ [impl->toplevel zoom:nil];
}
void
gdk_window_unmaximize (GdkWindow *window)
{
+ GdkWindowImplQuartz *impl;
+
g_return_if_fail (GDK_IS_WINDOW (window));
- /* FIXME: Implement */
+ if (GDK_WINDOW_DESTROYED (window))
+ return;
+
+ impl = GDK_WINDOW_IMPL_QUARTZ (GDK_WINDOW_OBJECT (window)->impl);
+
+ if (impl->toplevel && [impl->toplevel isZoomed])
+ [impl->toplevel zoom:nil];
}
void
@@ -1738,12 +1757,9 @@ gdk_window_iconify (GdkWindow *window)
return;
impl = GDK_WINDOW_IMPL_QUARTZ (GDK_WINDOW_OBJECT (window)->impl);
- if (!impl->toplevel)
- return;
-
- GDK_QUARTZ_ALLOC_POOL;
- [impl->toplevel miniaturize:nil];
- GDK_QUARTZ_RELEASE_POOL;
+
+ if (impl->toplevel)
+ [impl->toplevel miniaturize:nil];
}
void
@@ -1757,12 +1773,9 @@ gdk_window_deiconify (GdkWindow *window)
return;
impl = GDK_WINDOW_IMPL_QUARTZ (GDK_WINDOW_OBJECT (window)->impl);
- if (!impl->toplevel)
- return;
- GDK_QUARTZ_ALLOC_POOL;
- [impl->toplevel deminiaturize:nil];
- GDK_QUARTZ_RELEASE_POOL;
+ if (impl->toplevel)
+ [impl->toplevel deminiaturize:nil];
}
void