aboutsummaryrefslogtreecommitdiff
path: root/src/settings-manager.c
diff options
context:
space:
mode:
authorKen VanDine <ken.vandine@canonical.com>2012-03-30 14:08:19 -0400
committerKen VanDine <ken.vandine@canonical.com>2012-03-30 14:08:19 -0400
commit31b5a5a6508535ed1af86919c79d75571f1a65ef (patch)
treeedee2e0c9543f22f13bf3baed30c9f6096c170a9 /src/settings-manager.c
parent858d8ee663212c5efa4561b0a2abb9c1d2485c27 (diff)
downloadayatana-indicator-sound-31b5a5a6508535ed1af86919c79d75571f1a65ef.tar.gz
ayatana-indicator-sound-31b5a5a6508535ed1af86919c79d75571f1a65ef.tar.bz2
ayatana-indicator-sound-31b5a5a6508535ed1af86919c79d75571f1a65ef.zip
Import upstream version 0.8.5.0
Diffstat (limited to 'src/settings-manager.c')
-rw-r--r--src/settings-manager.c243
1 files changed, 118 insertions, 125 deletions
diff --git a/src/settings-manager.c b/src/settings-manager.c
index ede9947..29e6f13 100644
--- a/src/settings-manager.c
+++ b/src/settings-manager.c
@@ -40,6 +40,9 @@ typedef struct _SettingsManagerClass SettingsManagerClass;
typedef struct _SettingsManagerPrivate SettingsManagerPrivate;
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _g_free0(var) (var = (g_free (var), NULL))
+#define _g_variant_type_free0(var) ((var == NULL) ? NULL : (var = (g_variant_type_free (var), NULL)))
+#define _g_variant_unref0(var) ((var == NULL) ? NULL : (var = (g_variant_unref (var), NULL)))
+#define _g_variant_builder_unref0(var) ((var == NULL) ? NULL : (var = (g_variant_builder_unref (var), NULL)))
struct _SettingsManager {
GObject parent_instance;
@@ -70,7 +73,6 @@ static gboolean _vala_string_array_contains (gchar** stack, int stack_length, gc
void settings_manager_clear_list (SettingsManager* self);
void settings_manager_remove_interested (SettingsManager* self, const gchar* app_desktop_name);
void settings_manager_add_interested (SettingsManager* self, const gchar* app_desktop_name);
-static void _vala_array_add1 (gchar*** array, int* length, int* size, gchar* value);
static void settings_manager_on_blacklist_event (SettingsManager* self);
static void g_cclosure_user_marshal_VOID__BOXED_INT (GClosure * closure, GValue * return_value, guint n_param_values, const GValue * param_values, gpointer invocation_hint, gpointer marshal_data);
static GObject * settings_manager_constructor (GType type, guint n_construct_properties, GObjectConstructParam * construct_properties);
@@ -223,152 +225,143 @@ void settings_manager_clear_list (SettingsManager* self) {
void settings_manager_remove_interested (SettingsManager* self, const gchar* app_desktop_name) {
- GSettings* _tmp0_;
- gchar** _tmp1_;
- gchar** _tmp2_ = NULL;
- gchar** already_interested;
- gint already_interested_length1;
- gint _already_interested_size_;
- GeeArrayList* _tmp3_;
- GeeArrayList* list;
- gchar** _tmp4_;
- gint _tmp4__length1;
- GSettings* _tmp10_;
- GeeArrayList* _tmp11_;
- gint _tmp12_ = 0;
- gpointer* _tmp13_ = NULL;
- gchar** _tmp14_;
- gint _tmp14__length1;
- GSettings* _tmp15_;
+ static const char key[] = "interested-media-players";
+ GVariantType* _tmp0_;
+ GVariantType* _tmp1_;
+ GVariantBuilder* _tmp2_;
+ GVariantBuilder* _tmp3_;
+ GVariantBuilder* players;
+ GSettings* _tmp4_;
+ gchar** _tmp5_;
+ gchar** _tmp6_ = NULL;
+ GSettings* _tmp12_;
+ GVariantBuilder* _tmp13_;
+ GVariant* _tmp14_ = NULL;
+ GVariant* _tmp15_;
+ GSettings* _tmp16_;
g_return_if_fail (self != NULL);
g_return_if_fail (app_desktop_name != NULL);
- _tmp0_ = self->priv->settings;
- _tmp2_ = _tmp1_ = g_settings_get_strv (_tmp0_, "interested-media-players");
- already_interested = _tmp2_;
- already_interested_length1 = _vala_array_length (_tmp1_);
- _already_interested_size_ = already_interested_length1;
- _tmp3_ = gee_array_list_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, NULL);
- list = _tmp3_;
- _tmp4_ = already_interested;
- _tmp4__length1 = already_interested_length1;
+ _tmp0_ = g_variant_type_new ("as");
+ _tmp1_ = _tmp0_;
+ _tmp2_ = g_variant_builder_new (_tmp1_);
+ _tmp3_ = _tmp2_;
+ _g_variant_type_free0 (_tmp1_);
+ players = _tmp3_;
+ _tmp4_ = self->priv->settings;
+ _tmp6_ = _tmp5_ = g_settings_get_strv (_tmp4_, key);
{
- gchar** s_collection = NULL;
- gint s_collection_length1 = 0;
- gint _s_collection_size_ = 0;
- gint s_it = 0;
- s_collection = _tmp4_;
- s_collection_length1 = _tmp4__length1;
- for (s_it = 0; s_it < _tmp4__length1; s_it = s_it + 1) {
- gchar* _tmp5_;
- gchar* s = NULL;
- _tmp5_ = g_strdup (s_collection[s_it]);
- s = _tmp5_;
+ gchar** player_collection = NULL;
+ gint player_collection_length1 = 0;
+ gint _player_collection_size_ = 0;
+ gint player_it = 0;
+ player_collection = _tmp6_;
+ player_collection_length1 = _vala_array_length (_tmp5_);
+ for (player_it = 0; player_it < _vala_array_length (_tmp5_); player_it = player_it + 1) {
+ gchar* _tmp7_;
+ gchar* player = NULL;
+ _tmp7_ = g_strdup (player_collection[player_it]);
+ player = _tmp7_;
{
- const gchar* _tmp6_;
- const gchar* _tmp7_;
- GeeArrayList* _tmp8_;
+ const gchar* _tmp8_;
const gchar* _tmp9_;
- _tmp6_ = s;
- _tmp7_ = app_desktop_name;
- if (g_strcmp0 (_tmp6_, _tmp7_) == 0) {
- _g_free0 (s);
- continue;
+ _tmp8_ = player;
+ _tmp9_ = app_desktop_name;
+ if (g_strcmp0 (_tmp8_, _tmp9_) != 0) {
+ GVariantBuilder* _tmp10_;
+ const gchar* _tmp11_;
+ _tmp10_ = players;
+ _tmp11_ = player;
+ g_variant_builder_add (_tmp10_, "s", _tmp11_, NULL);
}
- _tmp8_ = list;
- _tmp9_ = s;
- gee_abstract_collection_add ((GeeAbstractCollection*) _tmp8_, _tmp9_);
- _g_free0 (s);
+ _g_free0 (player);
}
}
+ player_collection = (_vala_array_free (player_collection, player_collection_length1, (GDestroyNotify) g_free), NULL);
}
- _tmp10_ = self->priv->settings;
- _tmp11_ = list;
- _tmp13_ = gee_abstract_collection_to_array ((GeeAbstractCollection*) _tmp11_, &_tmp12_);
- _tmp14_ = _tmp13_;
- _tmp14__length1 = _tmp12_;
- g_settings_set_strv (_tmp10_, "interested-media-players", _tmp14_);
- _tmp14_ = (_vala_array_free (_tmp14_, _tmp14__length1, (GDestroyNotify) g_free), NULL);
- _tmp15_ = self->priv->settings;
- g_settings_apply (_tmp15_);
- _g_object_unref0 (list);
- already_interested = (_vala_array_free (already_interested, already_interested_length1, (GDestroyNotify) g_free), NULL);
-}
-
-
-static void _vala_array_add1 (gchar*** array, int* length, int* size, gchar* value) {
- if ((*length) == (*size)) {
- *size = (*size) ? (2 * (*size)) : 4;
- *array = g_renew (gchar*, *array, (*size) + 1);
- }
- (*array)[(*length)++] = value;
- (*array)[*length] = NULL;
+ _tmp12_ = self->priv->settings;
+ _tmp13_ = players;
+ _tmp14_ = g_variant_builder_end (_tmp13_);
+ _tmp15_ = g_variant_ref_sink (_tmp14_);
+ g_settings_set_value (_tmp12_, key, _tmp15_);
+ _g_variant_unref0 (_tmp15_);
+ _tmp16_ = self->priv->settings;
+ g_settings_apply (_tmp16_);
+ _g_variant_builder_unref0 (players);
}
void settings_manager_add_interested (SettingsManager* self, const gchar* app_desktop_name) {
- GSettings* _tmp0_;
- gchar** _tmp1_;
- gchar** _tmp2_ = NULL;
- gchar** already_interested;
- gint already_interested_length1;
- gint _already_interested_size_;
- gchar** _tmp3_;
- gint _tmp3__length1;
- gchar** _tmp7_;
- gint _tmp7__length1;
- const gchar* _tmp8_;
- gchar* _tmp9_;
- GSettings* _tmp10_;
- gchar** _tmp11_;
- gint _tmp11__length1;
- GSettings* _tmp12_;
+ static const char key[] = "interested-media-players";
+ GVariantType* _tmp0_;
+ GVariantType* _tmp1_;
+ GVariantBuilder* _tmp2_;
+ GVariantBuilder* _tmp3_;
+ GVariantBuilder* players;
+ GSettings* _tmp4_;
+ gchar** _tmp5_;
+ gchar** _tmp6_ = NULL;
+ GVariantBuilder* _tmp12_;
+ const gchar* _tmp13_;
+ GSettings* _tmp14_;
+ GVariantBuilder* _tmp15_;
+ GVariant* _tmp16_ = NULL;
+ GVariant* _tmp17_;
+ GSettings* _tmp18_;
g_return_if_fail (self != NULL);
g_return_if_fail (app_desktop_name != NULL);
- _tmp0_ = self->priv->settings;
- _tmp2_ = _tmp1_ = g_settings_get_strv (_tmp0_, "interested-media-players");
- already_interested = _tmp2_;
- already_interested_length1 = _vala_array_length (_tmp1_);
- _already_interested_size_ = already_interested_length1;
- _tmp3_ = already_interested;
- _tmp3__length1 = already_interested_length1;
+ _tmp0_ = g_variant_type_new ("as");
+ _tmp1_ = _tmp0_;
+ _tmp2_ = g_variant_builder_new (_tmp1_);
+ _tmp3_ = _tmp2_;
+ _g_variant_type_free0 (_tmp1_);
+ players = _tmp3_;
+ _tmp4_ = self->priv->settings;
+ _tmp6_ = _tmp5_ = g_settings_get_strv (_tmp4_, key);
{
- gchar** s_collection = NULL;
- gint s_collection_length1 = 0;
- gint _s_collection_size_ = 0;
- gint s_it = 0;
- s_collection = _tmp3_;
- s_collection_length1 = _tmp3__length1;
- for (s_it = 0; s_it < _tmp3__length1; s_it = s_it + 1) {
- gchar* _tmp4_;
- gchar* s = NULL;
- _tmp4_ = g_strdup (s_collection[s_it]);
- s = _tmp4_;
+ gchar** player_collection = NULL;
+ gint player_collection_length1 = 0;
+ gint _player_collection_size_ = 0;
+ gint player_it = 0;
+ player_collection = _tmp6_;
+ player_collection_length1 = _vala_array_length (_tmp5_);
+ for (player_it = 0; player_it < _vala_array_length (_tmp5_); player_it = player_it + 1) {
+ gchar* _tmp7_;
+ gchar* player = NULL;
+ _tmp7_ = g_strdup (player_collection[player_it]);
+ player = _tmp7_;
{
- const gchar* _tmp5_;
- const gchar* _tmp6_;
- _tmp5_ = s;
- _tmp6_ = app_desktop_name;
- if (g_strcmp0 (_tmp5_, _tmp6_) == 0) {
- _g_free0 (s);
- already_interested = (_vala_array_free (already_interested, already_interested_length1, (GDestroyNotify) g_free), NULL);
+ const gchar* _tmp8_;
+ const gchar* _tmp9_;
+ GVariantBuilder* _tmp10_;
+ const gchar* _tmp11_;
+ _tmp8_ = player;
+ _tmp9_ = app_desktop_name;
+ if (g_strcmp0 (_tmp8_, _tmp9_) == 0) {
+ _g_free0 (player);
+ player_collection = (_vala_array_free (player_collection, player_collection_length1, (GDestroyNotify) g_free), NULL);
+ _g_variant_builder_unref0 (players);
return;
}
- _g_free0 (s);
+ _tmp10_ = players;
+ _tmp11_ = player;
+ g_variant_builder_add (_tmp10_, "s", _tmp11_, NULL);
+ _g_free0 (player);
}
}
+ player_collection = (_vala_array_free (player_collection, player_collection_length1, (GDestroyNotify) g_free), NULL);
}
- _tmp7_ = already_interested;
- _tmp7__length1 = already_interested_length1;
- _tmp8_ = app_desktop_name;
- _tmp9_ = g_strdup (_tmp8_);
- _vala_array_add1 (&already_interested, &already_interested_length1, &_already_interested_size_, _tmp9_);
- _tmp10_ = self->priv->settings;
- _tmp11_ = already_interested;
- _tmp11__length1 = already_interested_length1;
- g_settings_set_strv (_tmp10_, "interested-media-players", _tmp11_);
- _tmp12_ = self->priv->settings;
- g_settings_apply (_tmp12_);
- already_interested = (_vala_array_free (already_interested, already_interested_length1, (GDestroyNotify) g_free), NULL);
+ _tmp12_ = players;
+ _tmp13_ = app_desktop_name;
+ g_variant_builder_add (_tmp12_, "s", _tmp13_, NULL);
+ _tmp14_ = self->priv->settings;
+ _tmp15_ = players;
+ _tmp16_ = g_variant_builder_end (_tmp15_);
+ _tmp17_ = g_variant_ref_sink (_tmp16_);
+ g_settings_set_value (_tmp14_, key, _tmp17_);
+ _g_variant_unref0 (_tmp17_);
+ _tmp18_ = self->priv->settings;
+ g_settings_apply (_tmp18_);
+ _g_variant_builder_unref0 (players);
}