Commit Graph
100 Commits
Author SHA1 Message Date
dcz 6eb3914ab3 Merge branch 'po' into 'master'
Add initial po support

Closes #315

See merge request World/Phosh/squeekboard!497
2021-12-05 18:02:55 +00:00
dcz 956377fd2f Merge branch 'input-purpose-toggle' into 'master'
Honor input-purpose only changes

Closes #311

See merge request World/Phosh/squeekboard!493
2021-12-05 14:33:54 +00:00
dcz 0a09036979 Merge branch 'de_DE-translation' into 'master'
langs: Don't use empty translation file

Closes #313

See merge request World/Phosh/squeekboard!496
2021-12-03 17:30:20 +00:00
dcz 9fbb974ce4 Merge branch 'have-more-fun-developing-squeekboard' into 'master'
main: Add debug flags to always show squeekboard on start and to activate GTK inspector

See merge request World/Phosh/squeekboard!485
2021-11-30 14:16:08 +00:00
dcz e989df8b21 Merge branch 'purpose-pin' into 'master'
Honor input-purpose PIN

See merge request World/Phosh/squeekboard!491
2021-11-30 13:11:02 +00:00
dcz f3eeedc92f Merge branch 'style-check' into 'master'
Move style-check to separate script

See merge request World/Phosh/squeekboard!488
2021-11-23 17:53:02 +00:00
dcz f80faabfb1 Merge branch 'fix-terminal-fr-wide' into 'master'
resources: add wide FR terminal keyboard

See merge request World/Phosh/squeekboard!486
2021-11-23 13:58:58 +00:00
dcz 59662444d7 Merge branch 'fix-style-provider-crash' into 'master'
renderer: Disconnect theme change signal handler

See merge request World/Phosh/squeekboard!484
2021-11-22 17:16:01 +00:00
dcz 2169e0393b Merge branch 'phosh-dark' into 'master'
Use dark theme when run in a Phosh session

Closes #242

See merge request World/Phosh/squeekboard!482
2021-11-22 13:27:07 +00:00
dcz 9ba900bf42 Merge branch 'honor-theme-changes' into 'master'
eek-renderer: Honor theme changes

Closes #296

See merge request World/Phosh/squeekboard!483
2021-11-22 13:23:22 +00:00
dcz 5d6a9556ae Merge branch 'keyboard-layout-armenian' into 'master'
armenian typewriter and phonetic keyboards.

See merge request World/Phosh/squeekboard!478
2021-11-19 18:27:54 +00:00
dcz e487343046 Merge branch 'message' into 'master'
dbus: Hint that maybe squeekboard is running

See merge request World/Phosh/squeekboard!475
2021-11-19 15:56:54 +00:00
dcz f15e4db818 Merge branch 'meson-0.60.0' into 'master'
data: Fix build with meson 0.60.0

Closes #299

See merge request World/Phosh/squeekboard!479
2021-11-06 13:05:27 +00:00
Dorota Czaplejewicz dc7e84810b dbus: Hint that maybe squeekboard is running
It seems that is Squeekboard is already running, the next instance will not fail to acquire a bus name, but instead lose it immediately. This message has been reported by users who experiment with Squeekboard for the first time, so let's make it easier for them to find the solution without having to reach out.
2021-10-31 14:39:43 +00:00
dcz fc411d680b Merge branch 'guide' into 'master'
readme: Mention the layout guide

See merge request World/Phosh/squeekboard!476
2021-09-11 07:54:40 +00:00
Dorota Czaplejewicz a74116a72f readme: Mention the layout guide
Hopefully this will cause the number of people asking questions answered there lower.
2021-08-30 10:10:05 +00:00
dcz fdb288c836 Merge branch 'version' into 'master'
build: Fix "any" dependency versioning

Closes #291

See merge request World/Phosh/squeekboard!474
2021-08-27 10:40:14 +00:00
Dorota Czaplejewicz 9cd56185c5 build: Fix "any" dependency versioning
The version="" syntax is rejected with Rust 1.54, so change that to "*".
2021-08-23 14:53:51 +00:00
dcz 1f91cf00a4 Merge branch 'master' into 'master'
Add documentation about compositors

