Bug 425168 - Cannot type accented characters via dead-keys
Summary: Cannot type accented characters via dead-keys
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Bundle-AppImage (show other bugs)
Version: 7.0.0
Platform: Appimage Linux
: NOR normal
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-08-09 18:25 UTC by Milan Knížek
Modified: 2022-02-12 12:20 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 7.6.0
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Milan Knížek 2020-08-09 18:25:06 UTC
SUMMARY

Typing accented chars (like 'ěščřžýáíé') works well, however, I cannot type these characters via a dead-key + non-accented key combination - which is needed mainly for typing capital letters ('ĚŠČŘŽ...'

It is still possible to type the accented capital letters in other app and copy them into digiKam text fields.


STEPS TO REPRODUCE

1. Open digiKam
2. Choose any image
3. Open Captions in side bar
4. Try to type 'Ž' via dead-key (located at shift + '+' on standard keyboard) and Z.


OBSERVED RESULT

The non-accented character 'Z' is typed.



EXPECTED RESULT

The accented 'Ž' should have been typed.


SOFTWARE/OS VERSIONS

KDE Frameworks 5.70.0
Qt 5.14.2 (built against 5.14.2)
The xcb windowing system
I use AppImage to run digiKam in GNOME on Arch Linux, with english locale but with a Czech keyboard layout.
Comment 1 Maik Qualmann 2020-08-10 05:48:46 UTC
I think it's AppImage specific. Here with my native digiKam version under KF5 there are no problems with accents in capital letters. Alternatively, you can try out digiKam's Flatpak.

Maik
Comment 2 Milan Knížek 2020-08-10 09:55:16 UTC
I have found a current Qt bug report with similar behaviour - that one is dependend on static (bug) or shared (works) linking:

https://bugreports.qt.io/browse/QTBUG-83783
Comment 3 caulier.gilles 2020-08-10 10:04:49 UTC
Maik,

Yes this is certainly a side effect of non ICU support in AppImage. This is another pending task to investigate in September. 

Gilles
Comment 4 Milan Knížek 2020-08-10 11:41:52 UTC
Flatpak works okay.
Comment 5 Milan Knížek 2020-08-16 17:32:34 UTC
But with Flatpak, there seems to be some troubles with integration - I use quite often "Open with..." submenu to run actions outside of digiKam on the image or whole folder (based on standard .desktop files and mime db). With Flatpak, this seems to be quite complicated (it does not work to simply allow host:ro filesystem access).
Comment 6 caulier.gilles 2022-01-19 19:08:52 UTC
Git commit 00e4d5da2948ccdc101cdeeb23f7b05405812436 by Gilles Caulier.
Committed on 19/01/2022 at 19:04.
Pushed by cgilles into branch 'master'.

Great news : AppImage with Qt 5.15.2 compiled under Mageia 7.1 now support ICU
This require to recompile whole AppImage build system on Continuous Deployement server.
This will be done in a few days. I only tested here on my laptop, and i can confirm that ICU work fine now.
Related: bug 406583, bug 418670, bug 410980, bug 407506, bug 413842

M  +2    -3    project/bundles/3rdparty/ext_qt/5.15/CMakeLists.txt

https://invent.kde.org/graphics/digikam/commit/00e4d5da2948ccdc101cdeeb23f7b05405812436
Comment 7 caulier.gilles 2022-02-05 17:40:17 UTC
Hi,

With the ICU support introduced in next 7.6.0 release, this problem is now fixed.

You can test using 7.6.0 pre-release AppImage bundle available here : https://files.kde.org/digikam/

Best Regards

Gilles Caulier
Comment 8 Milan Knížek 2022-02-12 12:20:17 UTC
(In reply to caulier.gilles from comment #7)
> You can test using 7.6.0 pre-release AppImage bundle available here :
> https://files.kde.org/digikam/

I tried on Arch Linux (AppImage 7.6.0 20220211) and I cannot still type accented characters with the help of dead-keys (like pressing "ˇ" and then "C" should produce "Č", but instead only ASCII "C" is typed).

Further, there are some troubles with bundled libraries:

digikam: symbol lookup error: /usr/lib/libpangocairo-1.0.so.0: undefined symbol: pango_font_get_hb_font

and 

digikam: symbol lookup error: /usr/lib/libgio-2.0.so.0: undefined symbol: g_module_open_full

Which I resolved by removing libgmodule* and libpango* from the squash fs and repackaging the AppImage - i.e. loading the host libraries instead.

P.S. Not reopening the bug report since I am not sure if removing the bundled libraries may have any impact on the bug itself.