Commit Graph

694064 Commits

Author SHA1 Message Date
Masayuki Nakano
dace885161 Bug 1449831 - part 4: Add automated tests for InputEvent.getTargetRanges() r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D64731

--HG--
extra : moz-landing-system : lando
2020-03-03 03:41:16 +00:00
Masayuki Nakano
f5af8613ec Bug 1449831 - part 3: Make editor set target ranges of beforeinput event if the editor instance is an HTMLEditor r=smaug
In most cases, `InputEvent.getTargetRange()` of `beforeinput` event should
return `Selection` ranges at dispatching the event.

This patch also handles special cases.
* composition change - target range should be the previous composition string
  which will be replaced with new composition string.
* replace text - target range should be the replace range.  This is used by
  spellchecker.
* drop - target range should be the drop point.

However, the other exception is not handled by this patch.  That is, deletions.
The target range(s) should be the range(s) which will be removed.  In most
cases, they also matches selection ranges, but may be extended to:
* surrogate pair boundary
* grapheme cluster boundary like complex emoji
* word/line deletion deletion
* `Backspace` or `Delete` from collapsed selection
* to end of unnecessary whitespaces

For supporting these cases, we need to separate
`HTMLEditor::HandleDeleteSelection()` and its helper methods and helper class
to range computation part and modifying the DOM tree part.  Of course, it
requires big changes and `InputEvent.getTargetRanges()` may be important for
feature detection of `beforeinput` event so that we should put off the big
changes to bug 1618457.

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

--HG--
extra : moz-landing-system : lando
2020-03-03 03:39:26 +00:00
Masayuki Nakano
0af4f88f9d Bug 1449831 - part 2: Make InputEventOptions be able to take target ranges r=smaug
`InputEventOptions` should be able to take target ranges for `beforeinput`
event.  However, it requires to include `StaticRange.h` from `nsContentUtils.h`
even though most `nsContentUtils.h` users don't need it.  Therefore, this patch
moves it from `nsContentUtils.h` to new header file.

And makes `nsContentUtils::DispatchInputEvent()` moves the target ranges
from `InputEventOptions` to `InternalEditorInputEvent`.

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

--HG--
extra : moz-landing-system : lando
2020-03-03 03:38:43 +00:00
Masayuki Nakano
b4cc4486d4 Bug 1449831 - part 1: Add InputEvent.getTargetRanges() r=smaug
`InputEvent.getTargetRanges()` can be used only when event type is
`beforeinput`.  So, it may be used for feature detection of `beforeinput`
event because Chrome does not implement `onbeforeinput` event handler attribute.
Therefore, this patch makes it behind the pref for `beforeinput` event.

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

--HG--
extra : moz-landing-system : lando
2020-03-02 07:39:38 +00:00
Masayuki Nakano
3406e1e208 Bug 1618089 - part 8: Make WSRunObject::PrepareToDeleteRange() take 2 pointers of EditorDOMPoint r=m_kato
Note that the input can be `EditorDOMPointInText`, but modified range may start
and/or end with different container.  Therefore, it needs to take
`EditorDOMPoint` rather than `EditorDOMPointInText`.

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

--HG--
extra : moz-landing-system : lando
2020-03-03 04:35:26 +00:00
Tetsuharu OHZEKI
4aa1d005d7 Bug 1618901 - Add null check for the returend BrowsingContext to follow up bug 1597495. r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D64758

--HG--
extra : moz-landing-system : lando
2020-03-02 20:07:10 +00:00
Dan Glastonbury
5c59d7b978 Bug 1606288: Fall back to using shmem for video. r=jya
Fallback to using shmem to pass video frame if allocating GPU-backed memory fails.

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

--HG--
extra : moz-landing-system : lando
2020-03-03 02:41:19 +00:00
Jan Varga
d5b34cc887 Bug 1542884 - Close message channel on failure to connect to the pipe; r=jld
Differential Revision: https://phabricator.services.mozilla.com/D63874

--HG--
extra : moz-landing-system : lando
2020-03-02 23:14:15 +00:00
Masayuki Nakano
c5eeb32fe1 Bug 1618089 - part 7: Make some related methods use EditorDOMPointInText for arguments or result r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D64338

--HG--
extra : moz-landing-system : lando
2020-03-03 01:15:38 +00:00
Emilio Cobos Álvarez
326534f0c8 Bug 1619245 - Associate image to display item at paint time rather than at construction time. r=tnikkel
On some RDL situations we may create the new item, then destroy the old one
afterwards.

When this is the order of operations, the image would end up unregistered, and
thus not invalidating the canvas frame.

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

--HG--
extra : moz-landing-system : lando
2020-03-03 02:19:59 +00:00
Hiroyuki Ikezoe
f0bdb9d256 Bug 1619040 - Add a new WebRenderData specific for APZ. r=kats
AnimationInfo has a bunch of member variables that are not necessary for APZ.

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

--HG--
extra : moz-landing-system : lando
2020-03-02 16:15:26 +00:00
Hiroyuki Ikezoe
bf1bb4a845 Bug 1618925 - Bail out from AddAnimationsForWebRender if there is no animation on the target frame. r=kats,boris
Calling CreateOrRecyleWebRenderUserData is a bit expensive in the case where
there is no animation. The case is pretty common.

Note that even if there is a WebRenderAnimationData having an AnimationInfo,
on the nsIFrame, it's going to be discarded since the WebRenderAnimationData
is not marked as being used.

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

--HG--
extra : moz-landing-system : lando
2020-03-02 22:42:11 +00:00
Hiroyuki Ikezoe
648749147b Bug 1618925 - Bail out from AddAnimationsForDisplayItem if the corresponding EffectSet is empty. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D64852

--HG--
extra : moz-landing-system : lando
2020-03-02 22:42:05 +00:00
Boris Zbarsky
4a89a400e1 Bug 1600331. When an idle runnable is queued from a background thread, lazily queue it from a non-idle runnable. r=smaug
Idle runnables do weird things involving unlocking the event queue mutex while
looking for runnables, such that queueing one from off the main thread might
cause it to basically never run if it gets queued during one of those
temporary-unlock periods.

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

--HG--
extra : moz-landing-system : lando
2020-03-03 01:47:24 +00:00
Masayuki Nakano
fa274b5db3 Bug 1602610 - Make test_use_split_keypress_event_model_on_old_Office_Online_Servier.html listen to CheckKeyPressEventModel event for avoiding intermittent failure r=smaug
It's a testcase for Office Online Server duplicated from `test_bug1514940.html`.
The original test listens to `CheckKeyPressEventModel` event which is fired
when the `keypress` event model is changed from the default mode.  Therefore,
this test also needs to listen to the event for avoiding intermittent failure
which is caused by running the tests before the mode change.

However, unfortunately, for keeping the performance of web apps which don't
need our mode changes, we can check the event only on debug build.  Therefore,
this patch makes the test run only on debug build.

Finally, this patch renames `test_bug154940.html` too because it tests
special behavior on specific web app and the new test name explains it like
the test for Office Online Server.

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

--HG--
rename : dom/events/test/test_bug1514940.html => dom/events/test/test_use_split_keypress_event_model_on_old_Confluence.html
extra : moz-landing-system : lando
2020-03-02 11:39:00 +00:00
Masayuki Nakano
8ca8aa8311 Bug 1618089 - part 6: Get rid of WSRunScanner::WSPoint r=m_kato
With adding new type, `EditorDOMPointInText` whose container is
`RefPtr<dom::Text>`, we can replace `WSRunScanner::WSPoint` and make
`WSRunScanner` and `WSRunObject` can use its various API.  Then, this
patch adds a lot of `NS_ASSERTION`s which can detect existing bugs.

Note that it may look like redundant that `EditorDOMPointInText::IsChar*()`
requires `EditorDOMPointInText::IsEndOfContainer()` check before that.
However, this makes what the callers check clearer.

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

--HG--
extra : moz-landing-system : lando
2020-03-02 10:08:59 +00:00
Brian Birtles
902d1a2faf Bug 1618773 - Turn on dom.animations-api.implicit-keyframes.enabled and dom.animations-api.autoremove.enabled unconditionally; r=boris
Differential Revision: https://phabricator.services.mozilla.com/D64913

--HG--
extra : moz-landing-system : lando
2020-03-02 19:02:51 +00:00
Andreea Pavel
a2f044d3ea Bug 1484451 - disable test_playback.html on mac debug r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D64895

--HG--
extra : moz-landing-system : lando
2020-03-02 11:17:19 +00:00
Nick Thomas
ddc352a68a Bug 1619469 - Update release watershed to 72.0.2, r=tomprince
Differential Revision: https://phabricator.services.mozilla.com/D65046

--HG--
extra : moz-landing-system : lando
2020-03-03 00:58:32 +00:00
Jeff Walden
6ad06a9362 Bug 1618038 - Add some |if constexpr| to eliminate |to{,Mutable}Handle| functions on |FakeRooted|. r=sfink
Depends on D64236

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

--HG--
extra : moz-landing-system : lando
2020-03-02 12:24:35 +00:00
Jeff Walden
b8b7080914 Bug 1618038 - Move |MaybeRooted|, |FakeRooted|, and |FakeMutableHandle| to a fresh header. r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D64236

--HG--
rename : js/src/gc/Rooting.h => js/src/gc/MaybeRooted.h
extra : moz-landing-system : lando
2020-03-02 12:24:35 +00:00
Toshihito Kikuchi
cc5d112b9f Bug 1615308 - Validate each entry of IAT for ntdll.dll before copying it into a new process. r=aklotz
We copy IAT for ntdll.dll into a new process so that our hook code can use
ntdll's functions even in the early stage.  However, IAT can be modified and
some entries may point to an address which is not valid in the child process.
In such a case, we should not copy IAT.  One example is Windows compat mode
which redirects some ntdll functions into AcLayers.dll via IAT.

With this patch, we verify each IAT entry and if any of them is outside ntdll,
we give up using the launcher process and start the browser process.

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

--HG--
extra : moz-landing-system : lando
2020-03-03 00:19:41 +00:00
Bert Peers
447713c3c6 Bug 1613260 - Support per-task scale for local space rasterization r=gw,aosmond
Differential Revision: https://phabricator.services.mozilla.com/D63434

--HG--
extra : moz-landing-system : lando
2020-03-03 00:31:09 +00:00
Andrew Osmond
127fcd7b52 Bug 1255105 - Use SurfacePipe in the BMP decoder. r=tnikkel
This patch converts the BMP decoder to use SurfacePipe instead of using
AllocateFrame and Downscaler directly. As a result, it now uses the
accelerated premultiplication path, honours the
SurfaceFlags::NO_PREMULTIPLY_ALPHA flag, and allows for a path forward
to support color management and clipboard better.

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

--HG--
extra : moz-landing-system : lando
2020-03-02 23:24:12 +00:00
Gavin Lazar Suntop
db3b2dee85 Bug 1618466 - fixing collection title color for dark mode r=thecount
Differential Revision: https://phabricator.services.mozilla.com/D65018

--HG--
extra : moz-landing-system : lando
2020-03-02 21:54:18 +00:00
Gavin Lazar Suntop
dd6c2ba3f7 Bug 1618229 - fixing dismiss icon color on hover for dark mode r=thecount
Differential Revision: https://phabricator.services.mozilla.com/D65025

--HG--
extra : moz-landing-system : lando
2020-03-02 21:54:26 +00:00
Ricky Stewart
f99df6b4fe Bug 1619408 - Make remaining tweaks to build system code to allow running ./mach build with Python 3 r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D65017

