Closed Bug 79720 Opened 24 years ago Closed 24 years ago

[FIX]selects do not roll up when winembed is minimized

Categories

(Core :: XUL, defect)

x86
Windows NT
defect
Not set
critical

Tracking

()

VERIFIED FIXED
mozilla0.9.1

People

(Reporter: rods, Assigned: rods)

Details

Here is the patch: Index: src/windows/nsWindow.cpp =================================================================== RCS file: /cvsroot/mozilla/widget/src/windows/nsWindow.cpp,v retrieving revision 3.333 diff -u -r3.333 nsWindow.cpp --- nsWindow.cpp 2001/05/01 13:29:14 3.333 +++ nsWindow.cpp 2001/05/03 10:54:26 @@ -830,7 +830,7 @@ if (inMsg == WM_ACTIVATE || inMsg == WM_NCLBUTTONDOWN || inMsg == WM_LBUTTONDOWN || inMsg == WM_RBUTTONDOWN || inMsg == WM_MBUTTONDOWN || inMsg == WM_NCMBUTTONDOWN || inMsg == WM_NCRBUTTONDOWN || inMsg == WM_MOUSEACTIVATE || - inMsg == WM_MOUSEWHEEL || inMsg == uMSH_MOUSEWHEEL) + inMsg == WM_MOUSEWHEEL || inMsg == uMSH_MOUSEWHEEL || inMsg == WM_SIZE) { // Rollup if the event is outside the popup. PRBool rollup = !nsWindow::EventIsInsideWindow(inMsg, (nsWindow*)gRollupWidget);
Status: NEW → ASSIGNED
sr=hyatt
Target Milestone: --- → mozilla0.9.1
checked into the .9 branch
checked into tip - fixed
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
This patch doesn't sit well with me. I don't know why. Shouldn't WM_ACTIVATE already handle minimizing the window, since it loses focus?
Hyatt says he conditioned his sr= (via e-mail) on testing that this didn't hose menus. Was the patch so tested? Did the post-0.9 branch get hosed too? /be
I had to back out the fix for this to correct today's smoketest blockers.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
You can't roll up in response to WM_SIZE. Menus are created dynamically, and they can change their sizes during construction. Seems like another solution will have to be found for this.
Patch causes regression. Can not change the content of a combobox. Need a different solution.
Someone gonna back out of the 0.9 branch too? /be
Don, Can you back this out of the 0.9 branch?
I pulled that last change out of the .9 branch.
Instead of WM_SIZE, I am using WM_ACTIVATEAPP, I think this is much safer. I have done a lot of testing, this time with the new code actually linked in. Index: nsWindow.cpp =================================================================== RCS file: /cvsroot/mozilla/widget/src/windows/nsWindow.cpp,v retrieving revision 3.338 diff -u -r3.338 nsWindow.cpp --- nsWindow.cpp 2001/05/12 03:49:51 3.338 +++ nsWindow.cpp 2001/05/14 03:20:13 @@ -828,7 +828,7 @@ if (inMsg == WM_ACTIVATE || inMsg == WM_NCLBUTTONDOWN || inMsg == WM_LBUTTO NDOWN || inMsg == WM_RBUTTONDOWN || inMsg == WM_MBUTTONDOWN || inMsg == WM_NCMBUTTONDOWN || inMsg == WM_NCRBUTTONDOWN || inMsg == WM_MOU SEACTIVATE || - inMsg == WM_MOUSEWHEEL || inMsg == uMSH_MOUSEWHEEL) + inMsg == WM_MOUSEWHEEL || inMsg == uMSH_MOUSEWHEEL || inMsg == WM_ACTIVAT EAPP) { // Rollup if the event is outside the popup. PRBool rollup = !nsWindow::EventIsInsideWindow(inMsg, (nsWindow*)gRollupW idget);
Status: REOPENED → ASSIGNED
If we're getting a WM_ACTIVATEAPP, shouldn't there also be a WM_ACTIVATE in there, which is already handled in this code?
Summary: selects do not roll up when winembed is minimized → [FIX]selects do not roll up when winembed is minimized
I added the WM_ACTIVATEAPP change on WINNT and it doesn't cause any ill-effects. Combobox'es and menu's behave normally. (However, I don't see the original problem described in this bug with or without the change. For me, The combo-box always rolls up when the winembed window is minimized.) r=kmcclusk@netscape.com
So if you don't see the original problem, how can you confirm this patch does anything? I'm not trying to cause trouble here, I'm just wondering if someone can confirm that this isn't already trapped with WM_ACTIVATE?
I think Kevin's point is that although he can't reproduce the problem on his machine, the patch doesn't appear to cause any type of regression.
"I think Kevin's point is that although he can't reproduce the problem on his machine, the patch doesn't appear to cause any type of regression." Thats right.
Understood. But my question is whether the patch actually addresses the problem, or is needed, since Kevin is unable to replicate the problem without the patch? No regressions is definitely a good thing, though!
I am on NT and I can see the problem and it does fix it for me.
OK, cool. I still think it's odd that WM_ACTIVATE doesn't handle it, but OK. Do we need to worry about only doing this when being deactivated, ie. if wParam==FALSE?
sr=hyatt, but test context menus and menus to make sure there are no regressions. Thanks.
fixed
Status: ASSIGNED → RESOLVED
Closed: 24 years ago24 years ago
Resolution: --- → FIXED
verified in winembed (Moz build id: 2001060509)
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.