--- a/pidgin/gtkwhiteboard.c Tue Nov 10 01:11:31 2020 -0600
+++ b/pidgin/gtkwhiteboard.c Tue Nov 10 03:00:37 2020 -0600
@@ -38,6 +38,7 @@
PIDGIN_WHITEBOARD_BRUSH_MOTION
} PidginWhiteboardBrushState;
+#define UI_DATA "pidgin-ui-data" #define PIDGIN_TYPE_WHITEBOARD (pidgin_whiteboard_get_type())
G_DECLARE_FINAL_TYPE(PidginWhiteboard, pidgin_whiteboard, PIDGIN, WHITEBOARD,
@@ -161,7 +162,7 @@
pidgin_whiteboard_draw_brush_point(PurpleWhiteboard *wb, int x, int y,
- PidginWhiteboard *gtkwb = purple_whiteboard_get_ui_data(wb);
+ PidginWhiteboard *gtkwb = g_object_get_data(G_OBJECT(wb), UI_DATA); GtkWidget *widget = gtkwb->drawing_area;
cairo_t *gfx_con = gtkwb->cr;
@@ -440,7 +441,7 @@
static void pidgin_whiteboard_set_dimensions(PurpleWhiteboard *wb, int width, int height)
- PidginWhiteboard *gtkwb = purple_whiteboard_get_ui_data(wb);
+ PidginWhiteboard *gtkwb = g_object_get_data(G_OBJECT(wb), UI_DATA); @@ -448,7 +449,7 @@
static void pidgin_whiteboard_set_brush(PurpleWhiteboard *wb, int size, int color)
- PidginWhiteboard *gtkwb = purple_whiteboard_get_ui_data(wb);
+ PidginWhiteboard *gtkwb = g_object_get_data(G_OBJECT(wb), UI_DATA); gtkwb->brush_size = size;
gtkwb->brush_color = color;
@@ -456,7 +457,7 @@
static void pidgin_whiteboard_clear(PurpleWhiteboard *wb)
- PidginWhiteboard *gtkwb = purple_whiteboard_get_ui_data(wb);
+ PidginWhiteboard *gtkwb = g_object_get_data(G_OBJECT(wb), UI_DATA); GtkWidget *drawing_area = gtkwb->drawing_area;
GtkAllocation allocation;
@@ -566,7 +567,7 @@
gtkwb = PIDGIN_WHITEBOARD(g_object_new(PIDGIN_TYPE_WHITEBOARD, NULL));
- purple_whiteboard_set_ui_data(wb, gtkwb);
+ g_object_set_data_full(G_OBJECT(wb), UI_DATA, gtkwb, g_object_unref); /* Get dimensions (default?) for the whiteboard canvas */
if (!purple_whiteboard_get_dimensions(wb, >kwb->width,
@@ -621,15 +622,13 @@
g_return_if_fail(wb != NULL);
- gtkwb = purple_whiteboard_get_ui_data(wb);
+ gtkwb = g_object_get_data(G_OBJECT(wb), UI_DATA); g_return_if_fail(gtkwb != NULL);
/* TODO Ask if user wants to save picture before the session is closed
- purple_whiteboard_set_ui_data(wb, NULL);
/******************************************************************************