aboutsummaryrefslogtreecommitdiff
path: root/engines/tsage/graphics.cpp
diff options
context:
space:
mode:
authorFilippos Karapetis2012-01-08 19:00:33 +0200
committerFilippos Karapetis2012-01-08 19:03:41 +0200
commit2bc89ea4dcab39607002427862a6e0afacaad113 (patch)
treead8ba4231e90c9fcc0d35905d5062ab033124902 /engines/tsage/graphics.cpp
parent5a9c189b22cb40fc669a42bd8a91fe2668818a79 (diff)
downloadscummvm-rg350-2bc89ea4dcab39607002427862a6e0afacaad113.tar.gz
scummvm-rg350-2bc89ea4dcab39607002427862a6e0afacaad113.tar.bz2
scummvm-rg350-2bc89ea4dcab39607002427862a6e0afacaad113.zip
TSAGE: Fix incorrect popup menu positions (regression)
Diffstat (limited to 'engines/tsage/graphics.cpp')
-rw-r--r--engines/tsage/graphics.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/engines/tsage/graphics.cpp b/engines/tsage/graphics.cpp
index 8436afe2e8..b211f910c1 100644
--- a/engines/tsage/graphics.cpp
+++ b/engines/tsage/graphics.cpp
@@ -1302,19 +1302,31 @@ int GfxManager::getAngle(const Common::Point &p1, const Common::Point &p2) {
}
}
+// FIXME: The two checks for screenSurface inside these two copyFrom() methods
+// are meant for Ringworld 2, but the corresponding setBounds case causes a lot
+// of issues with the popup menus when right clicking in all games (i.e. the
+// popup menu is always shown on the top left of the screen). For now, these checks
+// are limited for R2R only (as was the original intent), but they should be
+// investigated, as they cause the same glitches with the popup menu there as with
+// the other games.
void GfxManager::copyFrom(GfxSurface &src, Rect destBounds, Region *priorityRegion) {
+#if 0
if (&_surface == &(GLOBALS._screenSurface))
_surface.setBounds(Rect(0, 0, _bounds.width(), _bounds.height()));
else
+#endif
_surface.setBounds(_bounds);
_surface.copyFrom(src, destBounds, priorityRegion);
}
+
void GfxManager::copyFrom(GfxSurface &src, int destX, int destY) {
+#if 0
if (&_surface == &(GLOBALS._screenSurface))
_surface.setBounds(Rect(0, 0, _bounds.width(), _bounds.height()));
else
+#endif
_surface.setBounds(_bounds);
_surface.copyFrom(src, destX, destY);