mirror of
https://github.com/elasota/Aerofoil.git
synced 2025-12-14 12:09:36 +00:00
Refactor neighboring rooms sync-ups. Remove all of the neighboring room objects and recreate them, which fixes a bunch of problems with objects becoming out-of-frame after resize.
This commit is contained in:
@@ -440,6 +440,29 @@ void HandleSplashResolutionChange(void)
|
||||
//DumpScreenOn(&justRoomsRect);
|
||||
}
|
||||
|
||||
void HandleEditorResolutionChange(void)
|
||||
{
|
||||
FlushResolutionChange();
|
||||
|
||||
RecomputeInterfaceRects();
|
||||
RecreateOffscreens();
|
||||
CloseMainWindow();
|
||||
OpenMainWindow();
|
||||
|
||||
UpdateMainWindow();
|
||||
|
||||
//ResetLocale(true);
|
||||
InitScoreboardMap();
|
||||
//RefreshScoreboard(wasScoreboardTitleMode);
|
||||
//DumpScreenOn(&justRoomsRect);
|
||||
|
||||
if (toolsWindow)
|
||||
PortabilityLayer::WindowManager::GetInstance()->PutWindowBehind(toolsWindow, PortabilityLayer::WindowManager::GetInstance()->GetPutInFrontSentinel());
|
||||
|
||||
if (mapWindow)
|
||||
PortabilityLayer::WindowManager::GetInstance()->PutWindowBehind(mapWindow, PortabilityLayer::WindowManager::GetInstance()->GetPutInFrontSentinel());
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------- HandleIdleTask
|
||||
// Handle some processing during event lulls.
|
||||
|
||||
@@ -447,6 +470,11 @@ void HandleIdleTask (void)
|
||||
{
|
||||
if (theMode == kEditMode)
|
||||
{
|
||||
if (thisMac.isResolutionDirty)
|
||||
{
|
||||
HandleEditorResolutionChange();
|
||||
}
|
||||
|
||||
SetPort(&mainWindow->GetDrawSurface()->m_port);
|
||||
DoMarquee();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user