[ scummvm-Patches-2980597 ] GUI: Text input + Right Alt (bug #2978736)

SourceForge.net noreply at sourceforge.net
Thu Apr 1 17:21:08 CEST 2010


Patches item #2980597, was opened at 2010-04-01 17:21
Message generated for change (Tracker Item Submitted) made by pidgeot
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=418822&aid=2980597&group_id=37116

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: None
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Michael Madsen (pidgeot)
Assigned to: Nobody/Anonymous (nobody)
Summary: GUI: Text input + Right Alt (bug #2978736)

Initial Comment:
Patch for bug 2978736. For reference, this is from my comment on that bug:

The problem is that in backends/platform/sdl/events.cpp, the key up event
is explicitly swallowed when both Ctrl and Alt is held down - and since
Ctrl+Alt is equivalent to AltGr, the event manager never realizes the
character key has been released. This is, presumably, done because we
didn't expect to ever have sent a down event - Ctrl+Alt is used for scaler
hotkeys, and the event is handled in the backend.

I see two ways of fixing this: either pass on the up key event if we're
not releasing one of the keys bound to a hotkey, or never send key down
events when both Ctrl and Alt is held down.

The problem with never sending the key down event is that at least some
games (such as LSL1SCI) can use a CTRL+ALT+<something> input - I can't
think of any where it's *required* to play the game, but we would have to
either provide a workaround (holding down a different set of modifier keys)
or ignore that part - and it seems a little silly to require a workaround
if it isn't really required.

In my opinion, it would be best to take the second option - look at the
key being released and determine if it's a scaler hotkey.

I noticed that the GP2X backend also provides the handleScalerHotkey
method, but it doesn't appear to get called anywhere - so I haven't
attempted to do anything to that. I've only fixed the SDL backend.

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=418822&aid=2980597&group_id=37116




More information about the Scummvm-tracker mailing list