--HG--
extra : moz-landing-system : lando
2020-03-02 21:33:48 +00:00
Emilio Cobos Álvarez
c5a5fa9bb9 Bug 1618988 - Move GeckoView accessiblecaret overrides closer to the rules they override. r=TYLin
This way they apply even when the rest of geckoview.css doesn't.

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

--HG--
extra : moz-landing-system : lando
2020-03-02 23:04:07 +00:00
Emilio Cobos Álvarez
2b1bbce9a6 Bug 1618988 - Move text selection colors outside of geckoview.css. r=m_kato
Maybe we should be using some native color, but the background for that is white
in my testing, so probably not, or at least probably it can be a follow-up.

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

--HG--
extra : moz-landing-system : lando
2020-03-02 04:28:14 +00:00
Emilio Cobos Álvarez
ec93e86c29 Bug 1618988 - Move GeckoView scrollbar styles to their own CSS file. r=snorp
Just like we do in every other platform.

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

--HG--
extra : moz-landing-system : lando
2020-03-02 21:05:49 +00:00
Mark Striemer
14c57ae97a Bug 1603352 - Open about:addons gear menu on mousedown r=rpl
Differential Revision: https://phabricator.services.mozilla.com/D62663

--HG--
extra : moz-landing-system : lando
2020-03-02 23:01:04 +00:00
Logan Smyth
cde4370d90 Bug 1617666 - Use a separate Debugger to improve performance of eval. r=jlast
The SpiderMonkey Debugger API maintains a flag per-debuggee that tracks whether
the SpiderMonkey should notify the debugger when new frames are entered, and
whether the JIT scripts associated with the debuggee realm have been compiled
with debug instrumentation. To avoid constantly needing to clear and regenerate
JIT scripts, the flag is permanently enabled once "onEnterFrame" has been used
with a given Debugger instance, and when the flag is enabled, there is a
runtime performance cost.

This runtime cost is what is causing the performance regression here, so to
ensure that the flag is cleared at the end of a given instant-eval, we only
set "onEnterFrame" on a new temporary Debugger instance, instead of setting
it on th existing persistent Debugger instance.

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

--HG--
extra : moz-landing-system : lando
2020-03-02 22:55:28 +00:00
Punam Dahiya
411af42272 Bug 1618344 - Simplified welcome UI browser tests r=k88hudson
Differential Revision: https://phabricator.services.mozilla.com/D64610

--HG--
extra : moz-landing-system : lando
2020-03-02 22:28:52 +00:00
Marco Bonardo
c98c6da8a3 Bug 1619360 - Remove UrlbarTestUtils wrappers. r=harry
Differential Revision: https://phabricator.services.mozilla.com/D64985

--HG--
extra : moz-landing-system : lando
2020-03-02 20:59:02 +00:00
Eitan Isaacson
f270ef49e9 Bug 1617301 - Fix accessibilityFocusedUIElement to work across processes. r=morgan
This is similar to the fix in bug 1614079 where we need to account
for a descendant that might match past a process boundary.

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

--HG--
extra : moz-landing-system : lando
2020-03-02 22:10:37 +00:00
Eitan Isaacson
ee44ad7d4c Bug 1618040 - Advertise AXScrollToVisible on link. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D64246

--HG--
extra : moz-landing-system : lando
2020-03-02 22:18:11 +00:00
Eitan Isaacson
8ec8f6b45c Bug 1618364 - Add OSX accessible lifecycle notifications. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D64481

--HG--
extra : moz-landing-system : lando
2020-02-27 16:54:59 +00:00
Mark Banner
58ef4b8178 Bug 1612077 - Use parallel directory processing for Lint when no path is specified or a support file is touched. r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D61219

--HG--
extra : moz-landing-system : lando
2020-03-02 21:51:58 +00:00
Glenn Watson
a81677d49e Bug 1579235 - Part 9 - Optimize compositor surface overlays. r=Bert
This patch improves the performance of compositor surfaces in
two ways:

