summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlberts Muktupāvels <alberts.muktupavels@gmail.com>2016-01-31 02:58:59 +0200
committerAlberts Muktupāvels <alberts.muktupavels@gmail.com>2016-01-31 03:08:58 +0200
commit5cb8141c260610be40985b115505ea603a905d49 (patch)
tree80c6f0310e43d4d69c4201ffa339748fbf6b8e06
parent8bf8bbdb131910288985f7766432c0a2f762cc71 (diff)
downloadmetacity-5cb8141c260610be40985b115505ea603a905d49.tar.gz
theme: move frame_layouts to MetaThemeMetacity
-rw-r--r--libmetacity/meta-theme-metacity.c22
-rw-r--r--libmetacity/meta-theme-metacity.h60
-rw-r--r--src/ui/theme-parser.c9
-rw-r--r--src/ui/theme-private.h6
-rw-r--r--src/ui/theme.c23
5 files changed, 60 insertions, 60 deletions
diff --git a/libmetacity/meta-theme-metacity.c b/libmetacity/meta-theme-metacity.c
index c6eebb62..6b2dbb57 100644
--- a/libmetacity/meta-theme-metacity.c
+++ b/libmetacity/meta-theme-metacity.c
@@ -21,6 +21,7 @@
#include <glib/gi18n-lib.h>
#include "meta-draw-op.h"
+#include "meta-frame-layout.h"
#include "meta-theme.h"
#include "meta-theme-metacity.h"
@@ -33,6 +34,7 @@ struct _MetaThemeMetacity
GHashTable *colors;
GHashTable *draw_op_lists;
+ GHashTable *frame_layouts;
};
G_DEFINE_TYPE (MetaThemeMetacity, meta_theme_metacity, META_TYPE_THEME_IMPL)
@@ -55,6 +57,7 @@ meta_theme_metacity_dispose (GObject *object)
g_clear_pointer (&metacity->colors, g_hash_table_destroy);
g_clear_pointer (&metacity->draw_op_lists, g_hash_table_destroy);
+ g_clear_pointer (&metacity->frame_layouts, g_hash_table_destroy);
G_OBJECT_CLASS (meta_theme_metacity_parent_class)->dispose (object);
}
@@ -74,6 +77,9 @@ meta_theme_metacity_init (MetaThemeMetacity *metacity)
{
metacity->draw_op_lists = g_hash_table_new_full (g_str_hash, g_str_equal, g_free,
(GDestroyNotify) meta_draw_op_list_unref);
+
+ metacity->frame_layouts = g_hash_table_new_full (g_str_hash, g_str_equal, g_free,
+ (GDestroyNotify) meta_frame_layout_unref);
}
gboolean
@@ -264,3 +270,19 @@ meta_theme_metacity_insert_draw_op_list (MetaThemeMetacity *metacity,
meta_draw_op_list_ref (op_list);
g_hash_table_replace (metacity->draw_op_lists, g_strdup (name), op_list);
}
+
+MetaFrameLayout *
+meta_theme_metacity_lookup_layout (MetaThemeMetacity *metacity,
+ const gchar *name)
+{
+ return g_hash_table_lookup (metacity->frame_layouts, name);
+}
+
+void
+meta_theme_metacity_insert_layout (MetaThemeMetacity *metacity,
+ const gchar *name,
+ MetaFrameLayout *layout)
+{
+ meta_frame_layout_ref (layout);
+ g_hash_table_replace (metacity->frame_layouts, g_strdup (name), layout);
+}
diff --git a/libmetacity/meta-theme-metacity.h b/libmetacity/meta-theme-metacity.h
index 9e27a8f7..5d7a0b9d 100644
--- a/libmetacity/meta-theme-metacity.h
+++ b/libmetacity/meta-theme-metacity.h
@@ -24,44 +24,52 @@
G_BEGIN_DECLS
typedef struct _MetaDrawOpList MetaDrawOpList;
+typedef struct _MetaFrameLayout MetaFrameLayout;
#define META_TYPE_THEME_METACITY meta_theme_metacity_get_type ()
G_DECLARE_FINAL_TYPE (MetaThemeMetacity, meta_theme_metacity,
META, THEME_METACITY, MetaThemeImpl)
-gboolean meta_theme_metacity_define_int (MetaThemeMetacity *metacity,
- const gchar *name,
- gint value,
- GError **error);
+gboolean meta_theme_metacity_define_int (MetaThemeMetacity *metacity,
+ const gchar *name,
+ gint value,
+ GError **error);
-gboolean meta_theme_metacity_lookup_int (MetaThemeMetacity *metacity,
- const gchar *name,
- gint *value);
+gboolean meta_theme_metacity_lookup_int (MetaThemeMetacity *metacity,
+ const gchar *name,
+ gint *value);
-gboolean meta_theme_metacity_define_float (MetaThemeMetacity *metacity,
- const gchar *name,
- gdouble value,
- GError **error);
+gboolean meta_theme_metacity_define_float (MetaThemeMetacity *metacity,
+ const gchar *name,
+ gdouble value,
+ GError **error);
-gboolean meta_theme_metacity_lookup_float (MetaThemeMetacity *metacity,
- const gchar *name,
- gdouble *value);
+gboolean meta_theme_metacity_lookup_float (MetaThemeMetacity *metacity,
+ const gchar *name,
+ gdouble *value);
-gboolean meta_theme_metacity_define_color (MetaThemeMetacity *metacity,
- const gchar *name,
- const gchar *value,
- GError **error);
+gboolean meta_theme_metacity_define_color (MetaThemeMetacity *metacity,
+ const gchar *name,
+ const gchar *value,
+ GError **error);
-gboolean meta_theme_metacity_lookup_color (MetaThemeMetacity *metacity,
- const gchar *name,
- gchar **value);
+gboolean meta_theme_metacity_lookup_color (MetaThemeMetacity *metacity,
+ const gchar *name,
+ gchar **value);
-MetaDrawOpList *meta_theme_metacity_lookup_draw_op_list (MetaThemeMetacity *metacity,
- const gchar *name);
+MetaDrawOpList *meta_theme_metacity_lookup_draw_op_list (MetaThemeMetacity *metacity,
+ const gchar *name);
-void meta_theme_metacity_insert_draw_op_list (MetaThemeMetacity *metacity,
- const gchar *name,
- MetaDrawOpList *op_list);
+void meta_theme_metacity_insert_draw_op_list (MetaThemeMetacity *metacity,
+ const gchar *name,
+ MetaDrawOpList *op_list);
+
+MetaFrameLayout *meta_theme_metacity_lookup_layout (MetaThemeMetacity *metacity,
+ const gchar *name);
+
+void meta_theme_metacity_insert_layout (MetaThemeMetacity *metacity,
+ const gchar *name,
+ MetaFrameLayout *layout);
G_END_DECLS
diff --git a/src/ui/theme-parser.c b/src/ui/theme-parser.c
index a16159d8..332a856c 100644
--- a/src/ui/theme-parser.c
+++ b/src/ui/theme-parser.c
@@ -916,7 +916,7 @@ parse_toplevel_element (GMarkupParseContext *context,
if (title_scale && !parse_title_scale (title_scale, &title_scale_val, context, error))
return;
- if (meta_theme_lookup_layout (info->theme, name))
+ if (meta_theme_metacity_lookup_layout (metacity, name))
{
set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
_("<%s> name \"%s\" used a second time"),
@@ -927,7 +927,7 @@ parse_toplevel_element (GMarkupParseContext *context,
parent_layout = NULL;
if (parent)
{
- parent_layout = meta_theme_lookup_layout (info->theme, parent);
+ parent_layout = meta_theme_metacity_lookup_layout (metacity, parent);
if (parent_layout == NULL)
{
set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
@@ -965,7 +965,7 @@ parse_toplevel_element (GMarkupParseContext *context,
if (rounded_bottom_right)
info->layout->bottom_right_corner_rounded_radius = rounded_bottom_right_val;
- meta_theme_insert_layout (info->theme, name, info->layout);
+ meta_theme_metacity_insert_layout (metacity, name, info->layout);
push_state (info, STATE_FRAME_GEOMETRY);
}
@@ -1037,7 +1037,7 @@ parse_toplevel_element (GMarkupParseContext *context,
layout = NULL;
if (geometry)
{
- layout = meta_theme_lookup_layout (info->theme, geometry);
+ layout = meta_theme_metacity_lookup_layout (metacity, geometry);
if (layout == NULL)
{
set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
@@ -4152,7 +4152,6 @@ clear_theme (MetaTheme *theme)
}
g_hash_table_remove_all (theme->images_by_filename);
- g_hash_table_remove_all (theme->layouts_by_name);
g_hash_table_remove_all (theme->styles_by_name);
g_hash_table_remove_all (theme->style_sets_by_name);
diff --git a/src/ui/theme-private.h b/src/ui/theme-private.h
index 3493b480..2743c9df 100644
--- a/src/ui/theme-private.h
+++ b/src/ui/theme-private.h
@@ -218,7 +218,6 @@ struct _MetaTheme
PangoFontDescription *titlebar_font;
GHashTable *images_by_filename;
- GHashTable *layouts_by_name;
GHashTable *styles_by_name;
GHashTable *style_sets_by_name;
@@ -252,11 +251,6 @@ MetaFrameStyle *meta_theme_get_frame_style (MetaTheme
PangoFontDescription *meta_style_info_create_font_desc (MetaTheme *theme,
MetaStyleInfo *style_info);
-MetaFrameLayout *meta_theme_lookup_layout (MetaTheme *theme,
- const char *name);
-void meta_theme_insert_layout (MetaTheme *theme,
- const char *name,
- MetaFrameLayout *layout);
MetaFrameStyle *meta_theme_lookup_style (MetaTheme *theme,
const char *name);
void meta_theme_insert_style (MetaTheme *theme,
diff --git a/src/ui/theme.c b/src/ui/theme.c
index 77c12c51..a6b2676e 100644
--- a/src/ui/theme.c
+++ b/src/ui/theme.c
@@ -2129,12 +2129,6 @@ meta_theme_new (MetaThemeType type)
g_free,
(GDestroyNotify) g_object_unref);
- theme->layouts_by_name =
- g_hash_table_new_full (g_str_hash,
- g_str_equal,
- g_free,
- (GDestroyNotify) meta_frame_layout_unref);
-
theme->styles_by_name =
g_hash_table_new_full (g_str_hash,
g_str_equal,
@@ -2177,7 +2171,6 @@ meta_theme_free (MetaTheme *theme)
pango_font_description_free (theme->titlebar_font);
g_hash_table_destroy (theme->images_by_filename);
- g_hash_table_destroy (theme->layouts_by_name);
g_hash_table_destroy (theme->styles_by_name);
g_hash_table_destroy (theme->style_sets_by_name);
@@ -2467,22 +2460,6 @@ meta_theme_calc_geometry (MetaTheme *theme,
theme);
}
-MetaFrameLayout*
-meta_theme_lookup_layout (MetaTheme *theme,
- const char *name)
-{
- return g_hash_table_lookup (theme->layouts_by_name, name);
-}
-
-void
-meta_theme_insert_layout (MetaTheme *theme,
- const char *name,
- MetaFrameLayout *layout)
-{
- meta_frame_layout_ref (layout);
- g_hash_table_replace (theme->layouts_by_name, g_strdup (name), layout);
-}
-
MetaFrameStyle*
meta_theme_lookup_style (MetaTheme *theme,
const char *name)