[gtk+] quartz: reorder gdkprivate-quartz.h and related clean up



commit deffbd98852cd64e3952206d8ffb8377f5c603b4
Author: Kristian Rietveld <kris gtk org>
Date:   Thu Dec 23 14:08:40 2010 +0100

    quartz: reorder gdkprivate-quartz.h and related clean up

 gdk/quartz/gdkdisplay-quartz.c |   19 +++-
 gdk/quartz/gdkevents-quartz.c  |   11 --
 gdk/quartz/gdkprivate-quartz.h |  212 ++++++++++++++++++++-------------------
 gdk/quartz/gdkscreen-quartz.c  |   32 ++++++-
 gdk/quartz/gdkwindow-quartz.c  |   36 +------
 5 files changed, 160 insertions(+), 150 deletions(-)
---
diff --git a/gdk/quartz/gdkdisplay-quartz.c b/gdk/quartz/gdkdisplay-quartz.c
index 1e9dfa0..357c3c0 100644
--- a/gdk/quartz/gdkdisplay-quartz.c
+++ b/gdk/quartz/gdkdisplay-quartz.c
@@ -123,10 +123,9 @@ _gdk_quartz_display_open (const gchar *display_name)
   _gdk_display->device_manager = _gdk_device_manager_new (_gdk_display);
 
   _gdk_screen = g_object_new (gdk_quartz_screen_get_type (), NULL);
-
   _gdk_quartz_screen_init_visuals (_gdk_screen);
 
-  _gdk_windowing_window_init ();
+  _gdk_quartz_window_init_windowing (_gdk_display, _gdk_screen);
 
   _gdk_quartz_events_init ();
 
@@ -190,6 +189,18 @@ gdk_quartz_display_beep (GdkDisplay *display)
   NSBeep();
 }
 
