Commit Graph

133 Commits

Author SHA1 Message Date
David Boddie
1a5f7dd907 Improve error reporting for keys and keymaps 2019-08-26 22:47:23 +02:00
Dorota Czaplejewicz
c9a580dc07 Drop keyboard 2019-08-18 13:22:18 +00:00
Dorota Czaplejewicz
f479a36dbe keyboard: Remove references 2019-08-18 13:22:18 +00:00
Dorota Czaplejewicz
2e201b67a7 Remove obsoleted and unused pieces 2019-08-18 13:22:18 +00:00
Dorota Czaplejewicz
636ed0267d Merge branch 'fixes' into 'master'
Fixes

See merge request Librem5/squeekboard!129
2019-08-18 12:58:23 +00:00
David Heidelberg
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
Dorota Czaplejewicz
6081dc240a modifiers: Remove empty argument 2019-08-13 12:36:14 +00:00
David Boddie
73d2505c89 Do not pass the symbol to the key emitter 2019-08-13 12:24:11 +00:00
Dorota Czaplejewicz
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
Dorota Czaplejewicz
f371b14e89 levelkeyboard: Use a layer for managing keyboard views 2019-08-08 19:26:21 +00:00
Dorota Czaplejewicz
53b89aae45 symbol: Remove remains 2019-08-08 19:18:29 +00:00
Dorota Czaplejewicz
b76e43679e level: Remove level from elements 2019-08-08 19:18:29 +00:00
Dorota Czaplejewicz
38f81e45f4 Break out symbol handling into Rust 2019-08-08 12:51:15 +00:00
Dorota Czaplejewicz
c1c0cb6b31 Fix unused function 2019-08-01 20:30:57 +00:00
Dorota Czaplejewicz
e5858bf698 context: Remove vestigial key-activated 2019-08-01 20:25:07 +00:00
Dorota Czaplejewicz
b8389f6736 symbol: Simplify symbol storage 2019-08-01 20:25:01 +00:00
Dorota Czaplejewicz
b5f0aa423b xml: Remove unused file 2019-08-01 14:16:01 +00:00
David Boddie
35ac14806c Rename keypad-related files 2019-07-30 20:47:29 +02:00
David Boddie
70895999c2 Generate XKB keymaps from XML instead of using pre-made ones 2019-07-25 22:25:29 +02:00
Piotr Tworek
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
David Boddie
e25d5a84b2 Remove unnecessary X11 includes 2019-07-20 23:57:38 +02:00
David Boddie
00c3903672 Respond to the input purpose, showing a numeric keypad if requested 2019-07-20 17:33:55 +02:00
David Boddie
54b0f59935 Always create a new widget for a keyboard and update it if already visible 2019-07-20 17:25:55 +02:00
David Boddie
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
David Boddie
6eb63f6a4c Refactor layout code, rescale and reformat when changing level 2019-07-19 17:35:49 +02:00
Guido Günther
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
Guido Günther
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
David Boddie
7e9c3b40bb Remove debugging code 2019-07-16 14:00:41 +02:00
David Boddie
a8371af9c0 Fall back to US layout and keymap if needed 2019-07-16 14:00:41 +02:00
David Boddie
a7140705c4 Search for an xkb keymap in the resources 2019-07-16 14:00:41 +02:00
David Boddie
3c97a3a592 Convert symbols file and update test keymap 2019-07-16 14:00:41 +02:00
David Boddie
268dda4da0 Improve symbol mapping 2019-07-16 14:00:41 +02:00
David Boddie
45f58a97b9 Update the test keymap 2019-07-16 14:00:41 +02:00
David Boddie
bdbbaf6099 Use groups to reference keysyms in the keymap 2019-07-16 14:00:41 +02:00
David Boddie
839968dc84 Try using a custom keymap 2019-07-16 14:00:41 +02:00
David Boddie
fbdc5f4a93 Stash for sharing 2019-07-16 14:00:41 +02:00
Guido Günther
53f7a14717 EekboardService: Properly toggle keyboard visibility on DBus
Closes: #55
2019-07-16 10:21:59 +02:00
David Boddie
6f5f49729c Remove unused files and functions 2019-07-15 23:45:17 +02:00
Hysterical Raisins
4b2977d601 Plug 3 leaks 2019-07-11 13:26:04 +02:00
David Boddie
eb940bcf52 Remove currently unused eekboard code 2019-07-09 16:34:16 +02:00
David Boddie
83b36d07d0 Add note about unused code 2019-07-09 15:28:02 +02:00
David Boddie
e2944ff4a7 Use a macro to declare a type with private data 2019-07-09 00:46:03 +02:00
David Boddie
4d44129b04 Prevent compiler warnings by commenting out unused code 2019-07-09 00:24:57 +02:00
David Boddie
b3e1d84e6c Merge branch 'mem' into 'master'
Fix visibility-related bugs

See merge request Librem5/squeekboard!25
2019-07-08 21:25:27 +00:00
Hysterical Raisins
094aa872ce Cleanups: fix deprecated g_type_class_add_private()
- use G_DECLARE_ and G_DEFINE_ macros
- move all data into ClassNamePrivate
- use _get_instance_private()

This should not introduce any functional changes or breakage.

Skipped two classes (EekKeyboard and EekboardContextService) for now in
order not to break the build.

These two classes are used in some very funky WIP code that tries to
circumvent encapsulation.

(Funky code is in eekboard/key-emitter.c and eekboard/eekboard-context-service.c)
2019-07-08 08:44:05 +02:00
Guido Günther
7a52080940 Remove automake leftovers 2019-07-04 14:51:00 +02:00
Dorota Czaplejewicz
c3ffe6ab8b visibility: Handle visibility change no-ops 2019-07-04 08:48:43 +00:00
Dorota Czaplejewicz
484eb3303c modifiers: Seem to be emitted correctly 2019-07-02 11:52:45 +00:00
Dorota Czaplejewicz
baf848c791 layout: Ignore keycodes without corresponding keys 2019-07-01 12:57:52 +00:00
Dorota Czaplejewicz
0d3b003aac input method: Initialize the protocol and pretend to handle a few things 2019-06-30 19:03:24 +00:00