0a0f7a09a4
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-28 10:45:04 +00:00
9ef38ecf30
Drop callback iteration for button finding
2019-08-28 10:45:00 +00:00
a64bff6aab
button: Add const qualifiers where needed
2019-08-18 13:22:18 +00:00
f479a36dbe
keyboard: Remove references
2019-08-18 13:22:18 +00:00
e56f1c6392
row: Move button find iteration into row
2019-08-18 13:22:18 +00:00
c4b3a0aaaa
row: Moved button sizing closer to row
2019-08-18 13:22:18 +00:00
f50f8e95b1
Remove unused outline rendering function
2019-08-18 13:22:18 +00:00
77d4f45d13
section: Elininate references
2019-08-18 13:22:18 +00:00
0d33179727
section: Moved bounds to row
2019-08-18 13:22:18 +00:00
4f8de42598
section: Move properties into Row
2019-08-18 13:22:18 +00:00
6fc351d2e8
eekkey: Dropped in favor of Button
...
Each Button has a KeyState, which may be shared with other buttons. The list of pressed and locked buttons is used as a list of keys, causing a search for the button in the current view.
2019-08-18 13:22:18 +00:00
0c83101b3f
container: Drop parent reference
2019-08-18 13:22:17 +00:00
fc683de434
keyboard: Pass the current view instead of level
2019-08-18 13:20:43 +00:00
996f681e5c
keystate: Removed multiple symbols
2019-08-18 13:20:43 +00:00
f371b14e89
levelkeyboard: Use a layer for managing keyboard views
2019-08-08 19:26:21 +00:00
fb93e25833
eekkey: Moved state to KeyState
2019-08-08 19:18:29 +00:00
53b89aae45
symbol: Remove remains
2019-08-08 19:18:29 +00:00
b76e43679e
level: Remove level from elements
2019-08-08 19:18:29 +00:00
077ca8fad2
level: Make keyboard the only source of level data
2019-08-08 19:18:29 +00:00
23d5f18d4a
symbols matrix: Remove in favor of a levels vector
2019-08-08 19:18:28 +00:00
38f81e45f4
Break out symbol handling into Rust
2019-08-08 12:51:15 +00:00
c1482c2377
Merge branch 'add-frame-rendering' into 'master'
...
Add frame rendering, fix style sheet to show key borders
See merge request Librem5/squeekboard!123
2019-08-05 21:20:36 +00:00
f7d30b0df3
Clarify some arithmetic warnings
2019-08-05 17:01:22 +00:00
3e35b7441e
Drop unused variables
2019-08-05 17:01:22 +00:00
0b59262e95
Add frame rendering, fix style sheet to show key borders
2019-08-05 13:39:22 +02:00
593946779e
Correct icon size for scaling
2019-08-05 13:21:01 +02:00
25a6a00f0f
Merge branch 'fix-key-press-checks' into 'master'
...
Use keyboard's coordinate system to check for presses
See merge request Librem5/squeekboard!118
2019-08-04 10:52:58 +00:00
da88831689
Fix key rendering to only scale once
2019-08-02 17:04:16 +02:00
7b6c6e51b3
Fix background rendering
2019-08-02 17:04:16 +02:00
42b2b3b8f6
Replace the Eek theme support with GTK classes
...
This brings the appearance of the keyboard basically in line with what
was there before. The background and key borders still need to be fixed
and the text and icons should probably be drawn using the style context.
2019-08-02 17:04:16 +02:00
4cd15c074e
Merge branch 'fixes' into 'master'
...
Fixes
See merge request Librem5/squeekboard!115
2019-08-02 15:03:33 +00:00
9bfdabdf57
Merge branch 'textproperty' into 'master'
...
Removed text categories
See merge request Librem5/squeekboard!114
2019-08-02 14:36:41 +00:00
9375bc212b
Use keyboard's coordinate system to check for presses
2019-08-02 14:05:36 +00:00
f852cab0f9
Fix warnings, add gtk-doc strings
2019-08-02 12:49:15 +02:00
f53babcd68
Add gtk-doc style comment
2019-08-02 12:48:35 +02:00
016c1086e6
Center the keyboard horizontally
...
Also simplify individual key rendering to make the rendering model more
coherent.
2019-08-02 12:48:35 +02:00
f7dd4c84b1
renderer: Render label directly
2019-08-02 09:21:38 +00:00
d8b26040f9
symbolclass: Remove with surroundings
...
Collaterals: Enabled strict checking of initializers, fixed scripts generating keycode mappings.
2019-08-01 20:08:37 +00:00
504285c08f
fonts: Reset font size to a constant
...
The font size will only be affected by the scaling factor, and not by an attempt to fit the labels into buttons.
Left to do: adjust it based on CSS.
2019-08-01 17:25:38 +00:00
8f1de46381
Simplify layout and rendering
...
Remove pre-scaling of the bounds for the keyboard and its contents.
Calculate the scale factor based on the allocation and the desired width
and height of each keyboard, using the lower value of the horizontal and
vertical scale factors.
Apply scaling in the renderer and prepare to perform centering there.
2019-07-30 21:48:36 +00:00
236415cde4
Merge branch 'add-landscape-orientation' into 'master'
...
Add landscape orientation
See merge request Librem5/squeekboard!99
2019-07-30 11:19:41 +00:00
99a7786dc3
Remove declaration of unused variable
2019-07-26 12:01:04 +02:00
ce311e1bf1
Use the standard button size for icons
2019-07-25 20:14:32 +00:00
1246776328
Create the keyboard surface every time it is needed
...
Icons are still blurry the first time the keyboard is shown after
rotation.
2019-07-24 14:04:28 +00:00
ea15f69e73
Render the keyboard to a subsurface of the widget
2019-07-24 13:12:57 +00:00
e5b6d66d60
Omit keys without labels on the current level, update key definitions
2019-07-20 17:17:37 +02:00
a5875402ef
Move EekGtkRenderer features into EekRenderer
2019-07-18 15:42:27 +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
086f6bd772
renderer: Only scale by output scale
...
The original eekboard code scaled icons by a factor. That was simplified
in c529e9ed9c but we can do away with it
completely and fetch the icons at the right size making them not blurry.
2019-07-15 13:23:16 +02:00
d0fa444a0e
Honor the outputs scale factor
2019-07-15 13:13:34 +02:00