http://bugs.winehq.org/show_bug.cgi?id=17764
piwacet davrosmeglos@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |davrosmeglos@gmail.com
--- Comment #23 from piwacet davrosmeglos@gmail.com 2009-11-01 19:15:48 --- I apologize if I'm spamming this bugtracker, as I don't know much about computers and am not a programmer, but I do believe reversing commit accfce21d3e042638a5eac8a8379eda2964fcd0a fixes this problem, based on the following:
For the last year or two I have been using the patch below, which essentially reverses the changes to winpos.c made by the above commit, in my local gentoo build system, and it has fixed this problem for all wine builds that I have used. I'm currently using 1.1.32 with this patch, and "Edit in Edit Image Window" works perfectly. I can't say if it breaks other things as DPP is the only program I use under wine.
cat DPP.winpos.c.patch --- wine-*/dlls/user32/winpos.c.old 2008-09-05 08:28:27.000000000 -0700 +++ wine-*/dlls/user32/winpos.c 2008-09-09 19:41:26.000000000 -0700 @@ -985,7 +985,8 @@ if (!wasVisible) return FALSE; showFlag = FALSE; swp |= SWP_HIDEWINDOW | SWP_NOSIZE | SWP_NOMOVE; - if (style & WS_CHILD) swp |= SWP_NOACTIVATE | SWP_NOZORDER; + if (hwnd != GetActiveWindow()) + swp |= SWP_NOACTIVATE | SWP_NOZORDER; break;
case SW_SHOWMINNOACTIVE: @@ -1036,8 +1037,6 @@ } if (style & WS_CHILD && !(swp & SWP_STATECHANGED)) swp |= SWP_NOACTIVATE | SWP_NOZORDER; break; - default: - return wasVisible; }
if ((showFlag != wasVisible || cmd == SW_SHOWNA) && cmd != SW_SHOWMAXIMIZED && !(swp & SWP_STATECHANGED))