Commit Graph

5530 Commits

Author SHA1 Message Date
Mark Banner
fe8b12afbf Bug 1417383 - Add initial .eslintrc.js files for docshell test directories (not enabled yet). r=qdot
Depends on D7053

Differential Revision: https://phabricator.services.mozilla.com/D7055

--HG--
extra : moz-landing-system : lando
2018-10-02 07:51:39 +00:00
Mark Banner
88e4ab36f7 Bug 1417383 - Move mochitests from docshell/test/ to docshell/test/mochitest/ to aid ESLint. r=qdot
Depends on D7052

Differential Revision: https://phabricator.services.mozilla.com/D7053

--HG--
rename : docshell/test/bug123696-subframe.html => docshell/test/mochitest/bug123696-subframe.html
rename : docshell/test/bug404548-subframe.html => docshell/test/mochitest/bug404548-subframe.html
rename : docshell/test/bug404548-subframe_window.html => docshell/test/mochitest/bug404548-subframe_window.html
rename : docshell/test/bug413310-post.sjs => docshell/test/mochitest/bug413310-post.sjs
rename : docshell/test/bug413310-subframe.html => docshell/test/mochitest/bug413310-subframe.html
rename : docshell/test/bug529119-window.html => docshell/test/mochitest/bug529119-window.html
rename : docshell/test/bug530396-noref.sjs => docshell/test/mochitest/bug530396-noref.sjs
rename : docshell/test/bug530396-subframe.html => docshell/test/mochitest/bug530396-subframe.html
rename : docshell/test/bug570341_recordevents.html => docshell/test/mochitest/bug570341_recordevents.html
rename : docshell/test/bug668513_redirect.html => docshell/test/mochitest/bug668513_redirect.html
rename : docshell/test/bug668513_redirect.html^headers^ => docshell/test/mochitest/bug668513_redirect.html^headers^
rename : docshell/test/bug691547_frame.html => docshell/test/mochitest/bug691547_frame.html
rename : docshell/test/dummy_page.html => docshell/test/mochitest/dummy_page.html
rename : docshell/test/file_anchor_scroll_after_document_open.html => docshell/test/mochitest/file_anchor_scroll_after_document_open.html
rename : docshell/test/file_bfcache_plus_hash_1.html => docshell/test/mochitest/file_bfcache_plus_hash_1.html
rename : docshell/test/file_bfcache_plus_hash_2.html => docshell/test/mochitest/file_bfcache_plus_hash_2.html
rename : docshell/test/file_bug1121701_1.html => docshell/test/mochitest/file_bug1121701_1.html
rename : docshell/test/file_bug1121701_2.html => docshell/test/mochitest/file_bug1121701_2.html
rename : docshell/test/file_bug1151421.html => docshell/test/mochitest/file_bug1151421.html
rename : docshell/test/file_bug1186774.html => docshell/test/mochitest/file_bug1186774.html
rename : docshell/test/file_bug1450164.html => docshell/test/mochitest/file_bug1450164.html
rename : docshell/test/file_bug385434_1.html => docshell/test/mochitest/file_bug385434_1.html
rename : docshell/test/file_bug385434_2.html => docshell/test/mochitest/file_bug385434_2.html
rename : docshell/test/file_bug385434_3.html => docshell/test/mochitest/file_bug385434_3.html
rename : docshell/test/file_bug475636.sjs => docshell/test/mochitest/file_bug475636.sjs
rename : docshell/test/file_bug509055.html => docshell/test/mochitest/file_bug509055.html
rename : docshell/test/file_bug511449.html => docshell/test/mochitest/file_bug511449.html
rename : docshell/test/file_bug540462.html => docshell/test/mochitest/file_bug540462.html
rename : docshell/test/file_bug580069_1.html => docshell/test/mochitest/file_bug580069_1.html
rename : docshell/test/file_bug580069_2.sjs => docshell/test/mochitest/file_bug580069_2.sjs
rename : docshell/test/file_bug590573_1.html => docshell/test/mochitest/file_bug590573_1.html
rename : docshell/test/file_bug590573_2.html => docshell/test/mochitest/file_bug590573_2.html
rename : docshell/test/file_bug598895_1.html => docshell/test/mochitest/file_bug598895_1.html
rename : docshell/test/file_bug598895_2.html => docshell/test/mochitest/file_bug598895_2.html
rename : docshell/test/file_bug634834.html => docshell/test/mochitest/file_bug634834.html
rename : docshell/test/file_bug598895_1.html => docshell/test/mochitest/file_bug637644_1.html
rename : docshell/test/file_bug598895_2.html => docshell/test/mochitest/file_bug637644_2.html
rename : docshell/test/file_bug640387.html => docshell/test/mochitest/file_bug640387.html
rename : docshell/test/file_bug653741.html => docshell/test/mochitest/file_bug653741.html
rename : docshell/test/file_bug660404 => docshell/test/mochitest/file_bug660404
rename : docshell/test/file_bug660404-1.html => docshell/test/mochitest/file_bug660404-1.html
rename : docshell/test/file_bug660404^headers^ => docshell/test/mochitest/file_bug660404^headers^
rename : docshell/test/file_bug653741.html => docshell/test/mochitest/file_bug662170.html
rename : docshell/test/file_bug668513.html => docshell/test/mochitest/file_bug668513.html
rename : docshell/test/file_bug669671.sjs => docshell/test/mochitest/file_bug669671.sjs
rename : docshell/test/file_bug675587.html => docshell/test/mochitest/file_bug675587.html
rename : docshell/test/file_bug680257.html => docshell/test/mochitest/file_bug680257.html
rename : docshell/test/file_bug703855.html => docshell/test/mochitest/file_bug703855.html
rename : docshell/test/file_bug728939.html => docshell/test/mochitest/file_bug728939.html
rename : docshell/test/file_close_onpagehide1.html => docshell/test/mochitest/file_close_onpagehide1.html
rename : docshell/test/file_close_onpagehide2.html => docshell/test/mochitest/file_close_onpagehide2.html
rename : docshell/test/file_framedhistoryframes.html => docshell/test/mochitest/file_framedhistoryframes.html
rename : docshell/test/file_pushState_after_document_open.html => docshell/test/mochitest/file_pushState_after_document_open.html
rename : docshell/test/historyframes.html => docshell/test/mochitest/historyframes.html
rename : docshell/test/mochitest.ini => docshell/test/mochitest/mochitest.ini
rename : docshell/test/start_historyframe.html => docshell/test/mochitest/start_historyframe.html
rename : docshell/test/test_anchor_scroll_after_document_open.html => docshell/test/mochitest/test_anchor_scroll_after_document_open.html
rename : docshell/test/test_bfcache_plus_hash.html => docshell/test/mochitest/test_bfcache_plus_hash.html
rename : docshell/test/test_bug1045096.html => docshell/test/mochitest/test_bug1045096.html
rename : docshell/test/test_bug1121701.html => docshell/test/mochitest/test_bug1121701.html
rename : docshell/test/test_bug1151421.html => docshell/test/mochitest/test_bug1151421.html
rename : docshell/test/test_bug1186774.html => docshell/test/mochitest/test_bug1186774.html
rename : docshell/test/test_bug123696.html => docshell/test/mochitest/test_bug123696.html
rename : docshell/test/test_bug1450164.html => docshell/test/mochitest/test_bug1450164.html
rename : docshell/test/test_bug384014.html => docshell/test/mochitest/test_bug384014.html
rename : docshell/test/test_bug385434.html => docshell/test/mochitest/test_bug385434.html
rename : docshell/test/test_bug387979.html => docshell/test/mochitest/test_bug387979.html
rename : docshell/test/test_bug402210.html => docshell/test/mochitest/test_bug402210.html
rename : docshell/test/test_bug404548.html => docshell/test/mochitest/test_bug404548.html
rename : docshell/test/test_bug413310.html => docshell/test/mochitest/test_bug413310.html
rename : docshell/test/test_bug475636.html => docshell/test/mochitest/test_bug475636.html
rename : docshell/test/test_bug509055.html => docshell/test/mochitest/test_bug509055.html
rename : docshell/test/test_bug511449.html => docshell/test/mochitest/test_bug511449.html
rename : docshell/test/test_bug529119-1.html => docshell/test/mochitest/test_bug529119-1.html
rename : docshell/test/test_bug529119-2.html => docshell/test/mochitest/test_bug529119-2.html
rename : docshell/test/test_bug530396.html => docshell/test/mochitest/test_bug530396.html
rename : docshell/test/test_bug540462.html => docshell/test/mochitest/test_bug540462.html
rename : docshell/test/test_bug551225.html => docshell/test/mochitest/test_bug551225.html
rename : docshell/test/test_bug570341.html => docshell/test/mochitest/test_bug570341.html
rename : docshell/test/test_bug580069.html => docshell/test/mochitest/test_bug580069.html
rename : docshell/test/test_bug590573.html => docshell/test/mochitest/test_bug590573.html
rename : docshell/test/test_bug598895.html => docshell/test/mochitest/test_bug598895.html
rename : docshell/test/test_bug634834.html => docshell/test/mochitest/test_bug634834.html
rename : docshell/test/test_bug637644.html => docshell/test/mochitest/test_bug637644.html
rename : docshell/test/test_bug640387_1.html => docshell/test/mochitest/test_bug640387_1.html
rename : docshell/test/test_bug640387_2.html => docshell/test/mochitest/test_bug640387_2.html
rename : docshell/test/test_bug653741.html => docshell/test/mochitest/test_bug653741.html
rename : docshell/test/test_bug660404.html => docshell/test/mochitest/test_bug660404.html
rename : docshell/test/test_bug662170.html => docshell/test/mochitest/test_bug662170.html
rename : docshell/test/test_bug668513.html => docshell/test/mochitest/test_bug668513.html
rename : docshell/test/test_bug669671.html => docshell/test/mochitest/test_bug669671.html
rename : docshell/test/test_bug675587.html => docshell/test/mochitest/test_bug675587.html
rename : docshell/test/test_bug680257.html => docshell/test/mochitest/test_bug680257.html
rename : docshell/test/test_bug691547.html => docshell/test/mochitest/test_bug691547.html
rename : docshell/test/test_bug694612.html => docshell/test/mochitest/test_bug694612.html
rename : docshell/test/test_bug703855.html => docshell/test/mochitest/test_bug703855.html
rename : docshell/test/test_bug728939.html => docshell/test/mochitest/test_bug728939.html
rename : docshell/test/test_bug797909.html => docshell/test/mochitest/test_bug797909.html
rename : docshell/test/test_close_onpagehide_by_history_back.html => docshell/test/mochitest/test_close_onpagehide_by_history_back.html
rename : docshell/test/test_close_onpagehide_by_window_close.html => docshell/test/mochitest/test_close_onpagehide_by_window_close.html
rename : docshell/test/test_forceinheritprincipal_overrule_owner.html => docshell/test/mochitest/test_forceinheritprincipal_overrule_owner.html
rename : docshell/test/test_framedhistoryframes.html => docshell/test/mochitest/test_framedhistoryframes.html
rename : docshell/test/test_pushState_after_document_open.html => docshell/test/mochitest/test_pushState_after_document_open.html
rename : docshell/test/test_triggeringprincipal_location_seturi.html => docshell/test/mochitest/test_triggeringprincipal_location_seturi.html
rename : docshell/test/test_windowedhistoryframes.html => docshell/test/mochitest/test_windowedhistoryframes.html
rename : docshell/test/url1_historyframe.html => docshell/test/mochitest/url1_historyframe.html
rename : docshell/test/url2_historyframe.html => docshell/test/mochitest/url2_historyframe.html
extra : moz-landing-system : lando
2018-10-02 07:45:54 +00:00
Mark Banner
bf7ee7e818 Bug 1417383 - Remove unused test files that were missed in bug 1427726. r=qdot
Differential Revision: https://phabricator.services.mozilla.com/D7052

