2005-12-14 Peter Dennis Bartok <pbartok@novell.com>
authorPeter Dennis Bartok <pbartok@mono-cvs.ximian.com>
Thu, 15 Dec 2005 03:50:03 +0000 (03:50 -0000)
committerPeter Dennis Bartok <pbartok@mono-cvs.ximian.com>
Thu, 15 Dec 2005 03:50:03 +0000 (03:50 -0000)
commit1f787e426abc0799516a4d4585b8f7d4670de651
tree5e1c67c50257dfabd569d4177360012035ae713a
parente6c1288f04721aef31c33b18932c0f2806824b95
2005-12-14  Peter Dennis Bartok  <pbartok@novell.com>

        * Hwnd.cs:
          - Added Reparented property to allow tracking of Window Manager
            reparenting actions (which affect X/Y calculations of toplevel
            windows)
          - Made ToString() print window handles in hex
        * XplatUIX11.cs:
          - AddConfigureNotify(): Now uses reparented state off Hwnd to
            determine if X/Y needs offsetting
          - AddConfigureNotify(): Fixed offset calculations
          - Now adds ReparentNotify messages into the queue
          - Now processes ReparentNotify messages and causes a
            WM_WINDOWPOSCHANGED message to be sent upstream if a window
            is reparented (as most likely it's X/Y coordinates are changed
            due to that)

These fixes will fix the 'random' window repositioning of toplevel windows
when setting one of the properties that affect size or location (Left, Top,
Size, Location, Bounds, etc.) Thanks to Eric Butler for a testapp that
showed this problem.

svn path=/trunk/mcs/; revision=54437
mcs/class/Managed.Windows.Forms/System.Windows.Forms/ChangeLog
mcs/class/Managed.Windows.Forms/System.Windows.Forms/Hwnd.cs
mcs/class/Managed.Windows.Forms/System.Windows.Forms/XplatUIX11.cs