[metacity] theme: remove meta_gtk_widget_get_font_desc
- From: Alberts Muktupāvels <muktupavels src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [metacity] theme: remove meta_gtk_widget_get_font_desc
- Date: Wed, 3 Feb 2016 23:05:34 +0000 (UTC)
commit a5db708f85a01d4d5fd50385a42775910aaf89cb
Author: Alberts Muktupāvels <alberts muktupavels gmail com>
Date: Tue Feb 2 19:25:26 2016 +0200
theme: remove meta_gtk_widget_get_font_desc
src/ui/frames.c | 21 ++++-----------------
src/ui/preview-widget.c | 15 ++++++---------
src/ui/theme-private.h | 4 ----
src/ui/theme-viewer.c | 11 +++--------
src/ui/theme.c | 29 -----------------------------
src/ui/ui.c | 42 +++---------------------------------------
6 files changed, 16 insertions(+), 106 deletions(-)
---
diff --git a/src/ui/frames.c b/src/ui/frames.c
index c51ba53..fa379c9 100644
--- a/src/ui/frames.c
+++ b/src/ui/frames.c
@@ -465,6 +465,7 @@ meta_frames_ensure_layout (MetaFrames *frames,
{
gpointer key, value;
MetaTheme *current;
+ MetaStyleInfo *style_info;
PangoFontDescription *font_desc;
int size;
@@ -475,24 +476,10 @@ meta_frames_ensure_layout (MetaFrames *frames,
pango_layout_set_single_paragraph_mode (frame->text_layout, TRUE);
current = meta_theme_get_current ();
+ style_info = meta_theme_get_style_info (current, frame->theme_variant);
- if (meta_theme_get_theme_type (current) == META_THEME_TYPE_METACITY)
- {
- double scale;
-
- scale = meta_theme_get_title_scale (current, type, flags);
-
- font_desc = meta_gtk_widget_get_font_desc (widget, scale,
- meta_prefs_get_titlebar_font ());
- }
- else
- {
- MetaStyleInfo *style_info;
-
- style_info = meta_theme_get_style_info (current, frame->theme_variant);
- font_desc = meta_style_info_create_font_desc (current, style_info);
- meta_frame_style_apply_scale (style, font_desc);
- }
+ font_desc = meta_style_info_create_font_desc (current, style_info);
+ meta_frame_style_apply_scale (style, font_desc);
size = pango_font_description_get_size (font_desc);
diff --git a/src/ui/preview-widget.c b/src/ui/preview-widget.c
index be10ab0..452f536 100644
--- a/src/ui/preview-widget.c
+++ b/src/ui/preview-widget.c
@@ -128,22 +128,19 @@ ensure_info (MetaPreview *preview)
if (preview->layout == NULL)
{
+ MetaStyleInfo *style_info;
PangoFontDescription *font_desc;
- double scale;
+ MetaFrameStyle *style;
PangoAttrList *attrs;
PangoAttribute *attr;
- if (preview->theme)
- scale = meta_theme_get_title_scale (preview->theme,
- preview->type,
- preview->flags);
- else
- scale = 1.0;
-
preview->layout = gtk_widget_create_pango_layout (widget,
preview->title);
- font_desc = meta_gtk_widget_get_font_desc (widget, scale, NULL);
+ style_info = meta_theme_get_style_info (preview->theme, NULL);
+ font_desc = meta_style_info_create_font_desc (preview->theme, style_info);
+ style = meta_theme_get_frame_style (preview->theme, preview->type, preview->flags);
+ meta_frame_style_apply_scale (style, font_desc);
preview->text_height =
meta_pango_font_desc_get_text_height (font_desc,
diff --git a/src/ui/theme-private.h b/src/ui/theme-private.h
index 19af8f9..0db12f8 100644
--- a/src/ui/theme-private.h
+++ b/src/ui/theme-private.h
@@ -31,10 +31,6 @@ MetaFrameStyle *meta_theme_get_frame_style (MetaTheme
PangoFontDescription *meta_style_info_create_font_desc (MetaTheme *theme,
MetaStyleInfo *style_info);
-PangoFontDescription *meta_gtk_widget_get_font_desc (GtkWidget *widget,
- double scale,
- const PangoFontDescription *override);
-
int meta_pango_font_desc_get_text_height (const PangoFontDescription *font_desc,
PangoContext *context);
diff --git a/src/ui/theme-viewer.c b/src/ui/theme-viewer.c
index f827f5c..d0b8400 100644
--- a/src/ui/theme-viewer.c
+++ b/src/ui/theme-viewer.c
@@ -912,11 +912,8 @@ main (int argc, char **argv)
gtk_widget_realize (window);
- style_info = meta_style_info_new (NULL, meta_theme_get_composited (global_theme));
- gtk_style_context_get (style_info->styles[META_STYLE_ELEMENT_DECORATION],
- GTK_STATE_FLAG_NORMAL, "font", &font_desc, NULL);
- meta_style_info_unref (style_info);
-
+ style_info = meta_theme_get_style_info (global_theme, NULL);
+ font_desc = meta_style_info_create_font_desc (global_theme, style_info);
g_assert (font_desc);
notebook = gtk_notebook_new ();
@@ -992,8 +989,7 @@ get_text_height (GtkWidget *widget,
PangoFontDescription *font_desc;
int text_height;
- gtk_style_context_get (style_info->styles[META_STYLE_ELEMENT_DECORATION],
- GTK_STATE_FLAG_NORMAL, "font", &font_desc, NULL);
+ font_desc = meta_style_info_create_font_desc (global_theme, style_info);
text_height = meta_pango_font_desc_get_text_height (font_desc, gtk_widget_get_pango_context (widget));
pango_font_description_free (font_desc);
@@ -1120,7 +1116,6 @@ run_theme_benchmark (void)
g_timer_destroy (timer);
g_object_unref (G_OBJECT (layout));
- meta_style_info_unref (style_info);
gtk_widget_destroy (widget);
#undef ITERATIONS
diff --git a/src/ui/theme.c b/src/ui/theme.c
index b17712b..9e5bb21 100644
--- a/src/ui/theme.c
+++ b/src/ui/theme.c
@@ -1842,35 +1842,6 @@ meta_theme_calc_geometry (MetaTheme *theme,
theme);
}
-PangoFontDescription*
-meta_gtk_widget_get_font_desc (GtkWidget *widget,
- double scale,
- const PangoFontDescription *override)
-{
- GtkStyleContext *context;
- PangoFontDescription *font_desc;
-
- g_return_val_if_fail (gtk_widget_get_realized (widget), NULL);
-
- context = gtk_widget_get_style_context (widget);
-
- gtk_style_context_save (context);
- gtk_style_context_set_state (context, GTK_STATE_FLAG_NORMAL);
-
- gtk_style_context_get (context, GTK_STATE_FLAG_NORMAL,
- "font", &font_desc, NULL);
-
- gtk_style_context_restore (context);
-
- if (override)
- pango_font_description_merge (font_desc, override, TRUE);
-
- pango_font_description_set_size (font_desc,
- MAX (pango_font_description_get_size (font_desc) * scale, 1));
-
- return font_desc;
-}
-
/**
* Returns the height of the letters in a particular font.
*
diff --git a/src/ui/ui.c b/src/ui/ui.c
index f89266a..0b0f0a5 100644
--- a/src/ui/ui.c
+++ b/src/ui/ui.c
@@ -667,62 +667,26 @@ meta_ui_theme_get_frame_borders (MetaUI *ui,
{
int text_height;
PangoContext *context;
- const PangoFontDescription *font_desc;
- PangoFontDescription *free_font_desc = NULL;
+ PangoFontDescription *font_desc;
if (meta_ui_have_a_theme ())
{
- GdkDisplay *display = gdk_x11_lookup_xdisplay (ui->xdisplay);
- GdkScreen *screen = gdk_display_get_screen (display, XScreenNumberOfScreen (ui->xscreen));
MetaStyleInfo *style_info;
MetaTheme *current;
current = meta_theme_get_current ();
style_info = meta_theme_get_style_info (current, NULL);
+ font_desc = meta_style_info_create_font_desc (current, style_info);
context = gtk_widget_get_pango_context (GTK_WIDGET (ui->frames));
- font_desc = meta_prefs_get_titlebar_font ();
-
- if (!font_desc)
- {
- if (meta_theme_get_theme_type (current) == META_THEME_TYPE_METACITY)
- {
- GtkStyleContext *style;
- GtkWidgetPath *widget_path;
-
- style = gtk_style_context_new ();
- gtk_style_context_set_screen (style, screen);
- gtk_style_context_set_state (style, GTK_STATE_FLAG_NORMAL);
-
- widget_path = gtk_widget_path_new ();
- gtk_widget_path_append_type (widget_path, GTK_TYPE_WINDOW);
- gtk_style_context_set_path (style, widget_path);
- gtk_widget_path_free (widget_path);
-
- gtk_style_context_get (style, GTK_STATE_FLAG_NORMAL,
- "font", &free_font_desc,
- NULL);
-
- if (style != NULL)
- g_object_unref (style);
- }
- else
- {
- free_font_desc = meta_style_info_create_font_desc (current, style_info);
- }
-
- font_desc = (const PangoFontDescription *) free_font_desc;
- }
text_height = meta_pango_font_desc_get_text_height (font_desc, context);
+ pango_font_description_free (font_desc);
meta_theme_get_frame_borders (current,
NULL, /* FIXME: theme variant*/
type, text_height, flags,
borders);
-
- if (free_font_desc)
- pango_font_description_free (free_font_desc);
}
else
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]