[gnome-settings-daemon] xsettings: Remove support for multiple X screens
- From: Rui Matos <rtcm src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-settings-daemon] xsettings: Remove support for multiple X screens
- Date: Mon, 26 May 2014 16:10:14 +0000 (UTC)
commit f160836fdff1702833c59874a8bcc526deadeb84
Author: Rui Matos <tiagomatos gmail com>
Date: Thu May 22 21:24:07 2014 +0200
xsettings: Remove support for multiple X screens
Support for this has been removed from mutter and gtk+ so there's no
point in having it here.
https://bugzilla.gnome.org/show_bug.cgi?id=730765
plugins/xsettings/gsd-xsettings-manager.c | 155 +++++++++--------------------
1 files changed, 45 insertions(+), 110 deletions(-)
---
diff --git a/plugins/xsettings/gsd-xsettings-manager.c b/plugins/xsettings/gsd-xsettings-manager.c
index 368a772..75176b5 100644
--- a/plugins/xsettings/gsd-xsettings-manager.c
+++ b/plugins/xsettings/gsd-xsettings-manager.c
@@ -262,7 +262,7 @@ struct _FixedEntry {
struct GnomeXSettingsManagerPrivate
{
guint start_idle_id;
- XSettingsManager **managers;
+ XSettingsManager *manager;
GHashTable *settings;
GSettings *plugin_settings;
@@ -305,12 +305,8 @@ translate_bool_int (GnomeXSettingsManager *manager,
TranslationEntry *trans,
GVariant *value)
{
- int i;
-
- for (i = 0; manager->priv->managers [i]; i++) {
- xsettings_manager_set_int (manager->priv->managers [i], trans->xsetting_name,
- g_variant_get_boolean (value));
- }
+ xsettings_manager_set_int (manager->priv->manager, trans->xsetting_name,
+ g_variant_get_boolean (value));
}
static void
@@ -318,12 +314,8 @@ translate_int_int (GnomeXSettingsManager *manager,
TranslationEntry *trans,
GVariant *value)
{
- int i;
-
- for (i = 0; manager->priv->managers [i]; i++) {
- xsettings_manager_set_int (manager->priv->managers [i], trans->xsetting_name,
- g_variant_get_int32 (value));
- }
+ xsettings_manager_set_int (manager->priv->manager, trans->xsetting_name,
+ g_variant_get_int32 (value));
}
static void
@@ -331,35 +323,23 @@ translate_string_string (GnomeXSettingsManager *manager,
TranslationEntry *trans,
GVariant *value)
{
- int i;
-
- for (i = 0; manager->priv->managers [i]; i++) {
- xsettings_manager_set_string (manager->priv->managers [i],
- trans->xsetting_name,
- g_variant_get_string (value, NULL));
- }
+ xsettings_manager_set_string (manager->priv->manager,
+ trans->xsetting_name,
+ g_variant_get_string (value, NULL));
}
static void
fixed_false_int (GnomeXSettingsManager *manager,
FixedEntry *fixed)
{
- int i;
-
- for (i = 0; manager->priv->managers [i]; i++) {
- xsettings_manager_set_int (manager->priv->managers [i], fixed->xsetting_name, FALSE);
- }
+ xsettings_manager_set_int (manager->priv->manager, fixed->xsetting_name, FALSE);
}
static void
fixed_true_int (GnomeXSettingsManager *manager,
FixedEntry *fixed)
{
- int i;
-
- for (i = 0; manager->priv->managers [i]; i++) {
- xsettings_manager_set_int (manager->priv->managers [i], fixed->xsetting_name, TRUE);
- }
+ xsettings_manager_set_int (manager->priv->manager, fixed->xsetting_name, TRUE);
}
static FixedEntry fixed_entries [] = {
@@ -411,10 +391,7 @@ static gboolean
notify_idle (gpointer data)
{
GnomeXSettingsManager *manager = data;
- gint i;
- for (i = 0; manager->priv->managers [i]; i++) {
- xsettings_manager_notify (manager->priv->managers[i]);
- }
+ xsettings_manager_notify (manager->priv->manager);
manager->priv->notify_idle_id = 0;
return G_SOURCE_REMOVE;
}
@@ -693,20 +670,17 @@ static void
xft_settings_set_xsettings (GnomeXSettingsManager *manager,
GnomeXftSettings *settings)
{
- int i;
-
gnome_settings_profile_start (NULL);
- for (i = 0; manager->priv->managers [i]; i++) {
- xsettings_manager_set_int (manager->priv->managers [i], "Xft/Antialias",
settings->antialias);
- xsettings_manager_set_int (manager->priv->managers [i], "Xft/Hinting", settings->hinting);
- xsettings_manager_set_string (manager->priv->managers [i], "Xft/HintStyle",
settings->hintstyle);
- xsettings_manager_set_int (manager->priv->managers [i], "Gdk/WindowScalingFactor",
settings->window_scale);
- xsettings_manager_set_int (manager->priv->managers [i], "Gdk/UnscaledDPI", settings->dpi);
- xsettings_manager_set_int (manager->priv->managers [i], "Xft/DPI", settings->scaled_dpi);
- xsettings_manager_set_string (manager->priv->managers [i], "Xft/RGBA", settings->rgba);
- xsettings_manager_set_int (manager->priv->managers [i], "Gtk/CursorThemeSize",
settings->cursor_size);
- }
+ xsettings_manager_set_int (manager->priv->manager, "Xft/Antialias", settings->antialias);
+ xsettings_manager_set_int (manager->priv->manager, "Xft/Hinting", settings->hinting);
+ xsettings_manager_set_string (manager->priv->manager, "Xft/HintStyle", settings->hintstyle);
+ xsettings_manager_set_int (manager->priv->manager, "Gdk/WindowScalingFactor",
settings->window_scale);
+ xsettings_manager_set_int (manager->priv->manager, "Gdk/UnscaledDPI", settings->dpi);
+ xsettings_manager_set_int (manager->priv->manager, "Xft/DPI", settings->scaled_dpi);
+ xsettings_manager_set_string (manager->priv->manager, "Xft/RGBA", settings->rgba);
+ xsettings_manager_set_int (manager->priv->manager, "Gtk/CursorThemeSize", settings->cursor_size);
+
gnome_settings_profile_end (NULL);
}
@@ -812,13 +786,10 @@ override_callback (GSettings *settings,
GnomeXSettingsManager *manager)
{
GVariant *value;
- int i;
value = g_settings_get_value (settings, XSETTINGS_OVERRIDE_KEY);
- for (i = 0; manager->priv->managers[i]; i++) {
- xsettings_manager_set_overrides (manager->priv->managers[i], value);
- }
+ xsettings_manager_set_overrides (manager->priv->manager, value);
queue_notify (manager);
g_variant_unref (value);
@@ -845,19 +816,14 @@ gtk_modules_callback (GsdXSettingsGtk *gtk,
GnomeXSettingsManager *manager)
{
const char *modules = gsd_xsettings_gtk_get_modules (manager->priv->gtk);
- int i;
if (modules == NULL) {
- for (i = 0; manager->priv->managers [i]; ++i) {
- xsettings_manager_delete_setting (manager->priv->managers [i], "Gtk/Modules");
- }
+ xsettings_manager_delete_setting (manager->priv->manager, "Gtk/Modules");
} else {
g_debug ("Setting GTK modules '%s'", modules);
- for (i = 0; manager->priv->managers [i]; ++i) {
- xsettings_manager_set_string (manager->priv->managers [i],
- "Gtk/Modules",
- modules);
- }
+ xsettings_manager_set_string (manager->priv->manager,
+ "Gtk/Modules",
+ modules);
}
queue_notify (manager);
@@ -867,14 +833,11 @@ static void
fontconfig_callback (fontconfig_monitor_handle_t *handle,
GnomeXSettingsManager *manager)
{
- int i;
int timestamp = time (NULL);
gnome_settings_profile_start (NULL);
- for (i = 0; manager->priv->managers [i]; i++) {
- xsettings_manager_set_int (manager->priv->managers [i], "Fontconfig/Timestamp", timestamp);
- }
+ xsettings_manager_set_int (manager->priv->manager, "Fontconfig/Timestamp", timestamp);
queue_notify (manager);
gnome_settings_profile_end (NULL);
}
@@ -919,15 +882,11 @@ static void
notify_have_shell (GnomeXSettingsManager *manager,
gboolean have_shell)
{
- int i;
-
gnome_settings_profile_start (NULL);
if (manager->priv->have_shell == have_shell)
return;
manager->priv->have_shell = have_shell;
- for (i = 0; manager->priv->managers [i]; i++) {
- xsettings_manager_set_int (manager->priv->managers [i], "Gtk/ShellShowsAppMenu", have_shell);
- }
+ xsettings_manager_set_int (manager->priv->manager, "Gtk/ShellShowsAppMenu", have_shell);
queue_notify (manager);
gnome_settings_profile_end (NULL);
}
@@ -984,7 +943,6 @@ xsettings_callback (GSettings *settings,
GnomeXSettingsManager *manager)
{
TranslationEntry *trans;
- guint i;
GVariant *value;
if (g_str_equal (key, TEXT_SCALING_FACTOR_KEY) ||
@@ -1004,11 +962,9 @@ xsettings_callback (GSettings *settings,
g_variant_unref (value);
- for (i = 0; manager->priv->managers [i]; i++) {
- xsettings_manager_set_string (manager->priv->managers [i],
- "Net/FallbackIconTheme",
- "gnome");
- }
+ xsettings_manager_set_string (manager->priv->manager,
+ "Net/FallbackIconTheme",
+ "gnome");
queue_notify (manager);
}
@@ -1030,13 +986,10 @@ static gboolean
setup_xsettings_managers (GnomeXSettingsManager *manager)
{
GdkDisplay *display;
- int i;
- int n_screens;
gboolean res;
gboolean terminated;
display = gdk_display_get_default ();
- n_screens = gdk_display_get_n_screens (display);
res = xsettings_manager_check_running (gdk_x11_display_get_xdisplay (display),
gdk_screen_get_number (gdk_screen_get_default ()));
@@ -1046,22 +999,14 @@ setup_xsettings_managers (GnomeXSettingsManager *manager)
return FALSE;
}
- manager->priv->managers = g_new0 (XSettingsManager *, n_screens + 1);
-
terminated = FALSE;
- for (i = 0; i < n_screens; i++) {
- GdkScreen *screen;
-
- screen = gdk_display_get_screen (display, i);
-
- manager->priv->managers [i] = xsettings_manager_new (gdk_x11_display_get_xdisplay (display),
- gdk_screen_get_number (screen),
- terminate_cb,
- &terminated);
- if (! manager->priv->managers [i]) {
- g_warning ("Could not create xsettings manager for screen %d!", i);
- return FALSE;
- }
+ manager->priv->manager = xsettings_manager_new (gdk_x11_display_get_xdisplay (display),
+ gdk_screen_get_number (gdk_screen_get_default ()),
+ terminate_cb,
+ &terminated);
+ if (! manager->priv->manager) {
+ g_warning ("Could not create xsettings manager!");
+ return FALSE;
}
return TRUE;
@@ -1087,7 +1032,6 @@ force_disable_animation_changed (GObject *gobject,
GnomeXSettingsManager *manager)
{
gboolean force_disable, value;
- int i;
g_object_get (gobject, "force-disable-animations", &force_disable, NULL);
if (force_disable)
@@ -1099,9 +1043,7 @@ force_disable_animation_changed (GObject *gobject,
value = g_settings_get_boolean (settings, "enable-animations");
}
- for (i = 0; manager->priv->managers [i]; i++) {
- xsettings_manager_set_int (manager->priv->managers [i], "Gtk/EnableAnimations", value);
- }
+ xsettings_manager_set_int (manager->priv->manager, "Gtk/EnableAnimations", value);
queue_notify (manager);
}
@@ -1231,15 +1173,12 @@ gnome_xsettings_manager_start (GnomeXSettingsManager *manager,
start_shell_monitor (manager);
- for (i = 0; manager->priv->managers [i]; i++)
- xsettings_manager_set_string (manager->priv->managers [i],
- "Net/FallbackIconTheme",
- "gnome");
+ xsettings_manager_set_string (manager->priv->manager,
+ "Net/FallbackIconTheme",
+ "gnome");
overrides = g_settings_get_value (manager->priv->plugin_settings, XSETTINGS_OVERRIDE_KEY);
- for (i = 0; manager->priv->managers [i]; i++) {
- xsettings_manager_set_overrides (manager->priv->managers [i], overrides);
- }
+ xsettings_manager_set_overrides (manager->priv->manager, overrides);
queue_notify (manager);
g_variant_unref (overrides);
@@ -1253,7 +1192,6 @@ void
gnome_xsettings_manager_stop (GnomeXSettingsManager *manager)
{
GnomeXSettingsManagerPrivate *p = manager->priv;
- int i;
g_debug ("Stopping xsettings manager");
@@ -1269,12 +1207,9 @@ gnome_xsettings_manager_stop (GnomeXSettingsManager *manager)
if (p->shell_name_watch_id > 0)
g_bus_unwatch_name (p->shell_name_watch_id);
- if (p->managers != NULL) {
- for (i = 0; p->managers [i]; ++i)
- xsettings_manager_destroy (p->managers [i]);
-
- g_free (p->managers);
- p->managers = NULL;
+ if (p->manager != NULL) {
+ xsettings_manager_destroy (p->manager);
+ p->manager = NULL;
}
if (p->plugin_settings != NULL) {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]