Commit graph

45 commits

Author SHA1 Message Date
Eberhard Beilharz
29c71253db
chore(core): Update debian package to use webkit2 4.1
Ubuntu 20.04 Focal doesn't have webkit2 4.1. The API is the same as
with 4.0, so we use that if we can't find 4.1.
2024-01-24 16:47:22 +01:00
Jeremy Bícha
7ea8d9648b chore(linux): Build with webkitgtk 4.1 instead of 4.0 2024-01-23 14:40:57 -05:00
Eberhard Beilharz
66461b7677
feat(linux): Remove message box if same kbd version already installed
We no longer ask the user if he tries to install a keyboard that is
already installed with the same version. The only time we ask is for
downgrades.

A similar change is implemented in `km-package-install` where we
changed the logic to match `install_window.py`. We now silently
install the new version unless it's a downgrade in which case we
output a error message and exit. This change also introduces the
`--force` parameter which allows to install the downgrade. For
upgrades or re-installing the same version it will cause an
uninstall of the current version first.
2023-07-05 11:56:54 +02:00
Eberhard Beilharz
4775c522bb
refactor(linux): Allow to install keyboard for multiple languages
This change makes it possible to install the same keyboard again
for a different language. It won't be visible in the GUI if the
keyboard is installed for more than language, but it will show up
for the installed languages in the keyboard dropdown.

Closes #8619.
2023-07-05 11:56:53 +02:00
Eberhard Beilharz
e95948c2da
refactor(linux): Extract methods 2023-06-13 19:42:14 +02:00
Eberhard Beilharz
4335923707 chore(linux): Refactorings 2023-06-07 18:57:20 +02:00
Eberhard Beilharz
e1597914dd
fix(linux): Display error message for corrupt .kmp file
If the user tries to install a corrupt .kmp file we now display
an error message instead of just logging to the console and Sentry.

Fixes #8478.
2023-03-20 21:10:00 +01:00
Kevin Schluensen
82ea071c63 bug(linux): JSON File missing after installation
Fixes #8017
2023-01-18 17:21:02 +01:00
Eberhard Beilharz
309d68375b
fix(linux): Fix installation if shared kbd already installed
Fixes #7722.
2022-11-16 12:26:18 +01:00
Eberhard Beilharz
b1d201a3d7
feat(linux): Replace deprecated distutils
Fixes #6955
2022-08-08 16:38:35 +02:00
Eberhard Beilharz
117ef77160
chore(linux): Sorting of imports 2022-07-18 15:19:50 +02:00
Eberhard Beilharz
0944d83f97
chore(linux): Code cleanup
Some reformatting.
2022-07-15 20:44:47 +02:00
Eberhard Beilharz
85d33cefcf
Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-01-31 16:21:49 +01:00
Eberhard Beilharz
0b8e628812
chore(linux): Improve robustness
Don't crash if we encounter a corrupt file.
2022-01-28 18:37:55 +01:00
Eberhard Beilharz
ed1746d3d0
fix(linux): Don't crash with non-keyboard package file
If a user tries to a install a model .kmp file, we now display a
message box instead of crashing.

Fixes #5753.

(cherry picked from commit 98e1269ae2)
2021-09-27 17:07:35 +02:00
Eberhard Beilharz
a2950bef7f
refactor(linux): Cleanup import of os.path
This change imports `os` instead of `os.path`. This is the
recommended way. It also reduces confusion whether to use
`os.path.whatever()` or just `path.whatever()`.
2021-08-04 12:24:07 +02:00
Eberhard Beilharz
3bd0173954
fix(linux): Don't crash with corrupt keyboard
If we try to install a keyboard that's missing some metadata
we shouldn't crash.

Fixes #5384, #5385.
2021-07-01 12:49:50 +02:00
Eberhard Beilharz
35d506c977
refactor(linux): Centralize paths
Introduce methods to get paths instead of hard-coding the values.
This also deprecates four methods (`user_keyman_dir`,
`user_keyman_font_dir`, `user_keyboard_dir`, and `get_isntall_area_path`).

This change also fixes a crash trying to install a package in the
shared area.
2021-06-25 19:25:48 +02:00
Eberhard Beilharz
0909cbbf63
Update linux/keyman-config/keyman_config/install_window.py
Co-authored-by: Marc Durdin <marc@durdin.net>
2021-06-03 13:03:45 +02:00
Eberhard Beilharz
03d85b65aa
feat(linux): Integrate with fcitx5
This change implements the Keyman side of the fcitx5 integration.
Closes #4910.
2021-06-02 19:11:48 +02:00
Eberhard Beilharz
801810f72c
fix(linux): don't crash on legacy non-Unicode files
If we encounter a legacy non-Unicode file we now simply ignore the
file instead of crashing.

