Problem: 1640530

Title: (Window -floating) Floating window doesn't get back after resolution setting

Received: Mar 19 1997 10:56AM


Launch the DemoDialogs app and bring up the windoid. Position it half way down the screen and so that part of it is off the right edge of the screen. (Note that I haven't had to position other windows off the screen, it's just that this one is so large this was necessary.) See the enclosed screen shots for an example.

Open the Monitors control panel. Change the resolution of the screen from 1024x768 to 832x624 and back again.

Flip back to the DemoDialogs app. The windoid should now look like the second screen shot.

Some other information:


To reproduce this move the message windiod down to the lower right of the monitor. Change the resolution of the monitor from the max resolution to the min resolution and then back again. What you'll see is a blank windoid that won't update. Window shading the window a few times seems to fix the problem.

This problem happens with all windows, not just floating windows.


Fix:

What's happening is, the window is moved by the OS and MacApp's TWindow::fLocation is still thinking it's in the old spot, so window updates don't affect the window until fLocation is updated. I applied a fix that checks for this condition in TWindow::Update that seems to only get triggered when screen monitor resolution shrinks and the window is indeed moved behind MacApp's back.