Commit Graph

4165 Commits

Author SHA1 Message Date
Peter Van der Beken
c2599ea7d3 Bug 1825745 - Make form submits do a replace load if they happen before document load has ended. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D174224
2023-06-22 18:32:20 +00:00
Noemi Erli
0a8db96d7f Backed out 2 changesets (bug 1825745) for causing failures in form-requestsubmit.html CLOSED TREE
Backed out changeset eb77df0ccca6 (bug 1825745)
Backed out changeset 2ce4ceb5a39d (bug 1825745)
2023-06-22 16:35:27 +03:00
Peter Van der Beken
9414df2959 Bug 1825745 - Make form submits do a replace load if they happen before document load has ended. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D174224
2023-06-22 08:07:06 +00:00
Stanca Serban
712df16cbb Backed out changeset 17472385b962 (bug 1825745) for form-submit related wpt failures. CLOSED TREE 2023-06-07 16:31:57 +03:00
Peter Van der Beken
4e556b6c58 Bug 1825745 - Make form submits do a replace load if they happen before document load has ended. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D174224
2023-06-07 08:22:03 +00:00
Sean Feng
b8c8157d3c Bug 1816287 - Always exit fullscreen when triggering on external protocol r=edgar
It's a security risk such that the maximized external program can obscure
the fullscreen notification and the malicious site can use this trick
to load a spoofed page in the background without user notices it.

This patch minimized the risk by always exit the fullscreen mode when
an external protocol is triggered.

Differential Revision: https://phabricator.services.mozilla.com/D177771
2023-05-17 18:00:18 +00:00
Norisz Fay
e476e08413 Backed out changeset 6fa00ccfe7e0 (bug 1816287) for causing bustages on LocationBase.cpp CLOSED TREE 2023-05-17 20:11:39 +03:00
Sean Feng
79b4c118c0 Bug 1816287 - Always exit fullscreen when triggering on external protocol r=edgar
It's a security risk such that the maximized external program can obscure
the fullscreen notification and the malicious site can use this trick
to load a spoofed page in the background without user notices it.

This patch minimized the risk by always exit the fullscreen mode when
an external protocol is triggered.

Differential Revision: https://phabricator.services.mozilla.com/D177771
2023-05-17 16:34:57 +00:00
Tom Schuster
5f03141739 Bug 1804684 - Fragment navigation may change document URI scheme from https to http. r=ckerschb,nika,smaug
Differential Revision: https://phabricator.services.mozilla.com/D165282
2023-04-12 12:35:18 +00:00
Emily McDonough
77a8e1e577 Bug 1576298 - Remove DeviceSizeIsPageSize from nsDocShell and nsPresContext. r=emilio
This comes from bug 890195, and it was superseded by bug 1575097.

This isn't used for anything anymore, and we can remove the otherwise unused
MediaFeatureChangeReason flag as well.

Differential Revision: https://phabricator.services.mozilla.com/D174492
2023-04-03 17:11:24 +00:00
Norisz Fay
ce652adb9a Backed out changeset ef7d2e82eb5a (bug 1825745) for causing assertion failure on nsDocShell.cpp CLOSED TREE 2023-03-31 15:08:34 +03:00
Peter Van der Beken
6648b645b9 Bug 1825745 - Make form submits do a replace load if they happen before document load has ended. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D174224
2023-03-31 10:53:02 +00:00
Andi-Bogdan Postelnicu
18e90b4312 Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D173256
2023-03-27 07:20:25 +00:00
Sandor Molnar
a21465caf7 Backed out 2 changesets (bug 1276351) for causing build bustage in image/ClippedImage.cp CLOSED TREE
Backed out changeset e84598eb82c1 (bug 1276351)
Backed out changeset e940b0554484 (bug 1276351)
2023-03-25 14:16:43 +02:00
Andi-Bogdan Postelnicu
a53c65154f Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D173256
2023-03-25 06:58:52 +00:00
Iulian Moraru
55a9a03f95 Backed out 2 changesets (bug 1276351) for causing multiple failures.
Backed out changeset eeaf4f1e06af (bug 1276351)
Backed out changeset d44cb5704342 (bug 1276351)
2023-03-25 00:08:24 +02:00
Andi-Bogdan Postelnicu
75ea04501c Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D173256
2023-03-24 18:55:39 +00:00
Sandor Molnar
e87e854028 Merge autoland to mozilla-central a=merge 2023-03-22 23:12:50 +02:00
Olli Pettay
2c498a7358 Bug 1818239, latter reload should win, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D173169
2023-03-22 14:51:47 +00:00
Cristina Horotan
be73492b7a Backed out changeset bb1f3463f21d (bug 1804684) for causing Bug 1823765 a=backout 2023-03-22 11:31:15 +02:00
Nika Layzell
1f736b7027 Bug 1814686 - Part 2: Make nsDocShellLoadState not-null, and simplify handling of nsDOMNavigationTiming, r=necko-reviewers,valentin,smaug
These types were already non-nullable, with the serializer implementation not
supporting nullptr values. This patch converts the uses to be explicitly
non-nullable, and adds the relevant `WrapNotNull` changes.

