Commit Graph

35 Commits

Author SHA1 Message Date
Ryan Hunt
a588cdca04 Bug 1376538 - Transmit APZ focus target updates on empty transactions. r=kats
This commit also schedules empty transactions on input events that trigger a
focus sequence number update.

MozReview-Commit-ID: 1FWXfStLsGv
2017-06-28 15:11:04 -04:00
Ryan Hunt
b5ae153509 Bug 1351783 part 7 - Create FocusState and FocusTarget types. r=kats,botond
This commit begins the work needed for tracking focus by creating two new classes,
FocusTarget and FocusState. FocusState is created and used by APZCTreeManager to
track the global focus information, while FocusTarget is created per layer tree and
sent to APZ with local focus information. Between the two we are able to figure out
what the correct scrollable layer is to use in response to a keyboard scroll.

See the comment in `FocusState.h` for more details on the architecture and things
needed in future patches to complete this.

MozReview-Commit-ID: F75VZv3i9U2
2017-06-05 19:12:22 -05:00
Alexis Beingessner
3117218f13 Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-13 11:00:10 -04:00
Sebastian Hengst
1b1d14e565 Backed out changeset 3d1ce85e6348 (bug 1088760) for bustage, at least on Android at layout/generic/nsPluginFrame.cpp:1612. r=backout 2017-06-13 00:30:03 +02:00
Alexis Beingessner
c6fbc5e17e Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-12 17:32:48 -04:00
Mats Palmgren
f53a6843c6 bug 1368547 part 2 - Remove nsFrameManager/PresShell methods dealing with placeholders and introduce a nsIFrame::GetPlaceholderFrame() convenience method. r=jfkthame
MozReview-Commit-ID: GBUiUBqJxhQ
2017-05-31 21:29:49 +02:00
Jonathan Kew
116a1e3d84 Bug 1368654 - pt 1 - Implement memory reporter support for FrameProperties. r=mats 2017-05-31 19:52:47 +01:00
Emilio Cobos Álvarez
f8a30f11ac Bug 1367553: Provide the kind of change that the stylesheet suffered to RecordStyleSheetChange. r=heycam
I plan to use it for now to force a full document restyle when a standalone rule
changes or something like that.

In practice, we can do better sometimes, and we may just want to propagate to
the StyleSet all the style change notifications in order to have access to the
rule that changed and all that...

But for now this seemed easier than adding other four or five functions to
StyleSetHandle.

MozReview-Commit-ID: 2BEIliGu4mO
2017-05-24 04:28:58 +02:00
Phil Ringnalda
3864eaed9a Backed out 2 changesets (bug 1367553) for build bustage
CLOSED TREE

Backed out changeset 3e6c9a752596 (bug 1367553)
Backed out changeset 1ee24478fa16 (bug 1367553)

MozReview-Commit-ID: B805jBJYcqL
2017-05-25 06:13:01 -07:00
Emilio Cobos Álvarez
84f97fc8cb Bug 1367553: Provide the kind of change that the stylesheet suffered to RecordStyleSheetChange. r=heycam
I plan to use it for now to force a full document restyle when a standalone rule
changes or something like that.

In practice, we can do better sometimes, and we may just want to propagate to
the StyleSet all the style change notifications in order to have access to the
rule that changed and all that...

But for now this seemed easier than adding other four or five functions to
StyleSetHandle.

MozReview-Commit-ID: 2BEIliGu4mO
2017-05-24 04:28:58 +02:00
Mats Palmgren
f3acd8d86d Bug 1359341 part 1 - Make PresShell::GetPlaceholderFrameFor return a nsPlaceholderFrame. r=jfkthame
MozReview-Commit-ID: AvfQcCtVMta
2017-05-23 19:09:26 +02:00
Chris H-C
28adafda5a bug 1357457 - Report non-overlapping Input Responses to Telemetry. r=bsmedberg,masayuki data-r=bsmedberg
Say there's a single lag event, a GC or a busy loop, during which the user
types several characters.

Is this one (lag) event? Several (input) events?

We have INPUT_EVENT_RESPONSE_MS which will accumulate several lagged events in
this case. However, that is more of an indication of how users use Firefox than
how good we've been at eliminating sources of lag.

INPUT_EVENT_RESPONSE_COALESCED_MS records the coalesced time spend waiting for
responses to input events. So in this case it will record one value for the
entire duration of the lag.

MozReview-Commit-ID: H5rYnhwF0q3
2017-04-19 15:53:30 -04:00
Emilio Cobos Álvarez
6bd910c684 Bug 1357142: Kill PresShell::RecreateFramesFor. r=bz
It's not only inefficient, but also prone to buggyness. Since styles may not be
up-to-date when it happens.

Post a reconstruct instead, which ensures a style flush happens before running
frame construction.

MozReview-Commit-ID: DrakHsJv5fY
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-04-17 18:01:37 +02:00
Chris H-C
39d885c564 bug 1357742 - Drop INPUT_EVENT_RESPONSE_MS measurements across sleep/wake r=smaug
It is possible that events created before the OS goes to sleep will remain
unhandled until after the OS wakes. They will have long response times on
platforms where TimeStamp increments during sleep (like Windows) even though
they really shouldn't. (and the user likely doesn't care if they do).

So don't record those.

MozReview-Commit-ID: 4ybjF8gjkae
2017-04-19 11:17:20 -04:00
Emilio Cobos Álvarez
c4199a94f8 Bug 1296516: Cleanup infallible or unchecked nsCSSFrameConstructor methods. r=heycam
MozReview-Commit-ID: IoMOQyAhadv
2017-03-20 22:28:16 +01:00
Cameron McCormack
b16e5f7bca Bug 1337258 - Support ServoStyleSheets in nsStyleSheetService. r=xidorn
MozReview-Commit-ID: 4vaHzDBZHFg
2017-02-21 10:42:27 +08:00
Wes Kocher
7edbcda21d Merge m-c to inbound, a=merge
MozReview-Commit-ID: 18xg2cleATb
2017-02-17 13:51:01 -08:00
Boris Zbarsky
2be49a7995 Bug 1339891 part 2. Make FlushPendingNotifications on a presshell quickly no-op if there is nothing to flush. r=heycam 2017-02-17 13:38:44 -05:00
Jeff Walden
a6ec779698 Bug 1287006 - Don't pass Maybe (or any class containing a Maybe member) by value, only by reference or pointer, in layout/-related code. r=bz 2017-02-13 09:07:40 -08:00
Cameron McCormack
7daf2c7fe5 Bug 1340090 - Make nsStyleSheetService notify PresShells directly instead of using the observer service. r=bz
MozReview-Commit-ID: 4xz422B6GSv
2017-02-17 15:56:28 +08:00
Matt Woodrow
96389b5cf7 Bug 1302071 - Part 1: Remove AddPresShellToInvalidateIfHidden since it doesn't appear to be necessary. r=tnikkel
We added this so that MozAfterPaint events would be delivered to hidden documents as part of bug 539356, but I don't remember what needed it.
It doesn't appear to be necessary for any tests any more, so let's just get rid of it

MozReview-Commit-ID: HcmIjstZyLQ
2017-02-17 11:49:29 +13:00
Jessica Jong
1653fdc0ea Bug 1316330 - Cancel delayed keypress events if last keydown was canceled. r=smaug 2017-02-03 05:16:00 -05:00
Ehsan Akhgari
0ea96fc715 Bug 1335070 - Switch the PresShell::Paint profiler marker to use GetPrimaryContentDocument to annotate using the content document; r=tn 2017-02-02 18:22:53 -05:00
L. David Baron
03fdb51fe9 Bug 1333951 - Unbreak dumping of style contexts. r=bzbarsky
Prior to this patch, dumping of style contexts in the layout
debugger would only dump the subtree associated with the root
frame, which just covers the viewport, canvas, and associated
scrollbars.

I think this has been broken since bug 236921 (2004) and
bug 378693 (2007) properly disconnected the root element from the
styles for the viewport and canvas.

This patch just manually dumps the root frame and the root
element's frame, since the style set no longer maintains a list
of all of the style context roots.

MozReview-Commit-ID: 5LEnbNtngN2
2017-01-25 22:05:16 -08:00
Julian Seward
ce27f2a170 Bug 1232696 - Remove NS_DECL_AND_IMPL_ZEROING_OPERATOR_NEW as it causes segfaulting for GCC 6 builds (3 of 5, fixes for layout/). r=dholbert. 2017-01-24 17:11:13 +01:00
Carsten "Tomcat" Book
c0e7ed5917 Backout bug 1316330 on developers request 2017-01-20 14:16:13 +01:00
Jessica Jong
16eab3833d Bug 1316330 - Cancel delayed keypress events if last keydown was canceled. r=smaug 2016-12-02 15:35:28 +08:00
Cameron McCormack
5f9911da79 Bug 1328832 - Part 2: Rename mozFlushType to mozilla::FlushType and make it an enum class. r=bzbarsky
MozReview-Commit-ID: D3fIngSHSsl
2017-01-05 15:31:56 +08:00
Michelangelo De Simone
3d60535bc8 Bug 1313169 - Remove dom/inputmethod/ and related code. r=Ehsan
MozReview-Commit-ID: 5jkBVon3ZSz
2016-12-20 16:32:12 -08:00
Masayuki Nakano
f6777acf5e Bug 1322736 part.4 Remove pref to enable BeforeAfterKeyboardEvent and permission to allow to handle the event r=smaug
MozReview-Commit-ID: BcYcN4soTvg
2016-12-16 16:50:17 +09:00
Masayuki Nakano
a45a88118b Bug 1322736 part.3 Remove dom::BeforeAfterKeyboardEvent and InternalBeforeAfterKeyboardEvent r=smaug
MozReview-Commit-ID: Eyz2HjIdQEW
2016-12-16 16:25:22 +09:00
Masayuki Nakano
1f94e2fe88 Bug 1322736 part.2 Remove "after keydown" and "after keyup" events r=smaug
MozReview-Commit-ID: ICFPyDhgfh7
2016-12-16 16:01:51 +09:00
Masayuki Nakano
820c8ef01e Bug 1322736 part.1 Remove "before keydown" and "before keyup" events r=smaug
MozReview-Commit-ID: 3umPBwTowLc
2016-12-16 15:59:25 +09:00
Ting-Yu Lin
a7f086b3a5 Bug 1304598 Part 4 - Sort #include statements in TouchManager.cpp and PresShell.h. r=dholbert
Need to add #includes "nsPresContext.h" and "nsThreadUtils.h" in
PresShell.h, and "nsViewportInfo.h" in MobileViewportManager.h to compile.

MozReview-Commit-ID: F8bmOwllOiH
2016-11-30 11:14:28 +08:00
Ting-Yu Lin
f3ed4deadf Bug 1304598 Part 3 - Rename nsPresShell.h/cpp to PresShell.h/cpp, and move exported header to mozilla/ subdir. r=dholbert
The class PresShell doesn't have ns-prefix, so it's better to drop ns-prefix
in the file names to avoid confusion.

MozReview-Commit-ID: IljxsF5CVjh
2016-11-30 11:14:28 +08:00