701812 Commits

Author SHA1 Message Date
Cameron McCormack
edd1013c3e Bug 1616411 - Part 3: Make RasterImage deal with and apply image orientation. r=tnikkel
This makes EXIF orientation metadata honored by default.

Introduce OrientedPixel and UnorientedPixel typed rects and sizes and
use them throughout RasterImage so that we don't confuse which we want.

The reason for doing this rather than having the imgLoader wrap every
RasterImage it creates with an OrientedImage is that returning the
wrapper messes with various notifications, as OrientedImage is not an
ImageResource.

(It would be even better if the JPEG decoder could decode to imgFrames
handling the EXIF orientation itself, but that's a more complicated
change.)

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

--HG--
extra : moz-landing-system : lando
2020-04-16 00:34:29 +00:00
Cameron McCormack
2ed202c917 Bug 1616411 - Part 2: Don't bother passing in the size to OrientedImage::OrientSurface. r=tnikkel
We can get the size from the surface directly.

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

--HG--
extra : moz-landing-system : lando
2020-04-16 00:34:26 +00:00
Cameron McCormack
4038aaae51 Bug 1616411 - Part 1: Split out some helper methods from OrientedImage. r=tnikkel
RasterImage will make use of them.

Note that there is one bug fix in this patch, which is that
OrientedImage::OrientSurface now creates a surface of the correct size.

(Previously this code was creating a surface with the underlying
image's size, rather than the correctly oriented size.  But we must
not have been calling into that code with our current uses of
OrientedImage.)

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

--HG--
extra : moz-landing-system : lando
2020-04-16 00:34:19 +00:00
Arthur Iakab
3928665a70 Backed out changeset af41b9549456 (bug 1630389) for causing mass Windows failures.
CLOSED TREE
2020-04-16 03:36:36 +03:00
Tooru Fujisawa
3a09380544 Bug 1630264 - Revive expected failure for win32 window.open test. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D71087

--HG--
extra : moz-landing-system : lando
2020-04-15 19:23:03 +00:00
Emilio Cobos Álvarez
072ca409e3 Bug 1630385 - Don't descend into scroll frames with a pre-existing anchor. r=dholbert
We can modify the scroll position without invalidating the anchor (that's kind
of the point, actually).

So it's possible (and ok) to end up with a frame which is already maintaining
an anchor but for which CanMaintainAnchor now returns false.

So if you have a scrollframe with a non-zero scroll position and select an
anchor for that scrollframe, and then try to select an anchor for an ancestor,
you don't want to dig into there.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 23:13:00 +00:00
Matt Woodrow
9f11c31d1a Bug 1627971 - Fire onerror event for CONTENT_BLOCKED in EndPageLoad. r=nika,ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D70587

--HG--
extra : moz-landing-system : lando
2020-04-15 22:33:46 +00:00
Matt Woodrow
a27cfc760b Bug 1627971 - Add option to MaybeFireEmbedderLoadEvents to also fire the error event to the embedder element. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D70585

--HG--
extra : moz-landing-system : lando
2020-04-15 22:30:13 +00:00
Matt Woodrow
ce7219acd5 Bug 1627971 - Move docshell embedder unblock load to a helper. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D70584

--HG--
extra : moz-landing-system : lando
2020-04-15 22:29:25 +00:00
Geoff Lankow
c7a24ee34a Bug 1623704 - Fix saveAs option of browser.downloads.download on Thunderbird. r=zombie
Differential Revision: https://phabricator.services.mozilla.com/D70470

--HG--
extra : moz-landing-system : lando
2020-04-15 10:43:18 +00:00
Kris Maglione
2b97c80ec2 Bug 1582318: Remove shutting-down processes from pool immediately. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D69441