Differential Revision: https://phabricator.services.mozilla.com/D168890
2023-03-20 15:40:38 +00:00
lyavor
df18850ce9 Bug 1804684 - Fragment navigation may change document URI scheme from https to http r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D165282
2023-03-20 13:46:20 +00:00
Nika Layzell
c641241edd Bug 1810619 - Part 1: Be more precise in named lookup code, r=smaug,geckoview-reviewers,m_kato
This makes various changes to the named lookup/navigation code to make
them more precise, and avoid issues which could happen if a window is
closed while script is still executing.

This also should improve handling for inactive windows in some cases, by
more frequently working off of the WindowContext tree rather than the
BrowsingContext tree.

As part of these changes, some behaviour was changed around e.g. the
file URI exception to avoid the deprecated nsIPrincipal::GetURI method.
I don't believe the behaviour should have changed in a meaningful way.

Differential Revision: https://phabricator.services.mozilla.com/D171755
2023-03-15 21:57:03 +00:00
Peter Van der Beken
fb4d5f1c7a Bug 1789296 - Intermittent /html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/window-open-aboutblank.html. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D172249
2023-03-15 16:06:37 +00:00
Iulian Moraru
0c8d23ecea Backed out 14 changesets (bug 1607634, bug 1814683, bug 1815177, bug 1814686) for causing build bustages on MaybeStorageBase. CLOSED TREE
Backed out changeset ae1c0551cea5 (bug 1815177)
Backed out changeset a11cafaa1884 (bug 1814686)
Backed out changeset 621507521762 (bug 1814686)
Backed out changeset ad692c73e381 (bug 1814686)
Backed out changeset 3be031e503dc (bug 1607634)
Backed out changeset aebbaa145d2d (bug 1607634)
Backed out changeset 9aa1f346fe14 (bug 1607634)
Backed out changeset e3eb77ad55ca (bug 1607634)
Backed out changeset e60591e5d5cf (bug 1607634)
Backed out changeset 6e43042d204a (bug 1814683)
Backed out changeset 1706e88652d6 (bug 1814683)
Backed out changeset 6878a1590e91 (bug 1814683)
Backed out changeset b1c980c834d8 (bug 1814683)
Backed out changeset 94480b82d102 (bug 1814683)
2023-03-15 01:58:36 +02:00
Nika Layzell
4c261fb18c Bug 1814686 - Part 2: Make nsDocShellLoadState not-null, and simplify handling of nsDOMNavigationTiming, r=necko-reviewers,valentin,smaug
These types were already non-nullable, with the serializer implementation not
supporting nullptr values. This patch converts the uses to be explicitly
non-nullable, and adds the relevant `WrapNotNull` changes.

Differential Revision: https://phabricator.services.mozilla.com/D168890
2023-03-14 19:31:42 +00:00
Gijs Kruitbosch
4ee9373eaa Bug 1718082 - move isAppTab from docshell to browsing context, r=nika,rpl
Differential Revision: https://phabricator.services.mozilla.com/D171412
2023-03-13 17:32:07 +00:00
Cristian Tuns
b2efc313a5 Backed out 2 changesets (bug 1810619) for causing wd failures in dom_content_loaded.py CLOSED TREE
Backed out changeset 81d6ef111d4f (bug 1810619)
Backed out changeset 637be53c4d27 (bug 1810619)
2023-03-09 01:22:56 -05:00
Nika Layzell
d1729b23dd Bug 1810619 - Part 1: Be more precise in named lookup code, r=smaug,geckoview-reviewers,m_kato
This makes various changes to the named lookup/navigation code to make
them more precise, and avoid issues which could happen if a window is
closed while script is still executing.

This also should improve handling for inactive windows in some cases, by
more frequently working off of the WindowContext tree rather than the
BrowsingContext tree.

As part of these changes, some behaviour was changed around e.g. the
file URI exception to avoid the deprecated nsIPrincipal::GetURI method.
I don't believe the behaviour should have changed in a meaningful way.