(1) Ignore primitives behind the first compositor surface when
    determining whether a tile needs to be moved to the overlay
    (alpha) pass. This means WR only moves a tile to the alpha
    pass when it has primitives that overlap with the compositor
    surface bounding rect, and are ordered after that compositor
    surface. In practice, this means most tiles are able to
    remain in the fast (opaque) path. Typically, a small number
    of tiles that contain overlay video controls are moved to the
    alpha pass.

(2) Register the opaque compositor surfaces as potential occluders.
    This allows tiles that are completely covered by a compositor
    surface to be removed from the compositor visual tree, which
    helps both the simple and native compositor modes.

Between them, these optimizations typically mean that when watching
video in full-screen, nothing is composited except the video surface
itself, and some small region(s) where video overlay controls are
currently active.

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

--HG--
extra : moz-landing-system : lando
2020-03-02 21:50:25 +00:00
Erik Nordin
ae085e705a Bug 1611236 - Optimize adoptedStyleSheets append case r=emilio
- Generalize enumeration over unique sheets to take any array of sheets.
- Add check if the new adoptedStyleSheets only appends sheets.
- Handle append case for new adoptedStyleSheets.
- Add WPT test case for duplicate sheets in the ShadowRoot.
- Add WPT test cases for appending sheets.

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

--HG--
extra : moz-landing-system : lando
2020-03-02 20:38:28 +00:00
Andrea Marchesini
f1666a5ee9 Bug 1618113 - Allow 'secure' cookies when set by localhost, r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D64290

--HG--
extra : moz-landing-system : lando
2020-03-02 17:21:03 +00:00
Mats Palmgren
e41033bc70 Bug 1618312 - [css-grid] Use the outermost frame to check the computed position value since we don't inherit that to anonymous frames. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D64851

--HG--
extra : moz-landing-system : lando
2020-03-02 15:51:24 +00:00
Eric Rahm
90d90833f2 no bug - reviewerdoc - Add the XPCOM group r=sylvestre DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D65021

--HG--
extra : moz-landing-system : lando
2020-03-02 21:10:09 +00:00
Cosmin Sabou
54eb4f2278 Bug 1569106 - Update disable syntax for browser_bug1557041.js. a=test-only
DONTBUILD

--HG--
extra : rebase_source : 65c24cc13a6a8ac3b31bc6aded87b63dcea903b9
2020-03-02 22:57:34 +02:00
Tarek Ziadé
84a3d4813c Bug 1619107 - reduce work on Fennec r=gbrown
This will reduce the work done on Fennec in the full scenario

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

--HG--
extra : moz-landing-system : lando
2020-03-02 21:08:56 +00:00
Mathieu Leplatre
5a2acf4e4f Bug 1617133 - Upgrade kinto-offline-client to v13.0.0 r=glasserc
Differential Revision: https://phabricator.services.mozilla.com/D64561

--HG--
extra : moz-landing-system : lando
2020-03-02 14:13:57 +00:00
Mathieu Leplatre
9448fcafc5 Bug 1617133 - Report error names to Telemetry on Nightly r=glasserc
Differential Revision: https://phabricator.services.mozilla.com/D64560

--HG--
extra : moz-landing-system : lando
2020-03-02 15:04:33 +00:00
Mathieu Leplatre
acd66bc75c Bug 1617133 - Reduce complexity of RemoteSettingsClient.maybeSync() r=glasserc
Differential Revision: https://phabricator.services.mozilla.com/D64559

--HG--
extra : moz-landing-system : lando
2020-02-28 17:06:17 +00:00
Mathieu Leplatre
ec2cc6b37b Bug 1617133 - Improve categorization of Remote Settings errors r=glasserc
Differential Revision: https://phabricator.services.mozilla.com/D64402

--HG--
extra : moz-landing-system : lando
2020-02-28 17:06:17 +00:00
Itiel
1895c798e5 Bug 1618525 - Don't apply the hover effect on the login-sort dropdown button if there are no logins r=MattN
Also cleanup some CSS

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

--HG--
extra : moz-landing-system : lando
2020-03-02 20:56:40 +00:00