aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)Author
2020-10-08Add SPDX-License-Identifier: LGPL-2.1Matthew
Fixes [YOCTO #13319] Signed-off-by: Mingde (Matthew) Zeng <matthew.zeng@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-17matchbox-keyboard-ui.c: Fix int -> long to address 32bit vs 64 bit addressingSaul Wold
The soft keyboard was displaying incorrectly on 64bit machines [YOCTO #9254] Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-01-18config-parser: Use matching printf formatKhem Raj
XML_GetCurrentLineNumber() returns unsigned long as clang is telling us here src/config-parser.c:603:6: warning: format specifies type 'int' but the argument has type 'XML_Size' (aka 'unsigned long') [-Wformat] XML_GetCurrentLineNumber(p), ^~~~~~~~~~~~~~~~~~~~~~~~~~~ Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2014-06-15Revert "MbGtkKeyboard: ensure correct backbuffer setup for map->unmap->map ↵Tomas Frydrych
sequence" No longer needed, as commit 03c704f84963d2aefeede41edd76eb36caee96f6 provides a better solution. This reverts commit 0899b0260fe27ffa95ac200835745f32d7bb44bb. Signed-off-by: Tomas Frydrych <tomas@tomtain.com>
2014-06-15MBKeyboardUI: ensure correct backing pixmap on map eventsTomas Frydrych
When the kbd window maps, it is possible that it is not using the current backing pixmap. The preceeding commit has was attempting to address this problem by forcing backbuffer setup after an unmap event, but this solution fails when the backbuffer pixmap is not attached on the initial map, which seems to happen with more recent versions of gtk. Signed-off-by: Tomas Frydrych <tomas@tomtain.com>
2013-11-04MbGtkKeyboard: ensure correct backbuffer setup for map->unmap->map sequenceTomas Frydrych
When the widget is going from an unmapped to a mapped state, if it was previously mapped at the same size, it is possible for the backend to end up attached to a stale drawable. So when the widget gets unmapped, set a flag to force fresh backbuffer set up on any future map at an identical size. (If the new map happens at a different size, this triggers complete relayout, which included backbuffer set up.) Signed-off-by: Tomas Frydrych <tomas@sleepfive.com>
2012-12-12matchbox-keyboard-image: fix build with libpng 1.5Ross Burton
2012-08-31Fix buildIan Honohan
2012-08-31MBKeyboardKey: don't do full keyboard redraw on release when in Caps modeTomas Frydrych
If a key has a modifier then on release we have to redraw the whole keyboard because on release the modifier is reset, so the kbd layout changes. The Caps modifier is an exception, since it stays in place until it is explicitely cancelled, but we were still scheduling a full redraw; if the user drags a finger across the kbd and the HW is not fast enough to keep up with the redraws, this becomes rather obvious.
2012-08-24config parser: if in widget mode, do not abort on parsing failuresTomas Frydrych
Such behaviour is not nice to the calling application.
2012-08-24Added --lang command line parameter to force layout localeTomas Frydrych
Normally the locale gets determined automatically from the environment, but there are times when an application might want to force a different locale (e.g., en_US).
2012-08-08Fix handling of long press on ShiftIan Honohan
Only check for long press for the unshifted -> shifted transition, for shifted -> unshifted do just normal processing Signed-off-by: Tomas Frydrych <tomas@sleepfive.com>
2012-08-03MBKeyboardKey: fix handling of Shift state when not using GtkTomas Frydrych
Patch by Wim Crols
2012-05-17Rudimentary support inclusion of xml files using <include/>Tomas Frydrych
We need some custom attributes here, so make our own <include/> tag rather then implementing XInclude machinery Attributes: * 'file' - what to include; path to be relative to layout directory * 'auto-locale': yes|no, default yes -- when 'yes', locale specific version of the include is loaded, same as is done for layouts themselves.
2012-05-17MBKeyboardKey: pass META to fakekeyTomas Frydrych
2012-05-17MBKeyboardKey: tweak shift for Greek capsTomas Frydrych
If the KeySym is in the upper case range, force the SHIFT flag, if it is in the lower case range, forcibly clear the flag.
2012-05-17MBKeyboardKey: fix handling of awkward capitalsTomas Frydrych
If a kbd layout contains a capital letter that is not part of the server keyboard map, we need to propagate associated shift state to libfakey to ensure that a synthetic event is generated for the Shift key; without this the keyevent will not have the keyboard state set correctly, which might result in the lower case peer symbol emerging in the application.
2012-03-09When using gtk widget, use native GdkWindowTomas Frydrych
The gdk foreign window API is deprecated and we are getting some warning because Gdk can properly handle foreign window.
2012-03-09Improve reszing of MbGtkWidgetTomas Frydrych
* Added x,y parameters to mb_kbd_ui_resize() to allow combinging move with resize; made public * split out backbuffer resizing from mb_kbd_ui_resize() * When style changes, resize backbuffer to ensure that it is still attached to the window (i.e., GtkWidget::set_style messes with the window background. * In size_allocate(), use mb_kbd_ui_resize() rather then resizing the Gdk window * Do not process ConfigureNotifies for UI window -- this is our OR window only we manipulate
2012-03-09Ignore motion events on modifier keysTomas Frydrych
2012-03-09Make all modifier vkb keys stickyTomas Frydrych
2012-03-09respect allocation size for the gtk widgetTomas Frydrych
2012-03-09implement finger slide-overTomas Frydrych
2012-03-09ensure gtk widget is realized when processing size requestTomas Frydrych
2012-03-09only reload font when actual font size has changedTomas Frydrych
2012-03-09mb keyboard: only allocate onceTomas Frydrych
The _allocate() function calculates the minimal size of the kbd based on the requested font size; as such it should only be run once when we create the widget (running it during resize was causing the stored base font size and dimensions to be out of sync, leading to wrong calculation of real font size). git-svn-id: https://repository.vernier.com:23845/repos/trunk/vernier/sources/matchbox-keyboard@9832 37671d33-5a16-0410-807e-c55260944247
2012-03-09added spacing param for mb-kbIan Honohan
2012-03-09Long Shift == CAPSTomas Frydrych
Make long press on the shift key behave like a caps lock (Only implemented for the GtkWidget at the moment; the only reason for this is I can't be bothered to implement a timeout function ...)
2012-03-09provide libmatchbox-library:Tomas Frydrych
* Split the code into a thin program wrapper and a library. * Implemented a native Gtk widget, MbGtkKeyboard using the library matchbox-keyboard: pc file
2012-03-09forcefully map our window upon embeddingTomas Frydrych
Due to a bug in GtkSocket (at least in 2.14), we only get mapped if at the point of requesting to be mapped we have a pending size change; if not, the allocation process that contains the XMapWindow() call shortcircuits. Work around this by mapping ourselves once we are embedded.
2012-03-09fixed focus chainingTomas Frydrych
2012-03-09simple above key popupTomas Frydrych
* Adds a popup above the key on press (except for modifiers) * With the exception of Backspace, keys only generate key events on release (this means no autorepeat)
2012-03-09fixed allocation on configureTomas Frydrych
* ignore resize requests with dimension <= 10 (happens on initial embedding, and is followed by a proper request later) * reload font when either dimension changes, rather than both
2012-03-09added --width and --height command line optionsTomas Frydrych
To allow to specify initial size of the window
2012-03-09fix initial size of embedded kbdsTomas Frydrych
2012-03-09Facilitate creation of multiple widgetsTomas Frydrych
* Refactor things, so that instead of various globals we have per- widget data * Implement object tear down
2012-03-09fix util_list_append()Tomas Frydrych
Nothing like home-grown fruit an vegies ;-)
2012-03-09cairo backend: make it workTomas Frydrych
TODO: the colours should be easier to customize
2012-03-08stripped some trailing whitespaceTomas Frydrych
2012-03-08fixed UI allocationTomas Frydrych
mb_kbd_ui_resize() was exiting early if the height assigned to the kbd was smaller than the minimal height the UI requested; unfortunately this leaves the keyboard window with wrongly sized backing pixmap -- we must respect the size assigned to us, whether we like it or not.
2012-03-08increased maximum kbd heightTomas Frydrych
Lowered the height restriction from 1/3 of screen height to 2/5 of screen height.
2012-03-08keyboard: font optionsIan Honohan
2012-02-08Relicense to LGPL, apart from applet/applet.cRoss Burton
2008-09-162008-09-16 Ross Burton <ross@linux.intel.com>ross
* src/matchbox-keyboard-image.c: Include render headers. git-svn-id: https://svn.o-hand.com/repos/matchbox/trunk/matchbox-keyboard@2075 b067294f-1dea-0310-9683-c47a78595994
2008-02-07matchbox-keyboard: Stop the keyboard scaling beyond a sensible height on ↵richard
wide screens git-svn-id: https://svn.o-hand.com/repos/matchbox/trunk/matchbox-keyboard@1910 b067294f-1dea-0310-9683-c47a78595994
2007-10-122007-10-12 Matthew Allum <mallum@openedhand.com>mallum
* layouts/keyboard.xml: Add UTF8 arrow keys (thanks to pippin) * src/matchbox-keyboard-ui.c: (mb_kbd_ui_event_loop): Disable gestures at least fo now. git-svn-id: https://svn.o-hand.com/repos/matchbox/trunk/matchbox-keyboard@1739 b067294f-1dea-0310-9683-c47a78595994
2007-10-092007-10-09 Ross Burton <ross@openedhand.com>ross
* src/matchbox-keyboard.h: * src/matchbox-keyboard-remote.c: * src/matchbox-keyboard-remote.h: * src/Makefile.am: Move the remote operations into a separate header. * gtk-im/im-protocol.c: * gtk-im/im-context.c: * gtk-im/Makefile.am: * gtk-im/im-protocol.h: * applet/applet.c: * applet/Makefile.am: Use src/matchbox-keyboard-remote.h instead of a copy of the enum, to avoid stupid bugs. Thanks to Daniel Willmann for noticing. git-svn-id: https://svn.o-hand.com/repos/matchbox/trunk/matchbox-keyboard@1736 b067294f-1dea-0310-9683-c47a78595994
2007-10-082007-10-08 Ross Burton <ross@openedhand.com>ross
* src/matchbox-keyboard.h: * src/matchbox-keyboard-ui.c: * src/matchbox-keyboard-remote.c: * gtk-im/im-protocol.h: Add a TOGGLE action to the RPC. * applet/applet.c: Instead of using a toggle button use an event box, and sent the toggle event. Based on patches by Stefan Schmidt and Daniel Willmann. git-svn-id: https://svn.o-hand.com/repos/matchbox/trunk/matchbox-keyboard@1732 b067294f-1dea-0310-9683-c47a78595994
2007-09-202007-09-20 Ross Burton <ross@openedhand.com>ross
* src/matchbox-keyboard.h: * src/matchbox-keyboard-remote.c: Change mb_kbd_remote_process_xevents to return MBKeyboardRemoteOperation instead of performing the operation. Also Declare mb_kbd_ui_limit_orientation. * src/matchbox-keyboard-ui.c: Action the operation reutrned returned by process_xevents, and if we receive a Hide command wait for 100ms before hiding the keyboard, so that if we immediately receive a Show the keyboard doesn't flicker. Based on a patch by Daniel Willmann <daniel@totalueberwachung.de>. git-svn-id: https://svn.o-hand.com/repos/matchbox/trunk/matchbox-keyboard@1687 b067294f-1dea-0310-9683-c47a78595994
2007-09-172007-09-17 Matthew Allum <mallum@openedhand.com>mallum
* src/matchbox-keyboard-key.c: Dont set uneeded shift flag in libfakekey (Daniel Willmann) git-svn-id: https://svn.o-hand.com/repos/matchbox/trunk/matchbox-keyboard@1675 b067294f-1dea-0310-9683-c47a78595994