A couple more updates use the GTK3 drawing APIs
This commit is contained in:
parent
4828b97c79
commit
533b044dc9
2 changed files with 5 additions and 15 deletions
|
@ -470,11 +470,10 @@ backgrounds_changed_cb (GtkIconView *icon_view,
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
preview_expose_cb (GtkWidget *widget,
|
preview_draw_cb (GtkWidget *widget,
|
||||||
GdkEventExpose *expose,
|
cairo_t *cr,
|
||||||
CcBackgroundPanel *panel)
|
CcBackgroundPanel *panel)
|
||||||
{
|
{
|
||||||
cairo_t *cr;
|
|
||||||
GtkAllocation allocation;
|
GtkAllocation allocation;
|
||||||
CcBackgroundPanelPrivate *priv = panel->priv;
|
CcBackgroundPanelPrivate *priv = panel->priv;
|
||||||
GdkPixbuf *pixbuf = NULL;
|
GdkPixbuf *pixbuf = NULL;
|
||||||
|
@ -485,8 +484,6 @@ preview_expose_cb (GtkWidget *widget,
|
||||||
GdkPixbuf *preview, *temp;
|
GdkPixbuf *preview, *temp;
|
||||||
gint size;
|
gint size;
|
||||||
|
|
||||||
cr = gdk_cairo_create (gtk_widget_get_window (widget));
|
|
||||||
|
|
||||||
gtk_widget_get_allocation (widget, &allocation);
|
gtk_widget_get_allocation (widget, &allocation);
|
||||||
|
|
||||||
if (priv->current_background)
|
if (priv->current_background)
|
||||||
|
@ -536,7 +533,6 @@ preview_expose_cb (GtkWidget *widget,
|
||||||
allocation.width / 2 - (size / 2),
|
allocation.width / 2 - (size / 2),
|
||||||
allocation.height / 2 - (size / 2));
|
allocation.height / 2 - (size / 2));
|
||||||
cairo_paint (cr);
|
cairo_paint (cr);
|
||||||
cairo_destroy (cr);
|
|
||||||
|
|
||||||
g_object_unref (temp);
|
g_object_unref (temp);
|
||||||
g_object_unref (preview);
|
g_object_unref (preview);
|
||||||
|
@ -687,7 +683,7 @@ cc_background_panel_init (CcBackgroundPanel *self)
|
||||||
|
|
||||||
/* setup preview area */
|
/* setup preview area */
|
||||||
widget = WID ("preview-area");
|
widget = WID ("preview-area");
|
||||||
g_signal_connect (widget, "expose-event", G_CALLBACK (preview_expose_cb),
|
g_signal_connect (widget, "draw", G_CALLBACK (preview_draw_cb),
|
||||||
self);
|
self);
|
||||||
|
|
||||||
priv->display_base = gdk_pixbuf_new_from_file (DATADIR "/display-base.png",
|
priv->display_base = gdk_pixbuf_new_from_file (DATADIR "/display-base.png",
|
||||||
|
|
|
@ -219,21 +219,17 @@ shell_search_renderer_get_size (GtkCellRenderer *cell,
|
||||||
|
|
||||||
static void
|
static void
|
||||||
shell_search_renderer_render (GtkCellRenderer *cell,
|
shell_search_renderer_render (GtkCellRenderer *cell,
|
||||||
GdkDrawable *window,
|
cairo_t *cr,
|
||||||
GtkWidget *widget,
|
GtkWidget *widget,
|
||||||
GdkRectangle *background_area,
|
GdkRectangle *background_area,
|
||||||
GdkRectangle *cell_area,
|
GdkRectangle *cell_area,
|
||||||
GdkRectangle *expose_area,
|
|
||||||
GtkCellRendererState flags)
|
GtkCellRendererState flags)
|
||||||
{
|
{
|
||||||
ShellSearchRendererPrivate *priv = SHELL_SEARCH_RENDERER (cell)->priv;
|
ShellSearchRendererPrivate *priv = SHELL_SEARCH_RENDERER (cell)->priv;
|
||||||
cairo_t *cr;
|
|
||||||
PangoRectangle rect;
|
PangoRectangle rect;
|
||||||
|
|
||||||
shell_search_renderer_set_layout (SHELL_SEARCH_RENDERER (cell), widget);
|
shell_search_renderer_set_layout (SHELL_SEARCH_RENDERER (cell), widget);
|
||||||
|
|
||||||
cr = gdk_cairo_create (window);
|
|
||||||
|
|
||||||
pango_layout_get_pixel_extents (priv->layout, NULL, &rect);
|
pango_layout_get_pixel_extents (priv->layout, NULL, &rect);
|
||||||
|
|
||||||
cairo_move_to (cr, cell_area->x, cell_area->y);
|
cairo_move_to (cr, cell_area->x, cell_area->y);
|
||||||
|
@ -243,8 +239,6 @@ shell_search_renderer_render (GtkCellRenderer *cell,
|
||||||
if (priv->layout)
|
if (priv->layout)
|
||||||
pango_cairo_layout_path (cr, priv->layout);
|
pango_cairo_layout_path (cr, priv->layout);
|
||||||
cairo_fill (cr);
|
cairo_fill (cr);
|
||||||
|
|
||||||
cairo_destroy (cr);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue