Closed Bug 141676 Opened 23 years ago Closed 21 years ago

Need a way to detect hidden window in widget

Categories

(SeaMonkey :: UI Design, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: stevew, Assigned: mkaply)

Details

Attachments

(1 file, 1 obsolete file)

From Bugzilla Helper: User-Agent: Mozilla/5.0 (OS/2; U; Warp 4.5; en-US; rv:1.0rc1) Gecko/20020418 BuildID: 2002041811 Open Mozilla (1.0 RC1 release) from the icon created by mozfold.cmd. Minimize it, then click on the icon again. Instead of restoring the minimized window, it brings up the *hidden window* instead(!). If that is closed, the browser crashes in mozjs. Reproducible: Always Expected Results: Should have restored the Mozilla browser window that was minimized.
Patch coming up
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Attached patch Fix for problem (obsolete) — Splinter Review
This is an ugly fix. I need to detect the hidden window being created and not add it to the tasklist. The only way I can find to detect it is by size. It is NOT the first window created if you type mozilla -profilemanager.
Comment on attachment 82031 [details] [diff] [review] Fix for problem r=pedemont
Attachment #82031 - Flags: review+
Comment on attachment 82031 [details] [diff] [review] Fix for problem sr=blizzard (platform specific code)
Attachment #82031 - Flags: superreview+
1. Have you tried this on Windows or some other OS? 2. Did you try using file: URLs rather than relative URLs to see if that worked?
Comment on attachment 82031 [details] [diff] [review] Fix for problem a=rjesup@wgate.com for drivers. Please check into branch (and trunk if you want). Please leave the bug open and implement a better solution on trunk in the future (perhaps for merge to a future 1.0x branch target)
Attachment #82031 - Flags: approval+
I checked in this temporary fix for OS/2, but there is a bigger issue. There should be some way that the creator of the infamous "Hidden Window" tells widget that it is the hidden window in case it needs to do special things with it.
Assignee: mkaply → sgehani
Status: ASSIGNED → NEW
OS: OS/2 → All
Hardware: PC → All
Summary: Mozilla icon restores "hidden" window → Need a way to detect hidden window in widget
-> danm for a look
Assignee: sgehani → danm
adding fixed1.0.0 keyword (branch resolution). This bug has comments saying it was fixed on the 1.0 branch and a bonsai checkin comment that agrees. To verify the bug has been fixed on the 1.0 branch please replace the fixed1.0.0 keyword with verified1.0.0.
Keywords: fixed1.0.0
Ick. I don't follow the "first window" thing in comment 2. This bug, is it because the OS is unfortunately selecting the wrong window to activate? Or are we doing something wrong? If the former, it'd be nice to magically arrange things so that the OS just doesn't select that window, rather than having to expose knowledge of hidden-ness in the widget interface. Ick again. I wonder if this is a problem any more. Bug 120155 sounds very similar.
Target Milestone: --- → mozilla1.2alpha
On OS/2 we have a window list which lists all windows that are in the system. Curently on Mozilla, we dynamically add and remove windows from this list as Mozilla shows and hides them, since Mozilla simply hides windows rather than destroying them (hidden windows, message compose window) The issue is that we need to be told when a window is never going to be seen so that we can special case it. Otherwise we add the window to the task list (because we have no way of knowing the user is not going to see it) and then when the user clicks on the icon on the desktop to display the application, OS/2 displays the first frame created (the hidden window)
Changing target milestone to 'Future' since these seem to have missed the 1.2 alpha. If you are still considering a fix for 1.2 please re-target accordingly.
Target Milestone: mozilla1.2alpha → Future
I just happened to notice, there is a way to know whether a window at the widget level is the hidden window. This was done as part of bug 207742. You can now simply check whether mWindowType == eWindowType_invisible. Michael, I believe this makes your problem much simpler and gives you a more straightforward way to solve this bug. I'm handing it back. Lemme know. PS you may want to take a look at bug 207742 for implementation on OS/2, as well. The salient part is the three lines (the first is a comment) beginning at line 4138 in widget/src/windows/nsWindow.cpp rev 3.487.
Assignee: danm-moz → mkaply
Target Milestone: Future → ---
Attached patch Better fixSplinter Review
Use the invisible window flag to clean up the patch.
Attachment #82031 - Attachment is obsolete: true
Attachment #137609 - Flags: review?(pedemont)
Attachment #137609 - Flags: review?(pedemont) → review+
there is a way to know a window is the hidden window and I checked this latest fix into the trunk. Marking fixed.
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
Product: Core → Mozilla Application Suite
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: