Commit Graph
100 Commits
Author SHA1 Message Date
David Boddie 3085a10507 Merge branch 'cleanup' into 'master'
xml: Remove unused file

See merge request Librem5/squeekboard!110
2019-08-01 15:06:43 +00:00
David Boddie c8bc2c424f Merge branch 'errors' into 'master'
Errors

See merge request Librem5/squeekboard!107
2019-07-31 18:54:15 +00:00
David Boddie 46fa6d4500 Merge branch 'rust_tests' into 'master'
Rust tests

See merge request Librem5/squeekboard!106
2019-07-31 17:11:33 +00:00
David Boddie 6002774f95 Merge branch 'imservice_cleanups' into 'master'
Imservice cleanups

See merge request Librem5/squeekboard!105
2019-07-31 14:27:13 +00:00
David Boddie 35ff93258e Adjust geometry to match the compact keyboard in places 2019-07-31 00:43:39 +02:00
David Boddie c58d034494 Adjust bounds of the keyboard to better fit it in the available space 2019-07-31 00:43:36 +02:00
David Boddie 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
David Boddie 1846a67e83 Merge branch 'readme' into 'master'
readme: Change the clone URL

Closes #30

See merge request Librem5/squeekboard!100
2019-07-30 20:39:09 +00:00
David Boddie 35ac14806c Rename keypad-related files 2019-07-30 20:47:29 +02:00
David Boddie 5eeaa1c693 Remove unused geometry file 2019-07-30 19:28:16 +02:00
David Boddie 9b2fcf89e8 Use a test-oriented init call 2019-07-30 17:20:15 +02:00
David Boddie e801a68f0d Add comments to explain what empty labels do 2019-07-30 16:50:23 +02:00
David Boddie d49e0eaa1b Center the keyboard in landscape orientation 2019-07-26 22:27:56 +00:00
David Boddie 107399a531 Don't set the geometry of the window in normal use
Setting the geometry prevents the widget from getting the correct
allocation and prevents us from positioning it correctly in
landscape mode.
2019-07-26 22:26:02 +00:00
David Boddie 99a7786dc3 Remove declaration of unused variable 2019-07-26 12:01:04 +02:00
David Boddie 2f0beb6d3a Add a simple test of keymap generation 2019-07-25 22:25:30 +02:00
David Boddie 3ab3627ffe Remove unused keymaps 2019-07-25 22:25:30 +02:00
David Boddie 70895999c2 Generate XKB keymaps from XML instead of using pre-made ones 2019-07-25 22:25:29 +02:00
David Boddie ce311e1bf1 Use the standard button size for icons 2019-07-25 20:14:32 +00:00
David Boddie e9cf572a3c Only recreate the widget when the keyboard layout changes
Avoid creating a widget before there is a window to put it in.
2019-07-25 18:07:29 +00:00
David Boddie 943b2ad9f3 Merge branch 'xkb_resource_oob_read' into 'master'
Fix out of bounds memory read in get_keymap_from_resource.

See merge request Librem5/squeekboard!97
2019-07-25 13:20:35 +00:00
David Boddie 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
David Boddie ea15f69e73 Render the keyboard to a subsurface of the widget 2019-07-24 13:12:57 +00:00
David Boddie 2e22bb5431 Merge branch 'fix-squeekboard-resources' into 'master'
Ensure that resources are built with the application

See merge request Librem5/squeekboard!95
2019-07-23 23:25:33 +00:00
David Boddie a9a6e1d2b5 Ensure that resources are built with the application 2019-07-24 01:22:58 +02:00
David Boddie 4b66add65f Merge branch 'ci' into 'master'
Run tests in ci

See merge request Librem5/squeekboard!94
2019-07-23 11:29:34 +00:00
David BoddieandGuido Günther 9b10f56ba6 Keep the build directory as an artifact 2019-07-23 10:18:44 +02:00
David BoddieandGuido Günther 2391947b34 Update CI configuration to enable tests 2019-07-23 10:18:44 +02:00
David BoddieandGuido Günther e903150971 Enable tests, fixing the existing ones to use the current API
This also involved building a static library for the application for
tests to link to. The main application executable also links to it.
2019-07-23 10:18:44 +02:00
David Boddie 7495ec9bbb Merge branch 'remove-includes' into 'master'
Remove unnecessary X11 includes

See merge request Librem5/squeekboard!91
2019-07-20 22:00:58 +00:00
David Boddie e25d5a84b2 Remove unnecessary X11 includes 2019-07-20 23:57:38 +02:00
David Boddie 88ade4df1b Merge branch 'add-keyboards-for-purposes' into 'master'
Add keyboards for purposes

