diff options
Diffstat (limited to 'capplets/keyboard')
-rw-r--r-- | capplets/keyboard/.cvsignore | 11 | ||||
-rw-r--r-- | capplets/keyboard/ChangeLog | 659 | ||||
-rw-r--r-- | capplets/keyboard/Makefile.am | 34 | ||||
-rw-r--r-- | capplets/keyboard/gnome-keyboard-properties-xkb.c | 208 | ||||
-rw-r--r-- | capplets/keyboard/gnome-keyboard-properties-xkb.h | 109 | ||||
-rw-r--r-- | capplets/keyboard/gnome-keyboard-properties-xkblt.c | 581 | ||||
-rw-r--r-- | capplets/keyboard/gnome-keyboard-properties-xkbmc.c | 159 | ||||
-rw-r--r-- | capplets/keyboard/gnome-keyboard-properties-xkbot.c | 332 | ||||
-rw-r--r-- | capplets/keyboard/gnome-keyboard-properties-xkbpv.c | 121 | ||||
-rw-r--r-- | capplets/keyboard/gnome-keyboard-properties.c | 263 | ||||
-rw-r--r-- | capplets/keyboard/gnome-keyboard-properties.glade | 1942 | ||||
-rw-r--r-- | capplets/keyboard/keyboard-bell.png | bin | 4199 -> 0 bytes | |||
-rw-r--r-- | capplets/keyboard/keyboard-cursor.png | bin | 261 -> 0 bytes | |||
-rw-r--r-- | capplets/keyboard/keyboard-repeat.png | bin | 3852 -> 0 bytes | |||
-rw-r--r-- | capplets/keyboard/keyboard-volume.png | bin | 4655 -> 0 bytes | |||
-rw-r--r-- | capplets/keyboard/keyboard.desktop.in.in | 15 | ||||
-rw-r--r-- | capplets/keyboard/use_cases.txt | 42 |
17 files changed, 0 insertions, 4476 deletions
diff --git a/capplets/keyboard/.cvsignore b/capplets/keyboard/.cvsignore deleted file mode 100644 index 3b1c456c8..000000000 --- a/capplets/keyboard/.cvsignore +++ /dev/null @@ -1,11 +0,0 @@ -Makefile -Makefile.in -.deps -.libs -*.lo -*.la -*.o -gnome-keyboard-properties -keyboard.desktop -keyboard.desktop.in -gnome-keyboard-properties.gladep diff --git a/capplets/keyboard/ChangeLog b/capplets/keyboard/ChangeLog deleted file mode 100644 index 1044e79aa..000000000 --- a/capplets/keyboard/ChangeLog +++ /dev/null @@ -1,659 +0,0 @@ -2005-05-22 Sebastien Bacher <seb128@debian.org> - - * gnome-keyboard-properties-xkbot.c: (xkb_options_add_group): - fix the build with gcc-2.95, patch from Jens Granseuer <jensgr@gmx.net> - (Closes: #170159). - -2005-04-10 Sergey V. Udaltsov <svu@gnome.org> - - * gnome-keyboard-properties-xkbpv.c: improving the preview layout - -2005-02-08 Sebastien Bacher <seb128@debian.org> - - * gnome-keyboard-properties-xkb.c: (setup_xkb_tabs): - * gnome-keyboard-properties-xkblt.c: (def_group_in_gconf_changed): - patch by Kjartan Maraas <kmaraas@gnome.org>, some code cleanups - (Closes: #166267). - -2005-01-19 Sergey V. Udaltsov <svu@gnome.org> - - * gnome-keyboard-properties-xkb.c, - gnome-keyboard-properties-xkbot.c - gnome-keyboard-properties.glade: big change in the layout options UI. - Fixing #164090 - -2005-01-16 Sergey V. Udaltsov <svu@gnome.org> - - * gnome-keyboard-properties.glade: fixed #159685 - -2005-01-15 Sergey V. Udaltsov <svu@gnome.org> - - * gnome-keyboard-properties-xkbmc.c: fixing long-outstanding bug - with the current model selection. - -2005-01-08 Sebastien Bacher <seb128@debian.org> - - * gnome-keyboard-properties.glade: fixed the mnemonics for some widgets - (Closes: #163227). - -2005-01-05 Dennis Cranston <dennis_cranston@yahoo.com> - - * gnome-keyboard-properties.glade: HIG corrections. - Use HIG capitalization for buttons: "Reset to defaults" -> - "Reset To Defaults". Use HIG capitalization for window titles: - "Choose a keyboard model" -> "Choose A Keyboard Model" & - "Choose a layout" -> "Choose A Layout". Add a missing ":" - from "Model" -> "Model:". Remove the dialog separators. - Use HIG widget padding to match the other capplet dialogs. - -2005-01-02 Sergey V. Udaltsov <svu@gnome.org> - - * gnome-keyboard-properties-xkb.c - gnome-keyboard-properties-xkb.h - gnome-keyboard-properties-xkblt.c - gnome-keyboard-properties-xkbmc.c - gnome-keyboard-properties-xkbpv.c: a bit of the code cleanup - -2005-01-02 Sebastien Bacher <seb128@debian.org> - - * gnome-keyboard-properties.glade: - patch from Heikki Paajanen <hepaajan@iki.fi> (based on the patch - from Andrew Johnson <acjgenius@earthlink.net>) - to not set "close" as the default button (Closes: #98202). - -2004-12-31 Sergey V. Udaltsov <svu@gnome.org> - - * gnome-keyboard-properties-xkb.h, - gnome-keyboard-properties-xkblt.c - gnome-keyboard-properties-xkbpv.c: preview reimplemented! Hurray! - -2004-12-23 Sergey V. Udaltsov <svu@gnome.org> - - * use_cases.txt: just some memo (mostly for myself) regarding the - use cases for the tests. - -2004-12-20 Sergey V. Udaltsov <svu@gnome.org> - - * gnome-keyboard-properties-xkb.c, - gnome-keyboard-properties-xkb.h, - gnome-keyboard-properties-xkblt.c, - gnome-keyboard-properties-xkbmc.c, - gnome-keyboard-properties-xkbot.c, - gnome-keyboard-properties.c, - gnome-keyboard-properties.glade: massive layout change. Layout chooser - popup introduced - -2004-12-13 Sergey V. Udaltsov <svu@gnome.org> - - * gnome-keyboard-properties-xkb.c, - gnome-keyboard-properties-xkb.h, - gnome-keyboard-properties-xkblt.c, - gnome-keyboard-properties-xkbmc.c, - gnome-keyboard-properties-xkbot.c: reflect massive changes in - libgswitchit - -2004-12-09 Sergey V. Udaltsov <svu@gnome.org> - - * gnome-keyboard-properties-xkblt.c: using of the XklGetMaxNumGroups - -2004-11-29 Sergey V. Udaltsov <svu@gnome.org> - - * gnome-keyboard-properties-xkb.c: preview only makes sense for XKB backend - -2004-11-25 Sergey V. Udaltsov <svu@gnome.org> - - * libxklavier 1.12 compatibility - -2004-11-09 Mark McLoughlin <mark@skynet.ie> - - * Makefile.am: install .desktop file in $(datadir)/applications. - - * keyboard.desktop.in: add OnlyShowIn=GNOME; - -2004-10-21 Sebastien Bacher <seb128@debian.org> - - * gnome-keyboard-properties.glade: - patch by Ross Burton <ross@burtonini.com> to fix the widget expansion - (Closes: #151588). - -2004-10-15 Sergey V. Udaltsov <svu@gnome.org> - - * The preview is now dialog instead of window. More consistent - behaviour. Fixing #154358 - -2004-10-14 Jody Goldberg <jody@gnome.org> - - * Release 2.8.1 - -2004-09-01 Sergey V. Udaltsov <svu@gnome.org> - - * The default switchcut (Alt*2) is introduced - -2004-08-20 Frederic Crozat <fcrozat@mandrakesoft.com> - - * gnome-keyboard-properties.c: (main): - Use themed icon for WM hint. - -2004-07-28 Richard Hult <richard@imendio.com> - - * gnome-keyboard-properties.c (main): Switch to the right page for - typing monitor preferences. - -2004-07-27 Sergey V. Udaltsov <svu@gnome.org> - - * The preview is separated to another window. - Looks nicer IMHO - but it depends on POV. - -2004-07-26 Sergey V. Udaltsov <svu@gnome.org> - - * Now models are handled using the popup window. - Looks a bit more polished. - -2004-07-22 Christian Neumair <chris@gnome-de.org> - - * gnome-keyboard-properties.glade: Use GTK_SHADOW_IN shadow for - all treeviews (consistency). Fixes #144050. - -2004-07-14 Sergey V. Udaltsov <svu@gnome.org> - - * Merged the preview tab branch. - -2004-04-15 Jody Goldberg <jody@gnome.org> - - * Release 2.6.1 - -2004-04-01 Jody Goldberg <jody@gnome.org> - - * Release 2.6.0.3 - -2004-03-30 Jody Goldberg <jody@gnome.org> - - * Release 2.6.0.1 - -2004-03-23 Jody Goldberg <jody@gnome.org> - - * Release 2.6.0 - -2004-03-11 Jody Goldberg <jody@gnome.org> - - * Release 2.5.4 - -2004-02-13 Jody Goldberg <jody@gnome.org> - - * Release 2.5.3 - -2004-02-12 Mark McLoughlin <mark@skynet.ie> - - * gnome-keyboard-properties.c: (dialog_response): Update help link - to point to user-guide.xml - -2004-01-14 Jody Goldberg <jody@gnome.org> - - * Release 2.5.2 - -2004-01-11 Richard Hult <richard@imendio.com> - - * gnome-keyboard-properties.glade: - * gnome-keyboard-properties.c (setup_dialog): Enable markup for - the break enabled toggle with code instead of with a custom child - for the toggle since that doesn't work with new libglade. Fixes - bug #131122. - -2003-12-30 Jody Goldberg <jody@gnome.org> - - * Release 2.5.1.1 - -2003-12-30 Jody Goldberg <jody@gnome.org> - - * Release 2.5.1 - -2003-10-28 Jody Goldberg <jody@gnome.org> - - * Release 2.5.0 - -Mon Aug 11 11:50:36 2003 Jonathan Blandford <jrb@redhat.com> - - * gnome-keyboard-properties.glade: Patch from Elijah Newren - <newren@math.utah.edu> to bring the possible repeat range in sync - with the a11y capplet. - - * gnome-keyboard-properties.c: Patch from Elijah Newren to deal - with the change in the peditor code. - -Fri Aug 1 15:04:39 2003 Jonathan Blandford <jrb@redhat.com> - - * gnome-keyboard-properties.glade: Patch from Dennis Cranston - <dennis_cranston@yahoo.com> to add two more pixels of spacing - between action area and vbox of prefrences dialog. - -Thu Jul 31 17:42:13 2003 Jonathan Blandford <jrb@redhat.com> - - * gnome-keyboard-properties.c (main): Add typing-break properties, - #118323 - -2003-07-17 Dennis Cranston <dennis_cranston at yahoo com> - - * gnome-keyboard-properties.glade, - gnome-keyboard-properties.c: Fixes for ui-review - bug report #99531 and fixes for duplicate mnemonics. - -2003-07-07 Jody Goldberg <jody@gnome.org> - - * Release 2.3.4 - -2003-06-27 Richard Hult <richard@imendio.com> - - * gnome-keyboard-properties.c (setup_dialog): Use the right gconf - key for allow_postpone preference. - - * gnome-keyboard-properties.glade: Remove warn time preference, - it's not used in the code. - -Thu Jun 26 16:31:41 2003 Jonathan Blandford <jrb@redhat.com> - - * gnome-keyboard-properties.c (setup_dialog): use the correct - schemas. - -Thu Jun 26 07:39:34 2003 Jonathan Blandford <jrb@gnome.org> - - * gnome-keyboard-properties.c: added the typing break (drwright) - preferences - -2003-06-24 Jody Goldberg <jody@gnome.org> - - * Release 2.3.3 - -2003-05-07 Jody Goldberg <jody@gnome.org> - - * Release 2.3.1 - -2003-04-30 Jody Goldberg <jody@gnome.org> - - * gnome-keyboard-properties.glade : make the repeat bounds more - reasonable. - -Tue Feb 4 17:09:18 2003 Jonathan Blandford <jrb@redhat.com> - - * Release 2.2.0.1 - -Tue Jan 21 01:15:14 2003 Jonathan Blandford <jrb@gnome.org> - - * Release 2.2.0 - -Thu Jan 16 02:41:09 2003 Jonathan Blandford <jrb@gnome.org> - - * Release 2.1.7 - -2003-01-14 Jody Goldberg <jody@gnome.org> - - * gnome-keyboard-properties.c (accessibility_button_clicked) : fix - minor typo that disables the error dialog in the event of failure. - -2003-01-10 Jody Goldberg <jody@gnome.org> - - * Release 2.1.6 - -2002-12-18 Jody Goldberg <jody@gnome.org> - - * Release 2.1.5 - -2002-12-10 Rajkumar Sivasamy <rajkumar.siva@wipro.com> - - * gnome-keyboard-properties.glade: Set the visibility and focus - of Custom radio button in Sound note book page to false. - Fixes bug 99793 - -2002-11-23 Jody Goldberg <jody@gnome.org> - - * Release 2.1.3 - -2002-11-02 Jody Goldberg <jody@gnome.org> - - * Release 2.1.2 - -2002-10-21 Jody Goldberg <jody@gnome.org> - - * Release 2.1.1 - -2002-10-01 Jody Goldberg <jody@gnome.org> - - * Release 2.1.0.1 - -2002-08-21 Jody Goldberg <jody@gnome.org> - - * Release 2.1.0 - -2002-08-19 Ross Burton <ross@burtonini.com> - - * keyboard.desktop.in: Fix the desktop file so that it validates. - -2002-08-15 Jody Goldberg <jody@gnome.org> - - * gnome-keyboard-properties.glade : fix label and make consistent with - mouse capplet. - * gnome-keyboard-properties.c (create_dialog) : use size groups. - -2002-08-08 Seth Nickell <snickell@stanford.edu> - - * gnome-keyboard-properties.glade: - - Set border widths nicely so things align. - -2002-08-01 Federico Mena Quintero <federico@ximian.com> - - * gnome-keyboard-properties.glade: Made the file entry modal. - -2002-07-16 Jody Goldberg <jody@gnome.org> - - * gnome-keyboard-properties.c (setup_dialog) : use the gconf_value_int_to_float - convenience routines directly and convert the repeat speed and delay - to use sliders. - - * gnome-keyboard-properties.c (accessibility_button_clicked) : produce - a better warning for failure to launch the keyboard accessibility - capplet. - -2002-06-17 Jody Goldberg <jody@gnome.org> - - * Release 2.0.0 - -2002-06-10 jacob berkman <jacob@ximian.com> - - * gnome-keyboard-properties.glade: hide the keyclick slider. - - fixes #78015 - - reviewed/approved by jrb, luis, jody - -2002-05-28 Satyajit Kanungo <satyajit.kanungo@wipro.com> - - * gnome-keyboard-properties.c : Changed the help file link - to get the help document from user-guide. - - -Sun May 26 11:30:25 2002 Jonathan Blandford <jrb@gnome.org> - - * gnome-keyboard-properties.c (main): use APPID instead of argv[0] - -2002-05-16 jacob berkman <jacob@ximian.com> - - * gnome-keyboard-properties.c (get_legacy_settings): don't copy - the volume, this setting is gone - (main): dont' show_all() the dialog - - * gnome-keyboard-properties.glade: hide the "other" option button - - fixes for #78016 - -2002-05-16 Jody Goldberg <jody@gnome.org> - - * gnome-keyboard-properties.glade : some minor tweakage. - -Mon May 13 17:32:25 2002 Jonathan Blandford <jrb@redhat.com> - - * gnome-keyboard-properties.c (delay_to_widget): hook up widget - correctly. - -2002-05-09 Jody Goldberg <jody@gnome.org> - - * gnome-keyboard-properties.c (dialog_response) : support help. - * gnome-keyboard-properties.glade : add help. - -2002-05-09 Jody Goldberg <jody@gnome.org> - - * gnome-keyboard-properties.glade : long forgotten atk patch from Dave. - Sorry. - -2002-04-22 Rachel Hestilow <hestilow@ximian.com> - - * gnome-keyboard-properties.glade: Restore missing OptionMenu - labels. - -Thu Apr 18 13:59:12 2002 Jonathan Blandford <jrb@gnome.org> - - * gnome-keyboard-properties.glade: cleanups. - - * gnome-keyboard-properties.c: remove accessibility pane and add a - button. - -Wed Apr 10 18:06:25 2002 Jonathan Blandford <jrb@gnome.org> - - * keyboard.desktop.in (Exec): s/gnome2/gnome - -2002-03-29 Jody Goldberg <jody@gnome.org> - - * gnome-keyboard-properties.glade : click_volume range is 0..100 - -2002-03-26 Lauris Kaplinski <lauris@ximian.com> - - * gnome-keyboard-properties.c (bell_to_widget): Be nice on - invalid and NULL Gconf values - -2002-03-25 Jody Goldberg <jody@gnome.org> - - * gnome-keyboard-properties.c (volume_to_widget) : new. - (volume_from_widget) : new. - (setup_dialog) : use them here. - -2002-03-25 Jody Goldberg <jody@gnome.org> - - * gnome-keyboard-properties.c (setup_accessibility) : Use - gtk_label_new_with_mnemonic and add an accel to the label. - -2002-03-19 Jody Goldberg <jody@gnome.org> - - * gnome-keyboard-properties.c (_to_widget) : fix signature. - (*_from_widget) : fix signature. - -2002-03-13 Jody Goldberg <jody@gnome.org> - - * gnome-keyboard-properties.c (setup_accessibility) : new. - (main) : install the accessibility page. - -2002-03-19 Richard Hestilow <hestilow@ximian.com> - - * gnome-keyboard-properties.c (bell_enums): Swap around. This - was initially reversed because of a bug in gconf-peditor. - Ideally this code should use the new enum functions, but - the existing stuff works so I so no immediate need to rewrite - it. - (*_to/from_widget): Convert to new signature. - -2002-03-19 Lauris Kaplinski <lauris@ximian.com> - - * gnome-keyboard-properties.c (bell_to_widget): Check that - value actually is string - that fixes crash with broken schemas - -2002-03-10 Seth Nickell <snickell@stanford.edu> - - * gnome-keyboard-properties.c: (main): - - Activate the settings daemon if its not already running. - -2002-02-27 Kjartan Maraas <kmaraas@gnome.org> - - * gnome-keyboard-properties.c: s/PACKAGE/GETTEXT_PACKAGE/g - -2002-02-10 Richard Hestilow <hestilow@ximian.com> - - * Make dialog Apply/Close. - -Fri Feb 8 23:53:10 2002 Jonathan Blandford <jrb@redhat.com> - - * gnome-keyboard-properties.c (dialog_response): hook up buttons. - -2002-01-19 Seth Nickell <snickell@stanford.edu> - - * Makefile.am: - - Install icon into the standard pixmaps directory - so that Panel & Nautilus will pick up on it. - -2002-01-14 Bradford Hovinen <hovinen@ximian.com> - - * Makefile.am (bin_PROGRAMS): Rename binary - gnome2-keyboard-properties - -Tue Jan 8 15:49:15 2002 Jonathan Blandford <jrb@redhat.com> - - * .cvsignore: update - * Makefile.am: Add gnome-keyboard-properties.c - * gnome-keyboard-properties.c: New, much nicer capplet. - * gnome-keyboard-properties.glade: glade file for above. - * keyboard-bell.png: - * keyboard-cursor.png: - * keyboard-repeat.png: - * keyboard-volume.png: Images for above. Note, - keyboard-cursor.png is my pathetic attempt at artwork, and will - prolly change in the future. - -2001-12-20 Seth Nickell <snickell@stanford.edu> - - * keyboard.desktop.in: - - Add Categories field so it shows up correctly in the - panel menus. - -2001-12-20 Bradford Hovinen <hovinen@ximian.com> - - * keyboard-properties.c (dialog_button_clicked_cb): Update - (main): Use a GtkDialog rather than a GnomeDialog; don't place a - weak ref on gtk_main_quit - - * Makefile.am: Update - - * keyboard.desktop.in.in (Exec): Update - -2001-12-19 Bradford Hovinen <hovinen@ximian.com> - - * keyboard-properties.c (apply_settings): Comment out; pending - removal to gnome-settings-daemon - (setup_dialog): Set conversion functions - (rate_to_widget, rate_from_widget, delay_to_widget) - (delay_from_widget): Implement - -2001-12-18 Bradford Hovinen <hovinen@ximian.com> - - * keyboard-properties.c: Port to GConf/GNOME 2.0. Many changes. - (setup_dialog): Use correct widget name - (create_dialog): Use gtk_image_ functions for the volume icon - (get_int_from_changeset): Use return value of - gconf_change_set_check_value to determine if the key is in the set - (get_legacy_settings): Enable - -2001-10-12 Bradford Hovinen <hovinen@ximian.com> - - * Makefile.am: Make OAF file creation generic - -2001-09-28 Bradford Hovinen <hovinen@ximian.com> - - * Makefile.am: Remove support for disabling bonobo-conf build - - * Makefile.am: Change the binary name to - keyboard-properties-control and create a wrapper script from - ../common/wrapper-script.in to be named keyboard-properties - -2001-08-09 Bradford Hovinen <hovinen@ximian.com> - - * keyboard-properties.xml: Fixed default delay setting - -2001-07-31 Chema Celorio <chema@celorio.com> - - * Makefile.am (cappletname): add DISTDIR to install-data-local - -2001-07-27 Bradford Hovinen <hovinen@ximian.com> - - * RELEASE : 1.5.2 - -2001-07-26 Joakim Ziegler <joakim@ximian.com> - - * keyboard-properties.glade: Changed the label of the delay slider to be - more intuitive. - -2001-07-26 Bradford Hovinen <hovinen@ximian.com> - - * keyboard-properties.c (apply_settings): Initialize the other - fields of this data structure - (apply_settings): Use lookup table to get the values to put in - kbdsettings - (apply_settings): Tweak the numbers a bit - - * Makefile.am (bonobo_sources): Remove bonobo-property-editor-range.[ch] - -2001-07-25 Chema Celorio <chema@celorio.com> - - * Makefile.am: remove the OAF_FILE_IN_RULE and copy it here - (bonobo_sources): add bonobo-properties-editor-range.[ch] - - * Makefile.am: remove the DESKTOP_IN_RULE and copy the sed here - -2001-07-24 Richard Hestilow <hestilow@ximian.com> - - * main.c (main): Pass in legacy files to capplet_init. - -2001-07-20 Chema Celorio <chema@celorio.com> - - * RELEASE : 1.5.0 - -2001-07-19 Bradford Hovinen <hovinen@ximian.com> - - * Makefile.am: Remove SUBDIRS - Remove extraneous EXTRA_DIST - (EXTRA_DIST): Make sure to include defaults and OAF files - - * keyboard.desktop.in.in (Exec): Update for bonoboization - - * Bonobo_Control_Capplet_keyboard_properties.oaf: Update to - correct binary name - - * main.c (create_dialog): Use GNOMECC_GLADE_DIR rather than - GLADE_DATADIR - -2001-07-18 Richard Hestilow <hestilow@ximian.com> - - * main.c (create_dialog): Revert to old prototype. - (setup_dialog): Moved signal_connect on demo button to here. - -2001-07-18 Richard Hestilow <hestilow@ximian.com> - - * Rewritten to use bonobo-conf. - -2001-07-18 Jakub Steiner <jimmac@ximian.com> - - * keyboard-capplet.png: use the 3d version. - -2001-07-17 Chema Celorio <chema@celorio.com> - - * Makefile.am: nice and clean just as we like it - -2001-07-17 Bradford Hovinen <hovinen@ximian.com> - - * Makefile.am (EXTRA_DIST): Added missing icons_DATA - -2001-07-17 Chema Celorio <chema@celorio.com> - - * Makefile.am ($(desktop).in): desktop.in.in -> desktop.in ->desktop - so that we can merge the incondir path. - * add keyboard-capplet.png (by jimmac) an use it - -2001-07-10 Kai Lahmann <kl@linuxfaqs.de> - - * keyboard-properties.desktop: Fixed wrong binary name - -2001-07-05 Bradford Hovinen <hovinen@ximian.com> - - * prefs-widget.c (set_scale): Add appropriate casts - -2000-12-26 Jacob "Ulysses" Berkman <jacob@helixcode.com> - - * keyboard-properties.glade: re-did the UI a bit - -2000-10-08 Bradford Hovinen <hovinen@helixcode.com> - - * Makefile.am (EXTRA_DIST): Add translation file - -2000-09-12 Bradford Hovinen <hovinen@helixcode.com> - - * preferences.c (preferences_clone): Added in missing code to copy - preferences over - diff --git a/capplets/keyboard/Makefile.am b/capplets/keyboard/Makefile.am deleted file mode 100644 index 56ad9f2d2..000000000 --- a/capplets/keyboard/Makefile.am +++ /dev/null @@ -1,34 +0,0 @@ -bin_PROGRAMS = gnome-keyboard-properties - -gnome_keyboard_properties_SOURCES = gnome-keyboard-properties.c \ - gnome-keyboard-properties-xkb.c \ - gnome-keyboard-properties-xkbmc.c \ - gnome-keyboard-properties-xkblt.c \ - gnome-keyboard-properties-xkbot.c \ - gnome-keyboard-properties-xkbpv.c \ - gnome-keyboard-properties-xkb.h -gnome_keyboard_properties_LDADD = \ - ../accessibility/keyboard/libaccessibility-keyboard.a \ - $(GNOMECC_CAPPLETS_LIBS) $(LIBXKLAVIER_LIBS) \ - ../../libgswitchit/libgswitchit.a \ - ../../libkbdraw/libkbdraw.a - -@INTLTOOL_DESKTOP_RULE@ - -Gladedir = $(GNOMECC_GLADE_DIR) -Glade_DATA = gnome-keyboard-properties.glade - -pixmapsdir = $(GNOMECC_PIXMAPS_DIR) -pixmaps_DATA = \ - keyboard-repeat.png \ - keyboard-cursor.png \ - keyboard-volume.png \ - keyboard-bell.png - -desktopdir = $(datadir)/applications -Desktop_in_files = keyboard.desktop.in -desktop_DATA = $(Desktop_in_files:.desktop.in=.desktop) - -INCLUDES = $(GNOMECC_CAPPLETS_CFLAGS) $(LIBXKLAVIER_CFLAGS) -CLEANFILES = $(GNOMECC_CAPPLETS_CLEANFILES) $(Desktop_in_files) $(desktop_DATA) -EXTRA_DIST = $(Glade_DATA) $(pixmaps_DATA) diff --git a/capplets/keyboard/gnome-keyboard-properties-xkb.c b/capplets/keyboard/gnome-keyboard-properties-xkb.c deleted file mode 100644 index 5fd6caf80..000000000 --- a/capplets/keyboard/gnome-keyboard-properties-xkb.c +++ /dev/null @@ -1,208 +0,0 @@ -/* -*- mode: c; style: linux -*- */ - -/* gnome-keyboard-properties-xkb.c - * Copyright (C) 2003 Sergey V. Oudaltsov - * - * Written by: Sergey V. Oudaltsov <svu@users.sourceforge.net> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - * 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#include <gnome.h> -#include <gdk/gdkx.h> -#include <gconf/gconf-client.h> -#include <glade/glade.h> - -#include "libgswitchit/gswitchit_config.h" - -#include "capplet-util.h" -#include "gconf-property-editor.h" -#include "activate-settings-daemon.h" -#include "capplet-stock-icons.h" -#include <../accessibility/keyboard/accessibility-keyboard.h> - -#include "gnome-keyboard-properties-xkb.h" - -static GSwitchItKbdConfig initialConfig; - -GConfClient *xkbGConfClient; - -char * -xci_desc_to_utf8 (XklConfigItem * ci) -{ - char *sd = g_strstrip (ci->description); - return sd[0] == 0 ? g_strdup (ci->name) : - g_locale_to_utf8 (sd, -1, NULL, NULL, NULL); -} - -static GConfValue * -model_from_widget (GConfPropertyEditor * peditor, GConfValue * value) -{ - GConfValue *new_value; - - new_value = gconf_value_new (GCONF_VALUE_STRING); - - if (value->type == GCONF_VALUE_STRING) - { - GObject* widget = gconf_property_editor_get_ui_control(peditor); - gchar* n = g_object_get_data (widget, "xkbModelName"); - gconf_value_set_string (new_value, n); - } - else - gconf_value_set_string (new_value, _("Unknown")); - - return new_value; -} - -static GConfValue * -model_to_widget (GConfPropertyEditor * peditor, GConfValue * value) -{ - GConfValue *new_value; - - new_value = gconf_value_new (GCONF_VALUE_STRING); - - if (value->type == GCONF_VALUE_STRING) - { - XklConfigItem ci; - g_snprintf( ci.name, sizeof (ci.name), "%s", gconf_value_get_string( value ) ); - if ( XklConfigFindModel( &ci ) ) - { - GObject* widget = gconf_property_editor_get_ui_control(peditor); - gchar* d = xci_desc_to_utf8 (&ci); - - g_object_set_data_full (widget, "xkbModelName", g_strdup (ci.name), g_free); - gconf_value_set_string (new_value, d); - g_free (d); - } - else - gconf_value_set_string (new_value, _("Unknown")); - } - - return new_value; -} - -static void -cleanup_xkb_tabs (GladeXML * dialog) -{ - GSwitchItKbdConfigTerm (&initialConfig); - XklConfigFreeRegistry (); - XklConfigTerm (); - XklTerm (); - g_object_unref (xkbGConfClient); - xkbGConfClient = NULL; -} - -static void -reset_to_defaults (GtkWidget * button, GladeXML * dialog) -{ - gconf_client_set_bool (xkbGConfClient, - GSWITCHIT_KBD_CONFIG_KEY_OVERRIDE_SETTINGS, - TRUE, NULL); - /* all the rest is g-s-d's business */ -} - -static void -update_model (GConfClient * client, - guint cnxn_id, GConfEntry * entry, GladeXML * dialog) -{ - enable_disable_restoring (dialog); -} - -static void -chk_separate_group_per_window_toggled (GConfPropertyEditor *peditor, - const gchar *key, - const GConfValue *value, - GladeXML* dialog) -{ - xkb_layouts_enable_disable_default (dialog, value && gconf_value_get_bool (value)); -} - -void -setup_xkb_tabs (GladeXML * dialog, GConfChangeSet * changeset) -{ - GObject * peditor; - xkbGConfClient = gconf_client_get_default (); - - XklInit (GDK_DISPLAY ()); - XklConfigInit (); - XklConfigLoadRegistry (); - - gconf_peditor_new_string - (changeset, (gchar *) GSWITCHIT_KBD_CONFIG_KEY_MODEL, - WID ("xkb_model"), - "conv-to-widget-cb", model_to_widget, - "conv-from-widget-cb", model_from_widget, NULL); - - peditor = gconf_peditor_new_boolean - (changeset, (gchar *) GSWITCHIT_CONFIG_KEY_GROUP_PER_WINDOW, - WID ("chk_separate_group_per_window"), NULL); - - g_signal_connect (peditor, "value-changed", (GCallback)chk_separate_group_per_window_toggled , dialog); - -/* tab 2 */ - /*fill_available_layouts_tree (dialog);*/ - xkb_layouts_prepare_selected_tree (dialog, changeset); - xkb_layouts_fill_selected_tree (dialog); - -/* tab 3 */ - xkb_options_load_options (dialog); - - xkb_layouts_register_buttons_handlers (dialog); - g_signal_connect (G_OBJECT (WID ("xkb_reset_to_defaults")), "clicked", - G_CALLBACK (reset_to_defaults), dialog); - - g_signal_connect_swapped (G_OBJECT (WID ("xkb_model_pick")), "clicked", - G_CALLBACK (choose_model), dialog); - - xkb_layouts_register_gconf_listener (dialog); - xkb_options_register_gconf_listener (dialog); - - g_signal_connect (G_OBJECT (WID ("keyboard_dialog")), - "destroy", G_CALLBACK (cleanup_xkb_tabs), dialog); - - gconf_client_notify_add (xkbGConfClient, - GSWITCHIT_KBD_CONFIG_KEY_MODEL, - (GConfClientNotifyFunc) - update_model, dialog, NULL, NULL); - - GSwitchItKbdConfigInit (&initialConfig, xkbGConfClient); - GSwitchItKbdConfigLoadFromXInitial (&initialConfig); - - enable_disable_restoring (dialog); - xkb_layouts_enable_disable_default (dialog, - gconf_client_get_bool (xkbGConfClient, - GSWITCHIT_CONFIG_KEY_GROUP_PER_WINDOW, - NULL)); -} - -void -enable_disable_restoring (GladeXML * dialog) -{ - GSwitchItKbdConfig gswic; - gboolean enable; - - GSwitchItKbdConfigInit (&gswic, xkbGConfClient); - GSwitchItKbdConfigLoadFromGConf (&gswic); - - enable = !GSwitchItKbdConfigEquals (&gswic, &initialConfig); - - GSwitchItKbdConfigTerm (&gswic); - gtk_widget_set_sensitive (WID ("xkb_reset_to_defaults"), enable); -} diff --git a/capplets/keyboard/gnome-keyboard-properties-xkb.h b/capplets/keyboard/gnome-keyboard-properties-xkb.h deleted file mode 100644 index 3891b95c1..000000000 --- a/capplets/keyboard/gnome-keyboard-properties-xkb.h +++ /dev/null @@ -1,109 +0,0 @@ -/* -*- mode: c; style: linux -*- */ - -/* gnome-keyboard-properties-xkb.h - * Copyright (C) 2003 Udaltsoft - * - * Written by Sergey V. Oudaltsov <svu@users.sf.net> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - * 02111-1307, USA. - */ - -#ifndef __GNOME_KEYBOARD_PROPERTY_XKB_H -#define __GNOME_KEYBOARD_PROPERTY_XKB_H - -#include <libxklavier/xklavier_config.h> -#include <gconf/gconf-client.h> - -G_BEGIN_DECLS - -#define SEL_LAYOUT_TREE_COL_DESCRIPTION 0 -#define SEL_LAYOUT_TREE_COL_DEFAULT 1 -#define SEL_LAYOUT_TREE_COL_ID 2 - -#define AVAIL_LAYOUT_TREE_COL_DESCRIPTION 0 -#define AVAIL_LAYOUT_TREE_COL_ID 1 - -#define CWID(s) glade_xml_get_widget (chooserDialog, s) - -extern GConfClient *xkbGConfClient; - -extern void setup_xkb_tabs (GladeXML * dialog, - GConfChangeSet * changeset); - -extern void xkb_layouts_fill_available_tree (GladeXML * dialog); - -extern void xkb_options_fill_available_tree (GladeXML * dialog); - -extern void xkb_layouts_fill_selected_tree (GladeXML * dialog); - -extern void xkb_options_fill_selected_tree (GladeXML * dialog); - -extern void xkb_layouts_register_buttons_handlers (GladeXML * dialog); - -extern void xkb_options_register_buttons_handlers (GladeXML * dialog); - -extern void xkb_layouts_register_gconf_listener (GladeXML * dialog); - -extern void xkb_options_register_gconf_listener (GladeXML * dialog); - -extern void xkb_layouts_prepare_selected_tree (GladeXML * dialog, - GConfChangeSet * changeset); - -extern void xkb_options_prepare_selected_tree (GladeXML * dialog); - -extern void clear_xkb_elements_list (GSList * list); - -extern char *xci_desc_to_utf8 (XklConfigItem * ci); - -extern void sort_tree_content (GtkWidget * treeView); - -extern void enable_disable_restoring (GladeXML * dialog); - -extern void preview_toggled (GladeXML * dialog, GtkWidget * button); - -extern void choose_model (GladeXML * dialog); - -extern void xkb_layout_choose (GladeXML * dialog); - -extern void xkb_layouts_enable_disable_default (GladeXML * dialog, - gboolean enable); - -#define xkb_layouts_get_selected_list() \ - gconf_client_get_list (gconf_client_get_default (), \ - GSWITCHIT_KBD_CONFIG_KEY_LAYOUTS, \ - GCONF_VALUE_STRING, NULL) - -#define xkb_layouts_set_selected_list(list) \ - gconf_client_set_list (gconf_client_get_default (), \ - GSWITCHIT_KBD_CONFIG_KEY_LAYOUTS, \ - GCONF_VALUE_STRING, (list), NULL) - -#define xkb_options_get_selected_list() \ - gconf_client_get_list (gconf_client_get_default (), \ - GSWITCHIT_KBD_CONFIG_KEY_OPTIONS, \ - GCONF_VALUE_STRING, NULL) - -#define xkb_options_set_selected_list(list) \ - gconf_client_set_list (gconf_client_get_default (), \ - GSWITCHIT_KBD_CONFIG_KEY_OPTIONS, \ - GCONF_VALUE_STRING, (list), NULL) - -extern GtkWidget * xkb_layout_preview_create_widget (GladeXML * chooserDialog); - -extern void xkb_layout_preview_update (GladeXML * chooserDialog); - -G_END_DECLS -#endif /* __GNOME_KEYBOARD_PROPERTY_XKB_H */ diff --git a/capplets/keyboard/gnome-keyboard-properties-xkblt.c b/capplets/keyboard/gnome-keyboard-properties-xkblt.c deleted file mode 100644 index 81562030c..000000000 --- a/capplets/keyboard/gnome-keyboard-properties-xkblt.c +++ /dev/null @@ -1,581 +0,0 @@ -/* -*- mode: c; style: linux -*- */ - -/* gnome-keyboard-properties-xkblt.c - * Copyright (C) 2003 Sergey V. Oudaltsov - * - * Written by: Sergey V. Oudaltsov <svu@users.sourceforge.net> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - * 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#include <gnome.h> -#include <gconf/gconf-client.h> -#include <glade/glade.h> - -#include "libgswitchit/gswitchit_config.h" - -#include "capplet-util.h" -#include "gconf-property-editor.h" -#include "activate-settings-daemon.h" -#include "capplet-stock-icons.h" -#include <../accessibility/keyboard/accessibility-keyboard.h> - -#include "gnome-keyboard-properties-xkb.h" -#include "libkbdraw/keyboard-drawing.h" - -#define GROUP_SWITCHERS_GROUP "grp" -#define DEFAULT_GROUP_SWITCH "grp:alts_toggle" - -static GtkTreeIter current1stLevelIter; -static const char *current1stLevelId; - -static int idx2Select = -1; -static int maxSelectedLayouts = -1; -static int defaultGroup = -1; - -static GtkCellRenderer *textRenderer; -static GtkCellRenderer *toggleRenderer; - -void -clear_xkb_elements_list (GSList * list) -{ - while (list != NULL) - { - GSList *p = list; - list = list->next; - g_free (p->data); - g_slist_free_1 (p); - } -} - -static void -save_default_group (int aDefaultGroup) -{ - if (aDefaultGroup != gconf_client_get_int (xkbGConfClient, - GSWITCHIT_CONFIG_KEY_DEFAULT_GROUP, - NULL)) - gconf_client_set_int (xkbGConfClient, - GSWITCHIT_CONFIG_KEY_DEFAULT_GROUP, - aDefaultGroup, - NULL); -} - -static void -def_group_in_ui_changed (GtkCellRendererToggle *cell_renderer, - gchar *path, - GladeXML * dialog) -{ - GtkTreePath *chpath = gtk_tree_path_new_from_string (path); - int newDefaultGroup = -1; - gboolean previouslySelected = gtk_cell_renderer_toggle_get_active (cell_renderer); - - if (!previouslySelected) /* prev state - non-selected! */ - { - int *indices = gtk_tree_path_get_indices (chpath); - newDefaultGroup = indices[0]; - } - - save_default_group (newDefaultGroup); - gtk_tree_path_free (chpath); -} - -static void -def_group_in_gconf_changed (GConfClient * client, - guint cnxn_id, - GConfEntry * entry, GladeXML* dialog) -{ - GConfValue *value = gconf_entry_get_value (entry); - - if (value->type == GCONF_VALUE_INT) - { - GtkWidget* treeView = WID ("xkb_layouts_selected"); - GtkTreeModel *model = GTK_TREE_MODEL (gtk_tree_view_get_model (GTK_TREE_VIEW (treeView))); - GtkTreeIter iter; - int counter = 0; - defaultGroup = gconf_value_get_int (value); - if (gtk_tree_model_get_iter_first (model, &iter)) - { - do - { - gboolean curVal; - gtk_tree_model_get (model, &iter, - SEL_LAYOUT_TREE_COL_DEFAULT, &curVal, - -1); - if (curVal != ( counter == defaultGroup)) - gtk_list_store_set (GTK_LIST_STORE (model), &iter, - SEL_LAYOUT_TREE_COL_DEFAULT, counter == defaultGroup, - -1); - counter++; - } - while (gtk_tree_model_iter_next (model, &iter)); - } - } -} - -static void -add_variant_to_available_layouts_tree (const XklConfigItemPtr configItem, - GladeXML * chooserDialog) -{ - GtkWidget *layoutsTree = CWID ("xkb_layouts_available"); - GtkTreeIter iter; - GtkTreeStore *treeStore = - GTK_TREE_STORE (gtk_tree_view_get_model (GTK_TREE_VIEW (layoutsTree))); - const gchar *fullLayoutName = GSwitchItKbdConfigMergeItems (current1stLevelId, - configItem->name); - char *utfVariantName = xci_desc_to_utf8 (configItem); - - gtk_tree_store_append (treeStore, &iter, ¤t1stLevelIter); - gtk_tree_store_set (treeStore, &iter, - AVAIL_LAYOUT_TREE_COL_DESCRIPTION, utfVariantName, - AVAIL_LAYOUT_TREE_COL_ID, fullLayoutName, -1); - g_free (utfVariantName); -} - -static void -add_layout_to_available_layouts_tree (const XklConfigItemPtr configItem, - GladeXML * chooserDialog) -{ - GtkWidget *layoutsTree = CWID ("xkb_layouts_available"); - GtkTreeStore *treeStore = - GTK_TREE_STORE (gtk_tree_view_get_model (GTK_TREE_VIEW (layoutsTree))); - char *utfLayoutName = xci_desc_to_utf8 (configItem); - - gtk_tree_store_append (treeStore, ¤t1stLevelIter, NULL); - gtk_tree_store_set (treeStore, ¤t1stLevelIter, - AVAIL_LAYOUT_TREE_COL_DESCRIPTION, utfLayoutName, - AVAIL_LAYOUT_TREE_COL_ID, configItem->name, -1); - g_free (utfLayoutName); - - current1stLevelId = configItem->name; - - XklConfigEnumLayoutVariants (configItem->name, - (ConfigItemProcessFunc)add_variant_to_available_layouts_tree, - chooserDialog); -} - -static void -xkb_layouts_enable_disable_buttons (GladeXML * dialog) -{ - GtkWidget *addLayoutBtn = WID ("xkb_layouts_add"); - GtkWidget *delLayoutBtn = WID ("xkb_layouts_remove"); - GtkWidget *upLayoutBtn = WID ("xkb_layouts_up"); - GtkWidget *dnLayoutBtn = WID ("xkb_layouts_down"); - GtkWidget *selectedLayoutsTree = WID ("xkb_layouts_selected"); - - GtkTreeSelection *sSelection = - gtk_tree_view_get_selection (GTK_TREE_VIEW (selectedLayoutsTree)); - const int nSelectedSelectedLayouts = - gtk_tree_selection_count_selected_rows (sSelection); - gboolean canMoveUp = FALSE; - gboolean canMoveDn = FALSE; - GtkTreeIter iter; - GtkTreeModel *selectedLayoutsModel = gtk_tree_view_get_model - (GTK_TREE_VIEW (selectedLayoutsTree)); - const int nSelectedLayouts = - gtk_tree_model_iter_n_children (selectedLayoutsModel, - NULL); - - gtk_widget_set_sensitive (addLayoutBtn, - (nSelectedLayouts < maxSelectedLayouts || - maxSelectedLayouts == 0)); - gtk_widget_set_sensitive (delLayoutBtn, nSelectedSelectedLayouts > 0); - - if (gtk_tree_selection_get_selected (sSelection, NULL, &iter)) - { - GtkTreePath *path = gtk_tree_model_get_path (selectedLayoutsModel, - &iter); - if (path != NULL) - { - int *indices = gtk_tree_path_get_indices (path); - int idx = indices[0]; - canMoveUp = idx > 0; - canMoveDn = idx < (nSelectedLayouts - 1); - gtk_tree_path_free (path); - } - } - gtk_widget_set_sensitive (upLayoutBtn, canMoveUp); - gtk_widget_set_sensitive (dnLayoutBtn, canMoveDn); -} - -static void -xkb_layout_chooser_enable_disable_buttons (GladeXML * chooserDialog) -{ - GtkWidget *availableLayoutsTree = CWID ("xkb_layouts_available"); - GtkTreeSelection *aSelection = - gtk_tree_view_get_selection (GTK_TREE_VIEW (availableLayoutsTree)); - const int nSelectedAvailableLayouts = - gtk_tree_selection_count_selected_rows (aSelection); - - gtk_dialog_set_response_sensitive (GTK_DIALOG (CWID ("xkb_layout_chooser")), - GTK_RESPONSE_OK, nSelectedAvailableLayouts > 0); -} - -void xkb_layouts_enable_disable_default (GladeXML * dialog, - gboolean enable) -{ - GValue val = {0}; - g_value_init (&val, G_TYPE_BOOLEAN); - g_value_set_boolean (&val, enable); - g_object_set_property (G_OBJECT (toggleRenderer), "activatable", &val); -} - -void -xkb_layouts_prepare_selected_tree (GladeXML * dialog, GConfChangeSet * changeset) -{ - GtkListStore *listStore = - gtk_list_store_new (3, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_STRING); - GtkWidget *treeView = WID ("xkb_layouts_selected"); - GtkTreeViewColumn * descColumn, * defColumn; - GtkTreeSelection *selection; - - textRenderer = GTK_CELL_RENDERER (gtk_cell_renderer_text_new ()); - toggleRenderer = GTK_CELL_RENDERER (gtk_cell_renderer_toggle_new ()); - - descColumn = gtk_tree_view_column_new_with_attributes (_("Layout"), - textRenderer, - "text", SEL_LAYOUT_TREE_COL_DESCRIPTION, - NULL); - defColumn = gtk_tree_view_column_new_with_attributes (_("Default"), - toggleRenderer, - "active", SEL_LAYOUT_TREE_COL_DEFAULT, - NULL); - selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeView)); - - gtk_tree_view_set_model (GTK_TREE_VIEW (treeView), - GTK_TREE_MODEL (listStore)); - - gtk_tree_view_column_set_sizing (descColumn, GTK_TREE_VIEW_COLUMN_AUTOSIZE); - gtk_tree_view_column_set_sizing (defColumn, GTK_TREE_VIEW_COLUMN_AUTOSIZE); - gtk_tree_view_column_set_resizable (descColumn, TRUE); - gtk_tree_view_column_set_resizable (defColumn, TRUE); - - gtk_tree_view_append_column (GTK_TREE_VIEW (treeView), descColumn); - gtk_tree_view_append_column (GTK_TREE_VIEW (treeView), defColumn); - - g_signal_connect_swapped (G_OBJECT (selection), "changed", - G_CALLBACK - (xkb_layouts_enable_disable_buttons), dialog); - maxSelectedLayouts = XklGetMaxNumGroups(); - - gconf_client_notify_add (xkbGConfClient, - GSWITCHIT_CONFIG_KEY_DEFAULT_GROUP, - (GConfClientNotifyFunc)def_group_in_gconf_changed, - dialog, - NULL, - NULL); - g_signal_connect (G_OBJECT (toggleRenderer), "toggled", - G_CALLBACK (def_group_in_ui_changed), dialog); -} - -static void -xkb_layout_chooser_selection_changed (GladeXML * chooserDialog) -{ - xkb_layout_preview_update (chooserDialog); - xkb_layout_chooser_enable_disable_buttons (chooserDialog); -} - -void -xkb_layouts_fill_selected_tree (GladeXML * dialog) -{ - GConfEntry *gce; - GSList *layouts = xkb_layouts_get_selected_list (); - GSList *curLayout; - GtkListStore *listStore = - GTK_LIST_STORE (gtk_tree_view_get_model - (GTK_TREE_VIEW (WID ("xkb_layouts_selected")))); - gtk_list_store_clear (listStore); - - for (curLayout = layouts; curLayout != NULL; curLayout = curLayout->next) - { - GtkTreeIter iter; - char *l, *sl, *v, *sv; - char *v1, *utfVisible; - const char *visible = (char *) curLayout->data; - gtk_list_store_append (listStore, &iter); - if (GSwitchItKbdConfigGetDescriptions (visible, &sl, &l, &sv, &v)) - visible = GSwitchItKbdConfigFormatFullLayout (l, v); - v1 = g_strdup (visible); - utfVisible = g_locale_to_utf8 (g_strstrip (v1), -1, NULL, NULL, NULL); - gtk_list_store_set (listStore, &iter, - SEL_LAYOUT_TREE_COL_DESCRIPTION, utfVisible, - SEL_LAYOUT_TREE_COL_DEFAULT, FALSE, - SEL_LAYOUT_TREE_COL_ID, curLayout->data, -1); - g_free (utfVisible); - g_free (v1); - } - - clear_xkb_elements_list (layouts); - xkb_layouts_enable_disable_buttons (dialog); - if (idx2Select != -1) - { - GtkTreeSelection *selection = - gtk_tree_view_get_selection ((GTK_TREE_VIEW - (WID ("xkb_layouts_selected")))); - GtkTreePath *path = gtk_tree_path_new_from_indices (idx2Select, -1); - gtk_tree_selection_select_path (selection, path); - gtk_tree_path_free (path); - idx2Select = -1; - } - - gce = gconf_client_get_entry (xkbGConfClient, - GSWITCHIT_CONFIG_KEY_DEFAULT_GROUP, - NULL, - TRUE, - NULL); - def_group_in_gconf_changed (xkbGConfClient, -1, gce, dialog); -} - -void -sort_tree_content (GtkWidget * treeView) -{ - GtkTreeModel *treeModel = - gtk_tree_view_get_model (GTK_TREE_VIEW (treeView)); - GtkTreeModel *sortedTreeModel; - /* replace the store with the sorted version */ - sortedTreeModel = gtk_tree_model_sort_new_with_model (treeModel); - gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE - (sortedTreeModel), 0, - GTK_SORT_ASCENDING); - gtk_tree_view_set_model (GTK_TREE_VIEW (treeView), sortedTreeModel); -} - -void -xkb_layouts_fill_available_tree (GladeXML * chooserDialog) -{ - GtkTreeStore *treeStore = - gtk_tree_store_new (2, G_TYPE_STRING, G_TYPE_STRING); - GtkWidget *treeView = CWID ("xkb_layouts_available"); - GtkCellRenderer *renderer = - GTK_CELL_RENDERER (gtk_cell_renderer_text_new ()); - GtkTreeViewColumn *column = gtk_tree_view_column_new_with_attributes (NULL, - renderer, - "text", - AVAIL_LAYOUT_TREE_COL_DESCRIPTION, - NULL); - GtkTreeSelection *selection = - gtk_tree_view_get_selection (GTK_TREE_VIEW (treeView)); - - gtk_tree_view_set_model (GTK_TREE_VIEW (treeView), - GTK_TREE_MODEL (treeStore)); - gtk_tree_view_append_column (GTK_TREE_VIEW (treeView), column); - - XklConfigEnumLayouts ((ConfigItemProcessFunc) - add_layout_to_available_layouts_tree, chooserDialog); - - sort_tree_content (treeView); - g_signal_connect_swapped (G_OBJECT (selection), "changed", - G_CALLBACK - (xkb_layout_chooser_selection_changed), chooserDialog); -} - -static void -add_selected_layout (GtkWidget * button, GladeXML * dialog) -{ - xkb_layout_choose (dialog); -} - -static void -move_selected_layout (GladeXML * dialog, int offset) -{ - GtkTreeSelection *selection = - gtk_tree_view_get_selection (GTK_TREE_VIEW - (WID ("xkb_layouts_selected"))); - GtkTreeIter selectedIter; - GtkTreeModel *model; - if (gtk_tree_selection_get_selected (selection, &model, &selectedIter)) - { - GSList *layoutsList = xkb_layouts_get_selected_list (); - GtkTreePath *path = gtk_tree_model_get_path (model, - &selectedIter); - if (path != NULL) - { - int *indices = gtk_tree_path_get_indices (path); - int idx = indices[0]; - char *id = NULL; - GSList *node2Remove = g_slist_nth (layoutsList, idx); - - layoutsList = g_slist_remove_link (layoutsList, node2Remove); - - id = (char *) node2Remove->data; - g_slist_free_1 (node2Remove); - - if (offset == 0) - { - g_free (id); - if (defaultGroup > idx) - save_default_group (defaultGroup - 1); - else if (defaultGroup == idx) - save_default_group (-1); - } - else - { - layoutsList = - g_slist_insert (layoutsList, id, idx + offset); - idx2Select = idx + offset; - if (idx == defaultGroup) - save_default_group (idx2Select); - else if (idx2Select == defaultGroup) - save_default_group (idx); - } - - xkb_layouts_set_selected_list (layoutsList); - gtk_tree_path_free (path); - } - clear_xkb_elements_list (layoutsList); - } -} - -static void -remove_selected_layout (GtkWidget * button, GladeXML * dialog) -{ - move_selected_layout (dialog, 0); -} - -static void -up_selected_layout (GtkWidget * button, GladeXML * dialog) -{ - move_selected_layout (dialog, -1); -} - -static void -down_selected_layout (GtkWidget * button, GladeXML * dialog) -{ - move_selected_layout (dialog, +1); -} - -void -xkb_layouts_register_buttons_handlers (GladeXML * dialog) -{ - g_signal_connect (G_OBJECT (WID ("xkb_layouts_add")), "clicked", - G_CALLBACK (add_selected_layout), dialog); - g_signal_connect (G_OBJECT (WID ("xkb_layouts_remove")), "clicked", - G_CALLBACK (remove_selected_layout), dialog); - g_signal_connect (G_OBJECT (WID ("xkb_layouts_up")), "clicked", - G_CALLBACK (up_selected_layout), dialog); - g_signal_connect (G_OBJECT (WID ("xkb_layouts_down")), "clicked", - G_CALLBACK (down_selected_layout), dialog); -} - -static void -xkb_layout_chooser_response(GtkDialog *dialog, - gint response, - GladeXML *chooserDialog) -{ - if (response == GTK_RESPONSE_OK) - { - GtkTreeSelection *selection = - gtk_tree_view_get_selection (GTK_TREE_VIEW - (CWID ("xkb_layouts_available"))); - GtkTreeIter selectedIter; - GtkTreeModel *model; - if (gtk_tree_selection_get_selected (selection, &model, &selectedIter)) - { - gchar *id; - GSList *layoutsList = xkb_layouts_get_selected_list (); - gtk_tree_model_get (model, &selectedIter, - AVAIL_LAYOUT_TREE_COL_ID, &id, -1); - layoutsList = g_slist_append (layoutsList, id); - xkb_layouts_set_selected_list (layoutsList); - /* process default switcher */ - if (g_slist_length(layoutsList) >= 2) - { - GSList *optionsList = xkb_options_get_selected_list (); - gboolean anySwitcher = False; - GSList *option = optionsList; - while (option != NULL) - { - char *g, *o; - if (GSwitchItKbdConfigSplitItems (option->data, &g, &o)) - { - if (!g_ascii_strcasecmp (g, GROUP_SWITCHERS_GROUP)) - { - anySwitcher = True; - break; - } - } - option = option->next; - } - if (!anySwitcher) - { - XklConfigItem ci; - g_snprintf( ci.name, XKL_MAX_CI_NAME_LENGTH, DEFAULT_GROUP_SWITCH ); - if (XklConfigFindOption( GROUP_SWITCHERS_GROUP, - &ci )) - { - const gchar* id = GSwitchItKbdConfigMergeItems (GROUP_SWITCHERS_GROUP, DEFAULT_GROUP_SWITCH); - optionsList = g_slist_append (optionsList, g_strdup (id)); - xkb_options_set_selected_list (optionsList); - } - } - clear_xkb_elements_list (optionsList); - } - clear_xkb_elements_list (layoutsList); - } - } -} - -static void -xkb_layouts_update_list (GConfClient * client, - guint cnxn_id, GConfEntry * entry, GladeXML * dialog) -{ - xkb_layouts_fill_selected_tree (dialog); - enable_disable_restoring (dialog); -} - -void -xkb_layouts_register_gconf_listener (GladeXML * dialog) -{ - gconf_client_notify_add (xkbGConfClient, - GSWITCHIT_KBD_CONFIG_KEY_LAYOUTS, - (GConfClientNotifyFunc) - xkb_layouts_update_list, dialog, NULL, NULL); -} - -void -xkb_layout_choose (GladeXML * dialog) -{ - GladeXML* chooserDialog = glade_xml_new (GNOMECC_DATA_DIR "/interfaces/gnome-keyboard-properties.glade", "xkb_layout_chooser", NULL); - GtkWidget* chooser = CWID ( "xkb_layout_chooser"); - GtkWidget* kbdraw = NULL; - - gtk_window_set_transient_for (GTK_WINDOW (chooser), GTK_WINDOW (WID ("keyboard_dialog"))); - - xkb_layouts_fill_available_tree (chooserDialog); - xkb_layout_chooser_selection_changed (chooserDialog); - -#ifdef HAVE_X11_EXTENSIONS_XKB_H - if (!strcmp (XklGetBackendName(), "XKB")) - { - kbdraw = xkb_layout_preview_create_widget (chooserDialog); - g_object_set_data (G_OBJECT (chooser), "kbdraw", kbdraw); - gtk_container_add (GTK_CONTAINER (CWID ("vboxPreview")), kbdraw); - gtk_widget_show_all (kbdraw); - } else -#endif - { - gtk_widget_hide_all (CWID ("vboxPreview")); - } - - g_signal_connect (G_OBJECT (chooser), - "response", G_CALLBACK (xkb_layout_chooser_response), chooserDialog); - - gtk_dialog_run (GTK_DIALOG (chooser)); - gtk_widget_destroy (chooser); -} diff --git a/capplets/keyboard/gnome-keyboard-properties-xkbmc.c b/capplets/keyboard/gnome-keyboard-properties-xkbmc.c deleted file mode 100644 index 698184ff5..000000000 --- a/capplets/keyboard/gnome-keyboard-properties-xkbmc.c +++ /dev/null @@ -1,159 +0,0 @@ -/* -*- mode: c; style: linux -*- */ - -/* gnome-keyboard-properties-xkb.c - * Copyright (C) 2003 Sergey V. Oudaltsov - * - * Written by: Sergey V. Oudaltsov <svu@users.sourceforge.net> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - * 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#include <gnome.h> -#include <gdk/gdkx.h> -#include <gconf/gconf-client.h> -#include <glade/glade.h> - -#include "libgswitchit/gswitchit_config.h" - -#include "capplet-util.h" -#include "gconf-property-editor.h" -#include "activate-settings-daemon.h" -#include "capplet-stock-icons.h" -#include <../accessibility/keyboard/accessibility-keyboard.h> - -#include "gnome-keyboard-properties-xkb.h" - -static gchar* currentModelName = NULL; - -static void -add_model_to_list (const XklConfigItemPtr configItem, GtkTreeView * modelsList) -{ - GtkTreeIter iter; - GtkListStore * listStore = GTK_LIST_STORE (gtk_tree_view_get_model (modelsList)); - char *utfModelName = xci_desc_to_utf8 (configItem); - gtk_list_store_append( listStore, &iter ); - gtk_list_store_set( listStore, &iter, - 0, utfModelName, - 1, configItem->name, -1 ); - - g_free (utfModelName); -} - -static void -xkb_model_chooser_change_sel (GtkTreeSelection* selection, - GladeXML* chooserDialog) -{ - gboolean anysel = gtk_tree_selection_get_selected (selection, NULL, NULL); - gtk_dialog_set_response_sensitive (GTK_DIALOG (CWID ("xkb_model_chooser")), - GTK_RESPONSE_OK, anysel); -} - -static void -fill_models_list (GladeXML * chooserDialog) -{ - GtkWidget* modelsList = CWID( "models_list" ); - GtkTreeIter iter; - GtkTreePath *path; - GtkCellRenderer* renderer = gtk_cell_renderer_text_new (); - GtkTreeViewColumn* descriptionCol = gtk_tree_view_column_new_with_attributes ( _("Models"), - renderer, - "text", 0, - NULL); - GtkListStore *listStore = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_STRING); - char *modelName; - - gtk_tree_view_column_set_visible (descriptionCol, TRUE); - gtk_tree_view_append_column (GTK_TREE_VIEW (modelsList), descriptionCol); - - gtk_tree_view_set_model (GTK_TREE_VIEW (modelsList), GTK_TREE_MODEL (listStore) ); - - gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (listStore), - 0, GTK_SORT_ASCENDING); - - XklConfigEnumModels ((ConfigItemProcessFunc) - add_model_to_list, modelsList); - - if (currentModelName != NULL) - { - if (gtk_tree_model_get_iter_first (GTK_TREE_MODEL (listStore), &iter)) - { - do - { - gtk_tree_model_get (GTK_TREE_MODEL (listStore), &iter, - 1, &modelName, -1); - if (!g_ascii_strcasecmp(modelName, currentModelName)) - { - gtk_tree_selection_select_iter (gtk_tree_view_get_selection (GTK_TREE_VIEW (modelsList)), &iter); - path = gtk_tree_model_get_path (GTK_TREE_MODEL (listStore), &iter); - gtk_tree_view_scroll_to_cell (GTK_TREE_VIEW (modelsList), - path, NULL, TRUE, 0.5, 0); - gtk_tree_path_free (path); - } - g_free (modelName); - } while (gtk_tree_model_iter_next (GTK_TREE_MODEL (listStore), &iter)); - } - } - - g_signal_connect (G_OBJECT (gtk_tree_view_get_selection (GTK_TREE_VIEW (modelsList))), - "changed", - G_CALLBACK (xkb_model_chooser_change_sel), - chooserDialog); -} - -static void -xkb_model_chooser_response (GtkDialog *dialog, - gint response, - GladeXML *chooserDialog) -{ - if (response == GTK_RESPONSE_OK) - { - GtkWidget* modelsList = CWID( "models_list" ); - GtkTreeSelection* selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (modelsList)); - GtkTreeIter iter; - GtkTreeModel* listStore = NULL; - if (gtk_tree_selection_get_selected (selection, &listStore, &iter)) - { - gchar* modelName = NULL; - gtk_tree_model_get (listStore, &iter, - 1, &modelName, -1); - - gconf_client_set_string (xkbGConfClient, - GSWITCHIT_KBD_CONFIG_KEY_MODEL, - modelName, NULL); - g_free(modelName); - } - } -} - -void -choose_model(GladeXML * dialog) -{ - GladeXML* chooserDialog = glade_xml_new (GNOMECC_DATA_DIR "/interfaces/gnome-keyboard-properties.glade", "xkb_model_chooser", NULL); - GtkWidget* chooser = CWID ( "xkb_model_chooser"); - gtk_window_set_transient_for (GTK_WINDOW (chooser), GTK_WINDOW (WID ("keyboard_dialog"))); - currentModelName = gconf_client_get_string (xkbGConfClient, - GSWITCHIT_KBD_CONFIG_KEY_MODEL, NULL); - fill_models_list (chooserDialog); - g_signal_connect (G_OBJECT (chooser), - "response", G_CALLBACK (xkb_model_chooser_response), chooserDialog); - gtk_dialog_run (GTK_DIALOG (chooser)); - gtk_widget_destroy (chooser); - g_free (currentModelName); -} diff --git a/capplets/keyboard/gnome-keyboard-properties-xkbot.c b/capplets/keyboard/gnome-keyboard-properties-xkbot.c deleted file mode 100644 index f06ef6dce..000000000 --- a/capplets/keyboard/gnome-keyboard-properties-xkbot.c +++ /dev/null @@ -1,332 +0,0 @@ -/* -*- mode: c; style: linux -*- */ - -/* gnome-keyboard-properties-xkbot.c - * Copyright (C) 2003 Sergey V. Oudaltsov - * - * Written by: Sergey V. Oudaltsov <svu@users.sourceforge.net> - * John Spray <spray_john@users.sourceforge.net> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - * 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#include <gnome.h> -#include <gconf/gconf-client.h> -#include <glade/glade.h> - -#include "libgswitchit/gswitchit_config.h" - -#include "capplet-util.h" -#include "gconf-property-editor.h" -#include "activate-settings-daemon.h" -#include "capplet-stock-icons.h" -#include <../accessibility/keyboard/accessibility-keyboard.h> - -#include "gnome-keyboard-properties-xkb.h" - -static const char *current1stLevelId = NULL; -static GtkWidget *currentVbox = NULL; -static GtkWidget *currentNoneRadio = NULL; -static gboolean currentMultiSelect = FALSE; -static GSList *currentRadioGroup = NULL; - -#define OPTION_ID_PROP "optionID" -#define SELCOUNTER_PROP "selectionCounter" -#define GCONFSTATE_PROP "gconfState" -#define EXPANDERS_PROP "expandersList" - -static GtkWidget * -xkb_options_get_expander (GtkWidget * option_button) -{ - return gtk_widget_get_parent ( - gtk_widget_get_parent ( - gtk_widget_get_parent (option_button))); -} - -static int -xkb_options_expander_selcounter_get (GtkWidget * expander) -{ - return GPOINTER_TO_INT(g_object_get_data (G_OBJECT (expander), SELCOUNTER_PROP)); -} - -static void -xkb_options_expander_selcounter_add (GtkWidget * expander, int value) -{ - g_object_set_data (G_OBJECT (expander), SELCOUNTER_PROP, - GINT_TO_POINTER (xkb_options_expander_selcounter_get (expander) + value)); -} - -static void -xkb_options_expander_highlight (GtkWidget * expander) -{ - char * utfGroupName = g_object_get_data (G_OBJECT (expander), "utfGroupName"); - int counter = xkb_options_expander_selcounter_get (expander); - gchar *titlemarkup = g_strconcat (counter > 0 ? "<span weight=\"bold\">" : "<span>", - utfGroupName, "</span>", NULL); - gtk_expander_set_label (GTK_EXPANDER (expander), titlemarkup); - g_free (titlemarkup); -} - -/* Add optionname from the backend's selection list if it's not - already in there. */ -static void -xkb_options_select (gchar *optionname) -{ - gboolean already_selected = FALSE; - GSList *optionsList = xkb_options_get_selected_list (); - GSList *option; - for (option = optionsList ; option != NULL ; option = option->next) - if (!strcmp ((gchar*)option->data, optionname)) - already_selected = TRUE; - - if (!already_selected) - optionsList = g_slist_append (optionsList, g_strdup (optionname)); - xkb_options_set_selected_list (optionsList); - - clear_xkb_elements_list (optionsList); -} - -/* Remove all occurences of optionname from the backend's selection list */ -static void -xkb_options_deselect (gchar *optionname) -{ - GSList *optionsList = xkb_options_get_selected_list (); - GSList *nodetmp; - GSList *option = optionsList; - while (option != NULL) - { - gchar *id = (char *) option->data; - if (!strcmp(id, optionname)) - { - nodetmp = option->next; - g_free (id); - optionsList = g_slist_remove_link (optionsList, option); - g_slist_free_1 (option); - option=nodetmp; - } - else - option = option->next; - } - xkb_options_set_selected_list (optionsList); - clear_xkb_elements_list (optionsList); -} - -/* Return true if optionname describes a string already in the backend's - list of selected options */ -static gboolean -xkb_options_is_selected (gchar *optionname) -{ - gboolean retval = FALSE; - GSList *optionsList = xkb_options_get_selected_list (); - GSList *option; - for (option = optionsList ; option != NULL ; option = option->next) - { - if (!strcmp ((gchar*)option->data, optionname)) - retval = TRUE; - } - clear_xkb_elements_list (optionsList); - return retval; -} - -/* Update xkb backend to reflect the new UI state */ -static void -option_toggled_cb (GtkWidget *checkbutton, gpointer data) -{ - gpointer optionID = g_object_get_data (G_OBJECT (checkbutton), OPTION_ID_PROP); - if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (checkbutton))) - xkb_options_select (optionID); - else - xkb_options_deselect (optionID); -} - -/* Update UI state from xkb backend */ -static void -option_update_cb (GConfClient * client, - guint cnxn_id, GConfEntry * entry, gpointer data) -{ - GtkToggleButton *toggle = GTK_TOGGLE_BUTTON (data); - GtkWidget *expander = xkb_options_get_expander (GTK_WIDGET (toggle)); - gboolean old_state = gtk_toggle_button_get_active (toggle); - gboolean new_state = xkb_options_is_selected ( - g_object_get_data (G_OBJECT (toggle), OPTION_ID_PROP)); - int old_gstate = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (toggle), GCONFSTATE_PROP)); - int state_diff = new_state - old_gstate; - - if (GTK_WIDGET_TYPE (toggle) == GTK_TYPE_RADIO_BUTTON && - old_state == TRUE && new_state == FALSE) - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (g_object_get_data (G_OBJECT (toggle), "NoneRadio")), TRUE); - else - gtk_toggle_button_set_active (toggle, new_state); - - g_object_set_data (G_OBJECT (toggle), GCONFSTATE_PROP, GINT_TO_POINTER (new_state)); - xkb_options_expander_selcounter_add (expander, state_diff); - xkb_options_expander_highlight (expander); -} - -/* Add a check_button or radio_button to control a particular option - This function makes particular use of the current... variables at - the top of this file. */ -static void -xkb_options_add_option (const XklConfigItemPtr - configItem, GladeXML * dialog) -{ - GtkWidget *option_check; - gchar *utfOptionName = xci_desc_to_utf8 (configItem); - /* Copy this out because we'll load it into the widget with set_data */ - gchar *fullOptionName = g_strdup( - GSwitchItKbdConfigMergeItems (current1stLevelId, configItem->name)); - gboolean initial_state; - - if (currentMultiSelect) - option_check = gtk_check_button_new_with_label (utfOptionName); - else - { - if (currentRadioGroup == NULL) - { - /* The first radio in a group is to be "Default", meaning none of - the below options are to be included in the selected list. - This is a HIG-compliant alternative to allowing no - selection in the group. */ - option_check = gtk_radio_button_new_with_label (currentRadioGroup, _("Default")); - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (option_check), TRUE); - gtk_box_pack_start_defaults (GTK_BOX (currentVbox), option_check); - currentRadioGroup = gtk_radio_button_get_group (GTK_RADIO_BUTTON (option_check)); - currentNoneRadio = option_check; - } - option_check = gtk_radio_button_new_with_label (currentRadioGroup, utfOptionName); - currentRadioGroup = gtk_radio_button_get_group (GTK_RADIO_BUTTON (option_check)); - g_object_set_data (G_OBJECT (option_check), "NoneRadio", currentNoneRadio); - } - g_free (utfOptionName); - - initial_state = xkb_options_is_selected (fullOptionName); - - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (option_check), initial_state); - - g_object_set_data_full (G_OBJECT (option_check), OPTION_ID_PROP, fullOptionName, g_free); - - g_signal_connect (G_OBJECT (option_check), "toggled", G_CALLBACK (option_toggled_cb), NULL); - - gconf_client_notify_add (xkbGConfClient, - GSWITCHIT_KBD_CONFIG_KEY_OPTIONS, - (GConfClientNotifyFunc) - option_update_cb, option_check, NULL, NULL); - - gtk_box_pack_start_defaults (GTK_BOX (currentVbox), option_check); - - xkb_options_expander_selcounter_add (xkb_options_get_expander (option_check), initial_state); - g_object_set_data (G_OBJECT (option_check), GCONFSTATE_PROP, GINT_TO_POINTER (initial_state)); -} - -/* Add a group of options: create title and layout widgets and then - add widgets for all the options in the group. */ -static void -xkb_options_add_group (const XklConfigItemPtr - configItem, - Bool allowMultipleSelection, - GladeXML * dialog) -{ - GtkWidget *expander, *align, *vbox; - - GSList * expanders_list = g_object_get_data (G_OBJECT (dialog), EXPANDERS_PROP); - - gchar *utfGroupName = xci_desc_to_utf8 (configItem); - gchar *titlemarkup = g_strconcat ("<span>", utfGroupName, "</span>", NULL); - - expander = gtk_expander_new (titlemarkup); - g_object_set_data_full (G_OBJECT (expander), "utfGroupName", utfGroupName, g_free); - - g_free (titlemarkup); - gtk_expander_set_use_markup (GTK_EXPANDER (expander), TRUE); - align = gtk_alignment_new (0, 0, 1, 1); - gtk_alignment_set_padding (GTK_ALIGNMENT (align), 6, 12, 12, 0); - vbox = gtk_vbox_new (TRUE, 6); - gtk_container_add (GTK_CONTAINER (align), vbox); - gtk_container_add (GTK_CONTAINER (expander), align); - currentVbox = vbox; - - currentMultiSelect = (gboolean) allowMultipleSelection; - currentRadioGroup = NULL; - - current1stLevelId = configItem->name; - XklConfigEnumOptions (configItem->name, (ConfigItemProcessFunc) - xkb_options_add_option, dialog); - - xkb_options_expander_highlight (expander); - - expanders_list = g_slist_append (expanders_list, expander); - g_object_set_data (G_OBJECT (dialog), EXPANDERS_PROP, expanders_list); -} - -static gint -xkb_options_expanders_compare (GtkWidget * expander1, GtkWidget * expander2) -{ - const gchar *t1 = gtk_expander_get_label (GTK_EXPANDER (expander1)); - const gchar *t2 = gtk_expander_get_label (GTK_EXPANDER (expander2)); - return g_utf8_collate (t1, t2); -} - -/* Create widgets to represent the options made available by the backend */ -void -xkb_options_load_options (GladeXML * dialog) -{ - GtkWidget *opts_vbox = WID ("options_vbox"); - GSList * expanders_list; - GtkWidget * expander; - - /* fill the list */ - XklConfigEnumOptionGroups ((GroupProcessFunc) - xkb_options_add_group, dialog); - /* sort it */ - expanders_list = g_object_get_data (G_OBJECT (dialog), EXPANDERS_PROP); - expanders_list = g_slist_sort (expanders_list, (GCompareFunc)xkb_options_expanders_compare); - while (expanders_list) - { - expander = GTK_WIDGET (expanders_list->data); - gtk_box_pack_start (GTK_BOX (opts_vbox), expander, FALSE, FALSE, 0); - expanders_list = expanders_list->next; - } - - /* just cleanup */ - expanders_list = g_object_get_data (G_OBJECT (dialog), EXPANDERS_PROP); - g_object_set_data (G_OBJECT (dialog), EXPANDERS_PROP, NULL); - g_slist_free (expanders_list); - - gtk_widget_show_all (opts_vbox); -} - -/* Respond to a change in the xkb gconf settings */ -static void -xkb_options_update (GConfClient * client, - guint cnxn_id, GConfEntry * entry, GladeXML * dialog) -{ - /* Updating options is handled by gconf notifies for each widget - This is here to avoid calling it N_OPTIONS times for each gconf - change.*/ - enable_disable_restoring (dialog); -} - -void -xkb_options_register_gconf_listener (GladeXML * dialog) -{ - gconf_client_notify_add (xkbGConfClient, - GSWITCHIT_KBD_CONFIG_KEY_OPTIONS, - (GConfClientNotifyFunc) - xkb_options_update, dialog, NULL, NULL); -} diff --git a/capplets/keyboard/gnome-keyboard-properties-xkbpv.c b/capplets/keyboard/gnome-keyboard-properties-xkbpv.c deleted file mode 100644 index bd6640ec3..000000000 --- a/capplets/keyboard/gnome-keyboard-properties-xkbpv.c +++ /dev/null @@ -1,121 +0,0 @@ -/* -*- mode: c; style: linux -*- */ - -/* gnome-keyboard-properties-xkb.c - * Copyright (C) 2003 Sergey V. Oudaltsov - * - * Written by: Sergey V. Oudaltsov <svu@users.sourceforge.net> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - * 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#include <gnome.h> -#include <glade/glade.h> - -#include "libgswitchit/gswitchit_config.h" - -#include "capplet-util.h" - -#include "gnome-keyboard-properties-xkb.h" -#include "libkbdraw/keyboard-drawing.h" - -#ifdef HAVE_X11_EXTENSIONS_XKB_H -#include "X11/XKBlib.h" -/** - * BAD STYLE: Taken from xklavier_private_xkb.h - * Any ideas on architectural improvements are WELCOME - */ -extern Bool _XklXkbConfigPrepareNative( const XklConfigRecPtr data, XkbComponentNamesPtr componentNamesPtr ); -extern void _XklXkbConfigCleanupNative( XkbComponentNamesPtr componentNamesPtr ); -/* */ -#endif - -static KeyboardDrawingGroupLevel groupsLevels[] = {{0,1},{0,3},{0,0},{0,2}}; -static KeyboardDrawingGroupLevel * pGroupsLevels[] = { -groupsLevels, groupsLevels+1, groupsLevels+2, groupsLevels+3 }; - -GtkWidget* -xkb_layout_preview_create_widget (GladeXML * chooserDialog) -{ - GtkWidget *kbdraw = keyboard_drawing_new (); - - keyboard_drawing_set_groups_levels (KEYBOARD_DRAWING (kbdraw), pGroupsLevels); - return kbdraw; -} - -void -xkb_layout_preview_update (GladeXML * chooserDialog) -{ -#ifdef HAVE_X11_EXTENSIONS_XKB_H - GtkWidget *chooser = CWID ( "xkb_layout_chooser"); - GtkWidget *availableLayoutsTree = CWID ("xkb_layouts_available"); - GtkTreeSelection *selection = - gtk_tree_view_get_selection (GTK_TREE_VIEW (availableLayoutsTree)); - GtkTreeIter selectedIter; - GtkTreeModel *model; - GtkWidget *kbdraw = GTK_WIDGET (g_object_get_data (G_OBJECT (chooser), "kbdraw")); - if (kbdraw != NULL && - gtk_tree_selection_get_selected (selection, &model, &selectedIter)) - { - gchar *id; - XklConfigRec data; - char **p, *layout, *variant; - int i; - XkbComponentNamesRec componentNames; - - gtk_tree_model_get (model, &selectedIter, AVAIL_LAYOUT_TREE_COL_ID, &id, -1); - XklConfigRecInit (&data); - if (XklConfigGetFromServer (&data)) - { - if( ( p = data.layouts ) != NULL ) - { - for( i = data.numLayouts; --i >= 0; ) - free( *p++ ); - } - - if( ( p = data.variants ) != NULL ) - { - for( i = data.numVariants; --i >= 0; ) - free( *p++ ); - } - data.numLayouts = - data.numVariants = 1; - data.layouts = realloc (data.layouts, sizeof (char*)); - data.variants = realloc (data.variants, sizeof (char*)); - if (GSwitchItKbdConfigSplitItems (id, &layout, &variant) - && variant != NULL) - { - data.layouts[0] = (layout == NULL) ? NULL : strdup (layout); - data.variants[0] = (variant == NULL) ? NULL : strdup (variant); - } else - { - data.layouts[0] = (id == NULL) ? NULL : strdup (id); - data.variants[0] = NULL; - } - if (_XklXkbConfigPrepareNative (&data, &componentNames)) - { - keyboard_drawing_set_keyboard (KEYBOARD_DRAWING (kbdraw), &componentNames); - - _XklXkbConfigCleanupNative( &componentNames ); - } - } - XklConfigRecDestroy (&data); - } -#endif -} diff --git a/capplets/keyboard/gnome-keyboard-properties.c b/capplets/keyboard/gnome-keyboard-properties.c deleted file mode 100644 index ef9a108bd..000000000 --- a/capplets/keyboard/gnome-keyboard-properties.c +++ /dev/null @@ -1,263 +0,0 @@ -/* -*- mode: c; style: linux -*- */ - -/* keyboard-properties.c - * Copyright (C) 2000-2001 Ximian, Inc. - * Copyright (C) 2001 Jonathan Blandford - * - * Written by: Bradford Hovinen <hovinen@ximian.com> - * Rachel Hestilow <hestilow@ximian.com> - * Jonathan Blandford <jrb@redhat.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - * 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#include <gnome.h> -#include <gconf/gconf-client.h> -#include <glade/glade.h> - -#include "capplet-util.h" -#include "gconf-property-editor.h" -#include "activate-settings-daemon.h" -#include "capplet-stock-icons.h" -#include <../accessibility/keyboard/accessibility-keyboard.h> - -#include "gnome-keyboard-properties-xkb.h" - -enum -{ - RESPONSE_APPLY = 1, - RESPONSE_CLOSE -}; - -static GladeXML * -create_dialog (void) -{ - GladeXML *dialog; - GtkSizeGroup *size_group; - - dialog = glade_xml_new (GNOMECC_DATA_DIR "/interfaces/gnome-keyboard-properties.glade", "keyboard_dialog", NULL); - - size_group = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL); - gtk_size_group_add_widget (size_group, WID ("repeat_slow_label")); - gtk_size_group_add_widget (size_group, WID ("delay_short_label")); - gtk_size_group_add_widget (size_group, WID ("blink_slow_label")); - - size_group = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL); - gtk_size_group_add_widget (size_group, WID ("repeat_fast_label")); - gtk_size_group_add_widget (size_group, WID ("delay_long_label")); - gtk_size_group_add_widget (size_group, WID ("blink_fast_label")); - - size_group = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL); - gtk_size_group_add_widget (size_group, WID ("repeat_delay_scale")); - gtk_size_group_add_widget (size_group, WID ("repeat_speed_scale")); - gtk_size_group_add_widget (size_group, WID ("cursor_blink_time_scale")); - - return dialog; -} - -static GConfValue * -blink_from_widget (GConfPropertyEditor *peditor, const GConfValue *value) -{ - GConfValue *new_value; - - new_value = gconf_value_new (GCONF_VALUE_INT); - gconf_value_set_int (new_value, 2600 - gconf_value_get_int (value)); - - return new_value; -} - -static GConfValue * -blink_to_widget (GConfPropertyEditor *peditor, const GConfValue *value) -{ - GConfValue *new_value; - gint current_rate; - - current_rate = gconf_value_get_int (value); - new_value = gconf_value_new (GCONF_VALUE_INT); - gconf_value_set_int (new_value, CLAMP (2600 - current_rate, 100, 2500)); - - return new_value; -} - -static void -accessibility_button_clicked (GtkWidget *widget, - gpointer data) -{ - GError *err = NULL; - if (!g_spawn_command_line_async ("gnome-accessibility-keyboard-properties", &err)) - capplet_error_dialog (GTK_WINDOW (gtk_widget_get_toplevel (widget)), - _("There was an error launching the keyboard capplet : %s"), - err); -} - -static void -dialog_response (GtkWidget *widget, - gint response_id, - GConfChangeSet *changeset) -{ - if (response_id == GTK_RESPONSE_HELP) - capplet_help (GTK_WINDOW (widget), - "user-guide.xml", - "goscustperiph-2"); - else if (response_id == 0) - accessibility_button_clicked (NULL, NULL); - else - gtk_main_quit (); -} - -static void -setup_dialog (GladeXML *dialog, - GConfChangeSet *changeset) -{ - GObject *peditor; - GnomeProgram *program; - - /* load all the images */ - program = gnome_program_get (); - - capplet_init_stock_icons (); - - peditor = gconf_peditor_new_boolean - (changeset, "/desktop/gnome/peripherals/keyboard/repeat", WID ("repeat_toggle"), NULL); - gconf_peditor_widget_set_guard (GCONF_PROPERTY_EDITOR (peditor), WID ("repeat_table")); - - gconf_peditor_new_numeric_range - (changeset, "/desktop/gnome/peripherals/keyboard/delay", WID ("repeat_delay_scale"), - NULL); - - gconf_peditor_new_numeric_range - (changeset, "/desktop/gnome/peripherals/keyboard/rate", WID ("repeat_speed_scale"), - NULL); - - peditor = gconf_peditor_new_boolean - (changeset, "/desktop/gnome/interface/cursor_blink", WID ("cursor_toggle"), NULL); - gconf_peditor_widget_set_guard (GCONF_PROPERTY_EDITOR (peditor), WID ("cursor_hbox")); - gconf_peditor_new_numeric_range - (changeset, "/desktop/gnome/interface/cursor_blink_time", WID ("cursor_blink_time_scale"), - "conv-to-widget-cb", blink_to_widget, - "conv-from-widget-cb", blink_from_widget, - NULL); - - /* Ergonomics */ - peditor = gconf_peditor_new_boolean - (changeset, "/desktop/gnome/typing_break/enabled", WID ("break_enabled_toggle"), NULL); - gconf_peditor_widget_set_guard (GCONF_PROPERTY_EDITOR (peditor), WID ("break_details_table")); - gconf_peditor_new_numeric_range - (changeset, "/desktop/gnome/typing_break/type_time", WID ("break_enabled_spin"), NULL); - gconf_peditor_new_numeric_range - (changeset, "/desktop/gnome/typing_break/break_time", WID ("break_interval_spin"), NULL); - gconf_peditor_new_boolean - (changeset, "/desktop/gnome/typing_break/allow_postpone", WID ("break_postponement_toggle"), NULL); - g_signal_connect (G_OBJECT (WID ("keyboard_dialog")), "response", (GCallback) dialog_response, changeset); - - gtk_label_set_use_markup (GTK_LABEL (GTK_BIN (WID ("break_enabled_toggle"))->child), TRUE); - - setup_xkb_tabs(dialog,changeset); -} - -static void -get_legacy_settings (void) -{ - GConfClient *client; - gboolean val_bool, def; - gulong val_int; - - client = gconf_client_get_default (); - - COPY_FROM_LEGACY (bool, "/gnome/desktop/peripherals/keyboard/repeat", "/Desktop/Keyboard/repeat=true"); - COPY_FROM_LEGACY (bool, "/gnome/desktop/peripherals/keyboard/click", "/Desktop/Keyboard/click=true"); - COPY_FROM_LEGACY (int, "/gnome/desktop/peripherals/keyboard/rate", "/Desktop/Keyboard/rate=30"); - COPY_FROM_LEGACY (int, "/gnome/desktop/peripherals/keyboard/delay", "/Desktop/Keyboard/delay=500"); - COPY_FROM_LEGACY (int, "/gnome/desktop/peripherals/keyboard/volume", "/Desktop/Keyboard/clickvolume=0"); -#if 0 - COPY_FROM_LEGACY (int, "/gnome/desktop/peripherals/keyboard/bell_volume", "/Desktop/Bell/percent=50"); -#endif - COPY_FROM_LEGACY (int, "/gnome/desktop/peripherals/keyboard/bell_pitch", "/Desktop/Bell/pitch=50"); - COPY_FROM_LEGACY (int, "/gnome/desktop/peripherals/keyboard/bell_duration", "/Desktop/Bell/duration=100"); - g_object_unref (G_OBJECT (client)); -} - -#if 0 -static void -setup_accessibility (GladeXML *dialog, GConfChangeSet *changeset) -{ - GtkWidget *notebook = WID ("notebook1"); - GtkWidget *label = gtk_label_new_with_mnemonic (_("_Accessibility")); - GtkWidget *page = setup_accessX_dialog (changeset, FALSE); - gtk_notebook_append_page (GTK_NOTEBOOK (notebook), page, label); -} -#endif - -int -main (int argc, char **argv) -{ - GConfClient *client; - GConfChangeSet *changeset; - GladeXML *dialog; - - static gboolean apply_only = FALSE; - static gboolean get_legacy = FALSE; - static gboolean switch_to_typing_break_page = FALSE; - - static struct poptOption cap_options[] = { - { "apply", '\0', POPT_ARG_NONE, &apply_only, 0, - N_("Just apply settings and quit (compatibility only; now handled by daemon)"), NULL }, - { "init-session-settings", '\0', POPT_ARG_NONE, &apply_only, 0, - N_("Just apply settings and quit (compatibility only; now handled by daemon)"), NULL }, - { "get-legacy", '\0', POPT_ARG_NONE, &get_legacy, 0, - N_("Retrieve and store legacy settings"), NULL }, - { "typing-break", '\0', POPT_ARG_NONE, &switch_to_typing_break_page, 0, - N_("Start the page with the typing break settings showing"), NULL }, - { NULL, '\0', 0, NULL, 0, NULL, NULL } - }; - - bindtextdomain (GETTEXT_PACKAGE, GNOMELOCALEDIR); - bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); - textdomain (GETTEXT_PACKAGE); - - gnome_program_init ("gnome-keyboard-properties", VERSION, LIBGNOMEUI_MODULE, argc, argv, - GNOME_PARAM_POPT_TABLE, cap_options, - GNOME_PARAM_APP_DATADIR, GNOMECC_DATA_DIR, - NULL); - - activate_settings_daemon (); - - client = gconf_client_get_default (); - gconf_client_add_dir (client, "/desktop/gnome/peripherals/keyboard", GCONF_CLIENT_PRELOAD_ONELEVEL, NULL); - gconf_client_add_dir (client, "/desktop/gnome/interface", GCONF_CLIENT_PRELOAD_ONELEVEL, NULL); - g_object_unref (client); - - if (get_legacy) { - get_legacy_settings (); - } else { - changeset = NULL; - dialog = create_dialog (); - setup_dialog (dialog, changeset); - if (switch_to_typing_break_page) { - gtk_notebook_set_current_page (GTK_NOTEBOOK (WID ("keyboard_notebook")), 3); - } - capplet_set_icon (WID ("keyboard_dialog"), - "gnome-dev-keyboard"); - gtk_widget_show (WID ("keyboard_dialog")); - gtk_main (); - } - - return 0; -} diff --git a/capplets/keyboard/gnome-keyboard-properties.glade b/capplets/keyboard/gnome-keyboard-properties.glade deleted file mode 100644 index 3c420b5df..000000000 --- a/capplets/keyboard/gnome-keyboard-properties.glade +++ /dev/null @@ -1,1942 +0,0 @@ -<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*--> -<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd"> - -<glade-interface> - -<widget class="GtkDialog" id="keyboard_dialog"> - <property name="border_width">6</property> - <property name="title" translatable="yes">Keyboard Preferences</property> - <property name="type">GTK_WINDOW_TOPLEVEL</property> - <property name="window_position">GTK_WIN_POS_NONE</property> - <property name="modal">False</property> - <property name="resizable">True</property> - <property name="destroy_with_parent">False</property> - <property name="decorated">True</property> - <property name="skip_taskbar_hint">False</property> - <property name="skip_pager_hint">False</property> - <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property> - <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> - <property name="has_separator">False</property> - - <child internal-child="vbox"> - <widget class="GtkVBox" id="dialog-vbox1"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">2</property> - - <child internal-child="action_area"> - <widget class="GtkHButtonBox" id="hbuttonbox1"> - <property name="visible">True</property> - <property name="layout_style">GTK_BUTTONBOX_END</property> - - <child> - <widget class="GtkButton" id="helpbutton1"> - <property name="visible">True</property> - <property name="can_default">True</property> - <property name="can_focus">True</property> - <property name="label">gtk-help</property> - <property name="use_stock">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <property name="response_id">-11</property> - </widget> - </child> - - <child> - <widget class="GtkButton" id="button3"> - <property name="visible">True</property> - <property name="can_default">True</property> - <property name="can_focus">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <property name="response_id">0</property> - <signal name="clicked" handler="accessibility_button_clicked" last_modification_time="Tue, 02 Jul 2002 06:58:29 GMT"/> - - <child> - <widget class="GtkAlignment" id="alignment1"> - <property name="visible">True</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xscale">0</property> - <property name="yscale">0</property> - <property name="top_padding">0</property> - <property name="bottom_padding">0</property> - <property name="left_padding">0</property> - <property name="right_padding">0</property> - - <child> - <widget class="GtkHBox" id="hbox7"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">2</property> - - <child> - <widget class="GtkImage" id="image2"> - <property name="visible">True</property> - <property name="stock">gtk-jump-to</property> - <property name="icon_size">4</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label19"> - <property name="visible">True</property> - <property name="label" translatable="yes">_Accessibility...</property> - <property name="use_underline">True</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - </child> - </widget> - </child> - </widget> - </child> - - <child> - <widget class="GtkButton" id="button4"> - <property name="visible">True</property> - <property name="can_default">True</property> - <property name="has_default">True</property> - <property name="can_focus">True</property> - <property name="has_focus">True</property> - <property name="label">gtk-close</property> - <property name="use_stock">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <property name="response_id">-7</property> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="pack_type">GTK_PACK_END</property> - </packing> - </child> - - <child> - <widget class="GtkNotebook" id="keyboard_notebook"> - <property name="border_width">5</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="show_tabs">True</property> - <property name="show_border">True</property> - <property name="tab_pos">GTK_POS_TOP</property> - <property name="scrollable">False</property> - <property name="enable_popup">False</property> - - <child> - <widget class="GtkVBox" id="vbox2"> - <property name="border_width">12</property> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">18</property> - - <child> - <widget class="GtkVBox" id="vbox22"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkLabel" id="label1"> - <property name="visible">True</property> - <property name="label" translatable="yes"><b>Repeat Keys</b></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="hbox19"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkLabel" id="label43"> - <property name="visible">True</property> - <property name="label" translatable="yes"> </property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkVBox" id="vbox3"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkCheckButton" id="repeat_toggle"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">Key presses _repeat when key is held down</property> - <property name="use_underline">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <property name="active">False</property> - <property name="inconsistent">False</property> - <property name="draw_indicator">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="repeat_table"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">12</property> - - <child> - <widget class="GtkVBox" id="vbox24"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkLabel" id="repeat_delay_label"> - <property name="visible">True</property> - <property name="label" translatable="yes">_Delay:</property> - <property name="use_underline">True</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_CENTER</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="mnemonic_widget">repeat_delay_scale</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="repeat_speed_label"> - <property name="visible">True</property> - <property name="label" translatable="yes">_Speed:</property> - <property name="use_underline">True</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_CENTER</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="mnemonic_widget">repeat_speed_scale</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkVBox" id="vbox25"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkLabel" id="delay_short_label"> - <property name="visible">True</property> - <property name="label" translatable="yes"><small><i>Short</i></small></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">1</property> - <property name="yalign">0.5</property> - <property name="xpad">10</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="repeat_slow_label"> - <property name="visible">True</property> - <property name="label" translatable="yes"><small><i>Slow</i></small></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">1</property> - <property name="yalign">0.5</property> - <property name="xpad">10</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkVBox" id="vbox26"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkHScale" id="repeat_delay_scale"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="draw_value">False</property> - <property name="value_pos">GTK_POS_TOP</property> - <property name="digits">1</property> - <property name="update_policy">GTK_UPDATE_CONTINUOUS</property> - <property name="inverted">False</property> - <property name="adjustment">500 100 1500 10 10 0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkHScale" id="repeat_speed_scale"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="draw_value">False</property> - <property name="value_pos">GTK_POS_TOP</property> - <property name="digits">1</property> - <property name="update_policy">GTK_UPDATE_CONTINUOUS</property> - <property name="inverted">False</property> - <property name="adjustment">30 10 110 10 10 0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkVBox" id="vbox27"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkLabel" id="delay_long_label"> - <property name="visible">True</property> - <property name="label" translatable="yes"><small><i>Long</i></small></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="repeat_fast_label"> - <property name="visible">True</property> - <property name="label" translatable="yes"><small><i>Fast</i></small></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkVBox" id="vbox23"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkLabel" id="label5"> - <property name="visible">True</property> - <property name="label" translatable="yes"><b>Cursor Blinking</b></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="hbox20"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkLabel" id="label44"> - <property name="visible">True</property> - <property name="label" translatable="yes"> </property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkVBox" id="cursor_vbox"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkCheckButton" id="cursor_toggle"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">Cursor _blinks in text boxes and fields</property> - <property name="use_underline">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <property name="active">False</property> - <property name="inconsistent">False</property> - <property name="draw_indicator">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="cursor_hbox"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">12</property> - - <child> - <widget class="GtkLabel" id="cursor_speed_label"> - <property name="visible">True</property> - <property name="label" translatable="yes">S_peed:</property> - <property name="use_underline">True</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_CENTER</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="mnemonic_widget">cursor_blink_time_scale</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="hbox25"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkLabel" id="blink_slow_label"> - <property name="visible">True</property> - <property name="label" translatable="yes"><small><i>Slow</i></small></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">1</property> - <property name="yalign">0.5</property> - <property name="xpad">10</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkHScale" id="cursor_blink_time_scale"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="draw_value">False</property> - <property name="value_pos">GTK_POS_TOP</property> - <property name="digits">1</property> - <property name="update_policy">GTK_UPDATE_DISCONTINUOUS</property> - <property name="inverted">False</property> - <property name="adjustment">1000 100 2500 200 200 0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="blink_fast_label"> - <property name="visible">True</property> - <property name="label" translatable="yes"><small><i>Fast</i></small></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="hbox21"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">12</property> - - <child> - <widget class="GtkLabel" id="label42"> - <property name="visible">True</property> - <property name="label" translatable="yes">_Type to test settings:</property> - <property name="use_underline">True</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="mnemonic_widget">test_entry</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkEntry" id="test_entry"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="editable">True</property> - <property name="visibility">True</property> - <property name="max_length">256</property> - <property name="text" translatable="yes"></property> - <property name="has_frame">True</property> - <property name="invisible_char" translatable="yes">*</property> - <property name="activates_default">False</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="tab_expand">False</property> - <property name="tab_fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label1"> - <property name="visible">True</property> - <property name="label" translatable="yes">Keyboard</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_CENTER</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="type">tab</property> - </packing> - </child> - - <child> - <widget class="GtkVBox" id="vbox33"> - <property name="border_width">12</property> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkVBox" id="vbox34"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkHBox" id="xkb_models_box"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">12</property> - - <child> - <widget class="GtkLabel" id="label48"> - <property name="visible">True</property> - <property name="label" translatable="yes">Keyboard _model:</property> - <property name="use_underline">True</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="mnemonic_widget">xkb_model</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkEntry" id="xkb_model"> - <property name="visible">True</property> - <property name="editable">False</property> - <property name="visibility">True</property> - <property name="max_length">0</property> - <property name="text" translatable="yes">Microsoft Natural Keyboard</property> - <property name="has_frame">True</property> - <property name="invisible_char" translatable="yes">*</property> - <property name="activates_default">False</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkButton" id="xkb_model_pick"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">...</property> - <property name="use_underline">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <placeholder/> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="xkb_layouts_panels"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkVBox" id="vbox39"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkLabel" id="label52"> - <property name="visible">True</property> - <property name="label" translatable="yes">_Selected layouts:</property> - <property name="use_underline">True</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="mnemonic_widget">xkb_layouts_selected</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkScrolledWindow" id="scrolledwindow1"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> - <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> - <property name="shadow_type">GTK_SHADOW_IN</property> - <property name="window_placement">GTK_CORNER_TOP_LEFT</property> - - <child> - <widget class="GtkTreeView" id="xkb_layouts_selected"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="headers_visible">True</property> - <property name="rules_hint">False</property> - <property name="reorderable">False</property> - <property name="enable_search">True</property> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkVBox" id="vbox35"> - <property name="border_width">6</property> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">12</property> - - <child> - <widget class="GtkLabel" id="label54"> - <property name="visible">True</property> - <property name="label" translatable="yes"></property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkButton" id="xkb_layouts_add"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - - <child> - <widget class="GtkAlignment" id="alignment3"> - <property name="visible">True</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xscale">0</property> - <property name="yscale">0</property> - <property name="top_padding">0</property> - <property name="bottom_padding">0</property> - <property name="left_padding">0</property> - <property name="right_padding">0</property> - - <child> - <widget class="GtkHBox" id="hbox31"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">2</property> - - <child> - <widget class="GtkImage" id="image4"> - <property name="visible">True</property> - <property name="stock">gtk-add</property> - <property name="icon_size">4</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label60"> - <property name="visible">True</property> - <property name="label" translatable="yes">_Add...</property> - <property name="use_underline">True</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - </child> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkButton" id="xkb_layouts_remove"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label">gtk-remove</property> - <property name="use_stock">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkButton" id="xkb_layouts_up"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label">gtk-go-up</property> - <property name="use_stock">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkButton" id="xkb_layouts_down"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label">gtk-go-down</property> - <property name="use_stock">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <placeholder/> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkCheckButton" id="chk_separate_group_per_window"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">Separate _group for each window</property> - <property name="use_underline">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <property name="active">False</property> - <property name="inconsistent">False</property> - <property name="draw_indicator">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="hbox30"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <placeholder/> - </child> - - <child> - <widget class="GtkButton" id="xkb_reset_to_defaults"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - - <child> - <widget class="GtkAlignment" id="alignment2"> - <property name="visible">True</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xscale">0</property> - <property name="yscale">0</property> - <property name="top_padding">0</property> - <property name="bottom_padding">0</property> - <property name="left_padding">0</property> - <property name="right_padding">0</property> - - <child> - <widget class="GtkHBox" id="hbox29"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">2</property> - - <child> - <widget class="GtkImage" id="image3"> - <property name="visible">True</property> - <property name="stock">gtk-refresh</property> - <property name="icon_size">4</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label51"> - <property name="visible">True</property> - <property name="label" translatable="yes">Reset To De_faults</property> - <property name="use_underline">True</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="pack_type">GTK_PACK_END</property> - </packing> - </child> - </widget> - </child> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="pack_type">GTK_PACK_END</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="tab_expand">False</property> - <property name="tab_fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label46"> - <property name="visible">True</property> - <property name="label" translatable="yes">Layouts</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="type">tab</property> - </packing> - </child> - - <child> - <widget class="GtkScrolledWindow" id="scrolledwindow7"> - <property name="border_width">12</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> - <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> - <property name="shadow_type">GTK_SHADOW_NONE</property> - <property name="window_placement">GTK_CORNER_TOP_LEFT</property> - - <child> - <widget class="GtkViewport" id="viewport1"> - <property name="visible">True</property> - <property name="shadow_type">GTK_SHADOW_NONE</property> - - <child> - <widget class="GtkVBox" id="options_vbox"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">0</property> - </widget> - </child> - </widget> - </child> - </widget> - <packing> - <property name="tab_expand">False</property> - <property name="tab_fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label64"> - <property name="visible">True</property> - <property name="label" translatable="yes">Layout Options</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="type">tab</property> - </packing> - </child> - - <child> - <widget class="GtkVBox" id="vbox14"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">12</property> - - <child> - <widget class="GtkVBox" id="vbox18"> - <property name="border_width">12</property> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">18</property> - - <child> - <widget class="GtkVBox" id="vbox28"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkCheckButton" id="break_enabled_toggle"> - <property name="visible">True</property> - <property name="tooltip" translatable="yes">Lock screen after a certain duration to help prevent repetitive keyboard use injuries</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes"><b>_Lock screen to enforce typing break</b></property> - <property name="use_underline">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <property name="active">False</property> - <property name="inconsistent">False</property> - <property name="draw_indicator">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="hbox26"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkLabel" id="label45"> - <property name="visible">True</property> - <property name="label" translatable="yes"> </property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkVBox" id="break_details_table"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkHBox" id="hbox27"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">12</property> - - <child> - <widget class="GtkVBox" id="vbox30"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkLabel" id="label37"> - <property name="visible">True</property> - <property name="label" translatable="yes">_Work interval lasts:</property> - <property name="use_underline">True</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="mnemonic_widget">break_enabled_spin</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label30"> - <property name="visible">True</property> - <property name="label" translatable="yes">_Break interval lasts:</property> - <property name="use_underline">True</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="mnemonic_widget">break_interval_spin</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="hbox28"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkVBox" id="vbox31"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkSpinButton" id="break_enabled_spin"> - <property name="visible">True</property> - <property name="tooltip" translatable="yes">Duration of work before forcing a break</property> - <property name="can_focus">True</property> - <property name="climb_rate">1</property> - <property name="digits">0</property> - <property name="numeric">False</property> - <property name="update_policy">GTK_UPDATE_ALWAYS</property> - <property name="snap_to_ticks">False</property> - <property name="wrap">False</property> - <property name="adjustment">1 1 100000 1 10 10</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkSpinButton" id="break_interval_spin"> - <property name="visible">True</property> - <property name="tooltip" translatable="yes">Duration of the break when typing is disallowed</property> - <property name="can_focus">True</property> - <property name="climb_rate">1</property> - <property name="digits">0</property> - <property name="numeric">False</property> - <property name="update_policy">GTK_UPDATE_ALWAYS</property> - <property name="snap_to_ticks">False</property> - <property name="wrap">False</property> - <property name="adjustment">1 1 100000 1 10 10</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkVBox" id="vbox32"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkLabel" id="label39"> - <property name="visible">True</property> - <property name="label" translatable="yes">minutes</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label31"> - <property name="visible">True</property> - <property name="label" translatable="yes">minutes</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkCheckButton" id="break_postponement_toggle"> - <property name="visible">True</property> - <property name="tooltip" translatable="yes">Check if breaks are allowed to be postponed</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">All_ow postponing of breaks</property> - <property name="use_underline">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <property name="active">False</property> - <property name="inconsistent">False</property> - <property name="draw_indicator">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="tab_expand">False</property> - <property name="tab_fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label20"> - <property name="visible">True</property> - <property name="label" translatable="yes">Typing Break</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="type">tab</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - </child> -</widget> - -<widget class="GtkDialog" id="xkb_model_chooser"> - <property name="border_width">5</property> - <property name="visible">True</property> - <property name="title" translatable="yes">Choose A Keyboard Model</property> - <property name="type">GTK_WINDOW_TOPLEVEL</property> - <property name="window_position">GTK_WIN_POS_NONE</property> - <property name="modal">True</property> - <property name="default_width">450</property> - <property name="default_height">300</property> - <property name="resizable">True</property> - <property name="destroy_with_parent">False</property> - <property name="decorated">True</property> - <property name="skip_taskbar_hint">False</property> - <property name="skip_pager_hint">False</property> - <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property> - <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> - <property name="has_separator">False</property> - - <child internal-child="vbox"> - <widget class="GtkVBox" id="dialog-vbox2"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">2</property> - - <child internal-child="action_area"> - <widget class="GtkHButtonBox" id="dialog-action_area1"> - <property name="visible">True</property> - <property name="layout_style">GTK_BUTTONBOX_END</property> - - <child> - <widget class="GtkButton" id="cancelbutton1"> - <property name="visible">True</property> - <property name="can_default">True</property> - <property name="can_focus">True</property> - <property name="label">gtk-cancel</property> - <property name="use_stock">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <property name="response_id">-6</property> - </widget> - </child> - - <child> - <widget class="GtkButton" id="btnOk"> - <property name="visible">True</property> - <property name="can_default">True</property> - <property name="can_focus">True</property> - <property name="label">gtk-ok</property> - <property name="use_stock">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <property name="response_id">-5</property> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="pack_type">GTK_PACK_END</property> - </packing> - </child> - - <child> - <widget class="GtkVBox" id="xkb_model_chooser_pane"> - <property name="border_width">5</property> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkLabel" id="label58"> - <property name="visible">True</property> - <property name="label" translatable="yes">_Models:</property> - <property name="use_underline">True</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkScrolledWindow" id="scrolledwindow5"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> - <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> - <property name="shadow_type">GTK_SHADOW_IN</property> - <property name="window_placement">GTK_CORNER_TOP_LEFT</property> - - <child> - <widget class="GtkTreeView" id="models_list"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="headers_visible">False</property> - <property name="rules_hint">False</property> - <property name="reorderable">False</property> - <property name="enable_search">True</property> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - </child> -</widget> - -<widget class="GtkDialog" id="xkb_layout_chooser"> - <property name="border_width">5</property> - <property name="visible">True</property> - <property name="title" translatable="yes">Choose A Layout</property> - <property name="type">GTK_WINDOW_TOPLEVEL</property> - <property name="window_position">GTK_WIN_POS_NONE</property> - <property name="modal">False</property> - <property name="default_width">500</property> - <property name="default_height">350</property> - <property name="resizable">True</property> - <property name="destroy_with_parent">False</property> - <property name="decorated">True</property> - <property name="skip_taskbar_hint">False</property> - <property name="skip_pager_hint">False</property> - <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property> - <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> - <property name="has_separator">False</property> - - <child internal-child="vbox"> - <widget class="GtkVBox" id="dialog-vbox3"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">2</property> - - <child internal-child="action_area"> - <widget class="GtkHButtonBox" id="dialog-action_area2"> - <property name="visible">True</property> - <property name="layout_style">GTK_BUTTONBOX_END</property> - - <child> - <widget class="GtkButton" id="cancelbutton2"> - <property name="visible">True</property> - <property name="can_default">True</property> - <property name="can_focus">True</property> - <property name="label">gtk-cancel</property> - <property name="use_stock">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <property name="response_id">-6</property> - </widget> - </child> - - <child> - <widget class="GtkButton" id="btnOk"> - <property name="visible">True</property> - <property name="can_default">True</property> - <property name="can_focus">True</property> - <property name="label">gtk-ok</property> - <property name="use_stock">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <property name="response_id">-5</property> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="pack_type">GTK_PACK_END</property> - </packing> - </child> - - <child> - <widget class="GtkHPaned" id="hpaned1"> - <property name="visible">True</property> - <property name="can_focus">True</property> - - <child> - <widget class="GtkVBox" id="vbox43"> - <property name="border_width">5</property> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkLabel" id="label59"> - <property name="visible">True</property> - <property name="label" translatable="yes">A_vailable layouts:</property> - <property name="use_underline">True</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="mnemonic_widget">hpaned1</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkScrolledWindow" id="scrolledwindow6"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="hscrollbar_policy">GTK_POLICY_ALWAYS</property> - <property name="vscrollbar_policy">GTK_POLICY_ALWAYS</property> - <property name="shadow_type">GTK_SHADOW_IN</property> - <property name="window_placement">GTK_CORNER_TOP_LEFT</property> - - <child> - <widget class="GtkTreeView" id="xkb_layouts_available"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="headers_visible">False</property> - <property name="rules_hint">False</property> - <property name="reorderable">False</property> - <property name="enable_search">True</property> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - <packing> - <property name="shrink">True</property> - <property name="resize">False</property> - </packing> - </child> - - <child> - <widget class="GtkVBox" id="vboxPreview"> - <property name="border_width">5</property> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkLabel" id="label61"> - <property name="visible">True</property> - <property name="label" translatable="yes">Preview:</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <placeholder/> - </child> - </widget> - <packing> - <property name="shrink">True</property> - <property name="resize">True</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - </child> -</widget> - -</glade-interface> diff --git a/capplets/keyboard/keyboard-bell.png b/capplets/keyboard/keyboard-bell.png Binary files differdeleted file mode 100644 index 01211339a..000000000 --- a/capplets/keyboard/keyboard-bell.png +++ /dev/null diff --git a/capplets/keyboard/keyboard-cursor.png b/capplets/keyboard/keyboard-cursor.png Binary files differdeleted file mode 100644 index a0f7b9798..000000000 --- a/capplets/keyboard/keyboard-cursor.png +++ /dev/null diff --git a/capplets/keyboard/keyboard-repeat.png b/capplets/keyboard/keyboard-repeat.png Binary files differdeleted file mode 100644 index 58a33770e..000000000 --- a/capplets/keyboard/keyboard-repeat.png +++ /dev/null diff --git a/capplets/keyboard/keyboard-volume.png b/capplets/keyboard/keyboard-volume.png Binary files differdeleted file mode 100644 index 12a18763b..000000000 --- a/capplets/keyboard/keyboard-volume.png +++ /dev/null diff --git a/capplets/keyboard/keyboard.desktop.in.in b/capplets/keyboard/keyboard.desktop.in.in deleted file mode 100644 index 43fdf225c..000000000 --- a/capplets/keyboard/keyboard.desktop.in.in +++ /dev/null @@ -1,15 +0,0 @@ -[Desktop Entry] -Encoding=UTF-8 -_Name=Keyboard -_Comment=Set your keyboard preferences -Exec=gnome-keyboard-properties -Icon=gnome-dev-keyboard -Terminal=false -Type=Application -StartupNotify=true -Categories=GNOME;Application;Settings; -OnlyShowIn=GNOME; -X-GNOME-Bugzilla-Bugzilla=GNOME -X-GNOME-Bugzilla-Product=control-center -X-GNOME-Bugzilla-Component=Keyboard -X-GNOME-Bugzilla-Version=@VERSION@ diff --git a/capplets/keyboard/use_cases.txt b/capplets/keyboard/use_cases.txt deleted file mode 100644 index 33637eb35..000000000 --- a/capplets/keyboard/use_cases.txt +++ /dev/null @@ -1,42 +0,0 @@ -Preface - -This document describes the scenarios which have to be checked every time someone makes changes in the gnome keyboard handling modules, namely: - -- libxklavier (project in freedesktop.org CVS) -- libgswitchit (virtual module in gnome.org CVS) -- gnome-settings-daemon (module in gnome-control-center, gnome.org CVS) -- gnome-keyboard-properties (module in gnome-control-center, gnome.org CVS) -- gnome-keyboard-indicator (module in gnome-applets, gnome.org CVS) - -Changes in configuration - -The tests should be performed under different configurations, controlled by several variables: - -- "group per window" mode (GPW: on/off): visible in UI -- "default group" (DG: switchited off - or some group selected): only in GConf -- "keep indicators with the group" (IPW: on/off): only in GConf -- "hidden groups" (HG: some list of groups, can be empty): only in GConf - -Taking that parameters DG and IPW only make sense when GPW is on, there are 5 combinations possible for the first 3 parameters. Taking that DG and IPW do not interfere, it is reasonable to test 3 combinations: - -- GPW: off -- GPW: on, DG: off, IPW: off -- GPW: on, DG: {some value}, IPW: on - -It is necessary to perform each test with the empty and non-empty HG. If HG is not empty, every test should be performed with both "enabled" and "hidden" groups. - -Test cases - -1. Open a terminal window. Type in some characters. Change the group using some chosen keyboard combination (default LAlt-RAlt or any other from the list of available ones). Type in some characters - ensure the group was changed. - -2. Same as #1 - but change the group by clicking on the indicator applet - -3. Same as #1 - but choose the group from the applet's menu - -4. Set the US group in one terminal window. Create new terminal window. Ensure the group matches the DG setting. - -5. Switch between two terminal windows using Alt-Tab. Ensure the behaviour matches the GPW setting and IPW setting. - -6. Same as #5, but switch using the panel WindowList applet. - -7. Change the settings in g-k-p, ensure the applet picks the changes. |