Hello Cedric,
On Fri, Dec 08, 2023 at 14:42:22 CET, ttcoder@netcourrier.com wrote:
I'm reaching "alpha" stage (or a good approximation thereof) of my "distro" project at last, added a depot manager that mimics the one in ScultOS, so that the distro can download and use the wealth of packages provided on genode.depot.org. Greatly enjoying my newfound ability to use that software :-)
That's great to hear - congrats!
but the one issue that remains is one I can't figure out so far : keyboard input (mostly) does not work, in Falkon and qt5_textedit (I'm assuming, all Qt apps).
I'm hitting this warning:
https://github.com/cproc/qt5/blob/018e7c70f8d5bb5e000acf203d843317a6394a7d/q...
Thought of filing a ticket in cproc/qt5/ or in genode-world/, but the most likely explanation is that I'm doing something wrong during system integration.
That's in 23.05 ; in 23.08 I can't get networking to function (with ipxe_nic_drv or with the newer pc_nic_drv from the depot) which precludes downloading newer packages instead of re-using the 23.05 revisions.
I'll try 23.11 in the next couple weeks.
Symptoms and code paths:
- 'modifier' keys listed in the QGenodePlatformWindow::_map_key switch() do work (I can move the cursor with the arrow keys, delete)
- however, all letters, digits, punctuation, spacebar, fail to work, and output a warning to LOG
- each time, the warning says e.g. "key KEY_A,18 U+fffe lacks a Qt mapping"
- it's interesting that the unicode is always "fffe"
- so the Input::Keycode is correct (it says KEY_A, KEY_B, etc)...
- but the Codepoint.value is always incorrect (it's always fffe) ?
I'm not setup for working with Qt, so can't add instrumenting in the lib itself or the apps. I was able to find the warning() despite github erroring out on "we're reindexing the site, please come back later" because that file happened to be listed in the recent commits :-)
I'm probably doing something wrong, but what ? Only thing I can think of is...
- unseen problem when downloading/configuring Qt5 apps, compared to the way SculptOS does it ?
- problem with underlying configuration/system-integration ? I use nitpicker and event_filter as per basic .run file examples
You most likely missed to configure the event_filter <chargen> config node correctly. A snippet from Sculpt /config/managed/event_filter follows (can be found in the source tree at repos/gems/sculpt/event_filter/pc).
<config> <output> <chargen> ... <input name="usb"/> ... <include rom="en_us.chargen"/> <!-- this may also be fr_fr.chargen --> <include rom="special.chargen"/> </chargen> </output> <policy label="ps2" input="ps2"/> <policy label="usb" input="usb"/> </config>
The chargen files are located in repoos/src/server/event_filter/ resp. the genodelabs/src/event_filter archive.
Greets