Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove generation of core events, long live XI! #347

Open
sunweaver opened this issue Feb 20, 2017 · 6 comments
Open

Remove generation of core events, long live XI! #347

sunweaver opened this issue Feb 20, 2017 · 6 comments
Assignees
Labels
Milestone

Comments

@sunweaver
Copy link
Member

Investigate portability of this X.org Xserver commit:


commit a511c445debbd13e8c48146ecd2d7c97e793f788
Author: Peter Hutterer <[email protected]>
Date:   Fri Sep 28 18:46:41 2007 +0930

    Remove generation of core events, long live XI!
    
    Let the drivers only generate XI events and put those into the event queue.
    When processing events, generate core events as needed. This fixes a number of
    problems with XKB and the DIX in general.
    
    The previous approach was to put core events and XI events as separate events
    into the event queue. When being processed, the server had no knowledge of
    them coming from the same device state change. Anything that would then change
    the state of the device accordingly was in danger of changing it twice,
    leading to some funny (i.e. not funny at all) results.
    
    Emulating core events while processing XI events fixes this, there is only one
    path that actually changes the device state now. Although we have to be
    careful when replaying events from synced devices, otherwise we may lose
    events.
    
    Note: XI has precedence over core for passive grabs, but core events are
    delivered to the client first.
    
    This removes the wrapping added in 340911d7243a7f1095d79b5b2dcfa81b145c2474

@sunweaver
Copy link
Member Author

plus...

commit 2b075e97ec913ebe19290181e36bb169410b820b
Author: Peter Hutterer <[email protected]>
Date:   Tue Oct 2 13:28:40 2007 +0930

    mi: switch core keyboard on XI events, not only on core events.
    
    We only get core events through the EQ in exceptional cases, so make sure we
    actually swap the core keymap for XI events as well. Gives us back the ability
    to have multiple keyboard layouts simultaneously.

@sunweaver sunweaver self-assigned this Mar 2, 2017
@sunweaver sunweaver added this to the 3.6.1.0 milestone Mar 2, 2017
@sunweaver
Copy link
Member Author

sunweaver commented Aug 27, 2019

@uli42: could you have a look at these (see #347) patches from X.org? Could they possibly fix the CAPs lock and and and NUM lock problems (toggle state being out of sync sometimes)?

@sunweaver
Copy link
Member Author

@uli42: ^^^ (see previous post on #347)

@uli42
Copy link
Member

uli42 commented Jan 18, 2020

$ git describe a511c445debbd13e8c48146ecd2d7c97e793f788
xorg-server-1.3.99.0-230-ga511c445d

-> Will come in automatically once my 1.4.2 patch is merged.

@sunweaver
Copy link
Member Author

sunweaver commented Jan 18, 2020 via email

@uli42
Copy link
Member

uli42 commented Jan 18, 2020

see #902 for the current state of that 1.4.2 efforts

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants