Page MenuHomePhabricator

Change only one keycode to avoid overwriting mappings of other keyboards.
AbandonedPublic

Authored by thierry1970 on May 9 2019, 7:02 AM.

Details

Reviewers
raster
Summary

Patch proposed by pascal@ordissimo.com
The concern appears when you have a physical keyboard and a virtual keyboard.
If you press the virtual keyboard and the ask key is not present in "Virtual core XTEST keyboard", the keyboard is unmapped and then remapped incorrectly.

  • switch to XTEST keyboard mapping (Send a FakeKeyEvent with an unsued keycode to cause a mapping change. This way, XStringToKeysym() and XKeysymToKeycode() will match the keyboard mapping that will be used in the final XFakeKeyEvents).
  • change only one keycode to avoid overwriting mappings of other keyboards
  • use the first unused keycode of the current keyboard mapping
  • revert the mapping change after few secondes (X clients need some time to catch the keysym)
  • revert all mapping changes in ecore_x_shutdown

Diff Detail

Repository
rEFL core/efl
Branch
work
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 14012
Build 9729: arc lint + arc unit
thierry1970 created this revision.May 9 2019, 7:02 AM

It seems that this patch has no reviewers specified. If you are unsure who can review your patch, please check this wiki page and see if anyone can be added: https://phab.enlightenment.org/w/maintainers_reviewers/

thierry1970 requested review of this revision.May 9 2019, 7:02 AM
thierry1970 retitled this revision from Change only one keycode to avoid overwriting mappings of other keyboards. to Change only one keycode to avoid overwriting mappings of other keyboards. .May 9 2019, 7:15 AM
thierry1970 edited the summary of this revision. (Show Details)
thierry1970 edited the summary of this revision. (Show Details)
thierry1970 added a subscriber: devilhorns.
thierry1970 retitled this revision from Change only one keycode to avoid overwriting mappings of other keyboards. to Change only one keycode to avoid overwriting mappings of other keyboards..
thierry1970 edited the summary of this revision. (Show Details)
thierry1970 edited the summary of this revision. (Show Details)
thierry1970 edited the summary of this revision. (Show Details)
devilhorns resigned from this revision.May 22 2019, 4:52 AM
devilhorns added a subscriber: bu5hm4n.

@bu5hm4n Why was I added as reviewer on this ? I don't deal with X stuff anymore, nor do I do key mapping stuffs lol

Because you are probably the only one developing other things in this area, so it you look like a good candidate for a review :).

devilhorns edited reviewers, added: raster; removed: devilhorns.Jun 26 2019, 11:12 AM
  • Fixed: Verifies that the file has a protocol.

oh this is a mess now. the original patch has issues anyway - like core_timer_add() being undefined - also no tracking of that timer etc. ... and now it's messed up... so might want to abandon and start again?

thierry1970 abandoned this revision.Oct 15 2019, 6:28 AM

Yes, I think it will be easier