Commit Graph

493 Commits

Author SHA1 Message Date
Sylvestre Ledru
cec75ca74a Bug 1498586 - Add clang-format off to avoid the reformatting of the data structures r=Ehsan
Too hard/impossible for the tool to format correctly these structs

Differential Revision: https://phabricator.services.mozilla.com/D8569
2018-10-12 20:48:24 +00:00
Edgar Chen
d47225b800 Bug 1473108 - Part 2: Make PresShell not point to unbound NAC in event content stack; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D8042
2018-10-09 12:16:15 +00:00
Edgar Chen
08afdda697 Bug 1473108 - Part 1: Devirtualize nsIPresShell::GetCurrentEventFrame/GetEventTargetContent; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D8041
2018-10-09 09:47:58 +00:00
Brad Werth
c50fd7151e Bug 1290420 Part 4: Make the PresShell create a MobileViewportManager on demand. r=botond,smaug
Depends on D3376

Differential Revision: https://phabricator.services.mozilla.com/D3377
2018-10-04 03:28:40 +00:00
Botond Ballo
8626ae6069 Bug 1290420 Part 2: Respect the metaViewportOverride flag on the docshell. r=dholbert
Depends on D3373

Differential Revision: https://phabricator.services.mozilla.com/D3375
2018-10-04 00:19:40 +00:00
Andrew McCreight
05b70f0bb6 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
2018-10-01 21:38:01 +00:00
Botond Ballo
fd72d90363 Bug 1484597 - Use the visual viewport offset in ScrollToShowRect(). r=mstange
Depends on D6075

Differential Revision: https://phabricator.services.mozilla.com/D6076
2018-09-21 19:04:49 +00:00
Botond Ballo
a6603302a2 Bug 1484597 - Expose visual viewport information more conveniently in Layout. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D6074
2018-09-21 19:01:13 +00:00
Ting-Yu Lin
1106db953a Bug 1485063 Part 3 - Move preferences which enable AccessibleCaret to StaticPrefList.h r=mats
Differential Revision: https://phabricator.services.mozilla.com/D5472
2018-09-21 22:01:29 +00:00
Nazım Can Altınova
8b992d5065 Bug 1437316 - Move the profiler marker from DoFlushPendingNotifications to inner DoReflow method r=mstange
Depends on D4943

Differential Revision: https://phabricator.services.mozilla.com/D4945
2018-09-13 20:30:21 +00:00
Nazım Can Altınova
3a2d0bba1f Bug 1437316 - Move the "PresShell::DoReflow" label frame to top side of the method r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D4943
2018-09-13 20:25:43 +00:00
Ryan VanderMeulen
7f3703664f Backed out 4 changesets (bug 1485063) for breaking text selection on Android (bug 1490818).
Backed out changeset 8ad3af468d26 (bug 1485063)
Backed out changeset 8f53e771094d (bug 1485063)
Backed out changeset 99456cff7313 (bug 1485063)
Backed out changeset d43869851540 (bug 1485063)
2018-09-13 10:21:46 -04:00
Daniel Holbert
883cc9e93e Bug 1490410: Remove unreachable return statement from DispatchKeyPressEventsEvenForNonPrintableKeys(). r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D5561
2018-09-12 02:00:25 +00:00
Emilio Cobos Álvarez
963d1beb5e Bug 1490012 - FlushPendingMediaFeatureValuesChanged can kill the PresShell. r=xidorn
It can flush the parent document from MediaQueryList::RecomputeMatches, which
can destroy our pres context.

I think that flush is wrong btw, it should probably either flush layout so the
viewport size is correct, or just not flush (we should make MediaList::Matches
take a document now that we don't need a pres context to match media queries,
but that requires a bit more refactoring).

Differential Revision: https://phabricator.services.mozilla.com/D5524
2018-09-12 15:44:37 +02:00
Ting-Yu Lin
7513a6e086 Bug 1485063 Part 3 - Move preferences which enable AccessibleCaret to StaticPrefList.h. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D5472
2018-09-11 14:21:35 -07:00
Edgar Chen
d4177452de Bug 1488728 - Remove PresShell::GetEventTargetFrame; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D5025
2018-09-05 13:36:35 +00:00
Masayuki Nakano
8e0ecc58d3 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
2018-08-31 21:19:44 +00:00
Emilio Cobos Álvarez
49ae1fde16 Bug 1486536 - Explicitly flush the StyleSet from FlushPendingNotifications. r=heycam
When CSS rules change, we usually do this implicitly from FlushUserFontSet & co.

However there's a code path that dirties the stylist but not the CSS rules, and
that's when the compat mode changes and we're an SVG document.

I don't think that can get hit (easily, at least?), but it's pretty easy to do
so and I think this is cleaner too.

This fixes that case so the stylist can't assert in that case either, and so
that we still rebuild the cascade data so that the hash maps use the right keys
for a given quirks-mode.

Differential Revision: https://phabricator.services.mozilla.com/D4361
2018-08-28 16:01:06 +02:00
Ting-Yu Lin
46d6c38f7b 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
Neil Deakin
bb1d678c62 Bug 1473029, convert drag services to internally use CSSIntRegion instead ns nsIScriptableRegion, r=mstange 2018-08-07 09:32:08 -04:00
Emilio Cobos Álvarez
e64be6fabf Bug 1478604 - Fix RepaintSelectionRunner so that it does something for non-presShell impls. r=masayuki
The regressing bug made RepaintSelectionRunner do nothing for any
nsISelectionListener that wasn't a PresShell.

Differential Revision: https://phabricator.services.mozilla.com/D2846
2018-08-07 12:55:21 +00:00
Jeremy Lempereur
7e1ea0d308 Bug 1471708 - Rename the "scroll-position clamping scroll port size" to "visual viewport size". r=botond
MozReview-Commit-ID: IWPzXSF5jfR
2018-07-22 21:49:38 +02:00
Cosmin Sabou
2f0fc22894 Backed out changeset 542243f5f600 (bug 1471708) for failling reftest on gfx/layers/apz/test/reftest/async-scrollbar-1. 2018-08-05 07:57:50 +03:00
Jeremy Lempereur
8324231b2c Bug 1471708 - Rename the "scroll-position clamping scroll port size" to "visual viewport size". r=botond
MozReview-Commit-ID: IWPzXSF5jfR
2018-07-22 21:49:38 +02:00
Xidorn Quan
f21ef958b7 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
2018-08-01 16:14:26 +10:00
Dan Glastonbury
4739fb3043 Bug 1330375 - P1: Helper for checking for ancestor of dirty reflow root. r=emilio,heycam,rwood
Including refactoring mDirtyRoots into nsIPresShell to avoid virtual call.

MozReview-Commit-ID: KxST8FMsZl9
2018-07-19 14:18:53 +10:00
Emilio Cobos Álvarez
c97bcecad8 Bug 1450250: Make svg:use use an actual shadow tree. r=heycam
Summary:
This fixes a couple fuzz bugs and prevents special-casing <svg:use> even more in
bug 1431255.

Unfortunately not as many hacks went away as I'd have hoped, since we still need
to match document rules, see the linked SVGWG issues.

But blocks_ancestor_combinators goes away, which is nice since it's on a very
hot path.

Test Plan: WPT for style invalidation, covered by existing tests otherwise.

Reviewers: heycam

Tags: #secure-revision

Bug #: 1450250

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

MozReview-Commit-ID: C4mthjoSNFh
2018-07-20 14:44:51 +02:00
Mike Conley
a6936dfc6d Bug 1471107 - Get rid of assertion and handle the already-unsuppressed displayport case in PresShell. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D2130
2018-07-13 17:31:00 +00:00
Andi-Bogdan Postelnicu
569bc9b63e Bug 1453795 - Layout - Initialize member fields in classes/ structures. r=dbaron 2018-07-12 09:42:14 +03:00
Olli Pettay
1d194f1aaa Bug 1472430, PresShell::RenderNode should work with elements in Shadow DOM, r=emilio 2018-07-01 22:29:42 +03:00
Masayuki Nakano
a9b70f6638 Bug 1435717 - Make calling WidgetEvent::PreventDefault*() stop cross process forwarding too r=smaug
Currently, if an event is consumed in the main process, EventStateManager
does not send it to remote process.  However, this is unexpected behavior
for some WidgetKeyboardEvent dispatchers.  OS sometimes has consumed native
key events before sending applications.  For example, Alt key on Windows
should activate menu bar of focused window but Alt key may be consumed before
focused window receives the event.  In such case, we mark Alt keyboard event
as "consumed before dispatch", and chrome treat it like as its preventDefault()
is called in web content.  (Note that for compatibility with other browsers,
the consumed state is not exposed to web content.  So, Event.defaultPrevented
returns false in web content.)

Therefore, we need to treat "consumed" state and "cross process forwarding"
state separately.  This patch makes calling WidgetEvent::PreventDefault()
always stops cross process forwarding for backward compatibility.  Additionally,
for the special case mentioned above, this patch makes
WidgetEvent::PreventDefaultBeforeDispatch() take additional argument,
|aIfStopCrossProcessForwarding|.  If this is CrossProcessForwarding::eStop,
the event won't be sent to remote process as same as calling PreventDefault().
Otherwise, CrossProcessForwarding::eHold, PreventDefaultBeforeDispatch() call
does not change "cross process forwarding" state.  I.e., if the event's
StopCrossProcessForwarding() and PreventDefault() are not called until
EventStateManager::PostHandleEvent(), the event will be sent to remote process
as usual.

MozReview-Commit-ID: IQGWJvXetxV
2018-06-25 18:17:18 +09:00
sotaro
408e8e23fd Bug 1405465 - Handle WR paint codepath with no frame r=kats 2018-06-29 08:32:26 +09:00
Margareta Eliza Balazs
e3449ea5a3 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-06-26 12:24:32 +03:00
Chris Peterson
f7ceeaf5cf Bug 1469769 - Part 6: Replace non-failing NS_NOTREACHED with MOZ_ASSERT_UNREACHABLE. r=froydnj
This patch is an automatic replacement of s/NS_NOTREACHED/MOZ_ASSERT_UNREACHABLE/. Reindenting long lines and whitespace fixups follow in patch 6b.

MozReview-Commit-ID: 5UQVHElSpCr
2018-06-17 22:43:11 -07:00
Mike Conley
1a33d3d8d9 Bug 1449756 - Make DisplayPort suppression PresShell specific and not process global. r=kats
Originally, DisplayPort suppression was a process-global static. This change makes it possible
to control DisplayPort suppression on a per-PresShell basis.

