Need More Info
Last Updated: 08 Dec 2023 10:00 by ADMIN
Khalil
Created on: 01 Dec 2023 15:57
Category: UI for WPF
Type: Bug Report
0
RadTabbedWindow cannot be "Maximize" Dragged Left of Primary Screen

Using RadTabbedWindow I noticed difficulty dragging maximized windows between monitors. It seems to happen in multi-monitor environments and only when dragging Left of the PrimaryScreen.

In the video I've included , the blue window is a standard window and can be maximized in one drag across any display.

The white window is RadTabbedWindow and the drag will default to the PrimaryScreen when dragged to the left-most display.

Any help would be appreciated. Thanks

3 comments
ADMIN
Petar Mladenov
Posted on: 08 Dec 2023 10:00

Hello Khalil,

Thank you for this report. Could you please confirm your operation system in Windows 11? Also what is your current DPI scale (100/125%) ?
RadTabbedWindow inherits from RadWindow so it is expected that they behave the same. We will need a bit more testing in order to log the issue and be sure it is 1:1 with the one you describe. On a side note, on Windows 10, we can reproduce the following - the first time TabbedWindow is moved and released to the upper part of the neighbor window - it is not maximized but simply relocated to the left most part of the screen, then on the second attempt maximization is successful. Could you please confirm this not the behavior you experience ?

Regards,
Petar Mladenov
Progress Telerik

Love the Telerik and Kendo UI products and believe more people should try them? Invite a fellow developer to become a Progress customer and each of you can get a $50 Amazon gift voucher.

Khalil
Posted on: 01 Dec 2023 18:02
Hooking WndProc for now to workaround the issue
        public IntPtr WndProc(IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled)
        {
            var message = (WindowMessage)msg;
            if (message == WindowMessage.WM_SIZE)
            {
                //note: this fixes radwindow maximize not working properly on multi-displays
                //maximize
                if ((int)wParam == 0x02)
                {
                    if (!isMaximizing)
                    {
                        if (TabWindow != null)
                        {
                            TabWindow.WindowState = WindowState.Normal;
                        }
                        isMaximizing = true;
                    }
                    else
                    {
                        isMaximizing = false;
                    }
                }
            }
        }
Khalil
Posted on: 01 Dec 2023 17:06
Seems this issue is also present on RadWindow