--HG--
extra : moz-landing-system : lando
2020-04-15 22:44:36 +00:00
Eitan Isaacson
14c42949a0 Bug 1629162 - Scrollability changed should fire accessible FOCUSABLE changes. r=morgan,Jamie
When an element with overflow:auto becomes scrollable, either by a style change or growing children, it should become focusable and fire a state change. Same in the inverse.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 22:33:55 +00:00
Eitan Isaacson
d5a790643e Bug 1629162 - Attribute changes should cause FOCUSABLE state change events. r=morgan,Jamie
Changes to attributes such as disabled, contenteditable, and tabindex should cause FOCUSABLE
state changes to be fired when indeed the accessible gains or loses focusability.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 22:33:48 +00:00
Sylvestre Ledru
17b998fd75 Bug 1466070 - mozlint/clang-format: create the new job r=ahal
Depends on D69683

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

--HG--
extra : moz-landing-system : lando
2020-04-15 20:39:40 +00:00
Sylvestre Ledru
ee37eb29a7 Bug 1466070 - Integrate clang-format into mozlint r=linter-reviewers,ahal
For now, the local detection sucks. I will fix that once bug 1625884
is fixed

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

--HG--
extra : moz-landing-system : lando
2020-04-15 20:39:32 +00:00
Ricky Stewart
c9156704b1 Bug 1630317 - Add a warning if there is an attempt to mach bootstrap from an "old commit" r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D71076

--HG--
extra : moz-landing-system : lando
2020-04-15 20:58:58 +00:00
Eitan Isaacson
a0e9e925ab Bug 1629771 - When collapsed caret moves in focusable element, don't pivot to it. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D71109

--HG--
extra : moz-landing-system : lando
2020-04-15 22:16:34 +00:00
Arthur Iakab
3f105ec0c5 Backed out changeset 0c8a5b5094b6 (bug 1628926) for Eslint failure on UrlbarView.jsm
CLOSED TREE
2020-04-16 01:38:49 +03:00
Imanol Fernandez
025f4b6335 Bug 1630170 - Delete XRWebGLLayer Framebuffer on XRSession presentation end r=kip,jgilbert,daoshengmu
Differential Revision: https://phabricator.services.mozilla.com/D71063

--HG--
extra : moz-landing-system : lando
2020-04-15 21:58:13 +00:00
Imanol Fernandez
e3dd20241c Bug 1630290 - Update VRManager VRLayer instead of recreating it. r=daoshengmu,kip
Differential Revision: https://phabricator.services.mozilla.com/D71064

--HG--
extra : moz-landing-system : lando
2020-04-15 21:59:44 +00:00
Imanol Fernandez
c3114c1c70 Bug 1630007 - Apply XRSpace effective origin position and orientation using matrix multiplication. r=kip,daoshengmu
Differential Revision: https://phabricator.services.mozilla.com/D70923

--HG--
extra : moz-landing-system : lando
2020-04-15 22:05:26 +00:00
Tom Prince
01409a49a6 Bug 1630047 - Allow mozversioncontrol to add or remove multiple files at once; r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D70938

--HG--
extra : moz-landing-system : lando
2020-04-15 22:16:49 +00:00
Bert Peers
7c32464a6c Bug 1630389 - Enable WaitForVBlank by default on Windows 10 r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D71097

--HG--
extra : moz-landing-system : lando
2020-04-15 22:00:17 +00:00
Johann Hofmann
48b208f05c Bug 1627890 - Disable HTTP Feature-Policy header and document.featurePolicy in Nightly. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D70171

