Commit Graph

46 Commits

Author SHA1 Message Date
Eugene Sandulenko
1ffb661853 GUI: Fix warnings 2017-03-13 08:59:10 +01:00
Thierry Crozat
cc75d17e9c GUI: Allow delayed deletion of GuiObject
This is achieved by adding a list of GuiObject to delete to GuiManager
and doing the deletion in GuiManager::runLoop.

The main purpose of this is to avoid the deletion of ButtonWidget object
while their ButtonWidget::sendCommand function is being called. For
example the sendCommand of the Apply button of the OptionsDialog
may cause a rebuild (if the GUI language was changed) which tries to
delete the widgets inside the OptionsDialog, including the Apply button.
2017-03-10 02:02:58 +00:00
Eugene Sandulenko
cd7bddf644 Merge pull request #720 from ottogin/gui-events-fix
GUI: Fix "eaten" event by dialog which was closed
2016-11-12 12:09:14 +01:00
Alexander Tkachev
f5cb5be393 GUI: Add SaveLoadCloudSyncProgress in ScummModern theme
ScummVM would probably crash when using a theme without
SaveLoadCloudSyncProgress dialog described.
2016-08-24 16:07:55 +06:00
Alexander Tkachev
31e528c070 GUI: Make ScrollContainerWidget do full redraw 2016-07-03 12:17:43 +02:00
Ori Avtalion
be1fdf59bb GUI: When dialogs gain focus, inform them of the current mouse position
Previously, they only reacted to the mouse position once it was moved.
This meant that if the cursor was on a button that just gained focus,
it did not highlight.

Fixes #7101.
2016-04-06 17:51:30 +03:00
Lothar Serra Mari
8fa543f58f GUI: Increase update screen rate to 60Hz 2016-04-05 20:31:24 +01:00
Lothar Serra Mari
841f87bf47 GUI: Update _lastRedraw before calling updateScreen
This reduces the cursor lags on some systems.
2016-04-05 20:31:15 +01:00
ottogin
b1c678f509 GUI: Fix "eaten" event by dialog which was closed
This patch fix bug #6841
If this runloop catches both the repeated key down event and the key up event.
In this case they key down will close the tooltip, because it got closed the key up event will be ignored.
As a result the LauncherDialog will never get notified the SHIFT state might have changed and not adapt the button description.
In this patch we just pass event to topDialog, if activeDialog was closed.
Also we must check, If topDialog doesn't exist.
2016-03-24 21:31:53 +03:00
Eugene Sandulenko
8360d3cd6f GUI: Do not show splash when ran from launcher 2015-11-11 21:36:27 +01:00
Ben Castricum
0d215badf7 GUI: change FullScreen into fullscreen
This makes it consistant with other references to fullscreen.
2014-08-28 20:46:30 +02:00
Johannes Schickel
f5dfe6725a GUI: Make GPL headers consistent in themselves. 2014-02-18 02:39:35 +01:00
Johannes Schickel
fa90f9797c GUI: Check for screen change whenever an event is polled.
This should *hopefully* really fix all GUI crashes when resizing with OpenGL.
2013-10-19 22:18:22 +02:00
Matthew Hoops
4a7e4e5b22 ALL: Don't use EventRecorder at all when not compiled in 2013-07-06 23:54:45 -04:00
Eugene Sandulenko
f59512c47e RECORDER: Implement Events Recorder 2013-05-17 00:18:09 +03:00
Johannes Schickel
80ae9d7d34 GUI: Allow tooltips to be changed after widget creation. 2012-06-20 03:31:50 +02:00
Oleksiy Kurochko
e6c317a922 GUI: Implemented pressed state for buttons 2012-05-03 19:32:08 +03:00
Tarek Soliman
d12f21b31d KEYMAPPER: Map non-key custom input events
This also makes the keymapper be in charge of keymapping logic
2012-03-02 20:48:50 -06:00
Johannes Schickel
442bcb7d3e ALL: Fix some signed/unsigned comparison warnings. 2012-02-22 20:20:55 +01:00
Tarek Soliman
aa42d78658 KEYMAPPER: Remove automapping dead code 2012-02-21 08:20:40 -06:00
Tarek Soliman
3f6d549b0e KEYMAPPER: Move F7 and F8 handling to DefaultEventMapper 2012-02-20 06:49:22 -06:00
Tarek Soliman
5cf932198e KEYMAPPER: Fix Action ctor args in most keymaps 2012-02-13 23:24:59 -06:00
Tarek Soliman
da4b03139d KEYMAPPER: Added Toggle FullScreen action 2012-02-04 19:53:57 -06:00
Johannes Schickel
453eeb496c GUI: Work around bug #3481395.
The bug in question is: "LAUNCHER: Can't quit from unsupported game dialog".
2012-01-30 23:00:16 +01:00
Tarek Soliman
37d77253cf KEYMAPPER: Add failsafe code for popping into Keymapper itself
Thanks LordHoto
2012-01-07 22:08:57 -06:00
Tarek Soliman
73160e54b4 KEYMAPPER: Only push/pop the gui keymap once per gui session
The removes a bit of waste when gui dialogs are opened.
Multiple gui keymaps were being pushed.
2012-01-07 20:48:49 -06:00
Tarek Soliman
366a942a3a KEYMAPPER: Simplify calling getKeymap 2011-12-30 13:03:39 -06:00
Tarek Soliman
6523454db5 KEYMAPPER: Put the gui keymap pushing/popping back in GuiManager::runLoop
This because theoretically the GUI could be run without a dialog.
This also fixes the situations where the GUI keymap gets popped more times than pushed.

Thanks sev
2011-10-31 22:59:55 -05:00
Tarek Soliman
56b5c0ea9f KEYMAPPER: Make sure GuiManager only pops gui keymaps 2011-10-27 10:46:23 -05:00
Tarek Soliman
a5082ffa5d KEYMAPPER: Skip GUI keymap when displaying active keymap in keymapper dialog
This fixes a problem where opening the keymapper dialog would cause the current game
keymap to be displayed as the active keymap but then changing the keymap selection
back to it would cause the GUI keymap to be displayed as the active one. The GUI keymap
was indeed at the top of the stack but that's not the desired effect.

Also move the pushing and popping of the keymap to Dialog::Open/Close
Also constantify the GUI keymap name
2011-10-27 10:46:22 -05:00
Ori Avtalion
aa0f307e06 ALL: Require DECLARE_SINGLETON to be used in the Common namepsace
Silences the clang warning:

  static data member specialization of '_singleton' must
  originally be declared in namespace 'Common'; accepted as a C++0x
  extension [-Wc++0x-extensions]

Wrapping "namespace Common {}" around the macro assignment causes clang
to complain about a spurious semicolon, and removing the semicolon at
the end of the macro causes some editors to misbehave.

Changing the requirement of using the macro in one namespace (the
global) to another (Common) seems a small price to pay to
silence a warning.
2011-06-30 22:41:41 +03:00
Max Horn
a4610df482 Merge branch 'branch-1-3-0' into master
I manually resolved all conflicts, and inspected every single change.
Many were due to the version string mismatch and thus easily resolved.
The MSVC project files add in the 1-3-0 branch were not merged,
neither where the changes to gui/themes/translations.dat.

Conflicts:
	NEWS
	backends/base-backend.cpp
	backends/graphics/samsungtvsdl/samsungtvsdl-graphics.cpp
	backends/module.mk
	backends/platform/ds/arm9/makefile
	backends/platform/psp/README.PSP
	backends/platform/samsungtv/main.cpp
	backends/platform/samsungtv/samsungtv.cpp
	backends/saves/posix/posix-saves.cpp
	base/commandLine.cpp
	base/internal_version.h
	base/main.cpp
	common/array.h
	configure
	devtools/create_project/create_project.cpp
	dists/android/AndroidManifest.xml
	dists/android/plugin-manifest.xml
	dists/iphone/Info.plist
	dists/irix/scummvm.spec
	dists/macosx/Info.plist
	dists/redhat/scummvm-tools.spec
	dists/redhat/scummvm.spec
	dists/scummvm.rc
	dists/slackware/scummvm.SlackBuild
	dists/wii/meta.xml
	engines/sci/parser/vocabulary.cpp
	engines/tinsel/handle.cpp
	gui/themes/translations.dat
