Skip to content

File tree

3 files changed

+30
-23
lines changed

3 files changed

+30
-23
lines changed

applets/fish/Makefile.am

+18-10
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@ AM_CPPFLAGS = \
66
-I$(top_builddir)/libmate-panel-applet \
77
-DMATELOCALEDIR=\""$(prefix)/$(DATADIRNAME)/locale"\" \
88
-DFISH_ICONDIR=\""$(fishbitmapsdir)"\" \
9-
-DFISH_BUILDERDIR=\""$(uidir)"\" \
10-
-DFISH_MENU_UI_DIR=\""$(xmluidir)"\" \
119
$(DISABLE_DEPRECATED_CFLAGS)
1210

1311
AM_CFLAGS = $(WARN_CFLAGS)
1412

15-
FISH_SOURCES = fish.c
13+
FISH_SOURCES = \
14+
fish.c \
15+
$(BUILT_SOURCES)
1616

1717
FISH_LDADD = \
1818
../../libmate-panel-applet/libmate-panel-applet-4.la \
@@ -71,11 +71,19 @@ fishbitmaps_DATA = \
7171
footguy.png \
7272
monkey.png
7373

74-
uidir = $(datadir)/mate-panel/ui
75-
ui_DATA = fish.ui
74+
ui_FILES = \
75+
fish.ui \
76+
fish-menu.xml
7677

77-
xmluidir = $(datadir)/mate-panel/ui
78-
xmlui_DATA = fish-menu.xml
78+
fish-resources.c: fish.gresource.xml $(shell $(GLIB_COMPILE_RESOURCES) --sourcedir=$(srcdir) --generate-dependencies $(srcdir)/fish.gresource.xml)
79+
$(AM_V_GEN)$(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir) --generate --c-name fish $<
80+
81+
fish-resources.h: fish.gresource.xml $(shell $(GLIB_COMPILE_RESOURCES) --sourcedir=$(srcdir) --generate-dependencies $(srcdir)/fish.gresource.xml)
82+
$(AM_V_GEN)$(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir) --generate --c-name fish $<
83+
84+
BUILT_SOURCES = \
85+
fish-resources.c \
86+
fish-resources.h
7987

8088
fish_gschemas_in = org.mate.panel.applet.fish.gschema.xml.in
8189
gsettings_SCHEMAS = $(fish_gschemas_in:.xml.in=.xml)
@@ -87,10 +95,10 @@ EXTRA_DIST = \
8795
$(fishbitmaps_DATA) \
8896
org.mate.panel.FishApplet.mate-panel-applet.in.in \
8997
$(service_in_files) \
90-
$(ui_DATA) \
91-
$(xmlui_DATA) \
98+
$(ui_FILES) \
99+
fish.gresource.xml \
92100
$(fish_gschemas_in)
93101

94-
CLEANFILES = $(applet_DATA) $(applet_DATA).in $(service_DATA) $(gsettings_SCHEMAS)
102+
CLEANFILES = $(BUILT_SOURCES) $(applet_DATA) $(applet_DATA).in $(service_DATA) $(gsettings_SCHEMAS)
95103

96104
-include $(top_srcdir)/git.mk

applets/fish/fish.c

+5-13
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@
5050
(G_TYPE_CHECK_INSTANCE_TYPE((o), FISH_TYPE_APPLET))
5151

5252
#define FISH_ICON "mate-panel-fish"
53+
#define FISH_RESOURCE_PATH "/org/mate/panel/applet/fish/"
5354

5455
#define FISH_SCHEMA "org.mate.panel.applet.fish"
5556
#define FISH_NAME_KEY "name"
@@ -378,7 +379,6 @@ static void chooser_preview_update(GtkFileChooser* file_chooser, gpointer data)
378379
static void display_preferences_dialog(GtkAction* action, FishApplet* fish)
379380
{
380381
GtkBuilder *builder;
381-
GError *error;
382382
GtkWidget *button;
383383
GtkFileFilter *filter;
384384
GtkWidget *chooser_preview;
@@ -393,14 +393,7 @@ static void display_preferences_dialog(GtkAction* action, FishApplet* fish)
393393

394394
builder = gtk_builder_new ();
395395
gtk_builder_set_translation_domain (builder, GETTEXT_PACKAGE);
396-
397-
error = NULL;
398-
gtk_builder_add_from_file (builder, FISH_BUILDERDIR "/fish.ui", &error);
399-
if (error) {
400-
g_warning ("Error loading preferences: %s", error->message);
401-
g_error_free (error);
402-
return;
403-
}
396+
gtk_builder_add_from_resource (builder, FISH_RESOURCE_PATH "fish.ui", NULL);
404397

405398
fish->preferences_dialog = GTK_WIDGET (gtk_builder_get_object (builder, "fish_preferences_dialog"));
406399

@@ -1716,7 +1709,6 @@ static gboolean fish_applet_fill(FishApplet* fish)
17161709
{
17171710
MatePanelApplet* applet = (MatePanelApplet*) fish;
17181711
GtkActionGroup* action_group;
1719-
gchar* ui_path;
17201712

17211713
fish->orientation = mate_panel_applet_get_orient (applet);
17221714

@@ -1751,9 +1743,9 @@ static gboolean fish_applet_fill(FishApplet* fish)
17511743
fish_menu_verbs,
17521744
G_N_ELEMENTS (fish_menu_verbs),
17531745
fish);
1754-
ui_path = g_build_filename (FISH_MENU_UI_DIR, "fish-menu.xml", NULL);
1755-
mate_panel_applet_setup_menu_from_file (applet, ui_path, action_group);
1756-
g_free (ui_path);
1746+
mate_panel_applet_setup_menu_from_resource (applet,
1747+
FISH_RESOURCE_PATH "fish-menu.xml",
1748+
action_group);
17571749

17581750
if (mate_panel_applet_get_locked_down (applet)) {
17591751
GtkAction *action;

applets/fish/fish.gresource.xml

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<gresources>
3+
<gresource prefix="/org/mate/panel/applet/fish">
4+
<file compressed="true">fish.ui</file>
5+
<file compressed="true">fish-menu.xml</file>
6+
</gresource>
7+
</gresources>

0 commit comments

Comments
 (0)