See merge request World/Phosh/squeekboard!473
2021-08-20 11:03:29 +00:00
Dorota Czaplejewicz 82c320a075 Merge branch 'release' into HEAD 2021-08-19 12:22:12 +00:00
Dorota Czaplejewicz 5db16f63ea Merge remote-tracking branch 'petrisch/master' into HEAD 2021-08-19 11:58:17 +00:00
Dorota Czaplejewicz 135403d878 Merge remote-tracking branch 'gnome/master' into HEAD 2021-08-19 11:29:44 +00:00
Dorota Czaplejewicz 4efe57cbb4 Merge branch 'layersurface_duplicate' into 'master'
layersurface: avoid duplicate assignment

See merge request Librem5/squeekboard!467
2021-06-18 15:49:31 +00:00
Dorota Czaplejewicz 83942c27b8 Merge branch 'error-on-no-layer-shell' into 'master'
Show error when compositor doesn't support Layer Shell

Closes #284

See merge request Librem5/squeekboard!466
2021-06-05 16:21:30 +00:00
Dorota Czaplejewicz 29ef4f5bed Merge branch 'keyboard-layout-bulgarian-bds' into 'master'
Add Bulgarian BDS layout

See merge request Librem5/squeekboard!464
2021-06-05 16:20:39 +00:00
Dorota Czaplejewicz 9b52edbf99 Merge branch 'master' into 'master'
Introduce Swiss French keyboard layout

See merge request Librem5/squeekboard!463
2021-05-24 12:29:01 +00:00
Dorota Czaplejewicz 97c7c4557d Docs: Release procedure 2021-05-22 14:25:57 +00:00
Dorota Czaplejewicz 19630334b0 Merge branch '1.14.0' into 'master'
Release 1.14.0 "Swim bladder"

See merge request Librem5/squeekboard!458
2021-05-22 14:08:22 +00:00
Dorota Czaplejewicz 7e4487c757 Merge branch 'layouts/arabic' into 'master'
Introduce Arabic keyboard layout

See merge request Librem5/squeekboard!460
2021-05-22 14:07:56 +00:00
Dorota Czaplejewicz 8293c5f10d Release 1.14.0 "Swim bladder"
Changes:
- fixed builds in paths that would be shell-escaped
- layout popover leaves the panel area
- global styles better picked up
- and code quality improvements
2021-05-15 12:46:42 +00:00
Dorota Czaplejewicz 601c835416 cargo: Update dependencies before release 2021-05-15 12:37:18 +00:00
Dorota Czaplejewicz 07d7486e06 Merge branch 'fix_biuld' into 'master'
build: Fix unnecessary shell quotes

See merge request Librem5/squeekboard!454
2021-05-15 12:25:00 +00:00
Dorota Czaplejewicz 5cb70a096c Merge branch 'popover' into 'master'
popover: Allow spanning outside panel area

See merge request Librem5/squeekboard!455
2021-05-15 12:24:22 +00:00
Dorota Czaplejewicz cb211bb764 Merge branch 'safer' into 'master'
remove some unnecessary unsafe code

See merge request Librem5/squeekboard!457
2021-05-11 06:18:09 +00:00
Dorota Czaplejewicz 8c8728aa0f Merge branch 'fix-priority' into 'master'
use the correct priority to allow users' CSS to apply

See merge request Librem5/squeekboard!456
2021-05-11 06:12:54 +00:00
Dorota Czaplejewicz eb4b630b39 popover: Allow spanning outside panel area 2021-05-08 09:12:49 +00:00
Dorota Czaplejewicz b60ebdbd99 build: Fix unnecessary shell quotes
Quotes aren't needed when the arguments aren't expanded by the shell.

Now paths with spaces and other nontrivial characters work.
2021-05-08 08:56:24 +00:00
Dorota Czaplejewicz 99f062fe31 Merge branch 'arrange' into 'master'
Rearrange code dealing with layout files

See merge request Librem5/squeekboard!449
2021-04-23 09:07:33 +00:00
Dorota Czaplejewicz 0bc654b832 Merge branch 'data-keyboard-fix-typos' into 'master'
Fix typos jp keyboard comments

See merge request Librem5/squeekboard!452
2021-04-15 05:56:02 +00:00
Dorota Czaplejewicz 8aefae9634 Release 1.13.0 "Externality"
Changes:

- A system for latching and locking views
- Some crash fixes
- Locale-flavored terminals
- A way to add locale-flavored emoji and numbers layouts
- Making the code less annoying to work with in some places
- Fixed layout changes on newer GSettings
- Mod4 modifier
- Better session registration
- New layouts: Dvorak, Colemak wide, hebrew, wide Thai
2021-04-12 10:52:17 +00:00
Dorota Czaplejewicz 52e2384f72 Cargo: Version bump 2021-04-12 10:36:55 +00:00
Dorota Czaplejewicz 0eb9d89de3 Merge branch 'hints' into 'master'
layout: Take into account text purpose again

Closes #277

See merge request Librem5/squeekboard!448
2021-04-12 10:24:19 +00:00
Dorota Czaplejewicz c23b6f5f50 Merge branch 'layout' into 'master'
layouts: Stop assuming that layout name always changes on switch

Closes #276

See merge request Librem5/squeekboard!450
2021-04-12 10:21:35 +00:00
Dorota Czaplejewicz e4f1b121eb Merge branch 'errors' into 'master'
rust: Fix compiler warnings

See merge request Librem5/squeekboard!445
2021-04-09 08:36:06 +00:00
Dorota Czaplejewicz 4f3bec3989 Merge branch 'doc' into 'master'
docs: Describe view switching

See merge request Librem5/squeekboard!443
2021-04-09 08:35:44 +00:00
Dorota Czaplejewicz 4fdce2802a layouts: Stop assuming that layout name always changes on switch
Layout type switching outside of overlay was always done with gsettings in the middle, assuming that all clicks on languages in the popover result in a gsettings event. That's a bad assumption if there's only one xkb lang present.

This is a simple work around. A better solution would be to turn the entire system of layout switching into a central object that receives messages about changes that need to be applied, and then applies them.
2021-04-07 15:26:18 +00:00
Dorota Czaplejewicz 99c04fd8f5 layout: Remove unused code 2021-04-05 11:09:35 +00:00
Dorota Czaplejewicz 2b7e8f829e data: Split into loading and parsing 2021-04-05 11:03:57 +00:00
Dorota Czaplejewicz 1908769032 layouts: Make selection testable
From now on, all the parameters for loading layout are handled inside a single pure function, which makes them possible to test.

As a side benefit, the old preference order function composed of a mess of nested procedures is gone.
2021-04-05 10:36:41 +00:00
Dorota Czaplejewicz 93e4345e82 layout: Take into account text purpose again 2021-04-05 08:17:07 +00:00
Dorota Czaplejewicz acac00bc88 Merge branch 'terminal' into 'master'
Fix emoji and number layouts

See merge request Librem5/squeekboard!444
2021-04-01 18:59:47 +00:00
Dorota Czaplejewicz ac03c26d5d rust: Fix compiler warnings 2021-04-01 16:30:53 +00:00
Dorota Czaplejewicz 608be930f7 layout selection: Fix emoji and number 2021-04-01 16:24:06 +00:00
Dorota Czaplejewicz 36d4f6726c language-terminal: Place keyboards in a sub-path 2021-04-01 16:05:44 +00:00
Dorota Czaplejewicz d289129404 Merge branch 'master' into 'master'
Rust additions to make terminal keyboard shows a localized layout

See merge request Librem5/squeekboard!437
2021-04-01 15:17:54 +00:00
Dorota Czaplejewicz 225e53df07 docs: Describe view switching 2021-04-01 12:41:51 +00:00
Dorota Czaplejewicz d8e58fd774 Merge branch 'keyboard-layout-hebrew' into 'master'
moved data/langs/he_IL.txt -> data/langs/he-IL.txt to better conform with existing translations.

See merge request Librem5/squeekboard!442
2021-03-31 12:04:37 +00:00
Dorota Czaplejewicz b578414655 Merge remote-tracking branch 'upstream/master' into latch 2021-03-31 09:48:29 +00:00
Dorota Czaplejewicz 89b1f51ed5 appearance: Colour latched/locked according to design 2021-03-31 09:13:51 +00:00
Dorota Czaplejewicz 7b1755a489 renderer: Mark latched buttons differently than locked
There are some hacks here in the form of an extra field "appears_locked_from", which can be used to hint that the user should see the button as locked. Without it, there's some confusion on user side regarding buttons that change states unprompted.
2021-03-31 09:11:11 +00:00
Dorota Czaplejewicz 676a2b60ac layout: Make it possible to opt out of latching per-key 2021-03-31 09:09:38 +00:00
Dorota Czaplejewicz 32dc25dfbf Revert "moved data/langs/he_IL.txt -> data/langs/he-IL.txt to better conform with existing translations."
This reverts commit d8ca9f47ca.