Differential Revision: https://phabricator.services.mozilla.com/D171755
2023-03-08 21:09:20 +00:00
Peter Van der Beken
999473109b Bug 1816234 - Fix meta refresh with SHIP. r=smaug
BrowsingContext::ShouldAddEntryForRefresh expects to be passed the current URI,
to determine if it's the same as the URI for the new load (we shouldn't add a
new entry if they are the same). Before this patch, in the child process we call
BrowsingContext::ShouldAddEntryForRefresh from nsDocShell::MoveLoadingToActiveEntry
(nsDocShell::CreateContentViewer -> Embed -> MoveLoadingToActiveEntry), passing
nsDocShell's mCurrentURI. However, by that point nsDocShell::CreateContentViewer
has already set the mCurrentURI to the newly loading URI (through
nsDocShell::OnNewURI). In the parent process we do pass the correct URI to
BrowsingContext::ShouldAddEntryForRefresh, so the session history ends up being
correct, but depending on timing of the IPC messages there's a brief moment where
index and length are incorrect in the child process (child process and parent
process get a different answer from BrowsingContext::ShouldAddEntryForRefresh).
This causes intermittent failures in the test at
docshell/test/mochitest/test_bug1742865.html.

Differential Revision: https://phabricator.services.mozilla.com/D169544
2023-02-14 10:19:54 +00:00
Gijs Kruitbosch
f11f2939ec Bug 1810141 - make docshell/nsIWebNavigation's loadURI actually take a URI object rather than a string, r=nika
Depends on D168390

Differential Revision: https://phabricator.services.mozilla.com/D168391
2023-02-13 23:50:39 +00:00
Cristina Horotan
f062495d94 Backed out 9 changesets (bug 1810141) for several test failures on a CLOSED TREE
Backed out changeset 8781a0d1254d (bug 1810141)
Backed out changeset 131037295784 (bug 1810141)
Backed out changeset 3852fbe290f4 (bug 1810141)
Backed out changeset 118f131a524a (bug 1810141)
Backed out changeset ab5d76846e10 (bug 1810141)
Backed out changeset dce3aa683445 (bug 1810141)
Backed out changeset 4dc41d90dbb3 (bug 1810141)
Backed out changeset 50b57ba1a061 (bug 1810141)
Backed out changeset 569de94781e4 (bug 1810141)
2023-02-13 16:05:30 +02:00
Gijs Kruitbosch
3fed99c8fc Bug 1810141 - make docshell/nsIWebNavigation's loadURI actually take a URI object rather than a string, r=nika
Depends on D168390

Differential Revision: https://phabricator.services.mozilla.com/D168391
2023-02-13 12:55:23 +00:00
Nazım Can Altınova
f5025d4aca Bug 1812368 - Truncate the URLs we are passing into profiler markers r=julienw
Differential Revision: https://phabricator.services.mozilla.com/D169053
2023-02-09 10:16:51 +00:00
Olli Pettay
3d966f9982 Bug 1810903, return early from LoadErrorPage if the docshell is going away, r=peterv
We'd return early anyhow later in nsDocShell::InternalLoad.
The patch is based on code inspection. If one is closing the window while printing, we could get to this state, among other cases.

Differential Revision: https://phabricator.services.mozilla.com/D168368
2023-01-31 13:47:50 +00:00
Emilio Cobos Álvarez
e3921efc1e Bug 1811834 - Clean up nsWidgetInitData. r=cmartin,geckoview-reviewers,calu
Move it to the mozilla::widget namespace.

Use enum classes for transparency, popup type, popup level, etc.

Mostly automated with sed, but there were a few manual changes required
as well in windows code because they relied on Atomic<TransparencyMode>
working (which now doesn't because TransparencyMode is 1 byte instead of
4 bytes).

Differential Revision: https://phabricator.services.mozilla.com/D167537
2023-01-23 23:58:41 +00:00
Adam Vandolder
bf597b83c9 Bug 1509346 - Add support for <form rel>. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D166489
2023-01-18 16:41:04 +00:00
Butkovits Atila
d84b895e9a Backed out changeset 704407d7ca31 (bug 1509346) for causing wpt failures at put-forwards.html. 2023-01-17 20:04:52 +02:00
Adam Vandolder
65a2df9059 Bug 1509346 - Add support for <form rel>. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D166489
2023-01-17 16:11:06 +00:00
Sandor Molnar
d53ceaad55 Backed out changeset 5ad22146a015 (bug 1509346) for causing failures in docshell/base/nsDocShell.cpp 2023-01-17 03:16:20 +02:00
Adam Vandolder
4d4a650750 Bug 1509346 - Add support for <form rel>. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D166489
2023-01-16 21:32:19 +00:00
Narcis Beleuzu
eb0afc6ef2 Backed out changeset 30d7636620f8 (bug 1804684) as req by smaug 2023-01-09 22:51:57 +02:00
lyavor
4138376416 Bug 1804684 - Fragment navigation may change document URI scheme from https to http r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D165282
2023-01-05 21:26:43 +00:00
Olli Pettay
e2c02e14a7 Bug 1804295 - Remove the current use of favorPerformanceHint, r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D163964
2022-12-27 13:12:21 +00:00
lyavor
6155c48fd6 Bug 1731210 - pdf.js modal for unsaved data on a pdf page appears twice in private window r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D153612
2022-12-20 13:31:07 +00:00
Matthias Camenzind
d634177ee2 Bug 1786048 - Part 3: Merge nsIEmbeddingSiteWindow into nsIBaseWindow. r=emilio
Implementations of nsIEmbeddingSiteWindow and nsIBaseWindow largely
overlap, and where they don't, the nsIEmbeddingSiteWindow implementation
of the otherwise shared interface is primarily stubbed out with the
exception of Get/SetDimensions().