--HG--
extra : moz-landing-system : lando
2018-10-02 07:50:45 +00:00
Andrew McCreight
837f0af066 Bug 1493737 - Fix many trivial calls to do_QueryInterface r=smaug
If class A is derived from class B, then an instance of class A can be
converted to B via a static cast, so a slower QI is not needed.

Differential Revision: https://phabricator.services.mozilla.com/D6861

--HG--
extra : moz-landing-system : lando
2018-10-01 21:38:01 +00:00
Nicholas Nethercote
578ac09f67 Bug 1494175 - Remove unimplemented nsIWebBrowserChrome methods. r=qdot
All implementations of these methods fail immediately. This patch removes them,
and replaces their call sites with failures. Code coverage indicates these
locations aren't hit by any of our tests.

--HG--
extra : rebase_source : 3c44ac20213af97865ad0316e65bfe49b9e5818c
2018-09-26 19:39:44 +10:00
Mark Banner
c5d42d9acb Bug 1489503 - In docShell, don't set the same title a second time. r=bzbarsky
This avoids setting the title a second time when the title and uri remain the same across setTitle calls. This means we can avoid unnecessary history updates which currently result in extra disk i/o.

Differential Revision: https://phabricator.services.mozilla.com/D5431

--HG--
extra : moz-landing-system : lando
2018-09-29 07:55:16 +00:00
Ehsan Akhgari
5f0be07390 Bug 1493563 - Part 5: Present the old state and the content blocking log to the web progress listeners; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D6595
2018-09-28 14:46:02 -04:00
Noemi Erli
4419e20e14 Backed out 12 changesets (bug 1493563) for failures in test_css-logic-getCssPath.html CLOSED TREE
Backed out changeset d2e83655082f (bug 1493563)
Backed out changeset 1ce58f004593 (bug 1493563)
Backed out changeset 344298c73ee7 (bug 1493563)
Backed out changeset 02b8b073f7d7 (bug 1493563)
Backed out changeset 3ef707008502 (bug 1493563)
Backed out changeset bb2720a401fe (bug 1493563)
Backed out changeset ce0211be57a1 (bug 1493563)
Backed out changeset 83d6c2bf8dc6 (bug 1493563)
Backed out changeset 1844af4cc25b (bug 1493563)
Backed out changeset c8ab17addb7a (bug 1493563)
Backed out changeset a1ff0cd62563 (bug 1493563)
Backed out changeset 932b41e211e0 (bug 1493563)
2018-09-28 21:31:18 +03:00
Ehsan Akhgari
f0108e78c2 Bug 1493563 - Part 5: Present the old state and the content blocking log to the web progress listeners; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D6595
2018-09-28 13:24:41 -04:00
Gijs Kruitbosch
76afb51661 Bug 1493655 - make nsISecureBrowserUI initialize from a docshell instead of a window, r=keeler,nika
This also removes the (afaict, unused) stub implementation from TabParent. The netwerk header
inclusions were necessary because those files included TabParent.h and through it,
nsISecureBrowserUI, but now TabParent.h no longer does that.

Differential Revision: https://phabricator.services.mozilla.com/D6829

--HG--
extra : moz-landing-system : lando
2018-09-26 17:48:38 +00:00
Margareta Eliza Balazs
ffe6eaf2f0 Merge inbound to mozilla-central. a=merge 2018-09-25 12:42:09 +03:00
Christoph Kerschbaumer
60e3239dee Bug 1490874: Log Principal based Security Errors to the Security pane in the console. r=smaug 2018-09-25 07:25:05 +02:00
Tim Huang
22b72f2e9b Bug 680300 - Part 1: Stopping reporting errors when loading an unknown external protocol. r=smaug
This patch makes the docshell not to report an error if it is a unknown
protocol error. However, we will still display the error page in this
case.

Differential Revision: https://phabricator.services.mozilla.com/D3492

--HG--
extra : moz-landing-system : lando
2018-09-25 07:50:28 +00:00
Mark Banner
921d261677 Bug 1443137 - Attempt to fix intermittent in browser_search_notification.js by relying on a different method for opening the tab and waiting for completion before we start a search. r=adw
Differential Revision: https://phabricator.services.mozilla.com/D6620

--HG--
extra : moz-landing-system : lando
2018-09-24 17:37:13 +00:00
shindli
0b6d93ef4d Backed out changeset 510e95767aeb (bug 1490874) for security failures in browser/components/payments/test/mochitest/test_basic_card_form.html CLOSED TREE 2018-09-24 11:43:30 +03:00
Christoph Kerschbaumer
0df81cd9f4 Bug 1490874: Log Principal based Security Errors to the Security pane in the console. r=smaug 2018-09-24 09:34:04 +02:00
Brian Grinstead
f43b0eea87 Bug 1492609 - Update test_bug789773.xul to support URLs other than browser.xul as the browser chrome;r=bholley
This is an extra reference to browser.xul that slipped through Bug 1484759.

Differential Revision: https://phabricator.services.mozilla.com/D6334

--HG--
extra : moz-landing-system : lando
2018-09-19 22:24:04 +00:00
Bogdan Tara
9f17cab93a Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-09-20 01:03:35 +03:00
Emilio Cobos Álvarez
a3ec879967 Bug 1486558 - Handle title changes on ancestors without a mouseout in between. r=NeilDeakin
This page is changing the title attribute on an ancestor while we move the mouse
around in a canvas.

Our code assumes that given we've moved the mouse around and hid the tooltip we
shouldn't show it again until the next mouseout.

Instead of keeping track of whether we've already shown the tooltip, keep track
of the last used tooltip string, and avoid showing the tooltip again in the
callback if it's the same.

Differential Revision: https://phabricator.services.mozilla.com/D4443

--HG--
extra : moz-landing-system : lando
2018-09-19 00:56:59 +00:00
arthur.iakab
d2e647e133 Backed out 10 changesets (bug 1485305)for failing browser chrome tests on browser_loadDisallowInherit.js
Backed out changeset 138b8596a9cd (bug 1485305)
Backed out changeset d9f04aeeeef7 (bug 1485305)
Backed out changeset cd063d8afe4e (bug 1485305)
Backed out changeset 2f8a5a03ccb5 (bug 1485305)
Backed out changeset 8085d1eefd7c (bug 1485305)
Backed out changeset 3aaccb374a59 (bug 1485305)
Backed out changeset 3a111e9e5c9c (bug 1485305)
Backed out changeset 61aa1cfb0b01 (bug 1485305)
Backed out changeset bca973d90acc (bug 1485305)
Backed out changeset 4eb33bf25d6f (bug 1485305)
2018-09-18 20:30:07 +03:00
Jonathan Kingston
d8c962ddb9 Bug 1485305 - docshell/ Ensure loadURI always passes a triggeringPrincipal() r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D4556