This touches way more than advertised.
2021-03-31 08:39:57 +00:00
Dorota Czaplejewicz 484d64cfb9 Merge branch 'keyboard-layout-hebrew-fix-layout' into 'master'
Fix Hebrew layout inconsistencies with standard hebrew layout.

Closes #272

See merge request Librem5/squeekboard!440
2021-03-31 08:27:02 +00:00
Dorota Czaplejewicz 637da2c177 Merge branch 'gnome-session' into 'master'
Complete session registration

Closes #274

See merge request Librem5/squeekboard!441
2021-03-31 08:17:39 +00:00
Dorota Czaplejewicz 3210a363ab Merge branch 'keyboard-layout-hebrew' into 'master'
Add Hebrew translations for most layouts.

See merge request Librem5/squeekboard!439
2021-03-30 17:55:11 +00:00
Dorota Czaplejewicz f45f2db948 Merge branch 'crash' into 'master'
Stop requiring a renderer to be present to get a transformation

Closes #270

See merge request Librem5/squeekboard!438
2021-03-30 13:45:32 +00:00
Dorota Czaplejewicz 24c3fac505 renderer: Split mutable geometry and place it directly in GtkKeyboard
Geometry is now permanently married to the widget rather the renderer. While geometry is not always defined, C doesn't support sum types, so checks won't be enforced by the compiler. It's OK to pretend there's always some geometry to avoid crashes.
2021-03-17 14:37:54 +00:00
Dorota Czaplejewicz 46f8790fc0 renderer: Reduce reliance on knowing the transform 2021-03-17 13:29:02 +00:00
Dorota Czaplejewicz 3cdced0c0c Merge branch 'fixes' into 'master'
Rust fixes

See merge request Librem5/squeekboard!435
2021-03-17 13:21:46 +00:00
Dorota Czaplejewicz bffd212e10 Merge branch 'it' into 'master'
italian: Fix colon

See merge request Librem5/squeekboard!434
2021-03-09 16:03:38 +00:00
Dorota Czaplejewicz c2c379b870 Rust: Remove unnecessary no_mangle statements to silence warnings 2021-03-09 14:59:23 +00:00
Dorota Czaplejewicz 1ae29ff7bc popover: Fix prematurely deallocated CString 2021-03-09 14:36:37 +00:00
Dorota Czaplejewicz d3cd7dc11f italian: Fix colon 2021-03-09 14:09:59 +00:00
Dorota Czaplejewicz d3695d3bc9 Merge branch 'th-enhancement' into 'master'
Add wide Thai keyboard layout

See merge request Librem5/squeekboard!433
2021-02-13 16:01:45 +00:00
Dorota Czaplejewicz 842e616cd3 Merge branch 'master' into 'master'
Add Mod4 (Windows) key

See merge request Librem5/squeekboard!432
2021-02-11 17:44:02 +00:00
Dorota Czaplejewicz e6c45a63fb Merge branch 'master' into 'master'
Added hebrew keyboard layout

See merge request Librem5/squeekboard!430
2021-02-06 10:45:12 +00:00
Dorota Czaplejewicz bedabb6188 Merge branch 'catalan' into 'master'
Catalan keyboard layout

See merge request Librem5/squeekboard!431
2021-02-06 10:38:18 +00:00
Dorota Czaplejewicz 49aa4256a9 Merge branch 'keyboard-layout-us+dvorak' into 'master'
Add US Dvorak layout (and Colemak wide)

See merge request Librem5/squeekboard!427
2021-01-26 09:07:22 +00:00
Dorota Czaplejewicz 575619e812 Merge branch 'tagfix' into 'master'
CI: fix xheck_tag to be compatible with Amber

See merge request Librem5/squeekboard!428
2021-01-24 06:28:26 +00:00
Dorota Czaplejewicz 630cfc8e59 CI: fix xheck_tag to be compatible with Amber 2021-01-24 06:07:06 +00:00
Dorota Czaplejewicz 2a11bce945 Merge branch 'serial' into 'master'
imservice: Increment serials on receiving done, not sending commit

See merge request Librem5/squeekboard!426
2021-01-24 05:14:57 +00:00
Dorota Czaplejewicz fefebf7f6e Release 1.12.0 "Convolution"
User-visible changes:
- Fixed a crash related to making keyboard visible.
- Better fallback: when selecting a missing layout named "fr+foo", "fr" will be used instead.
- When enabling the keyboard manually, it will never be stuck in the numbers view.
- Thai layout
- US-Colemak layout
- Czech layouts
- Esperanto layout
- Bulgarian layout
- Improved Norwegian layout

