Commit graph

116 commits

Author SHA1 Message Date
mataniko
06242a712b JANITORIAL: Rename EVENT_RTL
Now that ScummVM is adding RTL support, the EVENT_RTL should be disambigious that it is for returning to launcher
2020-05-12 10:36:38 +02:00
Henrik "Henke37" Andersson
7676efd0d9 Backends: Use PauseToken for showing the vkeyboard 2020-05-11 01:35:03 +02:00
Henrik "Henke37" Andersson
ce4cfdf5d2 BACKENDS: Use PauseToken 2020-05-10 23:39:31 +02:00
Thierry Crozat
8b0b9f11c6 OSYSTEM: Add kFeatureNoQuit to remove Quit buttons and replace Quit with RTL
Some platforms should not allow quitting ScummVM. For example the Apple's
HUG for iOS state that we should "Never quit an iOS applications
programmatically". Adding the kFeatureNoQuit allows those backend
that need it to remove the possibility to quit the application.
2020-04-26 16:19:37 +01:00
Bastien Bouclet
85e3fb38fb SDL: Change keyboard repeat to apply on unmapped events
The keyboard repeat event generator is used when building against SDL1.
Previously the repeat events would generate based on the event stream
produced by the keymapper which is not guaranteed to have matching up
and down events in the case the keymaps are changed while a key is
pressed.

Fixes #11417.
2020-04-12 11:11:00 +02:00
Bastien Bouclet
9cc2fee887 SDL: Enable joystick input by default
Game controller input is now enabled whenever a compatible device is
connected. The keymapper's keymaps are refreshed when a joystick is added
or removed.

Fixes #10366.
2020-03-16 18:41:27 +01:00
Bastien Bouclet
568d882e80 KEYMAPPER: Introduce a Virtual Mouse event source
The Virtual Mouse is meant to provide a way to control the mouse cursor
on system without a physical mouse. It provides keymapper actions that
are expected to be bound to game controller axes or buttons.
2020-03-09 20:00:31 +01:00
Cameron Cawley
1605b72ee8 BACKENDS: Add events for additional mouse buttons 2020-02-26 21:34:24 +01:00
Bastien Bouclet
22c75c644a EVENTS: Change DefaultEventManager to be the owner of the keymapper 2020-02-22 13:14:04 +02:00
Paul Gilbert
30d34fa63d ENGINES: Implement autosaving in the Engine base class 2020-02-16 15:44:28 -08:00
Paul Gilbert
818d9bab27 ENGINES: Change debugger trigger to Ctrl+Alt+D using keymapper 2020-02-16 13:07:19 +02:00
Paul Gilbert
98f9c4f254 ENGINES: Create a default debugger when needed if none is yet set 2020-02-16 13:07:19 +02:00
Paul Gilbert
7b721eaac1 ENGINES: Adding debugger to base Engine class 2020-02-16 13:07:19 +02:00
Bastien Bouclet
43184657e9 EVENTS: Disable ScummVM's source of keyboard repeat events by default
Backends can still (and do) generate such events. This works around an
issue with the keymapper where the "DOWN" event would be mapped to a
key, but the corresponding "UP" event would be mapped to another one due
to a keymap change. The keyboard repeat generation system would believe
the key to be still pressed and send a continuous stream of repeat
events.
Ideally the keymapper should be fixed to always generate matching event
pairs. However this source of an infinite stream of events still looks
like trouble waiting to happen to me. Hence disabling it by default.
2020-01-29 08:51:30 +01:00
Bastien Bouclet
7ecccd3b30 MOHAWK: RIVEN: Add default joystick action mappings 2020-01-29 08:51:29 +01:00
Bastien Bouclet
426867f4bc KEYMAPPER: Give human readable descriptions to the keymaps 2020-01-29 08:51:29 +01:00
Bastien Bouclet
32174c9067 KEYMAPPER: Actions can now be bound to joystick buttons 2020-01-29 08:51:29 +01:00
Bastien Bouclet
be49fc4b9a SDL: Add a keymap for the graphics manager 2020-01-29 08:51:29 +01:00
Bastien Bouclet
c131e8f5b9 EVENTS: Use the keymapper for some previously hard-coded key bindings 2020-01-29 08:51:29 +01:00
Bastien Bouclet
14663c4790 KEYMAPPER: Make the keymapper mandatory 2020-01-29 08:51:29 +01:00
Bastien Bouclet
511d138bbc KEYMAPPER: Move the remap dialog to an option dialog tab
The aim is to make it easy to discover, and possible to use without a
keyboard.
2020-01-26 23:09:08 +02:00
Bastien Bouclet
8dd2b7ca39 EVENTS: Expose the primary global keymap builder 2020-01-26 23:09:08 +02:00
Le Philousophe
dc0bfbc724 COMMON: Fix button state desynchronization when warping mouse 2019-05-22 00:14:56 +02:00
Bastien Bouclet
6eb9a48bbd EVENTS: Delay initializing the virtual keyboard
The virtual keyboard requires the backend to be fully initialized
because it needs the display size.