--HG--
extra : source : 980570093e18dfa77b28173dc18beb27f663bc1e
extra : intermediate-source : 14fe80bbe0838259e36edc24e6a99c431388a123
2018-08-29 15:46:43 +01:00
Jonathan Kingston
b879b521d0 Bug 1485305 - docshell/ Ensure loadURI always passes a triggeringPrincipal() r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D4556

--HG--
extra : source : 9634aa3014342bcbc4e4432d449faee15f916a6a
2018-08-29 15:46:43 +01:00
Brindusan Cristian
1db0587c0e Backed out 10 changesets (bug 1485305) for browser-chrome failures on docshell/test/browser/browser_loadURI.js. CLOSED TREE
Backed out changeset 50439ec01661 (bug 1485305)
Backed out changeset a05e40ef7215 (bug 1485305)
Backed out changeset c99b97b4348b (bug 1485305)
Backed out changeset 75220b2f6669 (bug 1485305)
Backed out changeset e698f2fc1c1a (bug 1485305)
Backed out changeset acce14683c13 (bug 1485305)
Backed out changeset 323773a395cc (bug 1485305)
Backed out changeset 1b74152cabc1 (bug 1485305)
Backed out changeset 4b5c9d5929fc (bug 1485305)
Backed out changeset 238d92348159 (bug 1485305)
2018-09-19 18:47:27 +03:00
Jonathan Kingston
0cfe86dda9 Bug 1485305 - docshell/ Ensure loadURI always passes a triggeringPrincipal() r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D4556

--HG--
extra : source : ef824d059e06f565cf0f92ce7dedb5eb81f3416d
2018-08-29 15:46:43 +01:00
Ehsan Akhgari
9573bffa13 Bug 1492039 - Remove the XPCOM component registration for SessionStorageManager; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D6118
2018-09-18 09:42:43 -04:00
Tiberius Oros
3235f6720f Backed out 10 changesets (bug 1485305) for failures at browser/content/browser.js on a CLOSED TREE
Backed out changeset 63c50fd60ae4 (bug 1485305)
Backed out changeset bf0f2adb765e (bug 1485305)
Backed out changeset 721871bb64f1 (bug 1485305)
Backed out changeset e9da73786c5f (bug 1485305)
Backed out changeset e02038177b6b (bug 1485305)
Backed out changeset 35bd32f99f60 (bug 1485305)
Backed out changeset f40900bf8621 (bug 1485305)
Backed out changeset 03632075ac2c (bug 1485305)
Backed out changeset 2fee48378f73 (bug 1485305)
Backed out changeset 6263695b3cb8 (bug 1485305)
2018-09-18 14:46:54 +03:00
Jonathan Kingston
b40ee11ead Bug 1485305 - docshell/ Ensure loadURI always passes a triggeringPrincipal() r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D4556

--HG--
extra : source : a935c1118e0f03a76e2ea81698a936cdeecb90cf
2018-08-29 15:46:43 +01:00
Ehsan Akhgari
02f08121ff Bug 1491561 - Remove the XPCOM registrations for LoadContext; r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D5945
2018-09-17 21:28:39 -04:00
Ehsan Akhgari
6c19b5c6fd Bug 1491735 - Remove the XPCOM registration for nsWebBrowserFind; r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D5993
2018-09-17 19:48:13 -04:00
Arshad Kazmi
79c60b26c5 Bug 1457784 - Replace warning-16.png with warning.svg. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D5973

--HG--
extra : moz-landing-system : lando
2018-09-17 09:55:12 +00:00
Andreas Farre
931874ae8d Bug 1480113 - Split parent process specific parts out of BrowsingContext r=peterv
Create ChromeBrowsingContext and move parent process specific parts
from BrowsingContext there. After that make sure that all
BrowsingContexts created in the parent process is actually
ChromeBrowsingContexts and all BrowsingContexts in the child processes
are BrowsingContexts.

Differential Revision: https://phabricator.services.mozilla.com/D5419

--HG--
extra : moz-landing-system : lando
2018-09-14 14:57:18 +00:00
Nicholas Nethercote
73e2b20c61 Bug 1490858 - Reorder nsISHEntry. r=nika
nsISHEntry's attributes and methods are thoroughly mixed. This patch separates
them, making it easier to understand.

--HG--
extra : rebase_source : 8a7822b5289fbb67e74dfa3cb42aa31206ee0e16
2018-09-12 13:20:14 +10:00
Nicholas Nethercote
eb5daf71af Bug 1490858 - Simplify some nsISHEntry attributes. r=nika
Both nsISHEntry.URI and nsISHEntry isSubFrame are readonly, but also have a
setter. This is silly, so this patch removes the setter and makes them
modifiable.

The patch also renames nsISHEntry.setAsHistoryLoad() as setLoadTypeAsHistory(),
which makes it clearer that it modifies the loadType attribute.

--HG--
extra : rebase_source : 7772e2c1d90d4fd9f462f20c777d6eacc65801c5
2018-09-12 12:54:11 +10:00
Nicholas Nethercote
f659c0df65 Bug 1490858 - Streamline nsISHEntry a little more. r=nika
By marking some C++-only nsISHistory methods as [noscript] or [noscript,
notxpcom].

--HG--
extra : rebase_source : 1216e755a227fd13f01057afd71ea082a2a79ad7
2018-09-12 11:59:06 +10:00
Nicholas Nethercote
f9b2172b05 Bug 1490858 - Make most nsISHEntry attributes infallible. r=nika
The patch also removes some NS_ENSURE_ARG_POINTER checks from these attributes'
getters. Most of these getters already lack such checks, and as long as the
infallible getters are used a non-null pointer is guaranteed. In the worst case
we'll safely null-crash anyway.

--HG--
extra : rebase_source : 87d4f7fccfa7ffb605c514cf8c2abd270a13b24a
2018-09-07 11:56:23 +10:00
Nicholas Nethercote
2d47fcde1c Bug 1490828 - Handle mPersist in the nsSHEntry copy constructor. r=nika
--HG--
extra : rebase_source : 11bc9b8881467bbf6a4cee9800bf1d13707856b6
2018-09-14 11:09:19 +10:00
Dylan Roeh
b18b70dfcf Bug 1489257 - Backed out 3 changesets (bug 1441059, bug 1478171) for causing bug 1489257. r=me
Backed out changeset f7bd4f224f9a (bug 1441059)
Backed out changeset e66e6bd82e3f (bug 1441059)
Backed out changeset 94cfd6113ca7 (bug 1478171)
2018-09-13 12:27:23 -05:00
Nicholas Nethercote
57abe0460a Bug 1490524 - Streamline nsISHistory a little more. r=nika
- Move VIEWER_WINDOW from nsISHistory to nsSHistory.

- Mark some C++-only nsISHistory methods as [noscript, notxpcom].

- Add gotoIndex() to nsISHistory so that LegacySHistoryImpl() can be removed.

--HG--
extra : rebase_source : c33081d527af6f9697fad095d24824fc4d451f4d
2018-09-11 16:08:39 +10:00
Nicholas Nethercote
a0583f1a89 Bug 1490524 - Make some nsISHistory attributes infallible. r=nika
This also requires making nsISHistory `builtinclass`.

--HG--
extra : rebase_source : a1f2c7a60782dcd741b350f6cd3979d888008a97
2018-09-11 16:08:37 +10:00
Nicholas Nethercote
86422376e7 Bug 1490524 - Remove nsISHistory.maxLength. r=nika
It's unused.

--HG--
extra : rebase_source : d835dd5f650515740e31d9f30535ea2a13d9556b
2018-09-11 16:08:35 +10:00
Nicholas Nethercote
0935270972 Bug 1490158 - Add a clarifying comment. r=nika
--HG--
extra : rebase_source : ab987310ca62b5587f7437d91f7be4345bc5cb16
2018-09-11 15:04:16 +10:00
Nicholas Nethercote
7f2bb554d6 Bug 1490158 Remove On{Length,Index}Changed from nsISHistoryListener. r=nika
They're never used.

--HG--
extra : rebase_source : 94f94e4d198917aa5e1d9322e9ba195f641e6e45
2018-09-07 10:27:05 +10:00
Nicholas Nethercote
951d44ded0 Bug 1490158 - Minimize cancelability in nsISHistoryListener. r=nika
nsISHistoryListener can cancel several operations, but the functionality is
only ever used for OnHistoryReload(). So this patch removes it for the other
operations.

--HG--
extra : rebase_source : 433422e9160f7d645570baaaff4779c4bcc3ec04
2018-09-06 16:51:58 +10:00
arthur.iakab
9b05873885 Backed out changeset 16d2d6dc3cdf (bug 1489257)on request by droeh for causing geckowiev failures
--HG--
extra : rebase_source : 6a1e51a55ff18795c981518845735fe73bd78b6c
extra : amend_source : 3c5f4c8f15db8f361b41f29e632ff42563753639
2018-09-11 18:47:58 +03:00
Dylan Roeh
2cf215fea4 Bug 1489257 - Backed out 3 changesets (bug 1441059, bug 1478171) for causing bug 1489257. r=me
Backed out changeset f7bd4f224f9a (bug 1441059)
Backed out changeset e66e6bd82e3f (bug 1441059)
Backed out changeset 94cfd6113ca7 (bug 1478171)
2018-09-10 16:15:31 -05:00
Nicholas Nethercote
8478f8d66e Bug 1489047 - Change almost all DOMString occurrences in XPIDL files to AString. r=nika
Because they have almost identical semantics.

