Rewrite 15c0a9da using cairo_pattern_set_extend.
This commit is contained in:
@ -419,7 +419,6 @@ on_key_released (EekKeyboard *keyboard,
|
|||||||
EekGtkKeyboardPrivate *priv = EEK_GTK_KEYBOARD_GET_PRIVATE(widget);
|
EekGtkKeyboardPrivate *priv = EEK_GTK_KEYBOARD_GET_PRIVATE(widget);
|
||||||
cairo_t *cr;
|
cairo_t *cr;
|
||||||
EekBounds bounds, large_bounds;
|
EekBounds bounds, large_bounds;
|
||||||
EekColor background;
|
|
||||||
|
|
||||||
/* renderer may have not been set yet if the widget is a popup */
|
/* renderer may have not been set yet if the widget is a popup */
|
||||||
if (!priv->renderer)
|
if (!priv->renderer)
|
||||||
@ -436,17 +435,6 @@ on_key_released (EekKeyboard *keyboard,
|
|||||||
large_bounds.height);
|
large_bounds.height);
|
||||||
cairo_clip (cr);
|
cairo_clip (cr);
|
||||||
|
|
||||||
/* blank background, in case that a large key does not fit in the
|
|
||||||
keyboard */
|
|
||||||
eek_renderer_get_background_color (priv->renderer,
|
|
||||||
EEK_ELEMENT(priv->keyboard),
|
|
||||||
&background);
|
|
||||||
cairo_set_source_rgba (cr,
|
|
||||||
background.red,
|
|
||||||
background.green,
|
|
||||||
background.blue,
|
|
||||||
background.alpha);
|
|
||||||
cairo_paint (cr);
|
|
||||||
eek_renderer_render_keyboard (priv->renderer, cr);
|
eek_renderer_render_keyboard (priv->renderer, cr);
|
||||||
cairo_set_operator (cr, CAIRO_OPERATOR_CLEAR);
|
cairo_set_operator (cr, CAIRO_OPERATOR_CLEAR);
|
||||||
cairo_destroy (cr);
|
cairo_destroy (cr);
|
||||||
|
|||||||
@ -647,6 +647,7 @@ eek_renderer_real_render_keyboard (EekRenderer *self,
|
|||||||
cairo_t *cr)
|
cairo_t *cr)
|
||||||
{
|
{
|
||||||
EekRendererPrivate *priv = EEK_RENDERER_GET_PRIVATE(self);
|
EekRendererPrivate *priv = EEK_RENDERER_GET_PRIVATE(self);
|
||||||
|
cairo_pattern_t *source;
|
||||||
|
|
||||||
g_return_if_fail (priv->keyboard);
|
g_return_if_fail (priv->keyboard);
|
||||||
g_return_if_fail (priv->allocation_width > 0.0);
|
g_return_if_fail (priv->allocation_width > 0.0);
|
||||||
@ -656,6 +657,8 @@ eek_renderer_real_render_keyboard (EekRenderer *self,
|
|||||||
priv->keyboard_surface = create_keyboard_surface (self);
|
priv->keyboard_surface = create_keyboard_surface (self);
|
||||||
|
|
||||||
cairo_set_source_surface (cr, priv->keyboard_surface, 0.0, 0.0);
|
cairo_set_source_surface (cr, priv->keyboard_surface, 0.0, 0.0);
|
||||||
|
source = cairo_get_source (cr);
|
||||||
|
cairo_pattern_set_extend (source, CAIRO_EXTEND_PAD);
|
||||||
cairo_paint (cr);
|
cairo_paint (cr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user