+static void
+gdk_quartz_display_sync (GdkDisplay *display)
+{
+  /* Not supported. */
+}
+
+static void
+gdk_quartz_display_flush (GdkDisplay *display)
+{
+  /* Not supported. */
+}
+
 static gboolean
 gdk_quartz_display_supports_selection_notification (GdkDisplay *display)
 {
@@ -318,8 +329,8 @@ gdk_quartz_display_class_init (GdkQuartzDisplayClass *class)
   display_class->get_screen = gdk_quartz_display_get_screen;
   display_class->get_default_screen = gdk_quartz_display_get_default_screen;
   display_class->beep = gdk_quartz_display_beep;
-  display_class->sync = _gdk_quartz_display_sync;
-  display_class->flush = _gdk_quartz_display_flush;
+  display_class->sync = gdk_quartz_display_sync;
+  display_class->flush = gdk_quartz_display_flush;
   display_class->queue_events = _gdk_quartz_display_queue_events;
   display_class->has_pending = _gdk_quartz_display_has_pending;
   display_class->get_default_group = gdk_quartz_display_get_default_group;
diff --git a/gdk/quartz/gdkevents-quartz.c b/gdk/quartz/gdkevents-quartz.c
index 227cdbd..348dff1 100644
--- a/gdk/quartz/gdkevents-quartz.c
+++ b/gdk/quartz/gdkevents-quartz.c
@@ -1340,17 +1340,6 @@ _gdk_quartz_display_add_client_message_filter (GdkDisplay   *display,
   /* Not supported. */
 }
 
-void
-_gdk_quartz_display_sync (GdkDisplay *display)
-{
-  /* Not supported. */
-}
-
-void
-_gdk_quartz_display_flush (GdkDisplay *display)
-{
-  /* Not supported. */
-}
 
 gboolean
 _gdk_quartz_display_send_client_message (GdkDisplay      *display,
diff --git a/gdk/quartz/gdkprivate-quartz.h b/gdk/quartz/gdkprivate-quartz.h
index 43dd621..b1ef443 100644
--- a/gdk/quartz/gdkprivate-quartz.h
+++ b/gdk/quartz/gdkprivate-quartz.h
@@ -46,52 +46,14 @@ extern GdkDragContext *_gdk_quartz_drag_source_context;
 #define GDK_WINDOW_IS_QUARTZ(win)        (GDK_IS_WINDOW_IMPL_QUARTZ (((GdkWindow *)win)->impl))
 
 /* Initialization */
-void _gdk_windowing_update_window_sizes     (GdkScreen *screen);
-void _gdk_windowing_window_init             (void);
+void _gdk_quartz_window_init_windowing      (GdkDisplay *display,
+                                             GdkScreen  *screen);
 void _gdk_quartz_events_init                (void);
-void _gdk_quartz_input_init                 (void);
 void _gdk_quartz_event_loop_init            (void);
 
-/* GC */
-typedef enum {
-  GDK_QUARTZ_CONTEXT_STROKE = 1 << 0,
-  GDK_QUARTZ_CONTEXT_FILL   = 1 << 1,
-  GDK_QUARTZ_CONTEXT_TEXT   = 1 << 2
-} GdkQuartzContextValuesMask;
-
 /* Cursor */
 NSCursor   *_gdk_quartz_cursor_get_ns_cursor        (GdkCursor *cursor);
 
-/* Window */
-gboolean    _gdk_quartz_window_is_ancestor          (GdkWindow *ancestor,
-                                                     GdkWindow *window);
-void       _gdk_quartz_window_gdk_xy_to_xy          (gint       gdk_x,
-                                                     gint       gdk_y,
-                                                     gint      *ns_x,
-                                                     gint      *ns_y);
-void       _gdk_quartz_window_xy_to_gdk_xy          (gint       ns_x,
-                                                     gint       ns_y,
-                                                     gint      *gdk_x,
-                                                     gint      *gdk_y);
-void       _gdk_quartz_window_nspoint_to_gdk_xy     (NSPoint    point,
-                                                     gint      *x,
-                                                     gint      *y);
-GdkWindow *_gdk_quartz_window_find_child            (GdkWindow *window,
-						     gint       x,
-						     gint       y,
-                                                     gboolean   get_toplevel);
-void       _gdk_quartz_window_attach_to_parent      (GdkWindow *window);
-void       _gdk_quartz_window_detach_from_parent    (GdkWindow *window);
-void       _gdk_quartz_window_did_become_main       (GdkWindow *window);
-void       _gdk_quartz_window_did_resign_main       (GdkWindow *window);
-void       _gdk_quartz_window_debug_highlight       (GdkWindow *window,
-                                                     gint       number);
-
-void       _gdk_quartz_window_set_needs_display_in_region (GdkWindow    *window,
-                                                           cairo_region_t    *region);
-
-void       _gdk_quartz_window_update_position           (GdkWindow    *window);
-
 /* Events */
 typedef enum {
   GDK_QUARTZ_EVENT_SUBTYPE_EVENTLOOP
@@ -114,9 +76,6 @@ GdkEventType _gdk_quartz_keys_event_type  (NSEvent   *event);
 gboolean     _gdk_quartz_keys_is_modifier (guint      keycode);
 
 /* Geometry */
-void        _gdk_quartz_window_scroll      (GdkWindow       *window,
-                                            gint             dx,
-                                            gint             dy);
 void        _gdk_quartz_window_translate   (GdkWindow       *window,
                                             cairo_region_t  *area,
                                             gint             dx,
@@ -124,17 +83,35 @@ void        _gdk_quartz_window_translate   (GdkWindow       *window,
 gboolean    _gdk_quartz_window_queue_antiexpose  (GdkWindow *window,
                                                   cairo_region_t *area);
 
+/* Drag and Drop */
 void        _gdk_quartz_window_register_dnd      (GdkWindow   *window);
 GdkDragContext * _gdk_quartz_window_drag_begin   (GdkWindow   *window,
                                                   GdkDevice   *device,
                                                   GList       *targets);
 
+/* Display */
 
-void     _gdk_quartz_display_sync         (GdkDisplay *display);
-void     _gdk_quartz_display_flush        (GdkDisplay *display);
+GdkDisplay *    _gdk_quartz_display_open (const gchar *name);
+
+/* Display methods - events */
 void     _gdk_quartz_display_queue_events (GdkDisplay *display);
 gboolean _gdk_quartz_display_has_pending  (GdkDisplay *display);
 
+void       _gdk_quartz_display_event_data_copy (GdkDisplay     *display,
+                                                const GdkEvent *src,
+                                                GdkEvent       *dst);
+void       _gdk_quartz_display_event_data_free (GdkDisplay     *display,
+                                                GdkEvent       *event);
+
+gboolean    _gdk_quartz_display_send_client_message       (GdkDisplay      *display,
+                                                           GdkEvent        *event,
+                                                           GdkNativeWindow  winid);
+void        _gdk_quartz_display_add_client_message_filter (GdkDisplay      *display,
+                                                           GdkAtom          message_type,
+                                                           GdkFilterFunc    func,
+                                                           gpointer         data);
+
+/* Display methods - cursor */
 GdkCursor *_gdk_quartz_display_get_cursor_for_type     (GdkDisplay    *display,
                                                         GdkCursorType  type);
 GdkCursor *_gdk_quartz_display_get_cursor_for_name     (GdkDisplay    *display,
@@ -151,13 +128,10 @@ void       _gdk_quartz_display_get_default_cursor_size (GdkDisplay *display,
 void       _gdk_quartz_display_get_maximal_cursor_size (GdkDisplay *display,
                                                         guint      *width,
                                                         guint      *height);
+
+/* Display methods - window */
 void       _gdk_quartz_display_before_process_all_updates (GdkDisplay *display);
 void       _gdk_quartz_display_after_process_all_updates  (GdkDisplay *display);
-void       _gdk_quartz_display_event_data_copy (GdkDisplay     *display,
-                                                const GdkEvent *src,
-                                                GdkEvent       *dst);
-void       _gdk_quartz_display_event_data_free (GdkDisplay     *display,
-                                                GdkEvent       *event);
 void       _gdk_quartz_display_create_window_impl (GdkDisplay    *display,
                                                    GdkWindow     *window,
                                                    GdkWindow     *real_parent,
@@ -165,25 +139,68 @@ void       _gdk_quartz_display_create_window_impl (GdkDisplay    *display,
                                                    GdkEventMask   event_mask,
                                                    GdkWindowAttr *attributes,
                                                    gint           attributes_mask);
-GdkKeymap * _gdk_quartz_display_get_keymap (GdkDisplay *display);
-
 
-GdkDisplay *    _gdk_quartz_display_open (const gchar *name);
+/* Display methods - keymap */
+GdkKeymap * _gdk_quartz_display_get_keymap (GdkDisplay *display);
 
+/* Display methods - Drag and Drop */
 GdkNativeWindow _gdk_quartz_display_get_drag_protocol     (GdkDisplay      *display,
                                                            GdkNativeWindow  xid,
                                                            GdkDragProtocol *protocol,
                                                            guint           *version);
 
+/* Display methods - selection */
+gboolean    _gdk_quartz_display_set_selection_owner (GdkDisplay *display,
+                                                     GdkWindow  *owner,
+                                                     GdkAtom     selection,
+                                                     guint32     time,
+                                                     gboolean    send_event);
+GdkWindow * _gdk_quartz_display_get_selection_owner (GdkDisplay *display,
+                                                     GdkAtom     selection);
+void        _gdk_quartz_display_send_selection_notify (GdkDisplay       *display,
+                                                       GdkNativeWindow  requestor,
+                                                       GdkAtom          selection,
+                                                       GdkAtom          target,
+                                                       GdkAtom          property,
+                                                       guint32          time);
+gint        _gdk_quartz_display_get_selection_property (GdkDisplay     *display,
+                                                        GdkWindow      *requestor,
+                                                        guchar        **data,
+                                                        GdkAtom        *ret_type,
+                                                        gint           *ret_format);
+void        _gdk_quartz_display_convert_selection      (GdkDisplay     *display,
+                                                        GdkWindow      *requestor,
+                                                        GdkAtom         selection,
+                                                        GdkAtom         target,
+                                                        guint32         time);
+gint        _gdk_quartz_display_text_property_to_utf8_list (GdkDisplay     *display,
+                                                            GdkAtom         encoding,
+                                                            gint            format,
+                                                            const guchar   *text,
+                                                            gint            length,
+                                                            gchar        ***list);
+gchar *     _gdk_quartz_display_utf8_to_string_target      (GdkDisplay     *displayt,
+                                                            const gchar    *str);
 
-gboolean    _gdk_quartz_display_send_client_message       (GdkDisplay      *display,
-                                                           GdkEvent        *event,
-                                                           GdkNativeWindow  winid);
-void        _gdk_quartz_display_add_client_message_filter (GdkDisplay      *display,
-                                                           GdkAtom          message_type,
-                                                           GdkFilterFunc    func,
-                                                           gpointer         data);
 
+/* Display manager */
+void    _gdk_quartz_display_manager_add_display    (GdkDisplayManager *manager,
+                                                    GdkDisplay        *display);
+void    _gdk_quartz_display_manager_remove_display (GdkDisplayManager *manager,
+                                                    GdkDisplay        *display);
+
+/* Display manager methods - events */
+GdkAtom _gdk_quartz_display_manager_atom_intern   (GdkDisplayManager *manager,
+                                                   const gchar       *atom_name,
+                                                   gboolean           copy_name);
+gchar * _gdk_quartz_display_manager_get_atom_name (GdkDisplayManager *manager,
+                                                   GdkAtom            atom);
+
+/* Screen */
+GdkScreen  *_gdk_quartz_screen_new                      (void);
+void        _gdk_quartz_screen_update_window_sizes      (GdkScreen *screen);
+
+/* Screen methods - visual */
 GdkVisual *   _gdk_quartz_screen_get_rgba_visual            (GdkScreen      *screen);
 GdkVisual *   _gdk_quartz_screen_get_system_visual          (GdkScreen      *screen);
 gint          _gdk_quartz_screen_visual_get_best_depth      (GdkScreen      *screen);
@@ -206,26 +223,46 @@ void          _gdk_quartz_screen_query_visual_types         (GdkScreen      *scr
 void          _gdk_quartz_screen_init_visuals               (GdkScreen      *screen);
 GList *       _gdk_quartz_screen_list_visuals               (GdkScreen      *screen);
 
-
+/* Screen methods - events */
 void        _gdk_quartz_screen_broadcast_client_message (GdkScreen   *screen,
                                                          GdkEvent    *event);
 gboolean    _gdk_quartz_screen_get_setting              (GdkScreen   *screen,
                                                          const gchar *name,
                                                          GValue      *value);
 
-GdkScreen  *_gdk_quartz_screen_new                      (void);
 
-GdkAtom _gdk_quartz_display_manager_atom_intern   (GdkDisplayManager *manager,
-                                                   const gchar       *atom_name,
-                                                   gboolean           copy_name);
-gchar * _gdk_quartz_display_manager_get_atom_name (GdkDisplayManager *manager,
-                                                   GdkAtom            atom);
+/* Window */
+gboolean    _gdk_quartz_window_is_ancestor          (GdkWindow *ancestor,
+                                                     GdkWindow *window);
+void       _gdk_quartz_window_gdk_xy_to_xy          (gint       gdk_x,
+                                                     gint       gdk_y,
+                                                     gint      *ns_x,
+                                                     gint      *ns_y);
+void       _gdk_quartz_window_xy_to_gdk_xy          (gint       ns_x,
+                                                     gint       ns_y,
+                                                     gint      *gdk_x,
+                                                     gint      *gdk_y);
+void       _gdk_quartz_window_nspoint_to_gdk_xy     (NSPoint    point,
+                                                     gint      *x,
+                                                     gint      *y);
+GdkWindow *_gdk_quartz_window_find_child            (GdkWindow *window,
+						     gint       x,
+						     gint       y,
+                                                     gboolean   get_toplevel);
+void       _gdk_quartz_window_attach_to_parent      (GdkWindow *window);
+void       _gdk_quartz_window_detach_from_parent    (GdkWindow *window);
+void       _gdk_quartz_window_did_become_main       (GdkWindow *window);
+void       _gdk_quartz_window_did_resign_main       (GdkWindow *window);
+void       _gdk_quartz_window_debug_highlight       (GdkWindow *window,
+                                                     gint       number);
 
-void    _gdk_quartz_display_manager_add_display    (GdkDisplayManager *manager,
-                                                    GdkDisplay        *display);
-void    _gdk_quartz_display_manager_remove_display (GdkDisplayManager *manager,
-                                                    GdkDisplay        *display);
+void       _gdk_quartz_window_set_needs_display_in_region (GdkWindow    *window,
+                                                           cairo_region_t    *region);
+
+void       _gdk_quartz_window_update_position           (GdkWindow    *window);
 
+
+/* Window methods - testing */
 void     _gdk_quartz_window_sync_rendering    (GdkWindow       *window);
 gboolean _gdk_quartz_window_simulate_key      (GdkWindow       *window,
                                                gint             x,
@@ -240,6 +277,7 @@ gboolean _gdk_quartz_window_simulate_button   (GdkWindow       *window,
                                                GdkModifierType  modifiers,
                                                GdkEventType     button_pressrelease);
 
+/* Window methods - property */
 gboolean _gdk_quartz_window_get_property      (GdkWindow    *window,
                                                GdkAtom       property,
                                                GdkAtom       type,
@@ -260,37 +298,5 @@ void     _gdk_quartz_window_change_property   (GdkWindow    *window,
 void     _gdk_quartz_window_delete_property   (GdkWindow    *window,
                                                GdkAtom       property);
 
-gboolean    _gdk_quartz_display_set_selection_owner (GdkDisplay *display,
-                                                     GdkWindow  *owner,
-                                                     GdkAtom     selection,
-                                                     guint32     time,
-                                                     gboolean    send_event);
-GdkWindow * _gdk_quartz_display_get_selection_owner (GdkDisplay *display,
-                                                     GdkAtom     selection);
-void        _gdk_quartz_display_send_selection_notify (GdkDisplay       *display,
-                                                       GdkNativeWindow  requestor,
-                                                       GdkAtom          selection,
-                                                       GdkAtom          target,
-                                                       GdkAtom          property,
-                                                       guint32          time);
-gint        _gdk_quartz_display_get_selection_property (GdkDisplay     *display,
-                                                        GdkWindow      *requestor,
-                                                        guchar        **data,
-                                                        GdkAtom        *ret_type,
-                                                        gint           *ret_format);
-void        _gdk_quartz_display_convert_selection      (GdkDisplay     *display,
-                                                        GdkWindow      *requestor,
-                                                        GdkAtom         selection,
-                                                        GdkAtom         target,
-                                                        guint32         time);
-gint        _gdk_quartz_display_text_property_to_utf8_list (GdkDisplay     *display,
-                                                            GdkAtom         encoding,
-                                                            gint            format,
-                                                            const guchar   *text,
-                                                            gint            length,
-                                                            gchar        ***list);
-gchar *     _gdk_quartz_display_utf8_to_string_target      (GdkDisplay     *displayt,
-                                                            const gchar    *str);
-
 
 #endif /* __GDK_PRIVATE_QUARTZ_H__ */
diff --git a/gdk/quartz/gdkscreen-quartz.c b/gdk/quartz/gdkscreen-quartz.c
index 192fd97..678a947 100644
--- a/gdk/quartz/gdkscreen-quartz.c
+++ b/gdk/quartz/gdkscreen-quartz.c
@@ -184,6 +184,36 @@ gdk_quartz_screen_calculate_layout (GdkQuartzScreen *screen)
   GDK_QUARTZ_RELEASE_POOL;
 }
 
+void
+_gdk_quartz_screen_update_window_sizes (GdkScreen *screen)
+{
+  GList *windows, *list;
+
+  /* The size of the root window is so that it can contain all
+   * monitors attached to this machine.  The monitors are laid out
+   * within this root window.  We calculate the size of the root window
+   * and the positions of the different monitors in gdkscreen-quartz.c.
+   *
+   * This data is updated when the monitor configuration is changed.
+   */
+
+  /* FIXME: At some point, fetch the root window from GdkScreen.  But
+   * on OS X will we only have a single root window anyway.
+   */
+  _gdk_root->x = 0;
+  _gdk_root->y = 0;
+  _gdk_root->abs_x = 0;
+  _gdk_root->abs_y = 0;
+  _gdk_root->width = gdk_screen_get_width (screen);
+  _gdk_root->height = gdk_screen_get_height (screen);
+
+  windows = gdk_screen_get_toplevel_windows (screen);
+
+  for (list = windows; list; list = list->next)
+    _gdk_quartz_window_update_position (list->data);
+
+  g_list_free (windows);
+}
 
 static void
 process_display_reconfiguration (GdkQuartzScreen *screen)
@@ -195,7 +225,7 @@ process_display_reconfiguration (GdkQuartzScreen *screen)
 
   gdk_quartz_screen_calculate_layout (GDK_QUARTZ_SCREEN (screen));
 
-  _gdk_windowing_update_window_sizes (GDK_SCREEN (screen));
+  _gdk_quartz_screen_update_window_sizes (GDK_SCREEN (screen));
 
   if (screen->emit_monitors_changed)
     {
diff --git a/gdk/quartz/gdkwindow-quartz.c b/gdk/quartz/gdkwindow-quartz.c
index bdcc5a8..a9655b2 100644
--- a/gdk/quartz/gdkwindow-quartz.c
+++ b/gdk/quartz/gdkwindow-quartz.c
@@ -1043,48 +1043,22 @@ _gdk_quartz_window_update_position (GdkWindow *window)
 }
 
 void
-_gdk_windowing_update_window_sizes (GdkScreen *screen)
-{
-  GList *windows, *list;
-
-  /* The size of the root window is so that it can contain all
-   * monitors attached to this machine.  The monitors are laid out
-   * within this root window.  We calculate the size of the root window
-   * and the positions of the different monitors in gdkscreen-quartz.c.
-   *
-   * This data is updated when the monitor configuration is changed.
-   */
-  _gdk_root->x = 0;
-  _gdk_root->y = 0;
-  _gdk_root->abs_x = 0;
-  _gdk_root->abs_y = 0;
-  _gdk_root->width = gdk_screen_get_width (screen);
-  _gdk_root->height = gdk_screen_get_height (screen);
-
-  windows = gdk_screen_get_toplevel_windows (screen);
-
-  for (list = windows; list; list = list->next)
-    _gdk_quartz_window_update_position (list->data);
-
-  g_list_free (windows);
-}
-
-void
-_gdk_windowing_window_init (void)
+_gdk_quartz_window_init_windowing (GdkDisplay *display,
+                                   GdkScreen  *screen)
 {
   GdkWindowImplQuartz *impl;
 
   g_assert (_gdk_root == NULL);
 
-  _gdk_root = _gdk_display_create_window (_gdk_display);
+  _gdk_root = _gdk_display_create_window (display);
 
   _gdk_root->impl = g_object_new (_gdk_root_window_impl_quartz_get_type (), NULL);
   _gdk_root->impl_window = _gdk_root;
-  _gdk_root->visual = gdk_screen_get_system_visual (_gdk_screen);
+  _gdk_root->visual = gdk_screen_get_system_visual (screen);
 
   impl = GDK_WINDOW_IMPL_QUARTZ (_gdk_root->impl);
 
-  _gdk_windowing_update_window_sizes (_gdk_screen);
+  _gdk_quartz_screen_update_window_sizes (screen);
 
   _gdk_root->state = 0; /* We don't want GDK_WINDOW_STATE_WITHDRAWN here */
   _gdk_root->window_type = GDK_WINDOW_ROOT;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]