--HG--
extra : rebase_source : ea9074bcac2a1d190b88a5d1afc15997593659b7
2018-09-06 18:02:43 +10:00
Ehsan Akhgari
f1fe1e77c9 Bug 1489917 - Remove the XPCOM component registration for nsOfflineCacheUpdate; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D5391
2018-09-10 11:24:32 -04:00
Ehsan Akhgari
aa4cb10397 Bug 1489786 - Remove the XPCOM component registration for nsEditingSession; r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D5351
2018-09-09 15:47:00 -04:00
Sylvestre Ledru
aa37bde79b Bug 1489454 - Remove all trailing whitespaces (again) r=Ehsan
This also includes moving some files to the regular format.

Differential Revision: https://phabricator.services.mozilla.com/D5249

--HG--
extra : moz-landing-system : lando
2018-09-07 14:47:51 +00:00
Nicholas Nethercote
6f5be00d2a Bug 1488628 - Change some nsIWebNavigation method arguments from wstring to AString. r=nika
--HG--
extra : rebase_source : a64af3af30b05e6a97b25550e6983121cc47add9
2018-09-05 13:42:16 +10:00
Nicholas Nethercote
55657f2206 Bug 1488628 - Change nsISHEntry.title to an AString. r=nika
This patch also removes the setTitle() method and makes `title` non-readonly.

--HG--
extra : rebase_source : 87e394ec5cb0eed7a9b77fa105b6dd45111d75fd
2018-09-05 11:29:36 +10:00
Haik Aftandilian
ca8ba234b7 Bug 1487204 - Add platform support for calling authorizationStatusForMediaType and requestAccessForMediaType from JS r=spohl
Add a new interface nsIOSPermissionRequest for querying the
staus of access permissions for audio/video media capture and
requesting access to audio/video capture devices. Provides an
implementation for macOS 10.14 and a default implementation
(nsOSPermissionRequestBase) for earlier macOS versions and other
platforms. The default implementation always returns status
indicating access is allowed.

Differential Revision: https://phabricator.services.mozilla.com/D4601

--HG--
extra : moz-landing-system : lando
2018-09-06 16:06:15 +00:00
Nicholas Nethercote
f5d9c8867c Bug 1488321 - Remove all traces of the "transaction" terminology in SHistory. r=nika.
This patch:

- removes GetTransactionAtIndex(), because getTransactionAtIndex() can be used
  instead;

- renames a lot of things;

- updates some comments.

--HG--
extra : rebase_source : 845a1c1d5fe7f84eaa03db39a344d98fd5784afd
2018-09-05 09:03:22 +10:00
Nicholas Nethercote
13643f64e8 Bug 1488321 - Fix up nsISHEntry.{index,getEntryAtIndex()}. r=nika
nsISHEntry.index is readonly, but if you pass `true` as getEntryAtIndex()'s
second argument, nsISHEntry.index will be modified. This is pretty gross.

This patch changes `index` so it's not readonly (because it's not!) and removes
getEntryAtIndex()'s second argument.

--HG--
extra : rebase_source : c519d77fcc1c3bda2f260b5888ce9cd0f6cfdab5
2018-09-05 09:02:37 +10:00
Nicholas Nethercote
54ca088229 Bug 1488321 - Remove nsISHTransaction. r=nika
Because it's a wafer-thin wrapper around nsISHEntry that just complicates
things.

This patch leaves behind a combination of "entry" and "transaction"
terminology. I'll fix that in a subsequent patch.

--HG--
extra : rebase_source : ca15187447bf3d93c65ed3980ead5bca958471be
2018-09-05 09:02:37 +10:00
Nicholas Nethercote
b546759d02 Bug 1488321 - Move the persist attribute from nsISHTransaction to nsISHEntry. r=nika
This requires making nsISHEntry `builtinclass`.

--HG--
extra : rebase_source : 90e792ee35c01b0d90c52315e4cb6d85667c58fa
2018-09-05 09:02:37 +10:00
Nicholas Nethercote
cd3fc14877 Bug 1488321 - Improve GetTransactionAtIndex() result checking. r=nika
Specifically:

- Check the nsresult consistently, but don't check (unnecessarily) for null on
  success.

- In AddEntry(), move GetTransactionAtIndex() before all state-changing
  operations, so we don't end up with partial state updates upon failure.

- Use early returns to reduce indenting.

--HG--
extra : rebase_source : 17815f6813f024fae1cf4ec3cf1b7985ab7a2ff2
2018-09-05 08:53:28 +10:00
Nicholas Nethercote
b212c4a09a Bug 1488321 - Enforce non-nullness for nsISHTransaction.sHEntry. r=nika
In practice it's always non-null, and only half the places that deal with it
have null handling code. So this simplifies things.

--HG--
extra : rebase_source : 250b286b6b2c10aeb0c4486ebe13b1e071bf6c8a
2018-09-05 08:53:28 +10:00
Nicholas Nethercote
268dd7e600 Bug 1488321 - Make nsISHTransaction builtin and its attributes infallible. r=nika
--HG--
extra : rebase_source : 2a4068b80ea20b9c25cbb8239dfada992c758821
2018-08-28 12:00:44 +10:00
Nicholas Nethercote
3062776635 Bug 1488321 - Remove currentIndex in nsSHistory::AddEntry(). r=nika
It was used to protect against changes in mIndex by history listeners, but the
new code structure doesn't need it, because we want to use mIndex afterwards.

--HG--
extra : rebase_source : 74f0cc7f696b101b8e9d699790f2f2c141c5f51b
2018-09-04 14:00:45 +10:00
Ehsan Akhgari
d37a149353 Bug 1488111 - Remove the XPCOM component registration for nsCommandManager; r=qdot
Differential Revision: https://phabricator.services.mozilla.com/D4834
2018-09-04 15:03:22 -04:00
Ehsan Akhgari
8ee774da84 Bug 1487396 - Part 1: Enable the secure browser UI object to keep track of the newly added content blocking states for each document; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D4809
2018-09-04 14:20:22 -04:00
Nicholas Nethercote
09a6eb41df Bug 1487328 - Make nsSHistory *not* implement nsIWebNavigation. r=nika
nsSHistory currently implements nsIWebNavigation, but only three of the methods
are actually used, and the rest call MOZ_CRASH. This patch removes the
inheritance and changes the implementations of those three methods (Reload(),
GetCurrentURI(), and GotoIndex()) to pure C++.

There is one test, bug662200_window.xul, that calls Reload() from JS, which is
no longer possible. Fortunately, nsSHistory::ReloadCurrentEntry() -- which *is*
available from JS -- is similar enough to Reload(0) that it can be used
instead.