This patch moves a reimplementation of Get/SetDimensions() from
nsIEmbeddingSiteWindow to nsIBaseWindow. The other methods of
nsIEmbeddingSiteWindow remain covered by nsIBaseWindow.
Get/SetDimensions() can be implemented as part of nsIWebBrowserChrome
where nsIBaseWindow is not necessary. This removes the need for
nsIEmbeddingSiteWindow.

Blur() has also been moved to nsIWebBrowserChrome, as only
nsContentTreeOwner has an actual implementation which we in theory also
want to call from BrowserChild/Parent, but the spec suggests to
"selectively or uniformly ignore calls".

GetVisibility() had an implementation in BrowserChild that pretended to
always be visible. Instead of providing an interface for that,
nsDocShell now handles the not implemented case for tree owners.

nsIEmbeddingSiteWindow::GetSiteWindow() used to call through to
nsIBaseWindow::GetParentNativeWindow().

The Get/SetDimensions() implementation has been replaced with a strongly
typed setter, which is now also used directly from nsGlobalWindowOuter
to avoid problems that come with autodetecting unchanged dimensions,
when the current dimensions are outdated (e.g. immediately reverting a
change can be ignored).

Differential Revision: https://phabricator.services.mozilla.com/D160260
2022-12-15 23:13:00 +00:00
Adam Vandolder
e77ba337cb Bug 1402292 - Ignore form submission attempt to navigate from already navigated document. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D163723
2022-12-12 16:15:25 +00:00
Sandor Molnar
e73ab8eb7e Backed out 4 changesets (bug 1786048) for causing multiple failures. CLOSED TREE
Backed out changeset ae94135e68ef (bug 1786048)
Backed out changeset f505df8a481a (bug 1786048)
Backed out changeset 999a18d6f33e (bug 1786048)
Backed out changeset e71e8644b8a9 (bug 1786048)
2022-12-02 20:30:07 +02:00
Matthias Camenzind
4e55c203ac Bug 1786048 - Part 3: Merge nsIEmbeddingSiteWindow into nsIBaseWindow. r=emilio
Implementations of nsIEmbeddingSiteWindow and nsIBaseWindow largely
overlap, and where they don't, the nsIEmbeddingSiteWindow implementation
of the otherwise shared interface is primarily stubbed out with the
exception of Get/SetDimensions().

This patch moves a reimplementation of Get/SetDimensions() from
nsIEmbeddingSiteWindow to nsIBaseWindow. The other methods of
nsIEmbeddingSiteWindow remain covered by nsIBaseWindow.
Get/SetDimensions() can be implemented as part of nsIWebBrowserChrome
where nsIBaseWindow is not necessary. This removes the need for
nsIEmbeddingSiteWindow.

Blur() has also been moved to nsIWebBrowserChrome, as only
nsContentTreeOwner has an actual implementation which we in theory also
want to call from BrowserChild/Parent, but the spec suggests to
"selectively or uniformly ignore calls".

GetVisibility() had an implementation in BrowserChild that pretended to
always be visible. Instead of providing an interface for that,
nsDocShell now handles the not implemented case for tree owners.

nsIEmbeddingSiteWindow::GetSiteWindow() used to call through to
nsIBaseWindow::GetParentNativeWindow().

The Get/SetDimensions() implementation has been replaced with a strongly
typed setter, which is now also used directly from nsGlobalWindowOuter
to avoid problems that come with autodetecting unchanged dimensions,
when the current dimensions are outdated (e.g. immediately reverting a
change can be ignored).

Differential Revision: https://phabricator.services.mozilla.com/D160260
2022-12-02 16:47:46 +00:00
Martin Robinson
62878408df Bug 1803377 - Rename the values of the IntrinsicDirty enum r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D163607
2022-12-02 12:27:31 +00:00