--HG--
extra : moz-landing-system : lando
2020-04-15 22:16:41 +00:00
Eitan Isaacson
d09e5861c1 Bug 1628922 - Support landmark navigation in GeckoView. r=Jamie
Added a traversal rule and piped through xml-roles as role descriptions.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 22:12:37 +00:00
Ted Campbell
e2df076d45 Bug 1629721 - Remove FunctionEmitter::interpretedCommon. r=mgaudet
Move the TI heuristic into BCE::emitFunction where the other special mutation
of inner-functions is happening.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 22:07:39 +00:00
Ted Campbell
9636c3ba3e Bug 1629721 - Remove BytecodeEmitter::runOnceLambda helper. r=mgaudet
Instead rely on consistent definitions of the TreatAsRunOnce flag on the
SharedContext. Also simplify the BCE::check{RunOnce,Singleton}Context
accessors. Note that the TreatAsRunOnce flag indicates the script is expected
to run-once, but the BCE also checks for isInLoop to decide if current
bytecode location within the script should still be considered run-once.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 22:07:34 +00:00
Ted Campbell
b5951c4ebc Bug 1629721 - Unified runOnceLambda definition for lazy/non-lazy. r=mgaudet
Use the same conditions for qualifying an inner function as a run-once-lambda
between the lazy and non-lazy code paths. Use the FunctionBox::immutableFlags
so that this works well with delazification too.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 22:07:27 +00:00
Ted Campbell
38903f778e Bug 1629721 - Use the TreatAsRunOnce flag on SharedContext. r=mgaudet
In the BytecodeEmitter constructor, initialize the TreatAsRunOnce flag for
top-level SharedContexts. In the future we should initialize this even
earlier. For the delazification case, we initialize already directly
initialize this flag from the lazy BaseScript.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 22:07:25 +00:00
Daosheng Mu
eaec8a64c7 Bug 1630159 - Revert Oculus Quest and Focus Plus controller matrix to match WebVR. r=kip
Differential Revision: https://phabricator.services.mozilla.com/D70979

--HG--
extra : moz-landing-system : lando
2020-04-15 21:56:50 +00:00
Iain Ireland
4b0968f728 Bug 1629670: Tier up to compiled regexps r=mgaudet
The interpreter calls `TierUpTick` whenever we interpret a regexp. Once we hit the tick threshold, compileIfNecessary will compile native code for the regexp.

Currently the tick threshold is hard-coded to 10. V8's tick threshold is 1, which seems unreasonably low. We can tune this later.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 20:08:21 +00:00
Iain Ireland
c467363eb7 Bug 1629670: Change ForceByteCode to CodeKind r=mgaudet
The current ForceByteCodeEnum is a glorified boolean. This patch replaces it with a three-value bytecode/jitcode/either enum, which will make our tiering-up logic slightly nicer in the next patch.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 20:54:38 +00:00
Iain Ireland
8dad7c3e77 Bug 1628835: Unify result enum r=tcampbell
Internally, irregexp uses -1 for errors, 0 for failure, and 1 for success. We have to use the same values in RegExpRunStatus.

Ideally we would replace RegExpRunStatus with an enum defined in RegExpTypes.h, but that will have to wait until we get rid of the old import.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 20:08:25 +00:00
Iain Ireland
454a5e1d1b Bug 1628835: Add interpreter support r=tcampbell
The irregexp compiler takes the AST produced by the parser, compiles it down to a more efficient internal representation, then uses a 'macroassembler' to generate code. The generated code can either be bytecode (which is then fed into the interpreter) or jitcode (which can be executed directly).

This patch gets the infrastructure set up and handles the former case.

CompilePattern is based heavily on V8's `RegExpImpl::compile` (affc364620/src/regexp/regexp.cc (L745-L933)). I am upstreaming a patch to move the code in WrapBody into regexp-compiler.cc where it fits better.

V8 is about to land a patch to tweak the API for Interpret so that it allocates memory for its registers internally instead of requiring it to be passed in. When we import this change, we'll be able to pass `matches->pairsRaw()` directly into `MatchForCallFromRuntime`, and the interpreter will fill it in for us.

