Details
Description
I run Qupzilla version 2.2.5 and QtWebEngine version 5.10.0 under Arch Linux + KDE Plasma.
My computer has a US International with dead keys keyboard layout. I have the hunspell, hunspell-en and hunspell-pt-br Arch packages installed. I installed the US English and the Brazilian Portuguese dictionaries for spell checking as follows:
{{cd /usr/share/hunspell }}
{{sudo qwebengine_convert_dict en_US.dic en_US.bdic }}
{{sudo qwebengine_convert_dict pt_BR.dic pt_BR.bdic }}
{{sudo mkdir /usr/bin/qtwebengine_dictionaries }}
sudo cp *.bdic /usr/bin/qtwebengine_dictionaries/.
When spell checking is activated in the preferences I am unable to type special characters in Facebook. For instance, when I type é, ã, ô etc. the character shows up and is immediately erased. The only special character that is displayed upon typing is ç. Example: If I type "não" what I get is "no". The problem, which only happens with Facebook, vanishes when I disable spell checking.
How to reproduce the problem: At the outset, assuming that your computer has a regular US keyboard, chose the following keyboard layout: US international with dead key. In KDE's system settings, it is listed as: English (US, intl., with dead keys). To type, for instance, não (which means no in Portuguese), enter n~ao (n tilde a o, no spaces between letters). The tilde will then the place above the a. Similarly, ^e yields ê, 'o yields ó and so on. Do that in konsole (the KDE terminal) and also on Facebook. It should work when you type in konsole but not in Facebook. The only special character that shows up correctly in Facebook is ç which is obtained by simultaneously pressing ALT and comma (ALT ,). P.S. Don't forget to first activate spell checking (US English and Brazilian Portuguese).
I reported the bug to the Qupzilla devs, but they told me that it is a bug in QtWebEngine and that I should report it here, which I am dutifully doing. See
https://github.com/QupZilla/qupzilla/issues/2551#issuecomment-361085703