Closed
Bug 87720
Opened 23 years ago
Closed 23 years ago
Help broken when accessed from a modal dialog
Categories
(SeaMonkey :: Help Documentation, defect)
Tracking
(Not tracked)
VERIFIED
FIXED
People
(Reporter: bugzilla, Assigned: oeschger)
References
Details
(Keywords: platform-parity)
Attachments
(1 file)
930 bytes,
patch
|
Details | Diff | Splinter Review |
seen using 2001.06.25.08-branch comm bits on mac. not a problem on winnt or
linux.
1. open Preferences dialog.
2. click the Help button, Help window appears.
3. try any of the following:
* clicking any of the help links
* resizing the Help window
* closing the Help window by clicking the close widget.
result: nothing happens.
notes:
* the windowshade widget works, oddly.
* workaround: dismiss the Prefs dialog [i hit Cancel], and then the Help window
is accessible.
Reporter | ||
Updated•23 years ago
|
Reporter | ||
Comment 1•23 years ago
|
||
modality thing. of course. :)
Assignee | ||
Comment 2•23 years ago
|
||
danm or saari: can you guys shed some light here? I am using (as I said I would
in 46226) window.opener.open() from the preferences dialog to get as much
non-modality as the preferences dialog would permit, but apparently mac needs
something more.
Can one of you suggest a way to open the help viewer from the modal preferences
dialog that would properly give control to the help viewer? tanks
We just talked about this: the problem is, as Ian points out, the new window is
given its opener's parent as its own parent. Or something like that. I'm not
quite sure who wins here: the opening window or the calling window. I think it's
the opening window. There was much nervous clearing of throats and we decided it
might be possible to handle that more nicely, but it would be best to just open
the Help window normally, and let the system sort it out.
But now I realise that even that wouldn't work. I agree that the Help window
doesn't want to be modal, but you're stuck with it because of the modal prefs
window. You're kind of trying to defeat the Macintosh application-wide modality,
giving it a more Windows- or Linux-like behaviour. We don't support that. On the
Mac, a modal window shuts down the whole app. That's just standard Mac app
behaviour. (On the up side, I'm told that Apple wants OSX apps to adopt the nicer
window-specific modality most other OSes implement.)
There's still a problem here; the duelling windows should be better behaved.
But if you open the window in straightforward fashion and just let the system
behave the way it wants to, it'll start behaving.
Comment 4•23 years ago
|
||
On 4.x, the Help window was a true floating window, for this very reason.
Comment 5•23 years ago
|
||
and it was a hack from hell (i remember the code). please, let's not go back
there.
Comment 6•23 years ago
|
||
There is no UI-sanctioned way on Mac OS to give the user access to content in a
document window (like the help window) when a modal dialog is up. So,
irrespective of our particular implementation restrictions, how *should* this
work?
Assignee | ||
Comment 7•23 years ago
|
||
On the other two platforms, is asking the browser to open the help window better
than launching it straight from the preferences dialog?
Because if this really is something that Mac prohibits (and if launching help
from the browser really is better than the alternative, which conversations
about this in 46226 and elsewhere led me to believe was the case), then we _can_
just take the Help button out of the mac's dialog overlays, and not permit
context sensitive help on the mac. :(
Ooo. Clarification on my above comment: the thing that wouldn't work was pipe
dream #1a, not what we decided to go with. Merely opening the help window from
the prefs window and doing nothing tricky (as we discussed and decided) should
work fine on all platforms. It's just that you'll get a modal window for Help
whether or not you want that, because you're opening it from a modal window
(well, except on Linux, where the Prefs Window isn't modal by default. Man, this
is over-complicated.)
(Simon: since we're spinning our own modality, we could consider blowing off the
UI guidelines and making windows window modal, like modal Windows windows. What a
lovely sentence that was.) But barring that, it is of course pointless even to
try to make the Help window nonmodal, since the modal prefs window already has
the whole app's attention and will be adamant about keeping it.
And yes, on Linux and Windows -- I haven't tried this you understand -- but
picturing how the code works in my head, I think opening the Help window from the
browser would probably work fine, even if the browser is already hosting the
modal Prefs Window. Maybe not. There is a possible snag with stalled NSPR event
queues. But if everything is well behaved, it should work. (I should mention that
the Help window is largely empty on my Windows and Linux builds today; I wonder
if that's more fallout from the funny parenting.) I wouldn't advocate utterly
removing the button from Mac builds, though.
Assignee | ||
Comment 9•23 years ago
|
||
Assignee | ||
Comment 10•23 years ago
|
||
danm, smfr, and/or saari: can you guys review this last patch? I guess we are
going to have to go with window.open on the prefs dialog and put up with having
the help viewer coerced into modality to the preferences dialog (b/c, if I
understand danm correctly, when a modal window launches a non-modal, that latter
is forced to become modal).
Status: NEW → ASSIGNED
Comment 11•23 years ago
|
||
Yes: if you don't ask for modality, the window will be unmodal if possible;
otherwise it'll be forced modal anyway. So it should always work, not explicitly
specifying modality.
Patch looks good to me. r=danm.
Updated•23 years ago
|
Summary: help broken when accessed from Preferences dialog → Help broken when accessed from a modal dialog
Comment 12•23 years ago
|
||
*** Bug 88426 has been marked as a duplicate of this bug. ***
Assignee | ||
Comment 13•23 years ago
|
||
cc'ing blake for review
Resolving this modality problem looks like it's going to be fairly important. I
wish there was some other way than to revert to modality to the prefs dialog on
all plats, but this seems to be the concensus, at least for now.
Blake, would you mind sr=ing this patch (40302)? It's just going back to
window.open from window.opener.open for context-sensitive help. Thanks a lot.
Comment 14•23 years ago
|
||
sr=blake
Comment 15•23 years ago
|
||
We need this in. Check in on the trunk first, and we'll confirm that it works
there (Terri, can you test this please).
Adding nsBranch keyword.
Keywords: nsBranch
Assignee | ||
Comment 16•23 years ago
|
||
Just checked in fix for modality on trunk. Terri, let me know how it looks
(particularly on the mac), and we'll see about getting this on the branch
tomorrow. Thanks
Comment 17•23 years ago
|
||
Note that Ben just seems to have successfully argued for a nonmodal preferences
window. If allowed to actually land that change, the above patch is still correct
and all these problems are simply no longer.
Assignee | ||
Comment 18•23 years ago
|
||
Marking FIXED: modality is still less than ideal, but problem described here
about the mac is resolved with check-in to the trunk yesterday, check-in to the
branch just now.
Status: ASSIGNED → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Updated•20 years ago
|
Product: Browser → Seamonkey
You need to log in
before you can comment on or make changes to this bug.
Description
•