That's a lot of new layouts!

Plus a bunch of stricter warnings, MIPS64el support, and reproducible building.
2021-01-11 11:43:39 +00:00
Dorota Czaplejewicz 21c3a74019 cargo: Update dependencies for release 2021-01-11 11:43:39 +00:00
Dorota Czaplejewicz 0c179560b3 visibility: Stop calling GTK functions from the visibility manager
The viibility manager state is changed from various handlers, which are not guaranteed to be reentrant, most notably the Wayland handler for preedit done.
As the state is changed, relevant requests to synchronize user-visible UI are fired from the same handler.

In case of imservice_handle_done, GTK widget show function was being called, which triggered another round of handling Wayland, leading to the done handler being called again, and flaking out.

To solve this, the phase of issuing commands needs to be separate from adjusting desired state. It seems that the easiest solution is to delay the show() and hide() calls into the next GTK main loop spin.

A better solution would probably inject itself directly after the change of desired state, so that *all* the side effects are delayed.
2021-01-10 11:04:02 +00:00
Dorota Czaplejewicz 38842f9743 input-method: Fix commit/done mixup in protocol text 2021-01-10 10:45:14 +00:00
Dorota Czaplejewicz 3cbfd8351c imservice: Increment serials on receiving done, not sending commit
No idea how that managed to stay undetected for so long.
2021-01-10 10:41:17 +00:00
Dorota Czaplejewicz 6e7c0e6f67 Merge branch 'keyboard-layout-farsi' into 'master'
Farsi/Persian keyboard layout

See merge request Librem5/squeekboard!424
2020-12-30 13:54:49 +00:00
Dorota Czaplejewicz 4d24af4e1a Merge branch 'test_docs' into 'master'
Make layout lists more ordered

See merge request Librem5/squeekboard!417
2020-12-21 14:40:11 +00:00
Dorota Czaplejewicz 422d06d582 Merge branch 'reset_hint_smart' into 'master'
dbus: Reset hints if text input missing

Closes #256

See merge request Librem5/squeekboard!421
2020-12-16 16:00:53 +00:00
Dorota Czaplejewicz 4890c86b4e dbus: Reset hints if text input missing 2020-12-15 13:20:34 +00:00
Dorota Czaplejewicz b72c6b53e4 Merge branch 'fix_norwegian_button_size' into 'master'
no: Use wide button switching between numbers, symbols and base

See merge request Librem5/squeekboard!419
2020-12-15 12:37:42 +00:00
Dorota Czaplejewicz 658df98e18 layout_names: Unmess the list of builtin layouts 2020-12-12 07:42:32 +00:00
Dorota Czaplejewicz 6f7252ec7c tests: Add some description to the list of tested layouts
Contributors have started to make it messy.
2020-12-12 07:40:51 +00:00
Dorota Czaplejewicz 558a2568e3 Merge branch 'undefined' into 'master'
Bulgarian language keyboard layout

See merge request Librem5/squeekboard!418
2020-12-12 07:38:34 +00:00
Dorota Czaplejewicz 9a72db2fcc Merge branch 'esperanto' 2020-12-07 15:33:01 +00:00
Dorota Czaplejewicz c6cc58fd8e ffi: Eliminate squeek_button and squeek_row 2020-12-04 17:34:53 +00:00
Dorota Czaplejewicz 9522d4e302 renderer: Bring button drawing closer to Rust 2020-12-04 15:35:02 +00:00
Dorota Czaplejewicz 8f62520648 view: Ąto-unlatching when multiple latching buttons pressed
Best seen in the PL layout, where to get to Ą, two buttons must be latched: Capitals, and then Accents.
2020-12-04 10:02:04 +00:00
Dorota Czaplejewicz e36c4e597f layout: Remove the little abomination of view change promise
It didn't make anything more testable due to being tightly coupled to Layout.
With the last place needing the curent form abolished, it's no longer needed.

No attempt to make it more stateless and unit-testable was made though.
2020-12-03 19:56:48 +00:00
Dorota Czaplejewicz 8ab6997b21 layout: Plug in stateless view switching 2020-12-03 19:44:26 +00:00