Maximize does not work properly on multiple screens with different DPI settings

When having multiple screens with different DPI settings maximizing the window using the maximize button does not work properly. Double clicking on the title bar works correctly.

This is the setup:

Screen1 (Primary): 2560 x 1440, Scale: 125%

Screen2: 2560 x 1440, Scale: 100%

Screen3: 1920 x 1080, Scale: 100%


Per monitor DPI is enabled on startup (https://github.com/microsoft/WPF-Samples/blob/main/PerMonitorDPI/readme.md):

AppContext.SetSwitch("Switch.System.Windows.DoNotScaleForDpiChanges", false);


When having UseNativeChrome set to true, minimize/maximize/close window buttons cannot be clicked on the 2 screens with scale 100%. They only work on Screen1.

I detect if there are multiple screens with different DPI settings on the constructor of the window and set UseNativeChrome to false. With that, the buttons work but on Screen2 (2560 x 1440) when maximizing using the button there is a gap on the right side (the window width is less than 2560, at about 80% of the screen width). On Screen3 (1920 x 1080) it maximizes correctly. This is similar to a bug posted back on 2021: https://www.syncfusion.com/forums/166385/on-maximized-not-the-full-screen-is-covered which seems that was solved for resolution 1920 x 1080 on v.19.2.

 Double clicking on the title bar works correctly on all cases (all screens, no matter if UseNativeChrome is true or false)


7 Replies

BS Bhaskar Suresh Syncfusion Team October 8, 2024 12:24 PM UTC

Hi George,


Sorry for the inconvenience. We're currently setting up the environment, and once completed, we'll validate and provide you with an update. We appreciate your patience until then.


Regards,

Bhaskar Suresh



MW Matthias Wieland October 22, 2024 10:39 AM UTC

Same problems, is there already a solution available?




BS Bhaskar Suresh Syncfusion Team October 23, 2024 05:21 AM UTC

Hi Matthias Wieland,


Sorry for the inconvenience. We're currently setting up the environment, and once completed, we'll validate and provide you with an update. We appreciate your patience until then.


Regards,

Bhaskar Suresh



BS Bhaskar Suresh Syncfusion Team November 14, 2024 05:34 PM UTC

Hi George,


Sorry for the delayed response.


Query 1 : With UseNativeChrome as true, caption buttons cannot be clicked on the secondary screen with different scaling

We have confirmed the reported scenario is a defect and logged a report for the reported scenario, “With UseNativeChrome as true, caption buttons cannot be clicked on the secondary screen with different scaling”. We will fix this issue and include it in our NuGet release which is scheduled for 3rd December 2024.


You can track the status of this defect using the following feedback link:

With UseNativeChrome as true, caption buttons cannot be clicked on the secondary screen with different scaling | Feedback Portal (syncfusion.com)


Please let us know if you need any further assistance.

Note: The provided feedback link is private, and you need to log in to view this feedback.


Disclaimer: “Inclusion of this solution in the weekly release may change due to other factors including but not limited to QA checks and works reprioritization.”


Query 2 : Setting UseNativeChrome as false and maximizing the window displays partially on one side of the screen in 2k monitor.

This issue was already resolved and this fix will be included in our upcoming weekly NuGet release scheduled for November 19th, 2024.


Regards,

Bhaskar Suresh



BS Bhaskar Suresh Syncfusion Team November 22, 2024 11:45 AM UTC

Hi George,


Query 1 : With UseNativeChrome as true, caption buttons cannot be clicked on the secondary screen with different scaling

We are currently working on this issue and will include the fix in our NuGet release which is scheduled for December 3rd, 2024.


Query 2 : Setting UseNativeChrome as false and maximizing the window displays partially on one side of the screen in 2k monitor.

We have included the fix for the reported issue “Setting UseNativeChrome as false and maximizing the window displays partially on one side of the screen in 2k monitor” in our Weekly NuGet release version 27.2.3 which is available for download (https://www.nuget.org/).


We thank you for your support and appreciate your patience in waiting for this update. Please get in touch with us if you require any further assistance.


Regards,

Bhaskar Suresh



BS Bhaskar Suresh Syncfusion Team December 3, 2024 02:30 PM UTC

Hi George,


We have fixed the reported issue "With UseNativeChrome as true, caption buttons cannot be clicked on the secondary screen with different scaling" from our end. We will include fix in this in our upcoming weekly NuGet release.


This patch can be downloaded from the links below.

Recommended approach - exe will perform automatic configuration.

Please find the patch setup from the below location:

Patch link:

https://syncfusion.com/Installs/support/patch/27.2.2/1445336/F194654/SyncfusionPatch_27.2.2_1445336_12032024090238467_F194654.exe

Please find the patch assemblies alone from the below location:

Assemblies Link:

https://syncfusion.com/Installs/support/patch/27.2.2/1445336/F194654/SyncfusionPatch_27.2.2_1445336_12032024090238467_F194654.zip

NuGet link:

https://syncfusion.com/Installs/support/patch/27.2.2/1445336/F194654/SyncfusionNuget_27.2.2_1445336_12032024090238467_F194654.zip


Assembly Version: 27.2.2

Installation Directions:


This patch should replace the files "Syncfusion.Shared.WPF” under the following folder.

$system drive:\ Files\Syncfusion\Essential Studio\$Version #\precompiledassemblies\$Version#\[TargetFramework]

E.g. : $system drive:\Program Files\Syncfusion\Essential Studio\27.2.2\precompiledassemblies\27.2.2\4.6

To automatically run the Assembly Manager, please check the Run assembly manager checkbox option while installing the patch. If this option is unchecked, the patch will replace the assemblies in precompiled assemblies’ folder only. Then, you must manually copy and paste them to the preferred location, or you must run the Syncfusion Assembly Manager application (available from the Syncfusion Dashboard, installed as a shortcut in the Application menu) to re-install assemblies.

https://www.syncfusion.com/support/directtrac/patches


Disclaimer:

Please note that we have created this patch for version 27.2.2 specifically to resolve the issue reported in this incident. If you have received other patches for the same version for other products, please apply all patches in the order received. Please let us know, if you are using any other Syncfusion version, we will provide patch in your version.


Please let us know if you need any further assistance on this. We will be glad to assist you.


Regards,

Bhaskar Suresh



BS Bhaskar Suresh Syncfusion Team December 19, 2024 10:46 AM UTC

Hi George,


Root Cause:

The issue arises because both the system and the custom chrome attempt to manage the window's appearance simultaneously. This conflict results in the buttons not responding.


We have included the fix for the reported issue “With UseNativeChrome as true, caption buttons cannot be clicked on the secondary screen with different scaling” in our Weekly NuGet release version 28.1.35 which is available for download (https://www.nuget.org/).


We thank you for your support and appreciate your patience in waiting for this update. Please get in touch with us if you require any further assistance.


Regards,

Bhaskar Suresh


Loader.
Up arrow icon