[gnome-settings-daemon] Revert "a11y-settings: gnome-shell OSK doesn't need a11y"
- From: Bastien Nocera <hadess src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-settings-daemon] Revert "a11y-settings: gnome-shell OSK doesn't need a11y"
- Date: Tue, 12 Feb 2013 15:17:45 +0000 (UTC)
commit b10d1902a767c674acea7fa7847156d469704288
Author: Bastien Nocera <hadess hadess net>
Date: Tue Feb 12 16:16:23 2013 +0100
Revert "a11y-settings: gnome-shell OSK doesn't need a11y"
It doesn't, but GTK2 apps need this to export the fact that an
entry is focused for example.
This reverts commit c52025fae0bb12c130450211bb9168fc321a707c.
See https://bugzilla.gnome.org/show_bug.cgi?id=693626
plugins/a11y-settings/gsd-a11y-settings-manager.c | 23 ++++++++++++++------
1 files changed, 16 insertions(+), 7 deletions(-)
---
diff --git a/plugins/a11y-settings/gsd-a11y-settings-manager.c b/plugins/a11y-settings/gsd-a11y-settings-manager.c
index b68ee1e..6e110ba 100644
--- a/plugins/a11y-settings/gsd-a11y-settings-manager.c
+++ b/plugins/a11y-settings/gsd-a11y-settings-manager.c
@@ -61,16 +61,24 @@ apps_settings_changed (GSettings *settings,
const char *key,
GsdA11ySettingsManager *manager)
{
- gboolean screen_reader;
+ gboolean screen_reader, keyboard;
- if (g_str_equal (key, "screen-reader-enabled") == FALSE)
+ if (g_str_equal (key, "screen-reader-enabled") == FALSE &&
+ g_str_equal (key, "screen-keyboard-enabled") == FALSE)
return;
- g_debug ("screen reader enablement changed");
+ g_debug ("screen reader or OSK enablement changed");
screen_reader = g_settings_get_boolean (manager->priv->a11y_apps_settings, "screen-reader-enabled");
- g_debug ("Enabling toolkit-accessibility, screen reader %s", screen_reader ? "enabled" : "disabled");
- g_settings_set_boolean (manager->priv->interface_settings, "toolkit-accessibility", screen_reader);
+ keyboard = g_settings_get_boolean (manager->priv->a11y_apps_settings, "screen-keyboard-enabled");
+
+ if (screen_reader || keyboard) {
+ g_debug ("Enabling toolkit-accessibility, screen reader or OSK enabled");
+ g_settings_set_boolean (manager->priv->interface_settings, "toolkit-accessibility", TRUE);
+ } else if (screen_reader == FALSE && keyboard == FALSE) {
+ g_debug ("Disabling toolkit-accessibility, screen reader and OSK disabled");
+ g_settings_set_boolean (manager->priv->interface_settings, "toolkit-accessibility", FALSE);
+ }
}
gboolean
@@ -86,11 +94,12 @@ gsd_a11y_settings_manager_start (GsdA11ySettingsManager *manager,
g_signal_connect (G_OBJECT (manager->priv->a11y_apps_settings), "changed",
G_CALLBACK (apps_settings_changed), manager);
- /* If the screen reader is enabled,
+ /* If any of the screen reader or on-screen keyboard are enabled,
* make sure a11y is enabled for the toolkits.
* We don't do the same thing for the reverse so it's possible to
* enable AT-SPI for the toolkits without using an a11y app */
- if (g_settings_get_boolean (manager->priv->a11y_apps_settings, "screen-reader-enabled"))
+ if (g_settings_get_boolean (manager->priv->a11y_apps_settings, "screen-keyboard-enabled") ||
+ g_settings_get_boolean (manager->priv->a11y_apps_settings, "screen-reader-enabled"))
g_settings_set_boolean (manager->priv->interface_settings, "toolkit-accessibility", TRUE);
gnome_settings_profile_end (NULL);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]