See merge request Librem5/squeekboard!89
2019-07-20 21:44:30 +00: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 c801b17ba0 Add initial files to test specialized keyboard support 2019-07-20 17:33:50 +02:00
David Boddie 9ec8d62f3f Merge branch 'respond-to-input-source-changes' into 'master'
Respond to input source changes

See merge request Librem5/squeekboard!88
2019-07-20 15:31:40 +00:00
David Boddie b1edcfcb1b Tidy up a merge 2019-07-20 17:26:00 +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 531b09f296 Merge branch 'adapt-keyboard-for-different-levels' into 'master'
Omit keys without labels on the current level, update key definitions

See merge request Librem5/squeekboard!87
2019-07-20 15:24:09 +00:00
David Boddie e5b6d66d60 Omit keys without labels on the current level, update key definitions 2019-07-20 17:17:37 +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 d68a8fef9a Merge branch 'resize-icons' into 'master'
Declare the correct size for icons

See merge request Librem5/squeekboard!86
2019-07-20 14:41:29 +00:00
David Boddie 9162d4291f Declare the correct size for icons 2019-07-20 14:39:47 +00:00
David Boddie 93d7699aa7 Merge branch 'make-layout-more-flexible' into 'master'
Make layout handling more flexible

See merge request Librem5/squeekboard!85
2019-07-20 14:31:26 +00:00
David Boddie 6eb63f6a4c Refactor layout code, rescale and reformat when changing level 2019-07-19 17:35:49 +02:00
David Boddie f6d4ca0387 Place keys after symbols have been read, skipping blank keys 2019-07-19 17:35:49 +02:00
David Boddie 7b41466a77 Start to refactor keyboard section layout 2019-07-19 17:35:49 +02:00
David Boddie 18c25084db Merge branch 'merge-renderers' into 'master'
Move EekGtkRenderer features into EekRenderer

Closes #61

See merge request Librem5/squeekboard!84
2019-07-19 14:56:54 +00:00
David Boddie a5875402ef Move EekGtkRenderer features into EekRenderer 2019-07-18 15:42:27 +02:00
David Boddie f3ed1ba247 Merge branch 'config' into 'master'
Clean up config.h (and some other stuff)

See merge request Librem5/squeekboard!83
2019-07-18 11:11:57 +00:00
David Boddie bfa72d7f61 Merge branch 'less-flicker' into 'master'
Make redisplaying the keyboard faster

Closes #60

See merge request Librem5/squeekboard!82
2019-07-17 16:32:29 +00:00
David Boddie 7690ef9a1a Merge branch 'layer-shell' into 'master'
Hide/show window instead of destroying it

Closes #42

See merge request Librem5/squeekboard!76
2019-07-17 11:34:10 +00:00
David Boddie 9c61d8de72 Merge branch 'dbus-prop' into 'master'
EekboardService: Properly toggle keyboard visibility on DBus

Closes #55

See merge request Librem5/squeekboard!80
2019-07-16 13:22:53 +00:00
David Boddie f72ddc8129 Undo formatting changes 2019-07-16 14:06:49 +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 4e11d071d9 Add a keymap for the US layout, update the US symbols 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 69986132b4 Use keysyms for the Shift modifier 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
David Boddie e5648a82a3 Remove explicit keycodes in XML, auto-generate them instead
This makes it easier to keep the geometry and symbols files in sync.
2019-07-16 14:00:41 +02:00
David Boddie 38133d326b Merge branch 'autogen.sh' into 'master'
Remove more files

See merge request Librem5/squeekboard!81
2019-07-16 11:06:55 +00:00
David Boddie e5e2e08ff4 Merge branch 'fewer-redraws' into 'master'
keyboard: Schedule widget redraw instead of gdk_window_invalidate_rect

See merge request Librem5/squeekboard!75
2019-07-15 22:57:12 +00:00
David Boddie c7c410210b Merge branch 'scale' into 'master'
Honor widget scale  factor

See merge request Librem5/squeekboard!56
2019-07-15 22:27:34 +00:00
David Boddie cb7c214aa0 Merge branch 'fixes' into 'master'
Fixes

See merge request Librem5/squeekboard!74
2019-07-15 22:20:40 +00:00
David Boddie 6f5f49729c Remove unused files and functions 2019-07-15 23:45:17 +02:00
David Boddie bcf04ab11e Merge branch 'exclusive-zone' into 'master'
LayerSurface: Make exclusive zone identical to height

Closes #53

