Closed Bug 58848 Opened 22 years ago Closed 21 years ago

Clicking Hyperlink in normal windows applications loads two browser windows

Categories

(SeaMonkey :: UI Design, defect, P3)

x86
Windows 98
defect

Tracking

(Not tracked)

VERIFIED FIXED
mozilla0.9.2

People

(Reporter: trudelle, Assigned: law)

References

Details

Attachments

(1 file)

Using tonight's MN6 candidate build on Win98

Click on a HyperLink in Excel.
If N6 is already running, it loads web page twice, in separate windows.
If it is not running, it launches, loads the web page in one window, and the
home page in another.
The first time I tried this, N6 crashed, but appeared to remain running, as if
there were two instances of the app running, one of which crashed.
This would also explain why I saw two Java icons in the Win98 taskbar on some tries.
This isn't just Excel, it happens with other programs that try to drive the
browser as well, such as Groove.  Are we handling OpenURL messages twice? cc
law, nominate to get on radar.
Keywords: rtm
Hmm, with Groove, I'm also getting the error message I got in bug 58770.
Bill, is this a bug for you or mscott?
Assignee: don → law
Whiteboard: [rtm need info]
Me.  This has something to do with our DDE code and "default browser" registry
settings.  Excel uses the registry to figure out how to talk to the app and
something about how we're responding to that is causing some problem(s).  My
theory is that it is trying to use DDE and we're responding to that but in such
a way that Excel thinks we're not.  It then falls back to launching us via the
shell/open/command technique, which we happily respond to as well.

This is hard to diagnose.  I've observed behavior that led me to believe that a
debug version of our app causes this behavior sometimes.  But that might just be
coincidence because the problem could be timing related and the debug version
starts up differently.
Status: NEW → ASSIGNED
Bill, do you think this is worth holding RTM for a fix?
Heck no.  I tried using my debug build on WinNT and I could open .html file and
internet shortcuts with no problems.  On win98, I get the two windows.  I see
two DDE requests come in, one from the desktop (or Excel) and the other from
netscp6.exe itself (because the desktop/Excel launched it).  It's the same code
on our end, the difference lurks somewhere in Windows and I don't know how to
discern what we're doing wrong.

So a fix is not on the horizon and the symptom seems relatively innocuous (an
extra browser window and a spurious error message from Windows).  I say [rtm-].
OK, minusing this on Bill's recommendation.
Whiteboard: [rtm need info] → [rtm-]
I'm the same behavior as described on a Windows NT 4 system with Mozilla build
2000112704 clicking on a link in Outlook 98. I have never received an error
message though. Its harmless but annoying as all get-out.

It took me forever to find this bug searching on the current summary (words
like: desktop, integration, link, shortcut, opens, two windows) and I finally
nailed it on "click" and a long browse down the list. Maybe change it to "Click
link in external app opens two windows"?
nav triage team:

Yeah, it's annoying, but we're not going to hold beta1 for it. Marking nsbeta1-
Keywords: nsbeta1-
Marking nsbeta1- bugs as future to get off the radar
Target Milestone: --- → Future
Do what you will.  As a user, this is a broad problem not captured by the
Summary.  For the many of us in a corporate, institutional, "campus" environment
standardized on groupwise or outlook or whatever, this double open behavior
wastes time and annoys.  So many emails now include so many links, that it is
important that the app Do The Right Thing.

"Open" behavior has been fluid recently, going from opening two windows on a
click of a link in most any app, to being a little better, to doing nothing (if
already open) and, with law's recent fix to bug 50424, we're back to opening two
windows on the click.
I can't believe we would knowingly ship a third time with this bug. nominating 
for nscatfood.
Keywords: nsCatFood
Let me also clarify (update) the behavior I see--I've checked this from both
Outlook and WordPerfect 9, on Windwos 2000.  My default page is "blank."

Click a link:

- if the browser is open, one new browser will open the link.
- if the browser is not open, two browsers will open the link.
This "open twice" behavior has taken a step backward in the past day, using
2001042908 on win2k.  Now one of the two windows that opens doesn't get a theme
(skin) applied to it.  Moreover, the window that actually shows the content of
the clicked URL is the one with this bad behavior, while the other window
remains without content.  This leaves the user working in a browser window whose
whole UI is, from her point of view, "messed up."
bill: this is triaged to be a catfood issue. can you investigate during 
mozilla0.9.2. 
Keywords: nsCatFoodnsCatFood+
Target Milestone: Future → mozilla0.9.2
Yes.
I looked into this a little bit.  We are getting *two* requests from excel/word 
(I tested using an MS Word document link).  I don't know why.  Will take at 
least 1 day to figure it out.
Whiteboard: [rtm-] → [rtm-] time:1day
It may be worthwhile to add that desktop integration is completely wacky when
the new -turbo command line switch is used: a new navigator window opens but it
does not load the url. With so many links in mail these days (Outlook or
anything else), desktop integration is critical to the user experience. So
things are messed up whether we use -turbo (no load) or not (load twice). This
is really a problem, the two users I've given Moz to always fall back to ns4
because of the double open behavior.
Yup, that's bug 81714 (more or less).  Ignoring that issue here.
I investigated this a bit over the last couple of days.

Clicking on a http: link in a Word document (I presume Excel does the same) 
generates two invocations of Mozilla:

1. The one registered under the http protocol.
2. The one registered under the .html file extension (this might differ based 
on the extension of the link).

The tricky thing is knowing what the heck Word is thinking when it's doing 
this.  It has something to do with DDE, because if I clear out the ddeexec 
subkey under HKCR/http/shell/open, then we only get 1 request (the one 
registered under http).  It seems that the presence of the ddeexec entry causes 
Word to then issue a second request based in the file extension in the URL.

The funny thing is that it doesn't seem to actually do any DDE.

So a fix may be hard.  I am working to completely remove our so-called support 
for these ddeexec subkeys.  That's a little tricky because we can't just ignore 
them; other applications (i.e., Communicator or IE) will have already set these 
so we have to force them to be blank.

There's also the interaction between those keys and integration with Explorer 
(i.e, dbl-clicking Internet shortcuts on the desktop).  I have to go see if 
removing this degrades our support for that.  Ideally, taking this step will 
also fix the problems related to that (e.g., bug 58770).
Thanks for the thorough writeup on this. But may I ask this: you write as though
Word (or Excel) is the agent. But *every* windows app with links is doing this.
WordPerfect does it.  Draw does it.  I've just checked the Help/About dialogs on
three apps, and the links on each all provoke two Mozes.  It makes it seem as
though there's an intermediary between the app and Moz.
About to attach a patch that fixes this problem (and also bug 58770).

It does 2 things:

a. Changes the value for the default key under ddeexec to "" (blank).  The 
previous setting was "-url "%1"".  This "turns off" DDE from the desktop 
(Explorer), and, stops Word/Excel from issuing two requests (see my comments 
above).

b. Stops setting the Application and Topic keys under ddeexec (since those are 
no longer needed since the default key is now blank).  This was accomplished by 
removing the DDERegistryEntry override of the set() member function.

I added commentary to reset() to say that we still *reset* Application/Topic.  
I decided it was best to leave that, since it ensures that we put back old 
settings if a previous installation of Mozilla had set those.  Since we don't 
set those keys, reset() will have no effect in a clean installation.
Keywords: patch, review
Whiteboard: [rtm-] time:1day → fix in hand
Frank,

They all probably use some standard shell api to open the link (e.g., 
ShellExecute).  The logic that decides to issue two requests is probably in 
that API.
This is a hugely great thing, I can't wait to hand this out to actual users now
that the caveats are not needed.  Thanks so much!

Now, is it a separate bug that the clicked url often doesn't make it into the
url box? ;-)
Do you mean that the browser doesn't go to the right page, or just that the url
doesn't appear in the location bar?

Before or after this patch is applied?
I see this behavior in the nightlies, including the one built last night
(2001061220).  So I guess that would mean *before* the patch since I haven't
seen any r/sr/a stuff on this bug.

The URL just doesn't always appear in the location bar--the page does load.

I just tried it: made sure no instance of moz is running, click the url in the
ourlook mail (from this bug) that just arrived, got two windows.  One of them
had the page content but no url in the location box, the other window was blank.
I wasn't able to reproduce the "emtpy url bar" problem with the patch applied.

