Bug 6396

Response window first opens on first monitor and then moves to second monitor 09 April, 2021

Ankur Patel
07 April, 2021
Product: PowerBuilder Category: Controls & UI
Version: 2019 R3 Build: 2670
Classification: Publishing: Public
Priority: P3
Status: Reproducing Reason:
Communication Status: Waiting for Appeon
Mark Lee @Appeon 09 April, 2021
Hello Ankur,

Thanks for report the problem. We are working on it and we will get back to you after analyzing it.
We'll keep you posted here!

Mark Lee
Chris Pollach @Appeon 08 April, 2021
Hi Ankur;

  Thank you so much for the Test Case PB App!

  Yes, the window "centering" feature seems to be after the Window control's "Constructor" event. The centering delay is also due to the DWO's handling of the large image resizing before taking effect.

  The way around this problem (IMHO) would be to:

1) Make the Response window invisible.
2) Create "Post Constructor" user events on the DW Control's
3) Move the InsertRow(0) command to the DC's "Post Constructor" user event
4) Create a "Post Open" user event on the WIndow
5) Make the Window visible on the "Post Open" user event

The above changes will make your test case open the Response window on monitor #2 to the App user.

  In the mean-time, I will transfer this ticket over to the main Support / Engineering team as they are just beginning to QA the next MR for R3. Maybe they can use this as another Test Case in their QA process to determine if the MR does fix this issue.

Regards ... Chris
Ankur Patel 08 April, 2021
Hello Chris,

Just to confirm, are you referring to the bug id 5992? Because as mentioned, I have already tried this sequence with the fixed DLLs provided in that bug.
Those DLLs did fix the issue mentioned in bug 5992 but the issue that I mentioned is still happening.

Ankur Patel
Chris Pollach @Appeon 07 April, 2021
Hi Ankur;

  This is a known problem in general for Response, Child and even Pop-Up windows within an MDI based App that are not opening at the proper location. This also includes Main window types within an SDI type app (centering & monitor issues).

  This problem has been fixed by Appeon Engineering and will be available in an upcoming Maintenance Release (MR) within the next few weeks. 

Regards ... Chris
Ankur Patel 07 April, 2021
window_position.zip (13121KB)

In PB 2019 R3, with dual monitor setup, open an mdihelp! window in fullscreen mode, move it to second monitor and then open a response window. The response window first opens in the first monitor and then moves to the center of second monitor

*Reproduce Steps:
1. Make sure you have dual monitors.
2. Extract the attached sample application.
3. The sample application code is of PowerBuilder 2019 R2 Build 2353.
4. Open the sample application in PowerBuilder 2019 R2 first.
5. Run the application, the application will open an mdihelp! window in fullscreen mode in your main monitor.
6. Move the mdihelp! window to second monitor and make it fullscreen.
7. The window only has a single menu. Click on File > new. It will open a response window.
8. The response window has 4 datawindow controls all with same dataobject. The datawindow contains few large images just to simulate a slow opening of screen. 
9. You will see that the response window opens on the main monitor.
10. Now migrate this application to PowerBuilder 2019 R3 Build 2353.
11. Run the same application again from R3.
12. Move the mdihelp! window to second monitor and make it fullscreen.
13. Click on menu File > New.
14. You can see the response window opens in the main monitor instead of the second monitor.
15. Response window slowly loads all the 4 datawindows and once it has completely loaded all 4 datawindows it quickly moves to the second monitor.

I have also attached a video recording of the issue. So as you can see this behavior has been introduced in PowerBuilder 2019 R3. My guess is it is introduced while fixing the following bug.

I already know I can fix this using the approach used in the following app.

But this should not be the default behaviour of the response window. As an end user I would like the window to stay where it is opened instead of abruptly moving to a different monitor. It seems like the code to move the window to second monitor is written at a place where the window becomes visible first and then moves to the second monitor.

I have also tried with the DLL provided in the following bug.
While the above DLLs fixes the bug 5992 but it has the same issue that I mentioned above.

Please let me know if you are not able to replicate this.

Ankur Patel
Database Type:
Database Version: