Felix Geyer
dc7b6623a9
Merge branch '2.0'
2015-10-11 10:44:30 +02:00
Felix Geyer
820941fd40
Auto-Type: Only require a substring match for regex.
...
This matches the behavior of KeePass.
Refs #357
2015-10-10 17:36:08 +02:00
Felix Geyer
840642394f
Cope with focusWidget/activeWindow returning windows that are minimized.
2015-10-10 12:07:28 +02:00
Felix Geyer
4f2d56a55f
Fix another small memory leak.
2015-09-26 12:41:53 +02:00
Felix Geyer
6b49f8f26b
Free input device list.
...
Fixes a memory leak.
2015-09-26 12:41:53 +02:00
Felix Geyer
fc8cb7cd14
Check if XListInputDevices returns an error.
...
Refs #351
2015-09-26 12:41:52 +02:00
Felix Geyer
727094abc6
Unload auto-type plugins if they run in an unsupported environment.
...
Refs #351
2015-09-26 12:41:47 +02:00
Felix Geyer
3b2a39fd38
Merge branch '2.0'
2015-09-26 11:44:27 +02:00
Felix Geyer
14aac09318
Avoid implicit casts from bool to int.
2015-09-25 21:34:56 +02:00
Felix Geyer
9d42db9849
Mark more methods as override.
2015-09-25 21:34:56 +02:00
Felix Geyer
6ab54bc95a
Check if libXi is installed and explicitly link against it.
2015-09-23 22:26:49 +02:00
Felix Geyer
d559db4fb1
Merge branch '2.0'
2015-09-21 23:23:51 +02:00
Felix Geyer
673dff2268
Auto-Type: Raise target window after showing the select dialog.
...
kwin >= 5.4 (since commit cfa1d61) prefers to focus the main window
instead of following the focus chain.
We ask the window manager nicely to focus the window we want to
type into. kwin seems to follow that (in the default configuration).
2015-09-21 23:12:10 +02:00
Felix Geyer
7fa0eddc5f
Make C++11 mandatory.
2015-09-12 13:55:50 +02:00
Felix Geyer
ba1ca4ec08
Rename x11 auto-type plugin to xcb.
...
This matches what QGuiApplication::platformName() returns.
2015-09-12 13:51:49 +02:00
Felix Geyer
ec8c0bb3e7
Setup new build dependencies.
2015-09-12 13:51:49 +02:00
Felix Geyer
b904fe5acd
Adapt X11 auto-type plugin to handle xcb instead of xlib events.
2015-09-12 13:51:49 +02:00
Felix Geyer
6502da549b
Fix build failure in AutoTypePlatformX11::SendEvent().
2015-09-12 13:51:49 +02:00
Felix Geyer
9e05f41747
Port to Qt 5 plugin system.
2015-09-12 13:51:49 +02:00
Felix Geyer
813c64a055
Port cmake files to Qt 5.
2015-09-12 13:51:49 +02:00
Felix Geyer
5bd525a6dd
Use correct keycode when unregistering global shortcuts.
...
charToKeySym() is already correctly used in registerGlobalShortcut().
2015-07-22 20:38:03 +02:00
Felix Geyer
68373730bf
Fix compiler warnings where keysyms are printed.
...
%lX expectes unsigned long which KeySym is an alias for.
2015-05-12 23:57:36 +02:00
Felix Geyer
5d9039ea89
Silence compiler warning about an unused variable.
2015-05-12 23:40:02 +02:00
Felix Geyer
940a5026c1
Properly auto-type line breaks and tabs in text.
2015-03-13 22:24:29 +01:00
Felix Geyer
2631277184
Always sleep some time after the keymap has changed.
...
This works around a problem where sometimes chars are typed as if some
random modifiers are pressed.
2015-03-13 21:58:04 +01:00
Felix Geyer
b86b640860
Process events from the event loop before typing the first char.
2015-03-13 19:45:57 +01:00
Felix Geyer
2dfc740782
Rework handling of modifiers in auto-type.
...
Release all modifiers that are pressed and change the result.
2015-03-13 19:43:52 +01:00
Felix Geyer
e4985f4ff7
Get the xtest keyboard instead of the core keyboard.
...
If we don't find it fall back to the core keyboard.
2015-03-13 19:41:49 +01:00
Felix Geyer
22f579a59e
Restore keyboard mapping only if we actually changed it.
2015-03-13 19:40:52 +01:00
Felix Geyer
778f01bcf1
Increase sleep time after remapping a keycode.
2015-02-24 22:00:44 +01:00
Felix Geyer
ccb7a4c96d
Blacklist the KDE 5 root window.
2015-02-24 21:59:47 +01:00
Felix Geyer
315df0b8a8
Coding style fixes.
2014-11-02 11:46:51 +01:00
Felix Geyer
870d7355ca
Fix reading window title from _NET_WM_NAME.
...
XGetWindowProperty() returns 0 on success.
Closes #236
2014-11-02 11:44:03 +01:00
Felix Geyer
5a31e055cf
Show the window title when no entry matches for auto-type.
...
Closes #188
2014-05-18 12:09:46 +02:00
Felix Geyer
147cd4ed7b
Add option to use the entry title for auto-type window matching.
2014-05-15 18:30:57 +02:00
Felix Geyer
b194c29166
Show a dialog when no window matches for auto-type.
2014-04-14 22:57:25 +02:00
Felix Geyer
0b9167c78b
Add an option to always ask before performing auto-type.
...
Closes #120
2014-04-14 22:57:18 +02:00
Felix Geyer
b9370c6e79
More careful null checking and member initalization.
2014-03-22 12:10:49 +01:00
Felix Geyer
809be5f89e
Use the correct modifiers after remapping.
...
Sometimes the keysym is not mapped to the first column (no modifiers)
but to a diffferent column that needs modifiers.
Therefore we need re-read the table and search the whole row for the
correct keysym.
2014-01-19 23:32:00 +01:00
Felix Geyer
bf9a755bea
Check all modifiers before declaring the remap keycode invalid.
...
Sometimes XChangeKeyboardMapping() maps the keysym to a modifier.
2014-01-19 21:40:25 +01:00
Felix Geyer
34b82da9aa
Initialize cur_focus before it's used.
2014-01-19 20:09:19 +01:00
Albert Weichselbraun
0f91e0d141
Better naming & actually save m_currentRemapKeysym.
2013-12-16 09:41:43 +01:00
Albert Weichselbraun
6a50a76466
Track the last remapped keysym in m_currentRemapKeycode to enforce
...
a new computation of m_remapKeycode when the keyboard layout
changes.
(This fixes a potential problem with AddKeysym overwriting
used keysyms after applying a new keyboard layout).
2013-12-16 09:28:16 +01:00
Felix Geyer
2a416d1f1d
Make sure the remapping keycode is reset to NoSymbol.
...
Previously the dtor of AutoTypePlatformX11 wasn't called.
2013-12-01 23:32:53 +01:00
Felix Geyer
23f338b0c3
Add some error handling in case we can't remap a key.
2013-12-01 19:14:07 +01:00
Felix Geyer
cdcea91b50
Use nanosleep() instead of the deprecated usleep().
2013-12-01 19:09:20 +01:00
Albert Weichselbraun
62ea117f45
Significantly reduce the number of re-mappings required by
...
a) dynamically fetching the modifier masks for Mod1 to Mod5 (Alt, AltGr, Meta,
etc.)
b) integrating commit bfec222 from Felix Geyer <debfx@fobos.de> which creates a
unicode -> x11 keysym mapping table by parsing keysymdefs.h.
This avoids adding new keysyms because keyboard layouts seem to prefer the
lower keysyms over unicode | 0x01000000 mapping.
An example of this is the euro sign with a German keyboard layout.
2013-12-01 15:34:27 +01:00
Albert Weichselbraun
a26119ea20
Use a dedicated keycode for keys that require another modifier than shift.
2013-11-23 09:07:16 +01:00
Albert Weichselbraun
3fcfc348ed
Cleanup: use break rather than nested if/else constructs.
2013-11-18 06:17:56 +01:00
Albert Weichselbraun
6b33298a6e
Merge branch 'bug-116-autotype-new' into bug-116-autotype
2013-11-17 21:10:29 +01:00