If that problem does still exist after this patch lands, then open a new bug for
that.
I got email with r=ssu@netscape.com, sr=blaker@netscape.com.  Looking for
approval from drivers now.
a= asa@mozilla.org for checkin to the trunk.
(on behalf of drivers)
Blocks: 83989
Fix checked in.
Status: ASSIGNED → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
Should the fix be "active" in 2001061804 win32?  Thanks.
Can't verify that this is fixed.  These are the behaviors I see when I click:
- Word XP and Excel XP: now opens IE (can't find any option for this in XP apps)
- Outlook XP: opens two browser windows
- Desktop or folder link to a file: two browser windows
- WordPerfect and Quattro: one browser (correct!)
- Links shown on many app's Help/About dialogs: one browser (correct!)

So progress *has* been made but there are still issues.
burleigh@indiana.edu:
Desktop or folder link to a file: two browser windows: see bug 59078


jrgm/anyone else, should this be reopened on the basis of Frank's XP
observations?
Using the 2001062004 build of Moz as well as the N6.1beta under Win2K results in
the following when there is no browser currently open and a link is clicked:

1. WordPerfect 9 opens a new browser & loads page (Hooray!).
2. Word/Excel/Outlook opens two browsers, the first loads the page & the second
remains blank but obscures the first browser window that actually loads the URL.

In short, I would argue that the problem has not been fixed.  My $.02 anyway. 
I forgot to add that I had obliterated any trace of Moz before installing this
build.  At that point, Outlook reverted to opening my link in an old copy of
N4.7x that I have laying around the program directory.  However once I installed
N6.1beta this nutty behavior changed.  At that point, when I clicked a link in
Outlook, it only opened one browser (N6.1b) but also put up a dialog asking me
to locate the program used to open/handle this link (loose paraphrase).  It
replicated this behavior upon successive attempts until I helped Outlook locate
the appropriate application (N6.1b).  After doing this, it now opens two browser
windows, etc. . .

Sorry it took me two posts to get all of this out.
hokay, methinks i can verify this as fixed with the following tests --i'd prolly
file any other related/similar issues as separate bugs.

tested on winnt, using 2001.06.26.06-branch comm bits.

* when Netscape6.x was *not* setup as the default application to handle html
docs and http: protocol [this is set in the Prefs dialog, under the Advanced >
System panel]: when i clicked a hyperlink in Excel, Communicator 4.7x launched.

* when Netscape6.x *was* setup to handle html docs and http:, when i clicked a
link:
1. when Netscape6.x was already running: a new browser window opens to that
link.
2. when Netscape6.x was not running: Netscape6.x is launched and the browser
window opens to that link.
Status: RESOLVED → VERIFIED
Keywords: verifyme
sairuh@netscape.com:

All the conditions you describe were present on the three machines (2 Win2k, 1
NT) we tested here (handle html docs and http protocol).  In each case we got
the behavior earlier described: *two* browser windows open in Word 2000, in
Excel 2000 and in Outlook 2000.

Are you saying we should open additional bugs to handle these?
frank --pls do file a new, separate bug for what you're seeing now. also
reference this one, if you wish. it should prolly be in the XP Apps component,
but i really don't know who the appropriate developer would be [bill law is on
sabbatical]. thx a lot!
sairuh@netscape.com:

I can do that but I don't understand why: what I see is precisely this bug.  The
only thing I'd change is the subject: "MS Office apps all start two browser
windows when links are clicked." ;-)
the reason we need a new bug is that although the steps to reproduce and the 
results are the same, the problem 'bug' is not. (arguably different appications 
mean slightly different steps to reproduce so it really is clear.) Assignees 
manage bugs and once they select what and how they intend to fix that's what 
the bug focuses on, until that point everything is up for grabs, after that 
point anything else belongs in a new bug...
filed
Bug 88083 clicking links in Office 2000 Apps triggers two browser windows 
Bug 88090 clicking links in Office XP Apps launches IE 
Summary: Click Excel Hyperlink, N6 loads it twice in separate windows → Clicking Hyperlink in normal windows applications loads two browser windows
Whiteboard: fix in hand
silly bugzilla, please use 
Bug 88086 clicking links in Office XP Apps launches IE 
instead of Bug 88090
Product: Core → Mozilla Application Suite
You need to log in before you can comment on or make changes to this bug.