580 Commits

Author SHA1 Message Date
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
254b65681a layersurface: Update from phosh 2019-10-29 13:21:46 +00:00
869a0af67f cleanup: eek-gtk.h 2019-10-29 13:21:46 +00:00
8f7f6c05c0 renderer: Remove dependencies on renderer in button rendering functions
The rendering functions become more pure, which, once reached, will allow for better tracking of what they do and easier modularization.
2019-10-28 21:13:58 +00:00
01fe433612 icons: Remove caching 2019-10-25 15:43:29 +00:00
63e55ff5c4 renderer: Free temporary surfaces 2019-10-25 15:18:37 +00:00
c99efc430c presses: Move press handling to Rust
This fixes some rendering things which would happen with multiple state-sharing buttons. It also removes some interfaces exposing rows, views, layouts, and buttons, bringing the code closer to removing them from the FFI entirely.
2019-10-23 15:11:16 +00:00
29231f7e31 cleanup: Unused types 2019-10-20 09:47:10 +00:00
162b828c4c Merge branch 'targets' into 'master'
buttons: Buttons are next to each other, padding is visual only

Closes #110

See merge request Librem5/squeekboard!209
2019-10-18 19:14:04 +00:00
9e078be603 buttons: Buttons are next to each other, padding is visual only 2019-10-09 20:34:46 +00:00
212e55d7cf caches: Stop using due to bugginness
The button cache is storing only button outlines (not useful to us), and it only cares about active/inactive states (there are more).

This will have to be rewritten sanely, so for the time being, disabling it is not going to deal a big performance penalty.
2019-10-09 09:24:42 +00:00
31fdde4da9 keycodes: Moved submission to Rust 2019-10-09 09:23:06 +00:00
477a883885 style: Add styling for locked buttons 2019-10-02 16:32:13 +00:00
1c56de8698 Merge branch 'style' into 'master'
style: Avoid conflict with GTK widget names

Closes #119

See merge request Librem5/squeekboard!184
2019-09-29 15:01:32 +00:00
9b5e0109a7 Merge branch 'style_better' into 'master'
Style better

See merge request Librem5/squeekboard!180
2019-09-29 14:28:42 +00:00
60f1ca1408 style: Avoid conflict with GTK widget names
GTK style provider loads the theme on top of the selected CSS file. To ignore the theme, element names must be different than the predefined ones.
2019-09-28 12:11:32 +00:00
de7211d1a5 Merge branch 'drop_color' into 'master'
cleanup: Unused default backgrounds

See merge request Librem5/squeekboard!179
2019-09-26 20:58:49 +00:00
26380ab987 Merge branch 'style' into 'master'
Style: Change classes to paths

See merge request Librem5/squeekboard!178
2019-09-26 19:57:42 +00:00
e513cb9b54 style: Use outline name as CSS class 2019-09-26 13:28:31 +00:00
6fd7ab7405 rendering: Generalize outline rendering 2019-09-26 12:51:45 +00:00
15833323ae styling: Use same context for the entire rendering of a button 2019-09-26 12:51:39 +00:00
653462721b cleanup: Unused default backgrounds 2019-09-26 12:48:22 +00:00
2889e50507 style: Simplified layout styling
Layout background is styled in the same place as button background, and obtains the path "layout".
2019-09-26 11:10:25 +00:00
6b15f69e00 style: Use path instead of class for key 2019-09-26 11:08:38 +00:00
231982d7f7 Drop dead drawing procedures 2019-09-26 07:27:16 +00:00
db994da531 keysyms: Remove dead code 2019-09-13 15:25:48 +00:00
d47aff357b layout: Remove dead code 2019-09-13 15:21:29 +00:00
015ba79f65 Merge branch 'fix_tests' into reparse 2019-09-11 12:03:24 +00:00
04a47ad0af Merge branch '33-multi-touch-typing-not-yet-working' into 'master'
Resolve "Multi-touch typing not-yet working"

Closes #33

See merge request Librem5/squeekboard!135
2019-09-10 09:15:50 +00:00
99c577be60 Merge remote-tracking branch 'upstream/master' into reparse 2019-09-10 09:11:57 +00:00
aa9523338f Merge branch 'buttonlists' into reparse 2019-09-09 15:11:59 +00:00
0ed66e0eab locked: Use keys instead of buttons 2019-09-09 13:54:55 +00:00
6523275b6a views: Change based on layout file 2019-09-09 13:25:03 +00:00
26d1a6047c Merge branch 'fixes' into reparse 2019-09-04 10:18:53 +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
c75ed9b230 Merge branch 'kill_tooltip' into 'master'
tooltips: Remove

See merge request Librem5/squeekboard!150
2019-09-02 14:58:02 +00:00
789e8b6bff Merge branch 'buttonlists' into 'master'
Buttonlists

See merge request Librem5/squeekboard!145
2019-09-02 14:42:19 +00:00
623181cc34 tooltips: Remove 2019-08-31 12:18:55 +00:00
76b5104fb7 Merge branch 'improve-styling' into 'master'
Apply symbol names to widget paths, add styles

See merge request Librem5/squeekboard!148
2019-08-31 12:16:03 +00:00
6c0a642abf Store key instead of button in pressed lists 2019-08-31 11:30:51 +00:00
132435a9c8 Drop callback iteration for button finding 2019-08-31 11:30:51 +00:00
ffc64c6d56 Apply symbol names to widget paths, add styles 2019-08-29 21:02:35 +00:00
83907af456 Fix code formatting 2019-08-29 14:52:10 +00:00
75992ff13f Check for button position more in Rust
The check against fitting inside the Layout was removed: as an optimization it is unneeded, as the actual search must be optimized to be quick. In addition, the view bounds don't correspond to anything physical as long as negative offsets are allowed.
2019-08-29 12:19:42 +00:00
2d7dddd505 Merge branch '56-key-stays-pressed-when-the-keyboard-hides-during-a-keypress' into 'master'
Resolve "Key stays pressed when the keyboard hides during a keypress"

Closes #56

See merge request Librem5/squeekboard!138
2019-08-29 11:50:16 +00:00
b9ab4288d7 Try releasing old touches and only letting new ones be dragged 2019-08-28 15:53:57 +00:00
4a61ab269b layout: Place items using simple loops
The C version of looping over buttons and other items was weakly typed, causing runtime errors, and also C doesn't know how to iterate in abstract, so it was full of callbacks with user-defined data. Moving this to Rust, iteration is made of simple loops, and compile-time type-checked, at the cost of some more verbose code.
2019-08-28 09:41:33 +00:00
1ae8d072a6 Release buttons directly when unmapping the keyboard 2019-08-27 20:04:11 +00:00
e61a3a6fe8 Remove unnecessary assignment 2019-08-26 21:13:04 +00:00