Differential Revision: https://phabricator.services.mozilla.com/D1759
2018-06-25 21:42:25 +00:00
Boris Zbarsky
07d0b15cfd Bug 1466727 part 6. Stop using nsITreeColumn in layout. r=mossop 2018-06-05 23:01:37 -04:00
Boris Zbarsky
f1e8da3ab1 Bug 1466673 part 4. Stop using nsITreeColumns in various other C++ code. r=mossop 2018-06-05 13:30:17 -04:00
Boris Zbarsky
18b726376a Bug 1466673 part 2. Remove use of nsITreeColumns in other xpidl interfaces. r=mossop 2018-06-05 13:30:17 -04:00
Miko Mynttinen
3df26bc8a5 Bug 1465060 - Part 1: Fix warnings for std::move() use r=froydnj
MozReview-Commit-ID: HpdFXqQdIOO
2018-06-01 17:59:07 +02:00
arthur.iakab
9588ba6d78 Backed out 2 changesets (bug 1465060) for build bustages on security/sandbox/linux/reporter/SandboxReporter.cpp
Backed out changeset 7c8905b6b226 (bug 1465060)
Backed out changeset 10446073eca8 (bug 1465060)
2018-06-03 19:25:41 +03:00
Miko Mynttinen
5afe37aefc Bug 1465060 - Part 1: Fix warnings for std::move() use r=froydnj
MozReview-Commit-ID: HpdFXqQdIOO
2018-06-01 17:59:07 +02:00
Csoregi Natalia
b816eb7909 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-06-02 01:03:45 +03:00
Emilio Cobos Álvarez
4b8b5e1717 Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
This was done automatically replacing:

  s/mozilla::Move/std::move/
  s/ Move(/ std::move(/
  s/(Move(/(std::move(/

Removing the 'using mozilla::Move;' lines.

And then with a few manual fixups, see the bug for the split series..

MozReview-Commit-ID: Jxze3adipUh
2018-06-01 10:45:27 +02:00
Markus Stange
ac58b4dd28 Bug 1462784 - Annotate layout-related stacks with the LAYOUT category instead of the GRAPHICS category. r=njn
MozReview-Commit-ID: 77lvtLaxgEE
2018-05-18 17:46:59 -04:00
Csoregi Natalia
27ccec9c4c Backed out 18 changesets (bug 1462784) for ESlint failure on FlameGraph.js:1297. CLOSED TREE
Backed out changeset 79556798ff9f (bug 1462784)
Backed out changeset 88321efb673b (bug 1462784)
Backed out changeset 7880f9dc7023 (bug 1462784)
Backed out changeset 71fe35fd1f7e (bug 1462784)
Backed out changeset a543b94b049a (bug 1462784)
Backed out changeset d1ca8b0f2221 (bug 1462784)
Backed out changeset 68eabfbf3c16 (bug 1462784)
Backed out changeset 34e71c789903 (bug 1462784)
Backed out changeset 6fe79d1ca1bd (bug 1462784)
Backed out changeset e5ad2e525ea9 (bug 1462784)
Backed out changeset 329645ff1e23 (bug 1462784)
Backed out changeset e09c38853172 (bug 1462784)
Backed out changeset 0663d1a6d2da (bug 1462784)
Backed out changeset 106967fc29d2 (bug 1462784)
Backed out changeset 99b4a433a8e5 (bug 1462784)
Backed out changeset 1d38a4cf5a4a (bug 1462784)
Backed out changeset 692017229de6 (bug 1462784)
Backed out changeset c2911a626671 (bug 1462784)
2018-06-01 23:42:00 +03:00
Markus Stange
2b8117f4e0 Bug 1462784 - Annotate layout-related stacks with the LAYOUT category instead of the GRAPHICS category. r=njn
MozReview-Commit-ID: 77lvtLaxgEE
2018-05-18 17:46:59 -04:00
Noemi Erli
3946d17555 Backed out 18 changesets (bug 1462784) for failures in devtools/client/performance/test/unit/test_tree-model-08.js on a CLOSED TREE
Backed out changeset a74d36598442 (bug 1462784)
Backed out changeset c8192175f360 (bug 1462784)
Backed out changeset cde492240e99 (bug 1462784)
Backed out changeset 8c8d30fa406c (bug 1462784)
Backed out changeset ad3802ffb780 (bug 1462784)
Backed out changeset 2fe10732076c (bug 1462784)
Backed out changeset 268a72b7c3c4 (bug 1462784)
Backed out changeset 4055eb6c3bc6 (bug 1462784)
Backed out changeset 3901070e2e60 (bug 1462784)
Backed out changeset 2faf787fbbdf (bug 1462784)
Backed out changeset 8f06963c7c6f (bug 1462784)
Backed out changeset 036e6f64e224 (bug 1462784)
Backed out changeset e670f156a603 (bug 1462784)
Backed out changeset cd39588aece4 (bug 1462784)
Backed out changeset 2ac65d100fa2 (bug 1462784)
Backed out changeset ea05ff70a51d (bug 1462784)
Backed out changeset 8a06c0ba42f7 (bug 1462784)
Backed out changeset 52ed9a039ad2 (bug 1462784)
2018-06-01 01:06:29 +03:00
Markus Stange
a7eaa54e15 Bug 1462784 - Annotate layout-related stacks with the LAYOUT category instead of the GRAPHICS category. r=njn
MozReview-Commit-ID: 77lvtLaxgEE
2018-05-18 17:46:59 -04:00
Boris Zbarsky
bd33db531b Bug 1455676 part 8. Remove nsIDOMNode usage from layout/. r=qdot 2018-05-29 22:58:48 -04:00
Boris Zbarsky
5f546dac16 Bug 1455676 part 3. Remove nsIDOMNode usage from widget/. r=qdot 2018-05-29 22:58:48 -04:00