This fixes #4876.

(cherry picked from commit 59c45c4671)
2021-04-19 16:14:41 +02:00
Eberhard Beilharz
1c8da049ab
feat(linux): Small UI improvements
- Remove "package" from the tooltips text since that might be
  confusing to users.
- Also make title of Welcome (Help) dialog optionally say "installed"
  instead of always so that we open that dialog via the Help button
  we just display the keyboard name.
- Refactor Keyboard Details dialog to remove an unnecessary box.
- Add padding after keyboard details in Keyboard Details dialog.
2020-08-20 15:22:50 +02:00
Eberhard Beilharz
11f018366b
feat(linux): Add i18n for Linux 2020-08-19 19:22:33 +02:00
Eberhard Beilharz
5618133d5d
Merge pull request #3376 from keymanapp/refactor/linux
refactor(linux): Small refactorings
2020-07-21 09:13:06 +02:00
Eberhard Beilharz
d86f381e03
fix(linux): Fix imports of GTK related modules
The version specification needs to come before importing methods.
2020-07-20 18:23:59 +02:00
Eberhard Beilharz
78b4187928
fix(linux): Use language from search when installing keyboard
When installing a keyboard install it under the language the user
searched for (if any).

This fixes #3282.
2020-07-20 11:10:05 +02:00
Eberhard Beilharz
5f214015c5
refactor(linux): cleanup code
This change adds a config file for flake8 Python linter and fixes
the problems the linter identified.
2020-06-23 17:15:23 +02:00
Eberhard Beilharz
f848bf53ce
feat(linux): Make two more windows modal dialogs 2020-06-05 19:36:48 +02:00
Eberhard Beilharz
5659f6230c
feat(linux): Improve run methods 2020-06-04 19:42:30 +02:00
Eberhard Beilharz
1890016710
feat(linux): Make two windows modal dialogs
This change modifies DownloadKmpWindow and InstallKmpWindow so that
they are modal dialogs. This will cause them to show up in front of
the km-config window and will prevent accidentally open multiple
download windows.

This change also fixes an unused method in ibus_util that was using
a variable that got renamed previously.
2020-06-04 19:13:24 +02:00
Daniel Glassey
f3f13a3fdd
migrate from webkit to webkit2 (#1349) 2018-11-28 07:45:11 +07:00
glasseyes
eb06b30765 Merge branch 'master' into linux-gui-refresh 2018-10-04 17:04:07 +07:00
glasseyes
aad8215e9b [linux] show install errors to user 2018-10-04 13:43:34 +07:00
glasseyes
332d4337a6 [linux] WIP: present error messages to user 2018-10-04 13:43:34 +07:00
glasseyes
991651f7cd [linux] WIP: install error handling
and restarting ibus after attempting to install keyboard to it
2018-10-04 13:43:34 +07:00
glasseyes
963df2489b [linux] new gui for km-config
based on look of ibus-setup
  listview of kmp on left
  buttons on right

tweak button positioning on the windows
title changed  to Keyman Configuration
after downloading and clicking install the download window now closes
2018-10-03 15:15:57 +07:00
glasseyes
46776bef10 [linux] WIP: gui review experimentation 2018-10-03 15:02:09 +07:00
glasseyes
4a0e729d34 [linux] additional places to use user area installed files
install window shows welcome page in user area
keyboard details doesn't know about the area yet so comment out
2018-09-25 09:24:52 +07:00
glasseyes
7b6e971912 [linux] refactor keyman image search into a function
resize icons back to 16x16 on load to display in km-config
2018-09-18 10:58:55 +07:00
glasseyes
4def814908 [linux] install and use icons in local install 2018-09-17 15:13:46 +07:00
glasseyes
51dcd4a33b [linux] use python logging module to control cl output
for all scripts
add option -v for info messages
-vv for debug messages

remove creation of test ldml output file
2018-09-12 17:14:05 +07:00
glasseyes
aacbf7a281 [linux] further feedback from PR893
if readmeFile not in options then don't use readme.htm even
  if it is there
2018-09-12 13:41:28 +07:00
glasseyes
b690524f73 Linux: some changes from PR893
doc python3-setuptools requirement for keyman-config
removing commented code
fix missed doc reference to view_installed
add TODO about website changes in downloadkeyboard
move linux/osk to linux/experiments/osk
2018-09-10 12:05:22 +07:00
glasseyes
924945c86e icons moved to keyman_config 2018-09-01 17:55:37 +07:00
glasseyes
51ebb7300a rename keymanconfig to keyman_config 2018-09-01 12:28:16 +07:00
Renamed from linux/keyman-config/keymanconfig/install_window.py (Browse further)