You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
2.1 KiB
67 lines
2.1 KiB
Index: kcontrol/access/kcmaccess.cpp
|
|
===================================================================
|
|
--- kcontrol/access/kcmaccess.cpp.orig
|
|
+++ kcontrol/access/kcmaccess.cpp
|
|
@@ -103,10 +103,57 @@ void ExtendedIntNumInput::slotSliderValu
|
|
|
|
static bool needToRunKAccessDaemon( KConfig *config )
|
|
{
|
|
- // We always start the KAccess Daemon, if it is not needed,
|
|
- // it will terminate itself after configuring the AccessX
|
|
- // features.
|
|
- return true;
|
|
+ KConfigGroup bell( config, "Bell" );
|
|
+
|
|
+ if (!bell.readBoolEntry("SystemBell", true))
|
|
+ return true;
|
|
+ if (bell.readBoolEntry("ArtsBell", false))
|
|
+ return true;
|
|
+ if (bell.readBoolEntry("VisibleBell", false))
|
|
+ return true;
|
|
+
|
|
+ KConfigGroup keyboard( config, "Keyboard" );
|
|
+
|
|
+ if (keyboard.readBoolEntry("StickyKeys", false))
|
|
+ return true;
|
|
+ if (keyboard.readBoolEntry("SlowKeys", false))
|
|
+ return true;
|
|
+ if (keyboard.readBoolEntry("BounceKeys", false))
|
|
+ return true;
|
|
+ if (keyboard.readBoolEntry("Gestures", true))
|
|
+ return true;
|
|
+ // Find out whether the gestures are activated by default in the X configuration or not.
|
|
+ int major = XkbMajorVersion;
|
|
+ int minor = XkbMinorVersion;
|
|
+ if (XkbLibraryVersion(&major, &minor))
|
|
+ {
|
|
+ int opcode_rtrn;
|
|
+ int error_rtrn;
|
|
+ int xkb_opcode;
|
|
+ if (XkbQueryExtension(qt_xdisplay(), &opcode_rtrn, &xkb_opcode, &error_rtrn,
|
|
+ &major, &minor))
|
|
+ {
|
|
+ if(XkbDescPtr xkbdesc = XkbGetMap(qt_xdisplay(), 0, XkbUseCoreKbd))
|
|
+ {
|
|
+ if(XkbGetControls(qt_xdisplay(), XkbAllControlsMask/*XkbAccessXKeysMask*/, xkbdesc ) == Success )
|
|
+ {
|
|
+ if(xkbdesc->ctrls->enabled_ctrls & XkbAccessXKeysMask)
|
|
+ {
|
|
+ XkbFreeClientMap(xkbdesc,0,True);
|
|
+ return true;
|
|
+ }
|
|
+ }
|
|
+ XkbFreeClientMap(xkbdesc,0,True);
|
|
+ }
|
|
+ }
|
|
+ }
|
|
+
|
|
+ KConfigGroup mouse( config, "Mouse" );
|
|
+
|
|
+ if (mouse.readBoolEntry("MouseKeys", false))
|
|
+ return true;
|
|
+
|
|
+ return false; // don't need it
|
|
}
|
|
|
|
QString mouseKeysShortcut (Display *display) {
|