(The only difference between Reload(0) and ReloadCurrentEntry() is that the
former triggers the `OnHistoryReload` notification and the latter triggers
`OnHistoryGotoIndex`, which doesn't matter for this test.)

--HG--
extra : rebase_source : 69dba04f14b1438f50f597f3d16b77225795f8a7
2018-09-03 09:27:37 +10:00
Nicholas Nethercote
70d22aa86a Bug 1487328 - Remove nsISHistoryListener.OnHistoryGo{Back,Forward}. r=nika
As per the previous commit, they are now subsumed by OnHistoryGotoIndex.

--HG--
extra : rebase_source : 627a32ed9378c7dd5364323183297933f90f9d72
2018-09-03 09:27:37 +10:00
Nicholas Nethercote
6347de0109 Bug 1487328 - Clarify which nsIWebNavigation methods in nsSHistory are unreachable. r=nika
The only ones that are reachable are GotoIndex(), GetCurrentURI(), and
Reload(). This patch makes all the others crash.

Note that the reason that Go{Back,Forward}() are unreachable is because of this
behaviour in ChildHistory::Go():

  // XXX(nika): Should we turn Go(-1) and Go(1) to call GoForward and GoBack?
  // They technically fire different change events but I couldn't find anyone
  // who cares, so I'm inclined not to.

I.e. those functions are now subsumed by GotoIndex().

As for CanGo{Back,Forward}(), a try push plus code inspection confirm that they
are unused.

--HG--
extra : rebase_source : 6509e635478f257be1271b51d352e0a9d81899ec
2018-09-03 09:27:37 +10:00
Nicholas Nethercote
f369a978ca Bug 1487296 - Merge nsISHistoryInternal into nsISHistory. r=nika
With legacy add-ons gone, there is no benefit to keeping them separate.
2018-08-30 11:37:40 +10:00
Nicholas Nethercote
54524b264e Bug 1487296 - Fix nsIHistory.idl formatting. r=nika
Mostly:
- Fix indenting.
- Remove trailing whitespace.
- Use `aFoo` arguments.
2018-08-30 11:08:59 +10:00
Ciure Andrei
db22ef8d8a Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-09-01 02:43:10 +03:00
Masayuki Nakano
9c349ade9b Bug 1487591 - Make Selection treat AccessibleCaretEventHub as concrete class rather than nsISelectionListener r=smaug
AccessibleCaretEventHub is an nsISelectionListener of Selection whose type is
"normal".  This is added only when nsFrameSelection::Init() is called and
accessible caret is enabled.  Additionally, nsFrameSelection::Init() is
always called immediately after creating nsFrameSelection.

Therefore, when AccessibleCaretEventHub is installed to Selection, this is
always second selection listener and won't be installed multiple times.  So,
Selection can store pointer of AccessibleCaretEventHub directly only when
it's enabled and the Selection needs to notify it of selection change.

This patch makes Selection stores AccessibleCaretEventHub with RefPtr, then,
makes Selection::NotifySelectionListeners() call its OnSelectionChange()
immediately after AutoCopyListener.

Unfortunately, this patch includes making of MOZ_CAN_RUN_SCRIPT_BOUNDARY and
MOZ_CAN_RUN_SCRIPT a lot since some methods of AccessibleCaretEventHub are
marked as MOZ_CAN_RUN_SCRIPT and including AccessibleCaretEventHub.h into
Selection.h causes compile the compile errors.

Differential Revision: https://phabricator.services.mozilla.com/D4733

--HG--
extra : moz-landing-system : lando
2018-08-31 21:19:44 +00:00
Boris Zbarsky
5a90b528ce Bug 1486932 part 2. Remove nsIDOMStorage. r=mccr8 2018-08-31 13:56:55 -04:00
Nicholas Nethercote
03f4d6c3ac Bug 1487541 - Keep mRequestedIndex in bounds in PurgeHistory(). r=me
--HG--
extra : rebase_source : 1488b7a2d3bab7e9a746ddd1fbf70a155cec3933
2018-08-31 16:25:32 +10:00
Nicholas Nethercote
1035277500 Bug 1486358 - Mark GetTransactionAtIndex() as NS_IMETHODIMP. r=me
Because of one this bug's earlier commits made it an XPIDL method.

--HG--
extra : rebase_source : d0e69d5c5eb1fd1caf0946872c8319029591fcc3
2018-08-31 15:32:14 +10:00
Nicholas Nethercote
796d9f80d3 Bug 1487333 - Remove nsIExternalSharingAppService. r=jchen
It's unused.

The patch also renames nsIExternalSharingAppService.idl as
nsISharingHandlerApp.idl, because the only thing left in the file is the
declaration of nsISharingHandlerApp.

--HG--
rename : uriloader/exthandler/nsIExternalSharingAppService.idl => uriloader/exthandler/nsISharingHandlerApp.idl
extra : rebase_source : c1375d75f3c824c9fadd4164201a7e78c7227020
2018-08-30 18:54:24 +10:00
arthur.iakab
b401573dfe Merge mozilla-central to inbound 2018-08-30 07:38:35 +03:00
Gabriele Svelto
6bddc0a55e Bug 1486772 - Refactor the screen-orientation types and headers r=smaug
This patch removes the 'ScreenOrientationInternal' type from
dom/base/ScreenOrientation.h and moves it into the
HalScreenConfiguration.h header, renaming it simply to 'ScreenOrientation'
in the process. This has several knock-off effects:

- It allows files that needed ScreenOrientationInternal to include a much
  smaller header than before

- It greatly reduces the number of headers pulled in when including Hal.h

- It clarifies the role of the type. The 'Internal' part in the name had
  nothing to do with it being part of the implementation. The type was public
  and called that way only to avoid clashing with the 'ScreenOrientation'
  class. Since we moved it into a different namespace it can be renamed
  safely.

- It allows a file that was manually re-declaring 'ScreenConfigurationInternal'
  type to use the original one

- Finally this fixes a few files which were missing headers they actually
  required but that would still build because unified compilation put them into
  units that already had those headers thanks to ScreenConfiguration.h

Differential Revision: https://phabricator.services.mozilla.com/D4458

--HG--
extra : moz-landing-system : lando
2018-08-29 20:54:56 +00:00
Andreas Farre
82694e9ac3 Bug 1481238 - Create WebIDL interface for BrowsingContext. r=peterv
Expose Chrome only WebIDL to interface with BrowsingContext from
script. The API consists of parent, firstChild and nextSibling
attributes for BrowsingContext, and the browsingContext attribute for
Window.

--HG--
extra : rebase_source : 772d25e8b4e5526453545ddb2b1607845f3b65ea
2018-08-29 05:00:00 +03:00
Nicholas Nethercote
cfd6ca43dd Bug 1486358 - Factor out shistory entry window code. r=nika
(It's worth noting that I had to fix one of these instances in the previous
patch, by adding a -1.)

--HG--
extra : rebase_source : ea45cd7dc59b6649f1b46a2c917def79538fcbe8
2018-08-28 12:00:41 +10:00
Andreas Farre
d341a7e83a Bug 1481238 - Add tests for BrowsingContext. r=peterv
--HG--
extra : rebase_source : 2507a9b5398810cc39cd0aac0772f3f73c8d09ed
2018-08-28 02:41:00 +03:00
Nicholas Nethercote
beb090da4a Bug 1486358 - Change nsISHistory's transactions list to an nsTArray. r=nika
- nsISHistoryInternal loses `rootTransaction`, and gains
  GetTransactionAtIndex(). (The implementing class `nsSHistory` already
  implemented a method by that method.)

- nsSHistory loses `mListRoot` in favour of `mTransactions`. It also loses
  `mLength`, because `mTransactions` tracks the length itself.

- nsISHTransaction.{prev,next} are no longer needed.

- nsISHTransaction.create() is no longer needed, because all it does now is set
  the SHEntry, and we can use SetSHEntry() for that.

Overall this deletes about 200 lines of code.

--HG--
extra : rebase_source : eac6334b653e04634baa86a0f4e3c8f07c06e560
2018-08-27 14:28:46 +10:00
Nicholas Nethercote
814d346fbe Bug 1486358 - Fix nsISHTransaction.idl's formatting.
By replacing tabs with spaces, and cleaning up the comments slightly.

--HG--
extra : rebase_source : dd122be19197614bf3a048b235eb857647456fde
2018-08-27 14:28:44 +10:00
Nicholas Nethercote
ac5efebb4b Bug 1486690 - Remove unnecessary checks after moz_xmalloc() calls. r=glandium
There are surprisingly many of them.

(Plus a couple of unnecessary checks after `new` calls that were nearby.)

--HG--
extra : rebase_source : 47b6d5d7c5c99b1b50b396daf7a3b67abfd74fc1
2018-08-28 15:56:01 +10:00
Nicholas Nethercote
4e5b648b58 Bug 1486356 - Remove nsIWebNavigation.LOAD_FLAGS_DISALLOW_INHERIT_OWNER. r=nika
It's a no-longer-needed synonym for LOAD_FLAGS_DISALLOW_INHERIT_PRINCIPAL.

--HG--
extra : rebase_source : 290af53f6c09608e4679f322e705750914bb6061
2018-08-27 14:27:35 +10:00
Nicholas Nethercote
f751b544bf Bug 1486356 - Remove the XPCOM component registration for nsSHTransaction. r=nika
--HG--
extra : rebase_source : 992dfc8d0c836f3adf499ca1974a70656ee11791
2018-08-27 14:27:34 +10:00
Nicholas Nethercote
a4afa80372 Bug 1486356 - Remove nsISHistory.restoreToEntryAtIndex. r=nika
It's unused.

--HG--
extra : rebase_source : b687ecd1f02f6de141fe03b06b555d742d8f8887
2018-08-27 14:27:34 +10:00
Ehsan Akhgari
888504fd4c Bug 1485870 - Remove the XPCOM registration for nsSHTransaction; r=nika 2018-08-28 08:29:33 -04:00
Ehsan Akhgari
2d62042b5c Bug 1486092 - Part 1: Move the browser.contentblocking.enabled pref to StaticPrefs; r=baku 2018-08-27 09:22:01 -04:00
Kris Maglione
3a5c05e76f Bug 1484496: Part 5e - Convert remaining nsISimpleEnumerator users to use JS iteration. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D3733

--HG--
extra : rebase_source : c0fac176d7b3d840c4dbb14f8d95ccfc7f83a5a8
extra : histedit_source : a92c40117d0808a3ad68c972f622a7a42c9ae8ba
2018-08-18 18:13:14 -07:00
Kris Maglione
2dee0aae3c Bug 1484496: Part 4b - Add intrinsic type information to most nsSimpleEnumerators. r=froydnj
This allows JS callers to automatically get the correct types during
interation, without having to explicitly specify them.

Differential Revision: https://phabricator.services.mozilla.com/D3728

--HG--
extra : rebase_source : b708f382d8ea571d199c669bfed5b5a7ca9ffac4
extra : histedit_source : 7df6feb82088c8a5ca45dc28fe4d2b852c177fee
2018-08-18 21:06:32 -07:00
Kris Maglione
65c28aa0ad Bug 1484496: Part 2 - Add common base class for all nsISimpleEnumerator implementations. r=froydnj
In order to allow JS callers to use nsISimpleEnumerator instances with the JS
iteration protocol, we'll need to additional methods to every instance. Since
we currently have a large number of unrelated implementations, it would be
best if they could share the same implementation for the JS portion of the
protocol.

This patch adds a stub nsSimpleEnumerator base class, and updates all existing
implementations to inherit from it. A follow-up will add a new base interface
to this class, and implement the additional functionality required for JS
iteration.

Differential Revision: https://phabricator.services.mozilla.com/D3725

--HG--
extra : rebase_source : ad66d7b266856d5a750c772e4710679fab9434b1
extra : histedit_source : a83ebffbf2f0b191ba7de9007f73def6b9a955b8
2018-08-18 14:22:47 -07:00
Nicholas Nethercote
8cb0711355 Bug 1485279 - Merge nsISHContainer into nsISHEntry. r=qdot
nsSHEntry is the only class that instantiates those two interfaces, so the
separation is not useful. This lets us remove numerous pointless QIs.

--HG--
extra : rebase_source : 570b7ade669fb89a789184198bec9da186c5f1d3
2018-08-22 19:20:56 +10:00
Nicholas Nethercote
d596237589 Bug 1485279 - Merge nsISHEntryInternal into nsISHEntry. r=qdot
nsSHEntry is the only class that instantiates those two interfaces, so the
separation is not useful. This lets us remove several pointless QIs.

The patch also removes RemoveFromBFCache{AS,S}ync, which are unused.

--HG--
extra : rebase_source : 84db7ec180c357ab8c762dc60efb5eed444ba514
2018-08-22 19:13:57 +10:00
James Willcox
89e3bb5c75 Bug 1480095 - Allow loading custom error pages via nsILoadURIDelegate r=esawin,bz,jchen
MozReview-Commit-ID: IhVC9nU60fy
2018-08-22 08:46:41 -05:00
Nicholas Nethercote
5ad84b56e2 Bug 1484944 - Remove nsSHEnumerator. r=qdot
--HG--
extra : rebase_source : 3f52fd7bf780e53631919a0f2e6925345b714517
2018-08-21 19:52:19 +10:00
Eliza Balazs
e0f5c50037 Bug 1423959 - Disable browser_loadURI.js on linux and osx. r=jmaher 2018-08-17 05:53:00 -04:00
Kris Maglione
f84c2cf454 Bug 1480244: Part 1c - Rename TabChildGlobal to TabChildMessageManager. r=bz
MozReview-Commit-ID: ECtFjFV7dZa

--HG--
extra : rebase_source : 50e64fa4da1099ca2bd9e14c8679bb87c354015e
2018-08-10 14:04:23 -07:00
Henri Sivonen
3edc601325 Bug 1402247 - Use encoding_rs for XPCOM string encoding conversions. r=Nika,erahm,froydnj.
Correctness improvements:

 * UTF errors are handled safely per spec instead of dangerously truncating
   strings.

 * There are fewer converter implementations.

Performance improvements:

 * The old code did exact buffer length math, which meant doing UTF math twice
   on each input string (once for length calculation and another time for
   conversion). Exact length math is more complicated when handling errors
   properly, which the old code didn't do. The new code does UTF math on the
   string content only once (when converting) but risks allocating more than
   once. There are heuristics in place to lower the probability of
   reallocation in cases where the double math avoidance isn't enough of a
   saving to absorb an allocation and memcpy.

 * Previously, in UTF-16 <-> UTF-8 conversions, an ASCII prefix was optimized
   but a single non-ASCII code point pessimized the rest of the string. The
   new code tries to get back on the fast ASCII path.

 * UTF-16 to Latin1 conversion guarantees less about handling of out-of-range
   input to eliminate an operation from the inner loop on x86/x86_64.

 * When assigning to a pre-existing string, the new code tries to reuse the
   old buffer instead of first releasing the old buffer and then allocating a
   new one.

 * When reallocating from the new code, the memcpy covers only the data that
   is part of the logical length of the old string instead of memcpying the
   whole capacity. (For old callers old excess memcpy behavior is preserved
   due to bogus callers. See bug 1472113.)

 * UTF-8 strings in XPConnect that are in the Latin1 range are passed to
   SpiderMonkey as Latin1.

New features:

 * Conversion between UTF-8 and Latin1 is added in order to enable faster
   future interop between Rust code (or otherwise UTF-8-using code) and text
   node and SpiderMonkey code that uses Latin1.

MozReview-Commit-ID: JaJuExfILM9
2018-08-14 14:43:42 +03:00
Margareta Eliza Balazs
e53d398574 Merge inbound to mozilla-central. a=merge 2018-08-14 12:30:50 +03:00
Francois Marier
71239f0c25 Bug 1480450 - Honor browser.contentblocking.enabled in tracking protection. r=dimi!
Depends on D3131

Differential Revision: https://phabricator.services.mozilla.com/D3132

--HG--
extra : moz-landing-system : lando
2018-08-13 23:20:40 +00:00
Ciure Andrei
057ea5d560 Backed out 1 changesets (bug 1480450) for mochitest/test_trackingprotection_bug1157081.html failures CLOSED TREE
Backed out changeset 34d3b10c54eb (bug 1480450)
2018-08-13 22:45:37 +03:00
Francois Marier
47ba3463cd Bug 1480450 - Honor browser.contentblocking.enabled in tracking protection. r=dimi!
Depends on D3131

Differential Revision: https://phabricator.services.mozilla.com/D3132

--HG--
extra : moz-landing-system : lando
2018-08-13 14:54:10 +00:00
Ting-Yu Lin
48d02834a5 Bug 1482665 Part 2 - Remove nsPresContext::AppUnitsPerCSSPixel() and replace it with mozilla::AppUnitsPerCSSPixel(). r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D3155
2018-08-13 14:29:28 -07:00
Gabriele Svelto
15adf94f4d Bug 1348273 - Convert crash annotations into a machine-readable list of constants; r=ted.mielczarek,njn,dholbert,mak,cpearce,mcmanus,froydnj,Dexter,jrmuizel,jchen,jimm,bz,surkov
This introduces the machinery needed to generate crash annotations from a YAML
file. The relevant C++ functions are updated to take a typed enum. JavaScript
calls are unaffected but they will throw if the string argument does not
correspond to one of the known entries in the C++ enum. The existing whitelists
and blacklists of annotations are also generated from the YAML file and all
duplicate code related to them has been consolidated. Once written out to the
.extra file the annotations are converted in string form and are no different
than the existing ones.

All existing annotations have been included in the list (and some obsolete ones
have been removed) and all call sites have been updated including tests where
appropriate.

--HG--
extra : source : 4f6c43f2830701ec5552e08e3f1b06fe6d045860
2018-07-05 15:42:11 +02:00
Jonathan Kingston
9b7fb2f20c Bug 1362034 - Have addTab() provide the correct triggering principal. r=ckerschb r=Gijs
Reviewers: ckerschb!, Gijs!

Tags: #secure-revision

Bug #: 1362034

Differential Revision: https://phabricator.services.mozilla.com/D2046

--HG--
extra : source : 44b25dea67d2ed079e17057ab619d827e9983400
extra : amend_source : 5742820277e0269b6f5d42b1abd98fd9b228ac4a
extra : histedit_source : 790bd2490333e4d8fea7774d036eafbc2fc329b9
2018-07-06 15:14:54 +01:00
Jonathan Kingston
2f0987a202 Bug 1362034 - Tests for addTab() to provide the correct triggering principal. r=ckerschb r?=gijs
Summary: Depends on D2046

Reviewers: ckerschb!, Gijs!

Tags: #secure-revision

Bug #: 1362034

Differential Revision: https://phabricator.services.mozilla.com/D2047

--HG--
extra : source : 33884d05cc94463950b31fab1fd2f37ada9becef
extra : intermediate-source : 72471adb75d5ec3dc2b0c8f972a6f1f26bfd3ae2
extra : histedit_source : f384cbab58401575afc3443c9a431b73cff806d4
2018-07-06 21:16:29 +01:00
dvarga
12f19b94e9 Backed out 2 changesets (bug 1362034) for failure at browser/tools/mozscreenshots/primaryUI/browser_primaryUI.js on a CLOSED TREE
Backed out changeset 1c3329958b8a (bug 1362034)
Backed out changeset f68b1b76af36 (bug 1362034)

--HG--
extra : histedit_source : 6169c5ffe856266d3bc8b2ca32f4b67054c71bbe
2018-08-08 22:11:56 +03:00
Jonathan Kingston
c15f69d427 Bug 1362034 - Tests for addTab() to provide the correct triggering principal. r=ckerschb,Gijs
Summary: Depends on D2046

Reviewers: ckerschb, Gijs

Reviewed By: ckerschb, Gijs

Bug #: 1362034

Differential Revision: https://phabricator.services.mozilla.com/D2047

--HG--
extra : rebase_source : ccded0f06a0dc4567b827f42ee29f4b8954154fe
extra : amend_source : 94da8ecc053e56958fa4137d7e497362fa2c11f1
2018-08-08 20:05:30 +03:00
Jonathan Kingston
f389570122 Bug 1362034 - Have addTab() provide the correct triggering principal. r=ckerschb,Gijs
Reviewers: ckerschb, Gijs

Reviewed By: ckerschb, Gijs

Subscribers: mixedpuppy, reviewbot

Bug #: 1362034

Differential Revision: https://phabricator.services.mozilla.com/D2046

--HG--
extra : rebase_source : ea688b35744f970e74de3039da3973f1177d8577
extra : amend_source : 89efdb8ccec2c334a83155eec6b30f08fa0f7074
2018-08-08 20:03:55 +03:00
Kris Maglione
773d32e9fe Bug 1481021: Part 2 - Stop loading SpecialPowers into frame script scopes. r=bz,jmaher,aswan
Loading SpecialPowers into frame scripts has side-effects, detailed in part 1,
which are undesirable. The main side-effect that I'm trying to get rid of here
is the force-enabling of permissive COWs in frame script scopes, which is
blocking changes that I need to make elsewhere. But both that and the scope
pollution it causes are likely to allow code to work when running in
automation which fails in real world usage.

This patch changes our special powers frame scripts to load specialpowers.js
and specialpowersAPI.js as JSMs, which run in their own global, but define
most of the same properties on our frame script globals.

Most other callers still load those scripts via <script> tags or the subscript
loader, and should ideally migrated in a follow-up. But even so, this patch
still gives us a cleaner separation of the frame script and non-frame-script
loading code.

MozReview-Commit-ID: CR226gCDaGY

--HG--
extra : rebase_source : 251574d238ded31b9df32dc89852251831d55757
extra : source : c53c7b0249ad3359fbc9f144f2cf9ca3b6386c59
2018-08-07 14:03:21 -07:00
Kyle Machulis
3b913b0f12 Bug 1480641 - Remove nsITextScroll; r=nika
Summary:
Implemented by nsDocShell and nsWebBrowser (which just wraps the
docshell functions), but not actually used anywhere.

MozReview-Commit-ID: 2YzfsrvOolX

Test Plan: Try run

Reviewers: nika

Tags: #secure-revision

Bug #: 1480641

Differential Revision: https://phabricator.services.mozilla.com/D2695
2018-08-07 17:28:16 -07:00
Brindusan Cristian
16ec846afc Backed out 2 changesets (bug 1481021) for bc failures on security/sandbox/test/browser_bug1393259.js.
Backed out changeset c53c7b0249ad (bug 1481021)
Backed out changeset 41bedc526dd6 (bug 1481021)
2018-08-08 03:22:16 +03:00
Kyle Machulis
ee7197155b Bug 1480637 - Remove nsIClipboardCommands; r=nika
Summary:
Unused interface that can be removed.

MozReview-Commit-ID: GnHRXdtI4qe

Test Plan: Try run

Reviewers: nika

Tags: #secure-revision

Bug #: 1480637

Differential Revision: https://phabricator.services.mozilla.com/D2694
2018-08-07 15:12:55 -07:00
Kyle Machulis
d920d54421 Bug 1480628 - Remove nsIWebShellServices; r=nika
Summary:
nsIWebShellServices is only implemented by nsDocShell, and only used
in one place in C++. Move definitions to nsIDocShell, and rename
functions to show they are only used as part of Charset changes.

MozReview-Commit-ID: DOSeE3Doc51

Test Plan: Try run

Reviewers: nika

Tags: #secure-revision

Bug #: 1480628

Differential Revision: https://phabricator.services.mozilla.com/D2692
2018-08-07 15:12:55 -07:00
Kris Maglione
b9e9588050 Bug 1481021: Part 2 - Stop loading SpecialPowers into frame script scopes. r=bz,jmaher,aswan
Loading SpecialPowers into frame scripts has side-effects, detailed in part 1,
which are undesirable. The main side-effect that I'm trying to get rid of here
is the force-enabling of permissive COWs in frame script scopes, which is
blocking changes that I need to make elsewhere. But both that and the scope
pollution it causes are likely to allow code to work when running in
automation which fails in real world usage.

This patch changes our special powers frame scripts to load specialpowers.js
and specialpowersAPI.js as JSMs, which run in their own global, but define
most of the same properties on our frame script globals.

Most other callers still load those scripts via <script> tags or the subscript
loader, and should ideally migrated in a follow-up. But even so, this patch
still gives us a cleaner separation of the frame script and non-frame-script
loading code.

MozReview-Commit-ID: CR226gCDaGY

--HG--
extra : rebase_source : fa253abde2029ec09c724404106d83623f064875
2018-08-07 14:03:21 -07:00
Dylan Roeh
63ca464a8c Bug 1441059 - Make nsILoadURIDelegate async to preserve the order of GeckoSession.loadUri() calls. r=snorp,bz
This alters nsILoadURIDelegate.loadURI() to return a Promise rather than spinning the event loop to synchronously return a boolean, and alters nsDocShell::InternalLoad to allow for those changes by re-calling itself if necessary based on the resolution of the promise.
2018-08-07 13:42:07 -05:00
Andreea Pavel
f5c1119983 Backed out 2 changesets (bug 1362034) for failing damp | inspector/cold-open.js on a CLOSED TREE
Backed out changeset 8c8925b75aa2 (bug 1362034)
Backed out changeset ff6b05c96094 (bug 1362034)
2018-08-06 20:42:44 +03:00
Jonathan Kingston
4ca581ffed Bug 1362034 - Tests for addTab() to provide the correct triggering principal. r=ckerschb,Gijs
Summary: Depends on D2046

Reviewers: ckerschb, Gijs

Reviewed By: ckerschb, Gijs

Bug #: 1362034

Differential Revision: https://phabricator.services.mozilla.com/D2047

--HG--
extra : rebase_source : 4bb9e7feb0704239756e6e38623c0fea81669f7b
extra : amend_source : 9417f96547735fbdc55ea23666327a5cb86ac92f
2018-08-06 19:56:37 +03:00
Jonathan Kingston
9be2ebdb53 Bug 1362034 - Have addTab() provide the correct triggering principal. r=ckerschb,Gijs
Reviewers: ckerschb, Gijs

Reviewed By: ckerschb, Gijs

Subscribers: reviewbot

Bug #: 1362034

Differential Revision: https://phabricator.services.mozilla.com/D2046

--HG--
extra : rebase_source : 57c6bda461781ec20f0ceba8d1dd9c48778bf568
extra : amend_source : 2eebbf1e7df91697ce984d2845dbae41f9dcbcbd
2018-08-06 19:54:47 +03:00
Noemi Erli
23c8a3a9f3 Backed out changeset 1e9ecba54e7b (bug 1348273) for failing on widget/tests/test_bug1123480.xul 2018-08-04 12:39:40 +03:00
Gabriele Svelto
50ba13cce4 Bug 1348273 - Convert crash annotations into a machine-readable list of constants; r=ted.mielczarek,njn,dholbert,mak,cpearce,mcmanus,froydnj,Dexter,jrmuizel,jchen,jimm,bz,surkov
This introduces the machinery needed to generate crash annotations from a YAML
file. The relevant functions are updated to take a typed enum (in C++) and an
integer constant (in JavaScript). A JavaScript wrapper around the crash
reporter service is provided to hold the constants. The existing whitelists
and blacklists of annotations are also generated from the YAML file and the
existing duplicate code has been consolidated. Once written out to the .extra
file the annotations are converted in string form and are no different than
the existing ones.

All existing annotations have been included (and some obsolete ones removed)
and all call sites have been updated including tests.

--HG--
extra : rebase_source : b4f0d4bf83c64851028c271d3fab3ebcb6fbcd3e
2018-07-05 15:42:11 +02:00
Coroiu Cristina
1ba19a32ac Backed out changeset 86471a18672f (bug 1348273) for ESlint failure at toolkit/modules/WebNavigationChild.jsm
--HG--
extra : rebase_source : e0c94f49ddc1f1b119b72c06fccc1b4363b9d340
2018-08-03 22:48:51 +03:00
Gabriele Svelto
eff24befbd Bug 1348273 - Convert crash annotations into a machine-readable list of constants; r=ted.mielczarek,njn,dholbert,mak,cpearce,mcmanus,froydnj,Dexter,jrmuizel,jchen,jimm,bz,surkov
This introduces the machinery needed to generate crash annotations from a YAML
file. The relevant functions are updated to take a typed enum (in C++) and an
integer constant (in JavaScript). A JavaScript wrapper around the crash
reporter service is provided to hold the constants. The existing whitelists
and blacklists of annotations are also generated from the YAML file and the
existing duplicate code has been consolidated. Once written out to the .extra
file the annotations are converted in string form and are no different than
the existing ones.

All existing annotations have been included (and some obsolete ones removed)
and all call sites have been updated including tests.

--HG--
extra : rebase_source : f0e8d229581ac5c0daa0e0454cb258746108e28d
2018-07-05 15:42:11 +02:00
Boris Zbarsky
e2aafee76f Bug 1479569 part 3. Remove nsIContentFrameMessageManager. r=kmag 2018-08-02 23:49:09 -04:00
Boris Zbarsky
b421d6d7fb Bug 1479569 part 1. Add a ContentFrameMessageManager getter on nsIDocShell. r=kmag 2018-08-02 23:49:09 -04:00
Boris Zbarsky
357b6b1348 Bug 1479570. Get Add a getter to get a docshell from nsIWindowlessBrowser. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D2669

--HG--
extra : moz-landing-system : lando
2018-08-03 00:05:07 +00:00
Boris Zbarsky
30718f15fe Bug 1480310. Use docshell's editingSession getter instead of getInterface to get editing sessions. r=kmag
All the C++ consumers already call the getter, so we can remove
nsIEditingSession from the docshell GetInterface method completely.

Differential Revision: https://phabricator.services.mozilla.com/D2668

--HG--
extra : moz-landing-system : lando
2018-08-02 19:15:27 +00:00
Noemi Erli
8f66a71e70 Merge inbound to mozilla-central. a=merge 2018-08-02 11:54:46 +03:00
Kyle Machulis
e8ad4d6c8a Bug 1450164 - Don't update URIs on history adds on docshells that are being shut down; r=bzbarsky
If we add to history on a docshell that is being shut down, add
history entry but skip trying to load the new URI.

MozReview-Commit-ID: JCF9muhxbFd

Differential Revision: https://phabricator.services.mozilla.com/D2311

--HG--
extra : moz-landing-system : lando
2018-08-02 00:51:09 +00:00
Xidorn Quan
8421040c69 Bug 1479995 - Rename ScrollbarStyles to ScrollStyles. r=mstange
This change also renames several related functions, as well as fields,
and the header is moved into EXPORTS.mozilla given it is defined under
mozilla namespace.

MozReview-Commit-ID: LqCdcW8fmUN

--HG--
rename : layout/base/ScrollbarStyles.cpp => layout/base/ScrollStyles.cpp
rename : layout/base/ScrollbarStyles.h => layout/base/ScrollStyles.h
extra : rebase_source : 8933f3bca88d5db4b9508e3947f695ecf7511b3e
2018-08-01 16:14:26 +10:00
Boris Zbarsky
ee565cfd06 Bug 1479486. Remove some unused chromeonly history APIs on Window. r=mccr8
Well, back() is used, but only in tests, and those can use history.back().
2018-07-31 17:27:03 -04:00
Brindusan Cristian
f4c55c8456 Backed out 4 changesets (bug 1479486, bug 1479497, bug 1479475) for build bustages on builds/worker/workspace/build/src/dom/base/nsGlobalWindowInner.cpp:932:53. CLOSED TREE
Backed out changeset b75e262fac02 (bug 1479486)
Backed out changeset 45692ba0fddd (bug 1479475)
Backed out changeset 524fb20de6a2 (bug 1479475)
Backed out changeset 4663bd19da9b (bug 1479497)
2018-08-01 00:49:43 +03:00
Boris Zbarsky
261165b8f7 Bug 1479486. Remove some unused chromeonly history APIs on Window. r=mccr8
Well, back() is used, but only in tests, and those can use history.back().
2018-07-31 17:27:03 -04:00
Eugen Sawin
80290a1133 Bug 1451476 - [1.2] Add GeckoView page load error API. r=snorp,droeh,smaug 2018-07-31 20:43:33 +02:00
Boris Zbarsky
754087a992 Bug 1446940 part 5. Stop getting docshells from windows via getInterface in dom/editor/etc code. r=kmag 2018-08-01 13:07:11 -04:00
Mark Banner
4b4fb0e535 Bug 1468980 - Remove nsIDownloadHistory.idl. r=mak
MozReview-Commit-ID: IDHmOmJRJfe

--HG--
extra : rebase_source : 9f4f935740eb490ccc46620f0b4dad205289ae64
2018-07-27 15:24:53 +01:00
Kris Maglione
031076f2f3 Bug 1463291: Move docShell getter from Document to Window. r=bz
DocShells are associated with outer DOM Windows, rather than Documents, so
having the getter on the document is a bit odd to begin with. But it's also
considerably less convenient, since most of the times when we want a docShell
from JS, we're dealing most directly with a window, and have to detour through
the document to get it.

MozReview-Commit-ID: LUj1H9nG3QL

--HG--
extra : source : fcfb99baa0f0fb60a7c420a712c6ae7c72576871
extra : histedit_source : 5be9b7b29a52a4b8376ee0bdfc5c08b12e3c775a
2018-05-21 16:58:23 -07:00
Kris Maglione
02ba563399 Bug 1463016: Part 5 - Add domWindow property to DocShellTreeItem and update callers to use it. r=nika
MozReview-Commit-ID: FRRAdxLHRtG

--HG--
extra : source : 0d69b4fb1ed43751cfcbc0b4f2fe3b6a49bc0494
extra : histedit_source : d0ce31513ffaae2fd7f01f6567a97b6d2d96b797%2Cfff837de7a00fa90809d2c3e755097180dfd56d8
2018-05-20 18:10:16 -07:00
Narcis Beleuzu
561ccb2ceb Backed out 2 changesets (bug 1463016, bug 1463291) for geckoview failures
Backed out changeset fcfb99baa0f0 (bug 1463291)
Backed out changeset 0d69b4fb1ed4 (bug 1463016)
2018-07-29 03:55:23 +03:00
Kris Maglione
cb1ee1e34d Bug 1463291: Move docShell getter from Document to Window. r=bz
DocShells are associated with outer DOM Windows, rather than Documents, so
having the getter on the document is a bit odd to begin with. But it's also
considerably less convenient, since most of the times when we want a docShell
from JS, we're dealing most directly with a window, and have to detour through
the document to get it.

MozReview-Commit-ID: LUj1H9nG3QL

--HG--
extra : rebase_source : a13c59d1a5ed000187c7fd8e7339408ad6e2dee6
2018-05-21 16:58:23 -07:00
Kris Maglione
636f1839e5 Bug 1463016: Part 5 - Add domWindow property to DocShellTreeItem and update callers to use it. r=nika
MozReview-Commit-ID: FRRAdxLHRtG

--HG--
extra : rebase_source : 36565ef5e74360aad14062005e5bdab2939e888b
2018-05-20 18:10:16 -07:00
Andreas Farre
875e9111dc Bug 1445659 - Remove dangling BrowsingContexts left from closing process. r=Nika
To not leave dangling BrowsingContexts due to crashing child processes
we need to detach all BrowsingContexts owned by a specific process
when that process goes away.

--HG--
extra : histedit_source : a737dd272224ae2595e8851813f3f9a66a2e01f2
2018-06-29 02:41:00 +03:00
Andreas Farre
cbc727cdcf Bug 1445659 - Make BrowsingContext interact with bfcache. r=peterv
Have BrowsingContext keep its own cache to enable caching of
BrowsingContexts, especially in the parent process.

This isn't really optimal, since it effectively duplicates the
cache in the child process. BFcache keeps a list of strong pointers to
the list of cached nsDocShells, where each nsDocShell in turn keeps a
reciprocated strong pointer to its BrowsingContext, which in turn is
held in the BrowsingContexts list of cached contexts. Ideally these
caches should be merged.

--HG--
extra : histedit_source : 094370f6d54d83728e8433ec5c47003086146476
2018-06-28 05:40:00 +03:00
Andreas Farre
1d151a57c8 Bug 1445659 - Create basic Browsing Context in Content Parent and Child. r=peterv
Add BrowsingContext to allow the tree structure of docshells to exist
in several processes simultaneously. This is a first step towards
allowing a tree structure preserving separation of docshells across
processes.

--HG--
extra : histedit_source : d3c7f6ab4b9ae76f170c126d669ebd570e52f348
2018-07-26 10:31:00 +03:00
Dragana Damjanovic
ea14bba80a Bug 1468523 - Fix the history entry for http-equiv=refresh. r=smaug 2018-07-26 15:31:59 +03:00
Boris Zbarsky
75abc43e0d Bug 1476145 part 8. Stop using getInterface(nsIDOMWindowUtils) in various test code. r=kmag 2018-07-24 19:47:43 -04:00
Kyle Machulis
8f9744fe25 Bug 1475407 - Add ReferrerPolicy header to nsDocShellLoadInfo r=baku
Differential Revision: https://phabricator.services.mozilla.com/D2277

--HG--
extra : moz-landing-system : lando
2018-07-23 10:11:52 +00:00
Jan de Mooij
41bc700eb1 Bug 1475559 part 2 - Rename JS::IsSavedFrame to JS::IsMaybeWrappedSavedFrame and do some minor cleanup. r=bz
Our JS::IsFoo APIs usually don't check for wrappers so being explicit about this seems useful.
2018-07-21 14:32:25 +02:00
Andrea Marchesini
a053cf1c15 Bug 1476306 - Moving NullPrincipal/ContentPrincipal/SystemPrincipal under mozilla namespace - part 1 - NullPrincipal, r=ckerschb 2018-07-17 21:37:48 +02:00
Kris Maglione
44f3d2e02f Bug 1473631: Part 11 - Replace pref observers with callbacks in nsSHistory. r=njn
MozReview-Commit-ID: EvwiYRg4SnC

--HG--
extra : rebase_source : af78bc15488a0c6b2916aefa5dca0611f9c2f722
2018-07-05 14:58:04 -07:00
Olli Pettay
6f378a4ffa Bug 1475485, @title tooltips should work also inside ShadowDOM, r=mrbkap 2018-07-14 04:48:19 +03:00
Kyle Machulis
97dad82022 Bug 1472087 - Readd comments from nsIDocShellLoadInfo; r=nika
MozReview-Commit-ID: 9hZCYSFL5QZ
2018-07-11 20:19:19 -07:00