Guido Günther
b6ce4151bd
Merge branch 'rel' into 'master'
...
Release 1.16.0 "Clostridium botulinum"
See merge request World/Phosh/squeekboard!522
2022-01-25 12:15:22 +00:00
Guido Günther
23b35733cb
Add entry test using GTK4
...
This helps debugging GTK4 interaction issues
2022-01-20 10:36:13 +01:00
Guido Günther
55cd225c74
entry: Add another input hint
2022-01-20 10:17:11 +01:00
Guido Günther
e55ae67da6
entry: Only activate purpose timer when focused
...
This avoids verbose printing when the widget is never focused
2022-01-20 10:17:11 +01:00
Guido Günther
79bc670ad0
entry: Mark as executable
...
Saves some typing
2022-01-20 10:17:11 +01:00
Guido Günther
6979b6d08d
po: Fix ui file name
...
The file was renamed to match the code
Fixes: 2aa9cf2 ("popover: Make the ui file match the code file name")
2021-12-22 09:39:12 +01:00
Guido Günther
44b9c8f869
Merge branch 'rel' into 'master'
...
Release 1.15.0 "Feedback loop"
See merge request World/Phosh/squeekboard!513
2021-12-21 15:48:51 +00:00
Guido Günther
e1b3de9bf8
Merge branch 'indent' into 'master'
...
ci: Make indentation close to original again
See merge request World/Phosh/squeekboard!511
2021-12-17 12:03:58 +00:00
Guido Günther
2fea092691
Merge branch 'style' into 'master'
...
ci: style enforcement
See merge request World/Phosh/squeekboard!506
2021-12-09 13:05:32 +00:00
Guido Günther
1451c746e7
Merge branch 'ci' into 'master'
...
ci: Add git revision and CI pipeline number to .deb artifacts
See merge request World/Phosh/squeekboard!499
2021-12-09 10:46:02 +00:00
Guido Günther
0a417fe4a2
Remove custom translations
...
Can be handled via po. Most of them should come via libgnome-desktop
anyway and half of them weren't listed in LAYOUT_NAMES so were unused
anyway.
2021-12-09 11:29:48 +01:00
Guido Günther
750814e050
Drop locale_config
...
Not used anymore.
2021-12-09 11:29:48 +01:00
Guido Günther
10ea276052
Drop custom translation handling
...
xkb layouts are translated fine by libgnome-desktop. If not
we should go fixing there since that makes keyboard layout
strings consistent with e.g. gnome-control-center.
There weren't any 'exotic' strings in the current translations
so what we get from libgnome-desktop should be just fine.
2021-12-09 11:29:48 +01:00
Guido Günther
1a193a9aed
Merge branch 'refs' into 'master'
...
README/docs improvements
See merge request World/Phosh/squeekboard!501
2021-12-08 19:25:52 +00:00
Guido Günther
72a7825c85
popover: Don't complain about missing translations
...
It's fine to do all via po.
2021-12-08 15:29:57 +01:00
Guido Günther
da789bcb87
Remove emoji and terminal from translations
...
Handled via po. Remove now empty files. The match with resources.rs
shows that some of them weren't even used (e.g. fa-IR) showing why a
switch to po is useful (which allows to maintain us that outside of
code).
2021-12-08 15:29:57 +01:00
Guido Günther
2aa9cf26ee
popover: Make the ui file match the code file name
...
UI files are usually named like the code file. Stick to that
pattern.
2021-12-08 15:29:57 +01:00
Guido Günther
ac833950ab
popover: Add translator notes
...
Single words are hard to translate in context, give some indication what
they do. They're automatically extracted into the pot file.
#. translators: This is a emmoji keyboard layout
#: data/popover.ui:6
msgid "Emoji"
msgstr "…"
#. translators: This is a terminal keyboard layout
#: data/popover.ui:12
msgid "Terminal"
msgstr "…"
2021-12-08 15:29:57 +01:00
Guido Günther
9b7e065b0f
popover: Move Emoji and Terminal to ui file
...
This allows them to be translated via po so we don't have to maintain
the translation list by hand or care about empty translation files.
The only downside is that the "overlay layouts" in OVERLAY_NAMES need to
match the ones in the ui file but since a missing one is a clean crash
when selected there's little potential for subtle breackage. We could
even ensure consistency by comparing the two at run time but they change
only slowly this is not much of an issue (compared to how e.g. new
languages can be added now).
2021-12-08 15:27:17 +01:00
Guido Günther
a9f5429bcb
gitignore: Ignore generated po files
2021-12-07 20:11:58 +01:00
Guido Günther
12c10ad726
gitignore: Drop zanata dir
...
Unused since ages
2021-12-07 20:11:27 +01:00
Guido Günther
12cf628c71
Add URL and EMail keyboard variants for us
...
Closes : #65
2021-12-05 21:26:44 +01:00
Guido Günther
da7230e723
po: Add desktop file to translatable files
2021-12-05 21:06:40 +01:00
Guido Günther
e91f6419fb
data: Make generic name truly generic
...
And mention that it's an on screen keyboard which is the more widely
used term in end user facing string.
2021-12-05 21:06:40 +01:00
Guido Günther
16dd4f9753
server-context-servide: Don't translate application name
2021-12-05 21:04:43 +01:00
Guido Günther
b41aedabbf
eekboard-context-service: Don't translate property names
...
No need to bother translators with this.
2021-12-05 21:04:43 +01:00
Guido Günther
7a1e646bc9
debian: Install desktop file
...
Distros like Debian ship it anyway
2021-12-05 20:57:02 +01:00
Guido Günther
4f19a81d78
debian: Switch to dh 13
...
This adds goodies like failing on inexistent files. It's well
supported in Debian Bullseye, PureOS Byzantium and newer versions.
2021-12-05 19:35:19 +01:00
Guido Günther
0c4d3e5450
debian: Install translations
2021-12-05 18:14:39 +01:00
Guido Günther
9d97fa4d29
pin: Use less margin
...
Introduce a common.css so styles don't deviate unintentionally between
the different themes. Way more stuff can be moved here once this is in.
2021-12-05 17:34:40 +01:00
Guido Günther
321dadba34
renderer: Set style class based on input purpose
2021-12-05 17:34:40 +01:00
Guido Günther
4903f3d1a0
layout: Keep content purpose around
...
This allows to add proper CSS style classes based on that
2021-12-05 17:31:12 +01:00
Guido Günther
3513bf8de4
Use special pin keyboard
...
This helps muscle memory
2021-12-05 17:31:12 +01:00
Guido Günther
5f40c31cab
layout: Drop trailing whitespace
...
Otherwise sane editor setup is basically impossible since
we want to trim that by default (and not manually like here)
in the future.
2021-12-05 17:31:12 +01:00
Guido Günther
f922374e27
gitlab-ci: Add PKG_ONLY
...
This allows for easy package builds saving resources.
2021-12-04 17:58:14 +01:00
Guido Günther
3306907008
Revert "gresources: Drop popup.ui"
...
This reverts commit fdcef4aa88 .
2021-12-04 13:12:48 +01:00
Guido Günther
fdcef4aa88
gresources: Drop popup.ui
...
It's unused in the code atm
2021-12-03 19:00:22 +01:00
Guido Günther
74f55b30ef
po: Add German translation
2021-12-03 18:59:52 +01:00
Guido Günther
d696c9624e
Reuse the unused popover ui file for i18n
...
Since the current code uses a handcoded approach for popup construction
reuse the unused ui file to keep translatable strings. Since UI file in
popover.rs runs through glib the strings get translated.
Future rework will allow us to get rid of this duplication but since the
ui file went unnoticed for so long who could possibly complain.
Closes : #315
2021-12-03 18:58:24 +01:00
Guido Günther
964f1da305
Initialize gettext
2021-12-03 18:58:12 +01:00
Guido Günther
73e7908709
langs: Don't use empty translation file
...
This breaks the translation
Closes : #313
2021-12-03 16:57:26 +01:00
Guido Günther
06b17907bf
imservice: Invoke eekboard_context_service_set_hint_purpose unconditionally
...
Since eekboard_context_service_set_hint_purpose() checks if the
hint or purpose changed this doesn't cause unwanted layout reloads.
Closes : #311
2021-12-02 09:19:50 +01:00
Guido Günther
912fe0b7b7
entry: Add a random text entry field
...
This allows to test the case where the purpose changes but nothing else.
2021-12-02 09:19:50 +01:00
Guido Günther
937638c582
entry: Set a margin on the grids
...
Less heavy on the eyes.
2021-12-01 14:40:55 +01:00
Guido Günther
894191d3a0
entry: Use a scrolled window
...
This ensures all entries are reachable even with the OSK unfolded
2021-12-01 14:40:55 +01:00
Guido Günther
0d7fab2ef4
Honor input-purpose PIN
...
Otherwise e.g. SIM pins are requested with a numerical keyboard.
2021-11-30 13:29:11 +01:00
Guido Günther
dd708456ff
Move style-check to separate script
...
This avoids having to copy out of .gitlab-ci.yml before submitting an MR
to do a style check.
Could become a meson target at some point.
2021-11-23 18:16:36 +01:00
Guido Günther
dce848b3ce
README: Document SQUEEKBOARD_DEBUG environment variable
2021-11-23 12:46:16 +01:00
Guido Günther
03aa04d6d8
main: Add debug flag to show GTK inspector
...
Since squeekboard doesn't ever get input focus and hence we can't
activate it via keybinding add a debug flag.
2021-11-23 11:36:37 +01:00
Guido Günther
379a09e0d6
renderer: Disconnect theme change signal handler
...
The renderer does not stick around so we need to disconnect the signal
handler on "dispose". Since the renderer is not a GObject track the
signal id manually instead of using `g_signal_connect_object ()`.
Fixes 1995285 ("eek-renderer: Honor theme changes")
2021-11-22 17:56:15 +01:00
Guido Günther
1c875cda6c
main: Add debug flag to always show squeekboard on start
...
This makes debugging way fun since there's no need to mess
with the running DBus, gsettings or anything else.
2021-11-22 17:10:43 +01:00
Guido Günther
a6d766e650
renderer: Use g_debug ()
...
Switching to `g_debug ()` after adding `G_LOG_DOMAIN` got lost
in a rebase.
2021-11-22 17:08:17 +01:00
Guido Günther
74977ec88f
gtk-keyboard: Don't set variable to NULL twice in a row
2021-11-22 17:08:15 +01:00
Guido Günther
c3337b05b6
main: Use dark theme when run in a Phosh session
...
Downstreams either don't restyle making us divert from the designs or
use squeekboard-restyled adding extra complexity.
Closes : #242
2021-11-22 11:02:10 +01:00
Guido Günther
28a48635b3
main: Avoid two error variables in the same function
...
This also fixes a superfluous additional `NULL` assignment right
after declaring error and setting it to NULL.
2021-11-22 11:01:06 +01:00
Guido Günther
475761ec73
main: Drop broken support G_BUS_TYPE_SYSTEM
...
Fliping opt_system would still use opt_session so drop that.
While at that remove G_BUS_TYPE_NONE which can't be set by
an option either.
2021-11-22 11:01:06 +01:00
Guido Günther
1995285b65
eek-renderer: Honor theme changes
...
Reload style providers so e.g. switching to HighContrast is handled.
Closes : #296
2021-11-22 10:27:43 +01:00
Guido Günther
73515b5fe1
eek-renderer: Fix indentation
2021-11-22 10:27:43 +01:00
Guido Günther
8cfce093e7
eek-renderer: Add log domain
...
This allows to only log renderer messages similar to what
other projects to. `G_MESSAGES_DEBUG=all` is unaffected.
2021-11-22 10:27:43 +01:00
Guido Günther
359376041d
main: Honor --help and -h
...
Use a GOptionContext to display command line options (that are already
handled by e.g. gtk_init anyway).
This turns:
$ squeekboard -h
Debug: Tried file "/home/agx/.local/share/squeekboard/keyboards/us.yaml", but it's missing: No such file or directory (os error 2)
Info: Loaded layout Resource: us
Debug: Tried file "/home/agx/.local/share/squeekboard/keyboards/us.yaml", but it's missing: No such file or directory (os error 2)
Info: Loaded layout Resource: us
** (squeekboard:8015): WARNING **: 19:03:13.125: DBus unavailable, unclear how to continue. Is Squeekboard already running?
into the more useful
$ squeekboard -h
Usage:
squeekboard [OPTION…] - A on screen keyboard
Help Options:
-h, --help Show help options
--help-all Show all help options
--help-gtk Show GTK+ Options
Application Options:
--display=DISPLAY X display to use
...
2021-11-21 20:45:58 +01:00
Guido Günther
6e1faafa2f
main: Remove trailing whitespace
2021-11-21 20:37:51 +01:00
Guido Günther
aa0e7d1c19
data: Fix build with meson 0.60.0
...
Drop the possitional argument since we otherwise see
data/meson.build:15:5: ERROR: Function does not take positional arguments.
2021-11-06 11:13:07 +01:00
Guido Günther
d629542ce2
Merge branch 'update-entry-py-filepath' into 'master'
...
Update entry.py file path in readme
See merge request World/Phosh/squeekboard!470
2021-08-11 07:08:38 +00:00
Guido Günther
39c004ecfc
Merge branch 'ci' into 'master'
...
Fix gitlab CI
See merge request World/Phosh/squeekboard!471
2021-08-07 09:15:53 +00:00
Guido Günther
31f8e4e49f
gitlab-ci: Drop build for outdated distributions
2021-08-07 10:56:39 +02:00
Guido Günther
2c662e0630
gitlab-ci: Adjust CI tags
...
This makes it build on GNOME infra
2021-08-07 10:54:27 +02:00
Guido Günther
40bf3ca5de
server-main: Properly register to gnome-session
...
So far squeeboard only did half of the registration failing
to respond to the signals sent by the session.
This causes problems e.g. when exiting the session since the it
thinks the client hangs or is busy.
Closes : #274
2021-03-25 18:11:39 +01:00
Guido Günther
e800a88893
server-main: Add quit()
...
This allows to exit the mainloop e.g. when signalled from gnome-session
or by a signal.
2021-03-25 16:03:57 +01:00
Guido Günther
4ccf11f4fd
server-context-service: Don't show keyboard when disabled
...
If the corresponding a11y settings is disbaled don't unfold
the keyboad at all.
This helps e.g. running the same session on laptops or when
an external keyboard is attached.
Closes : #222
2020-09-14 11:34:17 +02:00
Guido Günther
8bdfb69dc1
server-context-service: swap signal arguments
...
This makes sure 'self' comes first. While at that fix the
function signatures and use ServerContextService directly
and add type checks so it's easy to notice when we messed up.
2020-09-11 20:44:36 +02:00
Guido Günther
1e6bcef055
server-context-service: Consistenty name self argument 'self'
...
It's confusing when the object a method acts on is sometimes called
context and sometimes called state. So name it 'self' as we do
in other projects.
2020-09-11 20:05:49 +02:00
Guido Günther
07faf906d8
eekboard-context-service: Drop private struct
...
There's no point having it for a final type and it only
makes the code harder to read.
2020-09-11 18:55:35 +02:00
Guido Günther
53f30324f0
eekboard-context-service: Drop the GObject boilerplate
...
The previous commits show it's not really a derivable type
so make it a finale one.
2020-09-11 18:55:35 +02:00
Guido Günther
3e212ddab4
eekboard-context-service: Drop docstrings for inexistent functions
2020-09-11 18:46:22 +02:00
Guido Günther
966990ad65
eekboad-context-service: Drop signal class handler
...
It's unused
2020-09-11 18:45:33 +02:00
Guido Günther
a8b81172fc
build: Enable '-Wformat-nonliteral'
2020-09-11 18:40:56 +02:00
Guido Günther
97f51591b3
ServerContextService: Drop GObject boilerplate
...
G_DECLARE_FINAL_TYPE does this for us
2020-09-11 18:16:30 +02:00
Guido Günther
6756fb423a
build: Enable -Wredundant-declarations
2020-09-11 18:16:30 +02:00
Guido Günther
eb7673d2c2
treewide: Drop redundant declarations
2020-09-11 18:16:30 +02:00
Guido Günther
24b6a04903
build: Enable -Wmaybe-uninitialized
...
No changes needed.
2020-09-11 18:16:30 +02:00
Guido Günther
b197cd839e
build: Enable -Wformat-security
...
No changes needed.
2020-09-11 18:16:30 +02:00
Guido Günther
857a916402
build: Enable -Winit-self
...
No changes needed
2020-09-11 18:16:30 +02:00
Guido Günther
ca68fc2040
eek-keyboard: Don't ignore return value
...
This fixes
../eek/eek-keyboard.c:71:5: warning: ignoring return value of ‘getrandom’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
71 | getrandom(r, 6, GRND_NONBLOCK);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[17/32] Compiling C object 'src/25a6634@@libsqueekboard@sta/.._eek_eek-renderer.c.o'
2020-09-11 18:16:30 +02:00
Guido Günther
bd661bd4f4
gitlab-ci: Enable --Werror
...
This makes sure we don't have more warnings creeping in
2020-09-11 18:16:30 +02:00
Guido Günther
4228192bda
layout: Fix warning
...
This fixes
warning: unnecessary parentheses around block return value
--> /var/scratch/librem5/squeekboard/src/layout.rs:110:13
|
110 | / (point.x > self.x && point.x < self.x + self.width
111 | | && point.y > self.y && point.y < self.y + self.height)
| |______________________________________________________________________^
|
= note: `#[warn(unused_parens)]` on by default
2020-09-11 18:16:30 +02:00
Guido Günther
0f7ab99da3
keyboard: Fix warning
...
warning: unused variable: `name`
--> /var/scratch/librem5/squeekboard/src/keyboard.rs:195:10
|
195 | for (name, state) in keystates.iter() {
| ^^^^ help: consider prefixing with an underscore: `_name`
2020-09-11 18:16:30 +02:00
Guido Günther
e15d317488
eekboard-context-service: Drop EEKBOARD_CONTEXT_SERVICE_GET_PRIVATE
...
This fixes the
../eekboard/eekboard-context-service.c:244:13: warning: Deprecated pre-processor symbol, replace with
244 | self->priv = EEKBOARD_CONTEXT_SERVICE_GET_PRIVATE(self);
warning and makes us use more modern GObject style
2020-09-11 18:16:30 +02:00
Guido Günther
93e9ce0dd7
build: Enable '-Wunused-function'
2020-09-11 18:16:13 +02:00
Guido Günther
9d63b505ec
build: Enable '-Wold-style-definition' '-Wstrict-prototypes'
2020-09-11 18:15:44 +02:00
Guido Günther
306c11f1fd
treewide: Use new style function definitions
2020-09-11 18:15:02 +02:00
Guido Günther
c26feed8b2
eekboard-context-service: Return early if schema is unavailable
...
This also fixes a leak of GSettingsSchema.
2020-09-11 18:14:19 +02:00
Guido Günther
ec58442724
eek-gtk-keyboard: Trigger event feedback on button press
...
Use libfeedback to trigger feedback for the button press event.
Closes : #166
2020-06-04 12:13:58 +02:00
Guido Günther
e89c9b02a0
debian: Build-depend on libfeedback
...
Will be needed in the following commits.
2020-06-02 10:10:43 +02:00
Guido Günther
1b2725250b
eek: Drop libcanberra usage
2020-06-02 10:10:43 +02:00
Guido Günther
e285ecce93
d/rules: Only remove Cargo.lock if it exists
...
This allows to invoke the build target twice in a row
2020-06-02 10:10:43 +02:00
Guido Günther
d816cc261a
desktop file: Use NoDisplay=true
...
There's no point in having the keyboard in the list of installed
applications and it has no icon either.
2019-08-28 15:41:38 +02:00
Guido Günther
79dce7c4c3
gitlab-ci: Run tests under xvfb
...
We create widgets so need a display.
2019-07-23 10:20:07 +02:00
Guido Günther
aff71e0e33
debian: Add test run dependencies
...
We need xvfb to run the tests since this involves creating GTK
widgets.
2019-07-23 10:20:02 +02:00
Guido Günther
633d69baca
Drop HAVE_CLUTTER_GTK
...
We don't use it.
2019-07-17 19:50:53 +02:00
Guido Günther
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