2011-06-01 15:15:31 +02:00
Matthew Hoops
eea482fa43 ALL: behaviour -> behavior 2011-05-25 10:50:46 -04:00
agent-q
92a71f7452 DS: Port of changes from branch-1-2-0 that I should really have moved into the trunk.
"DS: Prevent the command line help string from being included in the binary."
5f3a90a5f6911188b8d1ded08dbdf6d233e9eb7b

"GUI: Allow disabling of Mass Add dialog.  Saves a few Kb of binary size on the DS, and is not particularly useful on that platform."
240ff87cf4472538d25a1c5628c8d15f1791ab1c

"GUI: Don't search for theme zip files on startup when running on the DS.  Themes aren't supported anyway, and the search severely delays startup."
fe3b18ce0df03117081e83d99f4a2cbd864d3286
2011-05-21 15:45:51 +01:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Ori Avtalion
9414d7a6e2 JANITORIAL: Reduce header dependencies in shared code
Some backends may break as I only compiled SDL
2011-04-28 15:08:58 +03:00
dhewg
9640048ad6 GUI: Update the screen after handling events
Fixes crash on droid:
game -> gmm -> save -> click entry (EVENT_SCREEN_CHANGED due to vkeybd
beeing shown) -> delete -> confirm
another EVENT_SCREEN_CHANGED gets in simultaneously (due vkeybd being
deactivated) and the parent dialog updated Rects out of bounds.
2011-04-05 12:44:46 +02:00
dhewg
a017cb3d00 GUI: Fix two-step rendering
This is used when changing directories in the 'add game' dialog or when
choosing another tab in the option dialog. Only blit to the overlay on
the final pass. Gets rid of highly annoying flickers on androids
2011-02-24 23:18:34 +01:00
Johannes Schickel
7b8b73f64a GUI: Update cursor palette handling for RGBA->RGB change. 2011-02-14 17:08:32 +01:00
Jordi Vilalta Prat
8393bc5b5f I18N: Don't build TranslationManager when translation is disabled.
svn-id: r54684
2010-11-30 18:50:19 +00:00
Johannes Schickel
1fea2b733c GUI: Make activeDialog in runLoop const, since it should not be changed.
svn-id: r54346
2010-11-18 21:32:42 +00:00
Johannes Schickel
8cd20c70a9 GUI: Simplify Tooltip implementation.
Formerly there was much special handling for the Tooltip dialog in
GuiManager::runLoop. This was replaced by overloading the event handling
functions in Tooltip. Also the Tooltip was adapted to be run like every
other normal dialog.

svn-id: r54337
2010-11-18 18:17:00 +00:00
Yotam Barnoy
b77ef177ed GUI: changed tooltip to be deleted when inactive
Before, it could be instantiated after an engine loaded and then was never deleted, causing memory fragmentation. Also removed inner tooltip call to the GuiManager runloop, which makes the logic simpler since the tooltip is a bit of a hack. I had to remove it because deleting _tooltip in the inner loop (called from tooltip itself) is trouble.

svn-id: r54311
2010-11-18 07:17:53 +00:00
Max Horn
5b735131ba GUI: Push down some header (inter)dependencies
svn-id: r54267
2010-11-16 10:29:31 +00:00
Max Horn
f3f73a7832 GUI: Commit some changes missing in my previous commit (oops)
svn-id: r54266
2010-11-16 10:24:16 +00:00
Max Horn
668adaa461 GUI: Rename gui/GuiManager.* to gui/gui-manager.*
svn-id: r54265
2010-11-16 10:19:01 +00:00