diff options
author | Lars Uebernickel <lars.uebernickel@canonical.com> | 2012-01-22 12:17:54 +0100 |
---|---|---|
committer | Lars Uebernickel <lars.uebernickel@canonical.com> | 2012-01-22 12:17:54 +0100 |
commit | a9e89356835246b29f2ce06278e846eb8543b9db (patch) | |
tree | 6208624ee3abdcee5d9880223c2b067836b040a9 | |
parent | 0d029e38b6d9b0f556b8d994385e972107c766a1 (diff) | |
download | ayatana-indicator-messages-a9e89356835246b29f2ce06278e846eb8543b9db.tar.gz ayatana-indicator-messages-a9e89356835246b29f2ce06278e846eb8543b9db.tar.bz2 ayatana-indicator-messages-a9e89356835246b29f2ce06278e846eb8543b9db.zip |
Center lozenge text vertically
This ignores the label's padding and alignments, but they aren't used right
now.
-rw-r--r-- | src/indicator-messages.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/indicator-messages.c b/src/indicator-messages.c index bb1d618..a39d7f1 100644 --- a/src/indicator-messages.c +++ b/src/indicator-messages.c @@ -522,6 +522,7 @@ numbers_draw_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data) GtkStyle *style; double x, y, w, h; PangoLayout * layout; + PangoRectangle layout_extents; gint font_size = gtk_widget_get_font_size (widget); if (!GTK_IS_WIDGET (widget)) return FALSE; @@ -542,6 +543,8 @@ numbers_draw_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data) h = allocation.height; layout = gtk_label_get_layout (GTK_LABEL(widget)); + pango_layout_get_extents (layout, NULL, &layout_extents); + pango_extents_to_pixels (&layout_extents, NULL); #if GTK_CHECK_VERSION(3, 0, 0) cairo_save (cr); @@ -562,6 +565,7 @@ numbers_draw_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data) style->fg[gtk_widget_get_state(widget)].green/65535.0, style->fg[gtk_widget_get_state(widget)].blue/65535.0, 0.5); + y += (allocation.height - layout_extents.height) / 2.0; cairo_move_to (cr, x, y); pango_cairo_layout_path (cr, layout); cairo_fill (cr); |