[PATCH 2/9] gtk: make SpiceDisplay private

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

 



Do not leak internals of SpiceDisplay in our headers. This makes also
the class final, which let us extend more easily without fear of
breaking ABI.

Signed-off-by: Marc-André Lureau <marcandre.lureau@xxxxxxxxx>
---
 src/spice-widget-priv.h | 15 +++++++++++++++
 src/spice-widget.h      | 35 -----------------------------------
 2 files changed, 15 insertions(+), 35 deletions(-)

diff --git a/src/spice-widget-priv.h b/src/spice-widget-priv.h
index c708e25..8ac0782 100644
--- a/src/spice-widget-priv.h
+++ b/src/spice-widget-priv.h
@@ -40,6 +40,21 @@
 
 G_BEGIN_DECLS
 
+typedef struct _SpiceDisplayPrivate SpiceDisplayPrivate;
+
+struct _SpiceDisplay {
+    GtkDrawingArea parent;
+    SpiceDisplayPrivate *priv;
+};
+
+struct _SpiceDisplayClass {
+    GtkDrawingAreaClass parent_class;
+
+    /* signals */
+    void (*mouse_grab)(SpiceChannel *channel, gint grabbed);
+    void (*keyboard_grab)(SpiceChannel *channel, gint grabbed);
+};
+
 #define SPICE_DISPLAY_GET_PRIVATE(obj)                                  \
     (G_TYPE_INSTANCE_GET_PRIVATE((obj), SPICE_TYPE_DISPLAY, SpiceDisplayPrivate))
 
diff --git a/src/spice-widget.h b/src/spice-widget.h
index 213db7a..5a7c206 100644
--- a/src/spice-widget.h
+++ b/src/spice-widget.h
@@ -42,41 +42,6 @@ G_BEGIN_DECLS
 
 typedef struct _SpiceDisplay SpiceDisplay;
 typedef struct _SpiceDisplayClass SpiceDisplayClass;
-typedef struct _SpiceDisplayPrivate SpiceDisplayPrivate;
-
-/**
- * SpiceDisplay:
- *
- * The #SpiceDisplay struct is opaque and should not be accessed directly.
- */
-struct _SpiceDisplay {
-    GtkDrawingArea parent;
-    SpiceDisplayPrivate *priv;
-    /* Do not add fields to this struct */
-};
-
-/**
- * SpiceDisplayClass:
- * @parent_class: Parent class.
- * @mouse_grab: Signal class handler for the #SpiceDisplay::mouse_grab signal.
- * @keyboard_grab: Signal class handler for the #SpiceDisplay::keyboard_grab signal.
- *
- * Class structure for #SpiceDisplay.
- */
-struct _SpiceDisplayClass {
-    GtkDrawingAreaClass parent_class;
-
-    /* signals */
-    void (*mouse_grab)(SpiceChannel *channel, gint grabbed);
-    void (*keyboard_grab)(SpiceChannel *channel, gint grabbed);
-
-    /*< private >*/
-    /*
-     * If adding fields to this struct, remove corresponding
-     * amount of padding to avoid changing overall struct size
-     */
-    gchar _spice_reserved[SPICE_RESERVED_PADDING];
-};
 
 /**
  * SpiceDisplayKeyEvent:
-- 
2.5.0

_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/spice-devel




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]