Commit Graph

83 Commits

Author SHA1 Message Date
0ef02ebfa3 levelkeyboard: Drop unused manager references 2020-01-13 13:53:54 +00:00
326bb9319f submission: Take over virtual_keyboard handling 2020-01-13 13:53:54 +00:00
92c9572ac2 services: Split out layout management from EekboardContextService
Layout management was pointlessly bound with the EekboardContextService with inheritance. Splitting it out will make it easier to further break apart layout state management, settings, and input method in the future.
2020-01-11 15:33:26 +00:00
58b087e35a eekboard_context_service: Drop unused enable property 2020-01-09 20:13:22 +00:00
14d5881f1e key-emitter: Remove unused 2020-01-09 19:57:14 +00:00
7dd8bd54c2 context: Moved keymap setting together with its generation 2020-01-09 16:42:17 +00:00
9f59279307 managers: Move visible flag to UI manager 2020-01-09 14:14:48 +00:00
7e72722a47 UI: Drop indirection for show/hide functions 2020-01-09 13:30:02 +00:00
7a21b992dc Merge branch 'terminal_layout' into 'master'
Terminal layout

See merge request Librem5/squeekboard!279
2020-01-07 12:55:08 +00:00
674bef2b00 terminal: Use a rudimentary layout on input hint 2019-12-24 14:33:58 +00:00
8e55e9ee56 Fix g_ and stdlib allocation/free mismatches 2019-12-24 14:28:50 +00:00
01a8afad0d popover: Show overlays as selected 2019-12-24 10:41:02 +00:00
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