richardwilkes / unison

A unified graphical user experience toolkit for Go desktop applications
Mozilla Public License 2.0
165 stars 12 forks source link

Panels don't draw when using VSCode's debug mode under Windows (other OS's work fine, as does non-debug mode) #51

Open ddkwork opened 2 months ago

ddkwork commented 2 months ago

On windows, the demo in goland debug mode renders the layout but doesn't show up on the main window. How to reproduce: Goland opens unison demo, clicks debug, sees no content in the panel inside the window, the After careful troubleshooting, the following commit id that causes this bug:

42c26e1249b14c404a071392a2a6a51525d7b4d8 ok ,last working version

d845b56964c1c227fde3bd819d5656818d43645a bug start

richardwilkes commented 2 months ago

I almost never use Windows, so haven't seen this when debugging. When I get some spare time, I'll take a look, though. Given my current workload, that may not be soon.

richardwilkes commented 1 month ago

I've now had a chance to verify that debugging on Windows with any version beyond 42c26e1 causes all panels to be blank. Running without the debugger works fine, as does using macOS or Linux, whether in debug mode or not.

Since I don't use Windows for debugging, this doesn't affect me. I'd like to find a solution, but nothing obvious in that commit was changed that should affect rendering like this and my time is limited, so this is likely to remain open until someone else who really needs to be able to debug on Windows can spend the time to determine what the actual issue is.

ddkwork commented 1 month ago

I spent a few days checking the commits related to root panel and Window draw but no useful error messages appeared, I thought it could only be related to the compilation parameters of skia, unfortunately it's quite difficult to access github in China, and it's a bit overwhelming to clone a few gb's worth of skia repositories.

richardwilkes commented 1 month ago

My first thought was also that skia had changed in some manner... however, there was no update of the skia library between the version that works and the one that doesn't.

ddkwork commented 1 week ago

Based on the experience of using it these days, it is very likely that the parent of a panel is set wrongly. Because I had a similar problem when I was designing this debug interface using unison. https://github.com/HyperDbg/gui What's interesting is that you can manipulate the panel even though you don't see it being rendered, assuming you know where each widget is located.

richardwilkes commented 1 week ago

Not likely, if you can actually interact with it despite it not drawing. The layout would not place things in the correct place if the parent was incorrect, nor would any events reach it.

That also doesn't explain why it works fine without the debugger attached.

ddkwork commented 1 week ago

👍👍👍我想你是对的

---Original--- From: "Richard @.> Date: Fri, Jun 28, 2024 23:18 PM To: @.>; Cc: @.**@.>; Subject: Re: [richardwilkes/unison] Panels don't draw when using VSCode'sdebug mode under Windows (other OS's work fine, as does non-debug mode) (Issue#51)

Not likely, if you can actually interact with it despite it not drawing. The layout would not place things in the correct place if the parent was incorrect, nor would any events reach it.

That also doesn't explain why it works fine without the debugger attached.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>