Phoenix icon indicating copy to clipboard operation
Phoenix copied to clipboard

Problem with wx.aui.AuiManager (wxWidget 3.1.6 --> 3.1.7)

Open komoto48g opened this issue 3 years ago • 4 comments
trafficstars

Operating system: Windows 10 wxPython version & source: 4.1.2a1.dev5434+7d45ee6a (whl) Python version & source: 3.10.4

Description of the problem: Each time you drag one floating pane window, the other floating panes drift. In the demo video, every time you drag the pane [p1], the pane [p2] drifts. Once you touch the pane [p2], it will no longer move.

Since 4.1.2a1.dev5426+502d8354 is no problem, this bug seems to be related to the change of wxWidget 3.1.6 --> 3.1.7

Code Example (click to expand)
import sys
import wx
from wx import aui


print("Python {}".format(sys.version))
print("wxPython {}".format(wx.version()))

class Frame(wx.Frame):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)

        self._mgr = aui.AuiManager()
        self._mgr.SetManagedWindow(self)

        self.p0 = wx.Panel(self)
        self.p1 = wx.Panel(self, size=(100,100))
        self.p2 = wx.Panel(self, size=(100,100))

        self._mgr.AddPane(self.p0, aui.AuiPaneInfo().CenterPane())
        self._mgr.AddPane(self.p1, aui.AuiPaneInfo().Float().Caption("p1"))
        self._mgr.AddPane(self.p2, aui.AuiPaneInfo().Float().Caption("p2"))
        self._mgr.Update()

if __name__ == "__main__":
    app = wx.App()
    frm = Frame(None)
    frm.Show()
    app.MainLoop()

https://user-images.githubusercontent.com/83063554/173488541-3e31a841-b9f0-4504-91a6-09a01f5f1083.mp4

komoto48g avatar Jun 14 '22 03:06 komoto48g

I don't see this problem on Linux, so perhaps it affects Windows only? Do you want to report it to wxWidgets? It doesn't seem like something that could be caused downstream in wxPython.

swt2c avatar Jun 15 '22 01:06 swt2c

Thank you for checking this problem. Yes, I will report this to wxWidgets issue tracker, although I cannot provide a runnable c++ code now...

komoto48g avatar Jun 15 '22 13:06 komoto48g

This issue has been mentioned on Discuss wxPython. There might be relevant details there:

https://discuss.wxpython.org/t/need-help-with-wx-aui-auimanager-problem/36025/1

RobinD42 avatar Jun 16 '22 15:06 RobinD42

This issue will be fixed in the next wxWidgets version (maybe 3.2.1 or later) with this PR: https://github.com/wxWidgets/wxWidgets/pull/22651

komoto48g avatar Jul 24 '22 17:07 komoto48g