See merge request Librem5/squeekboard!72
2019-07-15 11:55:41 +00:00
David Boddie 4d8d3a8109 Merge branch 'suppress-warnings' into 'master'
Suppress warning message

See merge request Librem5/squeekboard!70
2019-07-13 22:14:54 +00:00
David Boddie a183cf8b63 Suppress warning message 2019-07-14 00:13:41 +02:00
David Boddie f834edcf94 Merge branch 'fix-compiler-warnings' into 'master'
Fix use of inappropriate type

See merge request Librem5/squeekboard!69
2019-07-13 19:47:40 +00:00
David Boddie 17802a9408 Fix use of inappropriate type 2019-07-13 18:36:59 +02:00
David Boddie ac1aad881c Merge branch '49-inconsistent-behaviour-of-shift-key-s-pressed-state' into 'master'
Resolve "Inconsistent behaviour of shift key's pressed state"

Closes #49

See merge request Librem5/squeekboard!66
2019-07-13 16:35:07 +00:00
David Boddie 928110a92d Merge branch 'add-missing-icon' into 'master'
Add keyboard preferences icon

See merge request Librem5/squeekboard!68
2019-07-12 21:09:49 +00:00
David Boddie f6479fafe2 Add keyboard preferences icon 2019-07-12 23:07:01 +02:00
David Boddie 62b1c2ba84 Revert to latch behavior for letters 2019-07-12 19:54:21 +00:00
David Boddie c0ac5e540f Merge branch 'add-key-icons' into 'master'
Add key icons

Closes #44

See merge request Librem5/squeekboard!65
2019-07-12 19:17:29 +00:00
David Boddie fb5ec5557b Make icons smaller 2019-07-12 20:12:09 +02:00
David Boddie 74d94e6792 Merge branch 'remove-unused-xml' into 'master'
Remove unused XML from the US definitions

See merge request Librem5/squeekboard!64
2019-07-12 18:08:55 +00:00
David Boddie 63f4c6b4da Use icons for Shift and Return in the US layout 2019-07-12 20:04:50 +02:00
David Boddie 2774c1c988 Try to load icons from app resources first 2019-07-12 20:04:22 +02:00
David Boddie 469b0c0a9a Add icons to the resource manifest 2019-07-12 20:04:02 +02:00
David Boddie 2ddd217737 Add Enter and Shift icons 2019-07-12 19:16:21 +02:00
David Boddie c4e8e34ad6 Remove unused XML from the US definitions 2019-07-12 17:15:38 +00:00
David Boddie 4dc18c0af4 Merge branch '27-period-should-not-change-when-caps-lock-is-active' into 'master'
Resolve "Period should not change when caps lock is active"

Closes #27

See merge request Librem5/squeekboard!63
2019-07-12 17:11:10 +00:00
David Boddie 55c6911b87 Remove level with > character from . key 2019-07-12 17:17:11 +02:00
David Boddie 9bf0da5409 Merge branch 'adjust-scaling' into 'master'
Reduce icon size to match platform guidelines

See merge request Librem5/squeekboard!62
2019-07-12 15:15:43 +00:00
David Boddie 7d5b2dd1de Reduce icon size to match platform guidelines 2019-07-12 16:10:31 +02:00
David Boddie 6091632e40 Merge branch 'simplify-geometry-xml' into 'master'
Simplify geometry XML

See merge request Librem5/squeekboard!61
2019-07-12 14:09:57 +00:00
David Boddie 44110fd4d9 Remove bounds for everything except the geometry element 2019-07-12 14:00:20 +00:00
David Boddie 74d76ebfeb Remove unused XML elements 2019-07-12 14:00:20 +00:00
David Boddie 760bc138b0 Test effect of setting attributes to zero 2019-07-12 14:00:20 +00:00
David Boddie 2a4763d4f3 Merge branch 'fix-bottom-margin' into 'master'
Include extra space in the window object

Closes #47

See merge request Librem5/squeekboard!60
2019-07-12 13:42:20 +00:00
David Boddie 4b92f205ef Include extra space in the window object 2019-07-12 10:30:44 +00:00
David Boddie a5668fa1db Merge branch 'remove-pressed-key-popups' into 'master'
Remove pop-ups for pressed keys

See merge request Librem5/squeekboard!59
2019-07-11 23:42:34 +00:00
David Boddie de39256377 Remove pop-ups for pressed keys 2019-07-11 23:39:33 +00:00
David Boddie f53709c83d Merge branch 'fix-bottom-margin' into 'master'
Fix clipping issue at bottom of keyboard

Closes #47

See merge request Librem5/squeekboard!58
2019-07-11 23:07:01 +00:00