get_icon_surface: Add a scale argument
This will allow us to pass the output scale around
This commit is contained in:
@ -33,11 +33,11 @@ G_DEFINE_TYPE (EekGtkRenderer, eek_gtk_renderer, EEK_TYPE_RENDERER);
|
|||||||
static cairo_surface_t *
|
static cairo_surface_t *
|
||||||
eek_gtk_renderer_real_get_icon_surface (EekRenderer *self,
|
eek_gtk_renderer_real_get_icon_surface (EekRenderer *self,
|
||||||
const gchar *icon_name,
|
const gchar *icon_name,
|
||||||
gint size)
|
gint size,
|
||||||
|
gint scale)
|
||||||
{
|
{
|
||||||
GError *error = NULL;
|
GError *error = NULL;
|
||||||
cairo_surface_t *surface;
|
cairo_surface_t *surface;
|
||||||
gint scale = 1;
|
|
||||||
|
|
||||||
surface = gtk_icon_theme_load_surface (gtk_icon_theme_get_default (),
|
surface = gtk_icon_theme_load_surface (gtk_icon_theme_get_default (),
|
||||||
icon_name,
|
icon_name,
|
||||||
|
|||||||
@ -503,7 +503,8 @@ render_key (EekRenderer *self,
|
|||||||
cairo_surface_t *icon_surface =
|
cairo_surface_t *icon_surface =
|
||||||
eek_renderer_get_icon_surface (self,
|
eek_renderer_get_icon_surface (self,
|
||||||
eek_symbol_get_icon_name (symbol),
|
eek_symbol_get_icon_name (symbol),
|
||||||
MIN(bounds.width, bounds.height));
|
MIN(bounds.width, bounds.height),
|
||||||
|
1);
|
||||||
if (icon_surface) {
|
if (icon_surface) {
|
||||||
gint width = cairo_image_surface_get_width (icon_surface);
|
gint width = cairo_image_surface_get_width (icon_surface);
|
||||||
gint height = cairo_image_surface_get_height (icon_surface);
|
gint height = cairo_image_surface_get_height (icon_surface);
|
||||||
@ -1071,7 +1072,8 @@ eek_renderer_render_key_outline (EekRenderer *renderer,
|
|||||||
cairo_surface_t *
|
cairo_surface_t *
|
||||||
eek_renderer_get_icon_surface (EekRenderer *renderer,
|
eek_renderer_get_icon_surface (EekRenderer *renderer,
|
||||||
const gchar *icon_name,
|
const gchar *icon_name,
|
||||||
gint size)
|
gint size,
|
||||||
|
gint scale)
|
||||||
{
|
{
|
||||||
EekRendererClass *klass;
|
EekRendererClass *klass;
|
||||||
|
|
||||||
@ -1079,7 +1081,7 @@ eek_renderer_get_icon_surface (EekRenderer *renderer,
|
|||||||
|
|
||||||
klass = EEK_RENDERER_GET_CLASS(renderer);
|
klass = EEK_RENDERER_GET_CLASS(renderer);
|
||||||
if (klass->get_icon_surface)
|
if (klass->get_icon_surface)
|
||||||
return klass->get_icon_surface (renderer, icon_name, size);
|
return klass->get_icon_surface (renderer, icon_name, size, scale);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -58,7 +58,8 @@ struct _EekRendererClass
|
|||||||
|
|
||||||
cairo_surface_t *(* get_icon_surface) (EekRenderer *self,
|
cairo_surface_t *(* get_icon_surface) (EekRenderer *self,
|
||||||
const gchar *icon_name,
|
const gchar *icon_name,
|
||||||
gint size);
|
gint size,
|
||||||
|
gint scale);
|
||||||
|
|
||||||
/*< private >*/
|
/*< private >*/
|
||||||
/* padding */
|
/* padding */
|
||||||
@ -103,7 +104,8 @@ void eek_renderer_render_key (EekRenderer *renderer,
|
|||||||
|
|
||||||
cairo_surface_t *eek_renderer_get_icon_surface (EekRenderer *renderer,
|
cairo_surface_t *eek_renderer_get_icon_surface (EekRenderer *renderer,
|
||||||
const gchar *icon_name,
|
const gchar *icon_name,
|
||||||
gint size);
|
gint size,
|
||||||
|
gint scale);
|
||||||
|
|
||||||
void eek_renderer_render_keyboard (EekRenderer *renderer,
|
void eek_renderer_render_keyboard (EekRenderer *renderer,
|
||||||
cairo_t *cr);
|
cairo_t *cr);
|
||||||
|
|||||||
Reference in New Issue
Block a user