In the old engine, we could handle interrupts in the middle of the interpreter. If we hit an urgent interrupt in compiled code, we would generate bytecode and fall back to the interpreter (see https://searchfox.org/mozilla-central/rev/9120151ddb35f2d4c37bfe613a54a4f10a9a3dc5/js/src/vm/RegExpObject.cpp#1165-1175). (This is what all the `ForceByteCode` machinery in RegExpObject.cpp is about. It was added in bug 1077514.) That won't work in the new version. V8 does allow interrupts during regexp execution, but only by jumping through some scary hoops to "manually relocate unhandlified references" afterwards. Instead, we just retry the regexp. I have no idea what a reasonable number of retries is before giving up; I've arbitrarily picked 4 for now.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 20:08:25 +00:00
Iain Ireland
5748dca264 Bug 1628835: Use RegExpShared in JSRegExp r=tcampbell
In preparation for actually compiling regexps in the next patch, hook up the V8 and irregexp representations of a compiled regexp.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 20:08:24 +00:00
Iain Ireland
54ca602cfd Bug 1628835: Change parenCount to pairCount r=tcampbell
A regexp with N sets of capturing parens will have N+1 capture groups, with the extra capture containing the entire matching string. Our old implementation stored `parenCount` in the RegExpShared and then added 1 to it whenever it was used. A much simpler answer is to just add 1 when initializing the regexp.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 20:08:24 +00:00
Drew Willcoxon
1736e700e0 Bug 1628926 - Remove the browser.urlbar.oneOffSearches pref. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D70921

--HG--
extra : moz-landing-system : lando
2020-04-15 08:56:16 +00:00
sefeng
0324d16f3c Bug 1613507 - [geckodriver] Don't set speculative-parallel-limit to 0 but leave it on its default value. r=whimboo,marionette-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D71071

--HG--
extra : moz-landing-system : lando
2020-04-15 21:36:08 +00:00
Ting-Yu Lin
7323697f18 Bug 1625362 Part 3 - Extract grid container's PushIncompleteChildren logic, and move it to nsContainerFrame. r=mats
I left all the bits that related to grid container, such as setting
aStatus, NS_STATE_GRID_DID_PUSH_ITEMS, and aState.mIter in
nsGridContainerFrame::ReflowRowsInFragmentainer().

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

--HG--
extra : moz-landing-system : lando
2020-04-15 18:31:35 +00:00
Ting-Yu Lin
a2e0d00564 Bug 1625362 Part 2 - Move some helpers manipulating overflow lists from nsGridContainerFrame to nsContainerFrame. r=mats
We can utilize these helpers to implement flex item fragmentation.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 18:31:33 +00:00
Ting-Yu Lin
97c3b1d8cb Bug 1625362 Part 1 - Move ReparentFrame and ReparentFrames into nsContainerFrame. r=mats
We have duplicated ReparentFrame and ReparentFrames define in both
nsBlockFrame and nsGridContainerFrame. We should move them into
nsContainerFrame.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 18:31:25 +00:00
Tim Nguyen
072d80ee18 Bug 1630201 - Merge browser/themes/shared/preferences and browser/themes/shared/incontentprefs. r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D71020

--HG--
rename : browser/themes/shared/incontentprefs/bookmark.svg => browser/themes/shared/preferences/bookmark.svg
rename : browser/themes/shared/incontentprefs/containers.css => browser/themes/shared/preferences/containers.css
rename : browser/themes/shared/incontentprefs/critters-postcard.jpg => browser/themes/shared/preferences/critters-postcard.jpg
rename : browser/themes/shared/incontentprefs/dialog.inc.css => browser/themes/shared/preferences/dialog.inc.css
rename : browser/themes/shared/incontentprefs/extensions.svg => browser/themes/shared/preferences/extensions.svg
rename : browser/themes/shared/incontentprefs/face-sad.svg => browser/themes/shared/preferences/face-sad.svg
rename : browser/themes/shared/incontentprefs/face-smile.svg => browser/themes/shared/preferences/face-smile.svg
rename : browser/themes/shared/incontentprefs/formfill.svg => browser/themes/shared/preferences/formfill.svg
rename : browser/themes/shared/incontentprefs/fxaPairDevice.css => browser/themes/shared/preferences/fxaPairDevice.css
rename : browser/themes/shared/incontentprefs/general.svg => browser/themes/shared/preferences/general.svg
rename : browser/themes/shared/incontentprefs/history.svg => browser/themes/shared/preferences/history.svg
rename : browser/themes/shared/incontentprefs/no-search-bar.svg => browser/themes/shared/preferences/no-search-bar.svg
rename : browser/themes/shared/incontentprefs/no-search-results.svg => browser/themes/shared/preferences/no-search-results.svg
rename : browser/themes/shared/incontentprefs/preferences.inc.css => browser/themes/shared/preferences/preferences.inc.css
rename : browser/themes/shared/incontentprefs/preferences.svg => browser/themes/shared/preferences/preferences.svg
rename : browser/themes/shared/incontentprefs/privacy-security.svg => browser/themes/shared/preferences/privacy-security.svg
rename : browser/themes/shared/incontentprefs/privacy.css => browser/themes/shared/preferences/privacy.css
rename : browser/themes/shared/incontentprefs/search-arrow-indicator.svg => browser/themes/shared/preferences/search-arrow-indicator.svg
rename : browser/themes/shared/incontentprefs/search-bar.svg => browser/themes/shared/preferences/search-bar.svg
rename : browser/themes/shared/incontentprefs/search.css => browser/themes/shared/preferences/search.css
rename : browser/themes/shared/incontentprefs/search.svg => browser/themes/shared/preferences/search.svg
rename : browser/themes/shared/incontentprefs/siteDataSettings.css => browser/themes/shared/preferences/siteDataSettings.css
rename : browser/themes/shared/incontentprefs/sync.svg => browser/themes/shared/preferences/sync.svg
rename : browser/themes/shared/incontentprefs/tab.svg => browser/themes/shared/preferences/tab.svg
extra : moz-landing-system : lando
2020-04-15 20:41:37 +00:00
Tim Nguyen
4c24f1af4a Bug 1630201 - Rename browser/themes/shared/preferences/containers.css to browser/themes/shared/preferences/containers-dialog.css. r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D71019

--HG--
rename : browser/themes/shared/preferences/containers.css => browser/themes/shared/preferences/containers-dialog.css
extra : moz-landing-system : lando
2020-04-15 20:32:30 +00:00
Emilio Cobos Álvarez
f9bd47e44b Bug 1626586 - Make history notifications do a bit less work. r=mak,lina,agi,snorp
And batch them when notifying child processes.

This makes RegisterVisitedQuery potentially notify synchronously, but changes
the code to deal with it properly.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 21:19:41 +00:00
Csoregi Natalia
099f1d6a99 Backed out changeset 130dadf64e30 (bug 658544) for failures on test_PlacesDBUtils_removeOldCorruptDBs.js. CLOSED TREE 2020-04-16 00:34:55 +03:00
Csoregi Natalia
de8e762887 Backed out 7 changesets (bug 1625615) for multiple failures e.g. /test_windowedhistoryframes.html. CLOSED TREE
Backed out changeset f239d24658c9 (bug 1625615)
Backed out changeset acea7c78db20 (bug 1625615)
Backed out changeset d709f5a72c35 (bug 1625615)
Backed out changeset 4cd231b1f3fb (bug 1625615)
Backed out changeset 45942c8dc380 (bug 1625615)
Backed out changeset 3f03a8703a8a (bug 1625615)
Backed out changeset e9299fc48796 (bug 1625615)
2020-04-16 00:32:16 +03:00
Kartikaya Gupta
731e0c0820 Bug 1627362 - Improve logging for fixed/sticky data on the WR codepath. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D70912

--HG--
extra : moz-landing-system : lando
2020-04-15 20:01:05 +00:00
Kartikaya Gupta
96ccdc9b83 Bug 1627362 - Fix WR codepath. r=botond
This patch just ensures the changes in the previous patches get applied
to the WR codepath, and is sufficient to make all the remaining sticky
tests pass on Android+WR.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 21:05:26 +00:00
Kartikaya Gupta
bbdeafdcdb Bug 1627362 - Properly support items stuck to both bottom and top. r=botond
The semantics of sticky items are somewhat different from the semantics of
fixed items. For fixed items, if an item is fixed to eTop or eBottom or
eTopBottom, it is *always* fixed to those sides. For sticky items, however,
the sides actively stuck to are dependent on the scroll position. So we need
a mechanism to dynamically figure out which sides are stuck, and use those
sides when computing the fixed margins to apply. This patch implements that
by modifying the IsStuckToRootContentAtBottom method into a
SidesStuckToRootContent method.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 21:05:12 +00:00
Kartikaya Gupta
952f78e233 Bug 1627362 - Rewrite IsStuckAtBottom to be simpler and clearer. r=botond
I couldn't understand what it was doing before, but conceptually it should
be pretty simple.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 21:04:56 +00:00