Closed Bug 947518 Opened 7 years ago Closed 3 years ago

Exiting Firefox shows save warning from a tab of an inactive window ("This page is asking you to confirm that you want to leave - data you have entered may not be saved.") over the window used for exit

Categories

(Firefox :: General, defect)

defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: chris, Unassigned)

References

(Blocks 1 open bug)

Details

(Keywords: reproducible)

User Agent: Mozilla/5.0 (X11; Linux i686; rv:25.0) Gecko/20100101 Firefox/25.0 (Beta/Release)
Build ID: 20131118202822

Steps to reproduce:

I have a page open in one Firefox window that, upon closing, gives the warning "This page is asking you to confirm that you want to leave - data you have entered may not be saved."

I then open another browser window and attempt to close the entire Firefox process from there (File -> Quit).


Actual results:

The same error text: "This page is asking you to confirm that you want to leave - data you have entered may not be saved."


Expected results:

A different error that does not erroneously include "this page".
The warning should appear over the page that triggers the warning.  When you Quit, Firefox should quickly switch to the window and page that triggers the warning, and then show you the warning.  It should not appear over the new window (unless the page in the new window also triggers the warning).  Is that not the case?
Flags: needinfo?(chris)
Yes, that is the case.

Example sites I have used to test this:

* http://www.yahoo.com/ in a single tab in one window.
* http://www.4guysfromrolla.com/demos/OnBeforeUnloadDemo1.htm in a single tab in another window.
Flags: needinfo?(chris)
So... you're saying it is the case that the warning appears over the page that triggers the warning?
Reproduced with 2013-12-11-03-02-06-mozilla-central-firefox-29.0a1.en-US.linux-x86_64.

The dialog appears aligned with its parent window, but that doesn't help if both windows are maximized.

> So... you're saying it is the case that the warning appears over the page that triggers the warning?

There are two *windows*, one of which contains the eviltrap, and the other one is where you are trying to close Firefox.
Blocks: eviltraps
Status: UNCONFIRMED → NEW
Ever confirmed: true
Bug 616853 should probably solve this.
Depends on: 616853
(In reply to Aleksej [:Aleksej] from comment #4)
> There are two *windows*, one of which contains the eviltrap, and the other
> one is where you are trying to close Firefox.

I know.  I asked Chris if it's not the case that Firefox switches back to the window with the eviltrap, and he said it is the case.

I don't see how bug 616853 is related.  That's about making the dialog block the eviltrap tab instead of the tab's whole window.  Definitely a good thing, but comment 0 says that the warning appears over a page that didn't trigger it, which is completely different -- and comment 2 appears to contradict that, which is why I'm following up.
Flags: needinfo?(chris)
(In reply to Drew Willcoxon :adw from comment #6)

I guess Chris misunderstood your question.
Keywords: reproducible
Summary: Exiting Firefox shows save warning from another tab ("This page is asking you to confirm that you want to leave - data you have entered may not be saved.") → Exiting Firefox shows save warning from a tab of an inactive window ("This page is asking you to confirm that you want to leave - data you have entered may not be saved.") over the window used for exit
I'm sorry - in response to

> The warning should appear over the page that triggers the warning.  When you Quit, Firefox should quickly switch to the window and page that triggers the warning, and then show you the warning.  It should not appear over the new window (unless the page in the new window also triggers the warning).  Is that not the case?

I meant to say "Yes, that is *not* the case".

The warning does *not* appear over the page that triggers the warning. Firefox does not switch window before showing the window.
Flags: needinfo?(chris)
Thanks for the clarification, Chris.  Removing the bug 616853 dependency since it's not relevant.
No longer depends on: 616853
(In reply to Drew Willcoxon :adw from comment #6)
> I don't see how bug 616853 is related.  That's about making the dialog block
> the eviltrap tab instead of the tab's whole window.  Definitely a good
> thing, but comment 0 says that the warning appears over a page that didn't
> trigger it, which is completely different -- and comment 2 appears to
> contradict that, which is why I'm following up.

Let me rephrase it: When prompts are tab modal, they should only appear on the tab they are originating from. That includes switching to these tabs (on close / shutdown) when messages appear. 

With that, I'd like to re-add the dependency if you are okay with that.
I'm not OK with that, but I'm not running the show here.  The two problems are independent.  Let's say bug 616853 is fixed and prompts are tab modal.  It does not follow that they then must always appear over the right page.  A tab-modal prompt could still appear over the wrong page or even the wrong window.

Window-modal prompts are supposed to appear over the right window but according to this bug even that's not happening.

The code that opens this prompt is in layout/ [1], so tentatively moving to Layout.

[1] http://mxr.mozilla.org/mozilla-central/source/layout/base/nsDocumentViewer.cpp#1143
Component: Untriaged → Layout
Product: Firefox → Core
All layout is doing here is asking the UI to show the prompt.  It has no control over where the prompt will appear (though it uses the prompter of its docshell, which presumably the UI has hooked up to the right window).
Component: Layout → Untriaged
Product: Core → Firefox
Component: Untriaged → General
(In reply to Drew Willcoxon :adw from comment #11)
> I'm not OK with that, but I'm not running the show here.  The two problems
> are independent. […]
> Window-modal prompts are supposed to appear over the right window but
> according to this bug even that's not happening.

Fair enough.
OS: Linux → All
Hardware: x86 → All
Version: 25 Branch → Trunk
These prompts are tab-modal now, and in my testing, appear in the right window - although admittedly we do not switch to the right window (we do switch to the right tab within that window, it seems), so the root cause of the problem is still there...
Running on nightly 59.0a1 (2018-01-09), and I could see FF switch to right window and right tab.
But FF will be freezed if I choose stay in the stay-or-leave dialog. I have to forced close FF after that.
Not sure we should fix the bug here or close this bug and open a follow up.
As mentioned in the meeting, we think this is a dupe of something you fixed in ~60. However I also couldn't repro Comment 15 in stable 58 anyway.
Flags: needinfo?(amarchesini)
This bug cannot be reproduced anymore because the alert dialogs is modal windows and real windows.
firefox used to freeze if there was a dialog when shutting down, but that has been fixed by bug 1425559.
Flags: needinfo?(amarchesini)
I close this bug as invalid. About comment 15, see bug 1425559.
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.