Originally posted by lowlands
View Post
Wine's windowing code (winex11.drv) is hard to understand, and to implement this well I'd need to understand X11 in some detail too. Which is going to be needed at some stage anyway, to fix other bugs I have with Wine (like Alt+Tab from a Wine window moving it to the back of the window chain, so Alt+Shift+Tab is needed to return to it).
In the new approach I would take, most/all DnD code would move down from OLE32 to winex11.drv:
OLE32 DoDragDrop()
USER32
winex11.drv
and then winex11.drv would implement the entire drag loop within it, searching both native and Wine windows for drop targets.
I am busy with so many other open source contributions that I don't know when I'll have time for this one, but like I said, I'll definitely have to look at winex11.drv some time.
Comment