Commit Graph

71 Commits

Author SHA1 Message Date
bafd1e6eb3 popover: Install emoji layout
In order to do that, an additional piece of state (layout switcher) was exposed to the event handlers, a separation between squeekboard-only and system layouts was introduced, along with a Translation structure to prevent mixing up strings.
2019-12-24 10:41:02 +00:00
1abca0a44e settings: Fetch current layout as the first item 2019-11-21 18:57:34 +00:00
b6dfb20fec cache: Remove keyboard cache 2019-11-06 14:45:33 +00:00
c917a1f818 layout: Keep kind metadata in loaded layouts
It will come useful for applying per-kind styling later without having to give each layout a new stylesheet
2019-10-29 13:27:54 +00:00
1b1fbed7de layouts: Change type based on shape 2019-10-29 13:21:46 +00:00
288d2247da cleanup: Remove dead fullscreen mode 2019-09-28 18:29:58 +00:00
c8658b00e3 Merge branch 'warnings' into 'master'
warnings: Fix some C stuff

See merge request Librem5/squeekboard!159
2019-09-11 14:58:19 +00:00
fd0d8d4244 warnings: Fix some C stuff 2019-09-10 11:06:18 +00:00
b84c402c4a WIP
WIP

WIP: keymap generation test passes

meta: Update features and version

WiP: cargo.lock

WIP: don't crash

WIP: no outlines

parsing: New tests

WIP: base level works

WIP: remove old keyboard

symbols correctly input

WIP: lodaing files

WIP: fallback works

Valid fallback
2019-09-04 09:44:31 +00:00
0da02aab21 Remove debugging code 2019-08-27 20:24:49 +00:00
1a5f7dd907 Improve error reporting for keys and keymaps 2019-08-26 22:47:23 +02:00
c9a580dc07 Drop keyboard 2019-08-18 13:22:18 +00:00
2e201b67a7 Remove obsoleted and unused pieces 2019-08-18 13:22:18 +00:00
0b98c2cbe6 fix compilation
References: https://github.com/facebook/hhvm/issues/168 .
Same issue occurs in Gentoo with gcc 9.1

Signed-off-by: David Heidelberg <david@ixit.cz>
2019-08-15 10:53:07 +02:00
cc3f2315a7 Use keyboards as views
Got rid of modifiers in the process. Still buggy: dragging over keys.
2019-08-08 19:56:36 +00:00
f371b14e89 levelkeyboard: Use a layer for managing keyboard views 2019-08-08 19:26:21 +00:00
38f81e45f4 Break out symbol handling into Rust 2019-08-08 12:51:15 +00:00
b5f0aa423b xml: Remove unused file 2019-08-01 14:16:01 +00:00
35ac14806c Rename keypad-related files 2019-07-30 20:47:29 +02:00
70895999c2 Generate XKB keymaps from XML instead of using pre-made ones 2019-07-25 22:25:29 +02:00
f86bbb09f8 Fix out of bounds memory read in get_keymap_from_resource.
The function reads resource content into a buffer whose size matches the
size of the file contents. This buffer does not have an extra byte that
would 0 terminate this string. This is by itself is not a problem.
Unfortunately the buffer is passed to g_utf8_make_valid function with
size argument specified as -1 which means the buffer is supposed to be
NULL terminated. The end result is g_utf8_make_valid will read at least
1 byte past "contents" buffer size.

Fix this by specifying buffer size when calling g_utf8_make_valid.
2019-07-24 17:08:19 +02:00
00c3903672 Respond to the input purpose, showing a numeric keypad if requested 2019-07-20 17:33:55 +02:00
54b0f59935 Always create a new widget for a keyboard and update it if already visible 2019-07-20 17:25:55 +02:00
a045810af6 Merge branch 'add-built-in-keymaps' into 'master'
Add built in keymaps

See merge request Librem5/squeekboard!78
2019-07-20 14:42:51 +00:00
6eb63f6a4c Refactor layout code, rescale and reformat when changing level 2019-07-19 17:35:49 +02:00
dbc8cc14bc Generate config.h
This allows us to remove a lot of #ifdef's. Either we want to use
a config.h or we don't. Since we'll want it for e.g. optional gsound
support later on let's have it.
2019-07-17 19:50:53 +02:00
9974c385e5 EekboardContextService: Don't comment out property setters
This lets us keep the visible property up to date.
2019-07-17 00:44:09 +02:00
a8371af9c0 Fall back to US layout and keymap if needed 2019-07-16 14:00:41 +02:00
a7140705c4 Search for an xkb keymap in the resources 2019-07-16 14:00:41 +02:00
bdbbaf6099 Use groups to reference keysyms in the keymap 2019-07-16 14:00:41 +02:00
839968dc84 Try using a custom keymap 2019-07-16 14:00:41 +02:00
fbdc5f4a93 Stash for sharing 2019-07-16 14:00:41 +02:00
4b2977d601 Plug 3 leaks 2019-07-11 13:26:04 +02:00
eb940bcf52 Remove currently unused eekboard code 2019-07-09 16:34:16 +02:00
83b36d07d0 Add note about unused code 2019-07-09 15:28:02 +02:00
e2944ff4a7 Use a macro to declare a type with private data 2019-07-09 00:46:03 +02:00
4d44129b04 Prevent compiler warnings by commenting out unused code 2019-07-09 00:24:57 +02:00
c3ffe6ab8b visibility: Handle visibility change no-ops 2019-07-04 08:48:43 +00:00
baf848c791 layout: Ignore keycodes without corresponding keys 2019-07-01 12:57:52 +00:00
4b8a6bbbe0 fix: Remove leftover debug print 2019-06-29 12:16:34 +00:00
9e5629d1e0 Enable Wayland's virtual-keyboard protocol
This commit includes a little restructuring necessary for keeping wayland objects properly.
It doesn't fix broken modifier functionality yet.
2019-06-25 18:12:15 +00:00
8292429648 Context: removing more unused things 2019-06-22 16:04:33 +00:00
765c496068 Removed more unused stuff in context 2019-06-22 15:57:48 +00:00
d6feec8010 Removed d-bus paths from service class 2019-06-22 15:40:20 +00:00
f1fbb37547 Kill connection in context service 2019-06-22 15:31:08 +00:00
82d1f256b2 Remove released and cancelled key events 2019-06-22 12:23:04 +00:00
260ab42b9e Forward press timestamps 2019-06-19 15:56:19 +00:00
a3d745edd0 Moved key pressing from context to keyboard 2019-06-19 15:27:29 +00:00
70fda8ba64 Fix releasing buttons when dragged 2019-04-06 18:46:33 +00:00
53af829f46 Send both press and release events 2019-04-06 17:45:06 +00:00