afe6a6cf74
Merge branch 'orphans' into 'master'
...
tests: Check for orphaned layout files
See merge request World/Phosh/squeekboard!574
2022-09-29 16:25:47 +00:00
a09a51ada9
Add wide Swedish layout
...
Closes https://gitlab.gnome.org/World/Phosh/squeekboard/-/issues/351
2022-09-15 18:59:43 +02:00
d26927dc44
tests: Check for orphaned layout files
...
This adds a test which scans the layouts directory for files which have not been added to the resources file.
The majority os user-submitted layouts don't include layout registration, and I ran out of ideas for how to make it more visible in the documentation. Instead, it's going to be solved on the other side: the CI pipelines shall fail.
To make it easy on experimenters with untidy trees, it's disabled by default.
2022-09-15 14:13:40 +00:00
c30e951907
style: Use layout name as css class
2022-09-03 08:04:40 +00:00
51f8217646
build: Use Cargo.lock included with the repo by default
...
This should fix some future problems with dependencies getting updated in a way that's unsupported by the build tools targeted by Squeekboard.
2022-09-01 17:04:25 +00:00
a3f6349376
Merge branch 'hide' into 'master'
...
state: Don't animate when force-hidden
See merge request World/Phosh/squeekboard!565
2022-09-01 13:52:01 +00:00
0339a4a50f
added US Dvorak Terminal
2022-07-11 06:54:09 +00:00
4ae78b89c6
state: Don't animate when force-hidden
2022-07-08 05:34:36 +00:00
cc7657e78c
Merge branch 'leak' into 'master'
...
gtk: Persist panel state
See merge request World/Phosh/squeekboard!563
2022-07-06 06:03:27 +00:00
70bf101812
gtk: Persist panel state
...
Creating and destroying the panel as needed causes a resource leak somewhere in the deeper layers of the stack. This is a workaround.
See https://gitlab.gnome.org/World/Phosh/squeekboard/-/issues/343
2022-07-01 08:07:29 +00:00
9528339e02
build: Generate files before compiling sources
2022-06-30 18:12:57 +00:00
7f9baa8021
Added Georgian layout
2022-06-24 18:28:21 +00:00
ea73a34eb8
Merge branch 'layouts' into 'master'
...
state: Select the layout
See merge request World/Phosh/squeekboard!553
2022-06-14 15:23:14 +00:00
c1ceec3673
state: Become the source of layout choice
...
A redesign of popover was needed: it can no longer query the application state directly due to current state being its own actor, so instead the popover gets a dedicated copy of the relevant state.
I'm not entirely happy with the extra complexity of having an extra actor just for 1 string, but at least the duplication between C and Rust and mutual calls have been reduced.
2022-06-06 16:10:53 +00:00
30141db28d
main: Dry-load layout in response to the layout command
2022-06-06 16:10:53 +00:00
8d0e1b4548
state: Use IM hint and purpose for layout selection
2022-06-06 16:10:53 +00:00
e6326b9b38
state: Use dummy layout command
2022-06-06 16:10:53 +00:00
b634e2bfa4
state: Decide panel arrangement
...
Combines arrangement with layout to get panel contents as outcome.
Includes some path syntax changes for 2018 compatibility.
2022-06-06 16:10:53 +00:00
590cd71f49
state: Store layout override
...
Not used for any externally observable effects
2022-06-06 16:10:53 +00:00
8ff72f312a
state: Include layout choice in visible outcome
...
This is still in preparation and doesn't issue any observable effects.
2022-06-06 16:10:53 +00:00
82774d2315
state: Record layout choice
...
This does not get plugged into anything but debug prints yet.
2022-06-04 17:47:09 +00:00
c75723b705
Add FR+Bépo layout
2022-06-01 21:02:21 +02:00
c0f57e7355
glib: Fix import
2022-04-28 15:28:36 +00:00
36474d3e9d
Merge branch 'output_fix' into 'master'
...
Panel handling cleanup
See merge request World/Phosh/squeekboard!529
2022-04-21 07:28:38 +00:00
58c7fe98b8
layout: fix build on i386
...
Due to the (lack of) precision of floating-point values, comparison
results may differ slightly between architectures, leading to the
`check_stretching` test failing when building for i386. This can be
fixed by adjusting the value against which we compare the ratio between
x/y scaling factors in `calculate_transformation`.
2022-04-20 12:43:20 +02:00
2eec3372f3
panel: Split away panel handling
...
This reduces ServerContextService to a mere handler of "docked mode" gsetting.
2022-04-13 16:49:33 +00:00
f6724c0948
Merge branch 'debug' into 'master'
...
Enable debugging at runtime
See merge request World/Phosh/squeekboard!526
2022-04-13 16:40:36 +00:00
68087a125c
layout: allow stretching the layout by a small amount
...
Due to the way the panel size is calculated, there might be a small
empty space on the sides or top of the layout. This can be an issue,
especially when this empty space is located on the sides, as touch
events in this area are not taken into account.
By allowing a small difference in horizontal and vertical scaling, we
can ensure the panel occupies the whole display width in cases where
this would be problematic.
2022-04-09 16:43:06 +02:00
323fd7ea14
Merge branch 'phys_size' into 'master'
...
Physically-based sizing
See merge request World/Phosh/squeekboard!543
2022-04-08 17:30:04 +00:00
8ea6f6d5c1
layouts: Register gr_wide
2022-04-07 14:59:06 +00:00
3b70116a15
Merge branch 'gro' into 'master'
...
layouts: Add Greek Polytonic
See merge request World/Phosh/squeekboard!540
2022-04-07 14:33:23 +00:00
397f5e126e
state: Add sizing unit test
2022-04-07 14:30:46 +00:00
14d7d5d4e0
Clean up size types
2022-04-06 16:03:31 +00:00
6528879fed
state: Derive panel size from physical click target size
2022-04-06 15:53:37 +00:00
57aeeaa882
output: Store physical size
2022-04-06 08:58:41 +00:00
bbceba7e9b
debug: Add dbus interface to control debug prints
2022-04-05 14:19:52 +00:00
5a210712f6
Merge branch 'fix' into 'master'
...
Fix scaling to set height
See merge request World/Phosh/squeekboard!535
2022-04-05 11:55:55 +00:00
bb8bba163e
layouts: Add Greek Polytonic
...
By Antonis Tsolomitis <atsol@aegean.gr >
2022-04-05 11:41:27 +00:00
83b0d1553f
state: fix "wide mode" detection in portrait orientation
...
We need to check if we should use the wide layout based on the
*logical* display width, not its *physical* resolution.
2022-04-05 10:16:22 +00:00
29b30fbe22
panel: Use scaling to set height
2022-04-05 09:26:11 +00:00
04018a8c06
Do not reset pending state on zwp_input_method_v2.done
2022-03-15 15:51:09 -04:00
dd2871b6bb
Merge branch 'output' into 'master'
...
Derive panel size from outputs
See merge request World/Phosh/squeekboard!528
2022-02-26 10:49:52 +00:00
0b9350d19b
Check if dbus handler is null before using
2022-02-08 10:56:00 -05:00
16d6871422
panel: Apply a hard limit of 1/2 height
2022-02-04 09:40:21 +00:00
78ff02e255
output: Use new source of panel height information
...
This removed duplicate calculation of ideal height as well.
2022-02-04 09:40:21 +00:00
a3f91701d0
outputs: Remove ui manager
2022-02-04 09:40:21 +00:00
697be64418
visibility: Forward panel height information to window creation
2022-02-04 09:40:21 +00:00
a4b67c65ff
Don't reach for globals to choose output
...
This actually removes the size request from panel creation. Incidentally, this still works becuae the following configure event gets the sizes from glib.
2022-02-04 09:40:21 +00:00
f040e708a4
Carry output information on visible command all the way to C
2022-02-04 09:40:18 +00:00
e6c19a1e6a
deps: Vendor assert_matches
...
The library is small and simple enough to be considered "finished". In addition, it doesn't seem to be shipped by Debian.
In relation to its usefulness, it's little effrt to copy it.
2022-02-04 09:38:06 +00:00