Fixes #10338.
2017-11-28 05:49:45 +01:00
Bastien Bouclet
bc5ac6440c EVENTS: Fix one ms error in repeat event generation time check 2017-11-19 20:07:51 +01:00
Bastien Bouclet
7d811d356e EVENTS: Allow disabling repeat event generation 2017-11-19 16:12:50 +01:00
Bastien Bouclet
7539a77eeb EVENTS: Move key repeat handling to its own method 2017-11-19 16:12:50 +01:00
Bastien Bouclet
8beb519c5e EVENTS: Rename synthetic to kbdRepeat 2017-11-19 16:12:50 +01:00
Colin Snover
d1b77d4b68 BACKENDS: Fix missing mouse events when system cursor cannot be moved
Normally with SDL, a mouse motion event will be sent after the
system mouse cursor has been moved by a call to
SDL_WarpMouseInWindow, but if the system cursor cannot be moved
(e.g. because the window does not have mouse focus), games still
need to receive these mouse events so they can successfully update
the mouse position internally. Otherwise, games continue to think
the mouse is still in the original position and will continue to
try to perform whatever action is associated with that mouse
position.

Refs Trac#9689.
2017-10-15 13:24:21 -05:00
Johannes Schickel
121687d2ed BACKENDS: Make GPL headers consistent in themselves. 2014-02-18 02:39:32 +01:00
Eugene Sandulenko
8098ed9b46 EVENTS: Initialize class variable. CID 1002944 2013-09-22 11:47:37 +03:00
Eugene Sandulenko
f59512c47e RECORDER: Implement Events Recorder 2013-05-17 00:18:09 +03:00
Eugene Sandulenko
ce0a334d30 BACKENDS: Fix unitialized variables in event manager. CID 1002944 2013-04-21 14:51:33 +03:00
Tarek Soliman
3f6d549b0e KEYMAPPER: Move F7 and F8 handling to DefaultEventMapper 2012-02-20 06:49:22 -06:00
Tarek Soliman
cfe91c8d44 KEYMAPPER: Move CTRL-F5 handling to DefaultEventMapper 2012-02-20 06:49:22 -06:00
Tarek Soliman
5c3e48fddf KEYMAPPER: Create a DefaultEventMapper when Keymapper isn't enabled
This allows migration to unconditional mapping
2012-02-20 06:49:22 -06:00
Thierry Crozat
06bbb57ad7 I18N: Make many more GUI MessageDialog strings translatable 2011-06-13 22:19:18 +01:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Max Horn
df05ed1a46 BACKENDS: Include scummsys.h at top of all .cpp files, *before* any #ifdefs
svn-id: r54573
2010-11-29 16:18:43 +00:00
Willem Jan Palenstijn
7f2dfd0f82 EVENTS: Apply backspace hack to keyrepeat too
svn-id: r52993
2010-10-03 14:59:36 +00:00
Max Horn
0b48a71c99 Remove PalmOS port
svn-id: r50964
2010-07-17 18:41:38 +00:00
Yotam Barnoy
ef330ed9b4 Patch for bug 2943361 by littleboy, adding full kb modifier support to all engines + GUI and proper keypad handling
svn-id: r48101
2010-02-21 04:04:13 +00:00
Fabio Battaglia
ecff81544c remove unneeded workaround for #47233
svn-id: r47234
2010-01-10 18:11:36 +00:00
Fabio Battaglia
8703b6929f Mark the 'fix' in r47231 as a workaround for a probably deeper problem.
svn-id: r47232
2010-01-10 17:58:44 +00:00
Fabio Battaglia
09a2694f6f Check if game engine is already paused before pausing it again to show virtual keyboard. Fixes #2912148
svn-id: r47231
2010-01-10 17:49:05 +00:00
Max Horn
2ed53f98b4 Clarified the backspace key workaround: This is not a Mac OS X issue (as the comment used to imply) but rather an issue in some game engines.
svn-id: r43880
2009-09-01 13:02:24 +00:00
Matthew Hoops
ce30a513ac Introduce a better fix for the Mac OS X backspace problem by adding the workaround to default-events.cpp.
svn-id: r43441
2009-08-16 14:04:54 +00:00
Johannes Schickel
7e71865e91 Move the event recorder to its own class (EventRecoder inside common/EventRecorder.[h/cpp]).
svn-id: r42751
2009-07-25 12:59:46 +00:00
Johannes Schickel
bbc8021182 Add enum which marks global priorites of the EventManager event dispatcher.
svn-id: r42729
2009-07-25 01:01:41 +00:00
Johannes Schickel
901f2d5836 - EventDispatcher is no longer a singleton.
- Add "getEventDispatcher" method to EventManager.

svn-id: r42728
2009-07-25 01:01:22 +00:00