diff options
| author | infirit <[email protected]> | 2015-07-27 23:17:39 +0200 | 
|---|---|---|
| committer | infirit <[email protected]> | 2015-07-28 20:02:12 +0200 | 
| commit | f0bcfaeca30ae5a7992007bbc47406144851cf26 (patch) | |
| tree | cd894aa0ed7c78138906660c729ec58feea6bbf8 | |
| parent | 1dba07c1777dc93b8a79e99140b63a12239b57ca (diff) | |
| download | mate-notification-daemon-f0bcfaeca30ae5a7992007bbc47406144851cf26.tar.bz2 mate-notification-daemon-f0bcfaeca30ae5a7992007bbc47406144851cf26.tar.xz | |
standard: Move the draw and expose-event handling from paint_window
No functional change but this makes the code a bit cleaner
and easier to read.
| -rw-r--r-- | src/themes/standard/theme.c | 38 | 
1 files changed, 25 insertions, 13 deletions
| diff --git a/src/themes/standard/theme.c b/src/themes/standard/theme.c index a61a0d9..b91fe3e 100644 --- a/src/themes/standard/theme.c +++ b/src/themes/standard/theme.c @@ -474,18 +474,14 @@ static void draw_border(GtkWidget* widget, WindowData *windata, cairo_t* cr)  	cairo_stroke(cr);  } -#if GTK_CHECK_VERSION(3, 0, 0) -static gboolean paint_window(GtkWidget* widget, cairo_t* cr, WindowData* windata) -#else -static gboolean paint_window(GtkWidget* widget, GdkEventExpose* event, WindowData* windata) -#endif +static void +paint_window (GtkWidget  *widget, +	      cairo_t    *cr, +	      WindowData *windata)  {  	cairo_t*         cr2;  	cairo_surface_t* surface;  	GtkAllocation    allocation; -#if !GTK_CHECK_VERSION(3, 0, 0) -	cairo_t*         cr = gdk_cairo_create (event->window); -#endif  	gtk_widget_get_allocation(windata->win, &allocation); @@ -515,12 +511,28 @@ static gboolean paint_window(GtkWidget* widget, GdkEventExpose* event, WindowDat  	cairo_set_source_surface (cr, surface, 0, 0);  	cairo_paint(cr);  	cairo_surface_destroy(surface); +} + +static gboolean +#if GTK_CHECK_VERSION (3, 0, 0) +on_draw (GtkWidget *widget, cairo_t *cr, WindowData *windata) +{ +	paint_window (widget, cr, windata); + +	return FALSE; +} +#else +on_expose_event (GtkWidget *widget, GdkEventExpose *event, WindowData *windata) +{ +	cairo_t *cr = gdk_cairo_create (event->window); + +	paint_window (widget, cr, windata); + +	cairo_destroy (cr); -#if !GTK_CHECK_VERSION (3, 0, 0) -	cairo_destroy(cr); -#endif  	return FALSE;  } +#endif  static void destroy_windata(WindowData* windata)  { @@ -675,9 +687,9 @@ GtkWindow* create_notification(UrlClickedCb url_clicked)  	gtk_container_set_border_width(GTK_CONTAINER(main_vbox), 1);  #if GTK_CHECK_VERSION (3, 0, 0) -	g_signal_connect(G_OBJECT(main_vbox), "draw", G_CALLBACK(paint_window), windata); +	g_signal_connect (G_OBJECT (main_vbox), "draw", G_CALLBACK (on_draw), windata);  #else -	g_signal_connect(G_OBJECT(main_vbox), "expose_event", G_CALLBACK(paint_window), windata); +	g_signal_connect (G_OBJECT (main_vbox), "expose_event", G_CALLBACK (on_expose_event), windata);  #endif  	windata->top_spacer = gtk_image_new(); | 
