David Boddie
d38c030ee6
Update keyboards to new XML format
2019-08-26 20:38:36 +00:00
David Boddie
2042ddf08e
Fix the nb symbols file and extended layout
2019-08-26 19:55:35 +00:00
David Boddie
1cf242a9df
Merge branch 'eekkey' into 'master'
...
EekKey improvements/cleanups
See merge request Librem5/squeekboard!132
2019-08-26 19:30:44 +00:00
David Boddie
a9c7d688fd
Fix null pointer dereference
2019-08-26 16:53:57 +02:00
David Boddie
d2e5cdef4e
Merge branch 'layout_fixes' into 'master'
...
Layout fixes
See merge request Librem5/squeekboard!131
2019-08-26 12:21:09 +00:00
David Boddie
607f5ed877
Merge branch '81-debian-copyright-has-bad-upstream-name-and-source-fields' into 'master'
...
Resolve "debian/copyright has bad Upstream-Name and Source fields"
Closes #81
See merge request Librem5/squeekboard!134
2019-08-23 20:49:55 +00:00
David Boddie
bd63ae5615
Fix Upstream-Name and Source fields
2019-08-20 15:37:35 +02:00
David Boddie
3154125ce0
Merge branch 'strict_build' into 'master'
...
build: Stricter type checks
See merge request Librem5/squeekboard!130
2019-08-17 18:05:36 +00:00
David Boddie and Dorota Czaplejewicz
73d2505c89
Do not pass the symbol to the key emitter
2019-08-13 12:24:11 +00:00
David Boddie and Dorota Czaplejewicz
8cf39394c5
Update create_key to match the function assigned to it
2019-08-13 12:07:24 +00:00
David Boddie
91d7cc1118
Release each pressed key instead of the current pressed key
2019-08-10 16:11:53 +00:00
David Boddie
6bbd8f6006
Use correct style for the design
2019-08-05 21:09:27 +00:00
David Boddie
cbdd72a4b6
Merge branch 'nolayout' into 'master'
...
Drop layout field on the keyboard
See merge request Librem5/squeekboard!122
2019-08-05 21:02:35 +00:00
David Boddie
d6b59d16fd
Merge branch 'keyboard-signal' into 'master'
...
gtk-keyboard: Remove unused signal connections
See merge request Librem5/squeekboard!120
2019-08-05 14:27:09 +00:00
David Boddie
0b59262e95
Add frame rendering, fix style sheet to show key borders
2019-08-05 13:39:22 +02:00
David Boddie
593946779e
Correct icon size for scaling
2019-08-05 13:21:01 +02:00
David Boddie
0057c80b2e
Release pressed keys when dragging outside the keyboard
...
If no keys are under the touch position when dragging then release all
existing pressed keys. This fixes the problem where the last pressed key
causes events to be sent while the touch position moves outside the
keyboard extent.
2019-08-02 15:31:18 +00:00
David Boddie
da88831689
Fix key rendering to only scale once
2019-08-02 17:04:16 +02:00
David Boddie
7b6c6e51b3
Fix background rendering
2019-08-02 17:04:16 +02:00
David Boddie
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
David Boddie
64680664e3
Use a CSS provider and style context instead of the old theme support
2019-08-02 17:04:16 +02:00
David Boddie
87dd9b4374
Remove references to the removed theme classes
2019-08-02 17:04:16 +02:00
David Boddie
c7d5e8d152
Remove theme classes for future replacement
2019-08-02 17:04:16 +02:00
David Boddie
4cd15c074e
Merge branch 'fixes' into 'master'
...
Fixes
See merge request Librem5/squeekboard!115
2019-08-02 15:03:33 +00:00
David Boddie
9bfdabdf57
Merge branch 'textproperty' into 'master'
...
Removed text categories
See merge request Librem5/squeekboard!114
2019-08-02 14:36:41 +00:00
David Boddie
9375bc212b
Use keyboard's coordinate system to check for presses
2019-08-02 14:05:36 +00:00
David Boddie
f852cab0f9
Fix warnings, add gtk-doc strings
2019-08-02 12:49:15 +02:00
David Boddie
f53babcd68
Add gtk-doc style comment
2019-08-02 12:48:35 +02:00
David Boddie
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
David Boddie
ad5e4f58bb
Remove use of xvfb to check that the tests run headless
2019-08-01 18:15:42 +02:00
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
9344a13bed
Use headless init functions to prevent test breakage
2019-08-01 16:00:59 +02: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 Boddie and Guido Günther
9b10f56ba6
Keep the build directory as an artifact
2019-07-23 10:18:44 +02:00
David Boddie and Guido Günther
2391947b34
Update CI configuration to enable tests
2019-07-23 10:18:44 +02:00
David Boddie and Guido 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