[Xfce4-commits] [xfce/xfwm4] 01/05: display: Add default display

noreply at xfce.org noreply at xfce.org
Thu Jan 19 09:33:56 CET 2017


This is an automated email from the git hooks/post-receive script.

olivier pushed a commit to branch master
in repository xfce/xfwm4.

commit b0de84c82dbd43a11a2c34875885f0fd507f9225
Author: Olivier Fourdan <fourdan at xfce.org>
Date:   Wed Jan 18 08:12:04 2017 +0100

    display: Add default display
    
    Store the default display and add an API to retrieve it.
    
    Signed-off-by: Olivier Fourdan <fourdan at xfce.org>
---
 src/display.c | 26 ++++++++++++++++++++++----
 src/display.h |  1 +
 2 files changed, 23 insertions(+), 4 deletions(-)

diff --git a/src/display.c b/src/display.c
index 55319e7..ed9b502 100644
--- a/src/display.c
+++ b/src/display.c
@@ -57,6 +57,8 @@
 #define CURSOR_MOVE XC_fleur
 #endif
 
+static DisplayInfo *default_display;
+
 static int
 handleXError (Display * dpy, XErrorEvent * err)
 {
@@ -208,6 +210,11 @@ myDisplayInit (GdkDisplay *gdisplay)
 
     display = g_new0 (DisplayInfo, 1);
 
+    if (!default_display)
+    {
+      default_display = display;
+    }
+
     display->gdisplay = gdisplay;
     display->dpy = (Display *) gdk_x11_display_get_xdisplay (gdisplay);
 
@@ -254,8 +261,8 @@ myDisplayInit (GdkDisplay *gdisplay)
     minor = SYNC_MINOR_VERSION;
 
     if (XSyncQueryExtension (display->dpy,
-                              &display->xsync_event_base,
-                              &display->xsync_error_base)
+                             &display->xsync_event_base,
+                             &display->xsync_error_base)
          && XSyncInitialize (display->dpy,
                              &major,
                              &minor))
@@ -291,8 +298,8 @@ myDisplayInit (GdkDisplay *gdisplay)
 
 #ifdef HAVE_RANDR
     if (XRRQueryExtension (display->dpy,
-                            &display->xrandr_event_base,
-                            &display->xrandr_error_base))
+                           &display->xrandr_event_base,
+                           &display->xrandr_error_base))
     {
         display->have_xrandr = TRUE;
     }
@@ -343,6 +350,11 @@ myDisplayClose (DisplayInfo *display)
     XDestroyWindow (display->dpy, display->timestamp_win);
     display->timestamp_win = None;
 
+    if (default_display == display)
+    {
+      default_display = NULL;
+    }
+
     if (display->hostname)
     {
         g_free (display->hostname);
@@ -358,6 +370,12 @@ myDisplayClose (DisplayInfo *display)
     return display;
 }
 
+DisplayInfo *
+myDisplayGetDefault (void)
+{
+    return default_display;
+}
+
 gboolean
 myDisplayHaveShape (DisplayInfo *display)
 {
diff --git a/src/display.h b/src/display.h
index 44c4ade..8c21f28 100644
--- a/src/display.h
+++ b/src/display.h
@@ -363,6 +363,7 @@ struct _DisplayInfo
 
 DisplayInfo             *myDisplayInit                          (GdkDisplay *);
 DisplayInfo             *myDisplayClose                         (DisplayInfo *);
+DisplayInfo             *myDisplayGetDefault                    (void);
 gboolean                 myDisplayHaveShape                     (DisplayInfo *);
 gboolean                 myDisplayHaveShapeInput                (DisplayInfo *);
 gboolean                 myDisplayHaveRender                    (DisplayInfo *);

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Xfce4-commits mailing list