Commit Graph

2833 Commits

Author SHA1 Message Date
Timothy Nikkel
26f992dadf Bug 1284350. Backed out changeset d0aa5cf74699 (Bug 1269937 - Manage updating visible frames and regions using RAII. r=mstange) 2016-09-12 00:19:07 -05:00
Timothy Nikkel
60c7054395 Bug 1284350. Backed out changeset 719d6d5d9d21 (Bug 1259281 - Mark frames NONVISIBLE if their pres shell is inactive or frozen. r=mstange) 2016-07-26 13:48:00 -05:00
Timothy Nikkel
9a53979660 Bug 1298101. Implement telemetry to take event handling time during page load. r=smaug 2016-09-07 23:30:24 -05:00
Michael Layzell
c987b38274 Bug 1018486 - Part 4: Changes in layout/, r=bz
MozReview-Commit-ID: BsaKGHsoqOq
2016-09-07 10:50:40 -04:00
Ho-Pang Hsu
b4a4689f5a Bug 1258808 - Part 1: Passing PointerId (Gecko). r=smaug, f=btseng 2016-09-01 16:12:15 +08:00
Nicholas Nethercote
887efe04d5 Bug 1299727 - Rename NS_WARN_IF_FALSE as NS_WARNING_ASSERTION. r=erahm.
The new name makes the sense of the condition much clearer. E.g. compare:

  NS_WARN_IF_FALSE(!rv.Failed());

with:

  NS_WARNING_ASSERTION(!rv.Failed());

The new name also makes it clearer that it only has effect in debug builds,
because that's standard for assertions.
2016-09-01 15:01:16 +10:00
Nicholas Nethercote
62b6b0fce6 Bug 1297961 (part 1) - Introduce nsURI::GetSpecOrDefault(). r=hurley.
This function is an infallible alternative to nsIURI::GetSpec(). It's useful
when it's appropriate to handle a GetSpec() failure with a failure string, e.g.
for log/warning/error messages. It allows code like this:

  nsAutoCString spec;
  uri->GetSpec(spec);
  printf("uri: %s", spec.get());

to be changed to this:

  printf("uri: %s", uri->GetSpecOrDefault().get());

This introduces a slight behavioural change. Previously, if GetSpec() failed,
an empty string would be used here. Now, "[nsIURI::GetSpec failed]" will be
produced instead. In most cases this failure string will make for a clearer
log/warning/error message than the empty string.
* * *
Bug 1297961 (part 1b) - More GetSpecOrDefault() additions. r=hurley.

I will fold this into part 1 before landing.
2016-08-26 16:02:31 +10:00
Stone Shih
b72647efd6 Bug 1292070 - Part 1: Fire pointermove when no button state changes. f=bevistseng, r=smaug 2016-08-18 13:18:48 +08:00
Stone Shih
3ec58d4748 Bug 1294335 - [Pointer Event] Refine setPointerCapture / releasePointerCapture to follow the algorithm defined in the spec. f=bevistseng, r=smaug 2016-08-12 09:49:31 +08:00
Bobby Holley
8e6b8445cc Bug 1299348 - Remove StylingStarted(). r=emilio
StylingStarted is a kind of nebulous and not-very-useful concept. The concept
that _is_ useful is whether the presshell has been initialized or not, but the
root element may not exist at that point.

So we need to make sure we that we can trigger the initial document style in both
presshell initialized _and_ ContentInserted, which has the nice effect of handling
root element reinsertions.

We also take the opportunity to make StyleDocument assert the existence of a root
element, and align the responsibility for clearing the dirty descendant bits between
document and non-document nodes.
2016-08-31 10:32:42 -07:00
Ryan VanderMeulen
233d252fbf Backed out changeset 254e306bc62c (bug 277178) for likely causing test_sessionhistory.html to permafail.
CLOSED TREE
2016-08-29 17:06:53 -04:00
Takeshi Kurosawa
14c1d2d364 Bug 277178 - Move focus to a fragment identifier (#fragment) if it's focusable. r=smaug
This change improves HTML Standard compliance and browser compatibility.
https://html.spec.whatwg.org/multipage/browsers.html#scroll-to-the-fragment-identifier

MozReview-Commit-ID: BgOq9dPwdGF
2016-08-23 11:06:32 +09:00
Bobby Holley
7cba59f144 Bug 1292279 - Add a helper to get the real container and use it in nsPresShell::Content{Inserted,Removed}. r=heycam
The existing static_cast checks are totally wrong, by the way, since
nsIDocuments are never nsIContent. Looks like they were erroneously
added in bug 862763.
2016-08-25 21:36:41 -07:00
Bobby Holley
d78f7933b3 Bug 1292279 - Explicitly style new children in Content{Appended/Inserted} rather than using restyle hints. r=heycam
This gives us more control over what gets restyled when.
2016-08-25 21:36:32 -07:00
Kan-Ru Chen
a9b19d0584 Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
The patch is generated from following command:

  rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,

MozReview-Commit-ID: AtLcWApZfES
2016-08-24 14:47:04 +08:00
Mats Palmgren
d2455869f1 Bug 1293985 part 1 - Hold a strong ref on aDocument. r=tn 2016-08-19 19:56:20 +02:00
Nicholas Nethercote
8b8bd02a31 Bug 1293596 (part 2) - Rework nsIWidget bounds getters. r=mstange.
This patch makes GetBounds(), GetScreenBounds() and GetClientBounds() more
obviously infallible, like existing functions such as GetNaturalBounds() and
GetClientSize(). This results in clearer behaviour in nsCocoaWindow.mm if
Objective C exceptions occur. Along the way, the patch removes some useless
failure checks for these functions.

The patch also removes the NS_IMETHOD from GetRestoredBounds and makes that
function MOZ_MUST_USE.
2016-08-19 09:03:04 +10:00
Kartikaya Gupta
fd91b77b2a Bug 1162771 - Encapsulate the gCaptureTouchList so that it's not exposed outside of the TouchManager class. r=smaug
MozReview-Commit-ID: FkaJxTvJOzQ
2016-08-18 07:13:28 -04:00
Randall Barker
bac11cde77 Bug 1291373 - [geckoview] part 3, Remove MOZ_ANDROID_APZ r=botond,snorp 2016-08-16 14:33:43 -07:00
Wes Kocher
5b870e1886 Merge m-c to inbound, a=merge 2016-08-15 14:53:49 -07:00
Wes Kocher
924bec4dbe Merge inbound to central, a=merge 2016-08-15 14:20:38 -07:00
Igor
9c81c3c1ee Bug 1293384 - Part 2: Rename Snprintf.h header to Sprintf.h. r=froydnj 2016-08-14 23:43:21 -07:00
Igor
972b8460e2 Bug 1293384 - Part 1: Rename snprintf_literal to SprintfLiteral. r=froydnj 2016-08-14 23:44:00 -07:00
L. David Baron
287271d650 Bug 1294918 - Fix spelling of method name nsIFrame::IsAbsPosContainingBlock. r=dholbert
This misspelling was introduced in bug 1125767, changeset b9951cca6d1f.

MozReview-Commit-ID: KQNlLelY2Kn
2016-08-12 18:39:45 -07:00
Nicholas Nethercote
0550795f93 Bug 1293117 (part 4) - Change many NS_IMETHODIMP occurrences to NS_IMETHOD. r=froydnj.
This patch makes the following changes on many in-class methods.

- NS_IMETHODIMP F() override;      --> NS_IMETHOD F() override;
- NS_IMETHODIMP F() override {...} --> NS_IMETHOD F() override {...}
- NS_IMETHODIMP F() final;         --> NS_IMETHOD F() final;
- NS_IMETHODIMP F() final {...}    --> NS_IMETHOD F() final {...}

Using NS_IMETHOD is the preferred way of marking in-class virtual methods.
Although these transformations add an explicit |virtual|, they are safe --
there's an implicit |virtual| anyway because |override| and |final| only work
with virtual methods.
2016-08-08 10:54:47 +10:00
Stone Shih
a8b11ea6ed Bug 1293175 - [Pointer Event] Add Element.hasPointerCapture API. r=smaug 2016-08-10 15:31:43 +08:00
Stone Shih
a7c91fbb64 Bug 1258804 - Part 2: Attributes of gotpointercapture and lostpointercapture should be the same as the pointer event that causes them. r=smaug 2016-08-01 15:12:11 +08:00
Stone Shih
264c8578e2 Bug 1258804 - Part 1: Process pending pointer capture when firing pointer events. r=smaug 2016-08-01 09:16:27 +08:00
Nicholas Nethercote
1f65390cc9 Bug 1293603 (part 2) - Make Run() declarations consistent. r=erahm.
This patch makes most Run() declarations in subclasses of nsIRunnable have the
same form: |NS_IMETHOD Run() override|.

As a result of these changes, I had to add |override| to a couple of other
functions to satisfy clang's -Winconsistent-missing-override warning.
2016-08-08 12:18:10 +10:00
Bobby Holley
0b579050b9 Bug 1291891 - Switch to NS_WARNING for unimplemented <style scoped>. r=emilio 2016-08-03 18:30:57 -07:00
Wes Kocher
db9a6b0330 Merge m-c to inbound, a=merge 2016-08-03 16:47:07 -07:00
Emilio Cobos Álvarez
7a245cf103 Bug 1290335: Hoist frame-construction logic in RestyleManager to static members in RestyleManagerBase. r=heycam
MozReview-Commit-ID: BqywJXZ0CYU
2016-08-03 15:11:15 -07:00
Masayuki Nakano
40acbab2c1 Bug 1259665 part.3 Rename WidgetPointerEvent::isPrimary to mIsPrimary r=smaug
MozReview-Commit-ID: LfKzpwCjMcz
2016-08-03 17:34:53 +09:00
Masayuki Nakano
c5656a4a70 Bug 1259665 part.2 Rename WidgetPointerEvent::height to mHeight r=smaug
MozReview-Commit-ID: Ji4X53dByiH
2016-08-03 17:23:56 +09:00
Masayuki Nakano
17a5aa85fe Bug 1259665 part.1 Rename WidgetPointerEvent::width to mWidth r=smaug
MozReview-Commit-ID: 3V5gyOvPuQi
2016-08-03 17:18:04 +09:00
Kartikaya Gupta
4dc8291666 Bug 1195722 - Add a new pref to enable the accessible carets if touch events are supported, and enable the pref on nightly. r=tylin
MozReview-Commit-ID: 2eaVJ4fLqjt
2016-08-03 12:00:22 -04:00
Stone Shih
127957f0ee Bug 1285128 - Should not generate pointer events for those synthesized events that are not dispatched to DOM. r=smaug 2016-07-07 15:28:11 +08:00
Bobby Holley
2a53617f38 Bug 1290214 - Remove NS_ERROR for unhandled document state changes. r=emilio 2016-07-28 17:25:51 -07:00
Bobby Holley
e9c11ed873 Bug 1289620 - Initialize the correct restyle manager when we attach the PresShell. r=heycam 2016-07-27 09:44:30 -07:00
Bobby Holley
b3e219a775 Bug 1289620 - Separate presshell attachment and detachment in nsPresContext. r=heycam 2016-07-27 09:44:29 -07:00
Bobby Holley
1c9c1d221f Bug 1289620 - Hook up initial styling. r=heycam
Aside from the parser-side hacks, this should subsume all the current scattered
logic in the stylo tree to handle initial styling.
2016-07-27 09:44:25 -07:00
Jonathan Watt
6067982d49 Bug 1265249 - Fix painting of drag selections that contain multiple ranges. r=Bas 2016-06-26 16:34:48 +01:00
Ting-Yu Lin
d3e8cf1818 Bug 1277129 Part 7b - Rename various ReflowState variables to ReflowInput. r=dbaron
This patch is generated by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -r "s/$1/$2/g" "{}" \;
}

rename "([[:alpha:]]*)([rR])eflowState(s?)" "\1\2eflowInput\3"

MozReview-Commit-ID: ITFO7uMTkSb
2016-07-21 18:36:39 +08:00
Ting-Yu Lin
bb0825b5c7 Bug 1277129 Part 5c - Rename nsHTMLReflowMetrics to ReflowOutput. r=dbaron
This patch is generated by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename "nsHTMLReflowMetrics" "ReflowOutput"

MozReview-Commit-ID: 2HBb7DkooH5
2016-07-21 18:36:38 +08:00
Ting-Yu Lin
10912a51e3 Bug 1277129 Part 1c - Rename nsHTMLReflowState to ReflowInput. r=dbaron
This patch is generated by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename nsHTMLReflowState ReflowInput

MozReview-Commit-ID: 9r9vdVv1pXc
2016-07-21 18:36:35 +08:00
Chris Peterson
6c0f810682 Bug 1277106 - Part 2: Expand MOZ_UTF16() strings to u"" string literals. r=Waldo 2016-07-20 22:03:25 -07:00
Jeremy Chen
a8e6c93d07 Bug 1287308 - part1: replace uses of NS_STYLE_HINT_NONE with nsChangeHint(0). r=dbaron
MozReview-Commit-ID: CN66AimiuEu
2016-07-17 22:20:21 +08:00
Emilio Cobos Álvarez
d3a2ca57e6 Bug 1285474: Add mozilla::RestyleManagerBase to share logic between RestyleManager and ServoRestyleManager. r=bholley
Partially implement some restyling APIs to take rid of some gecko-only code
paths.

MozReview-Commit-ID: L5i6Kr2Qars
2016-07-12 00:33:57 -07:00
Jan Henning
07d07e8d9e Bug 1282902 - Part 3 - Let the MobileViewportManager recalculate the saved resolution if the display width changed before restoring. r=kats
The mobile session store saves the current document resolution in order to restore the previous zoom level when restoring a page. If the display width has changed since the session data was captured (e.g. because the device was rotated), the resolution might have to be scaled appropriately.
Currently, the session store does this scaling by itself by comparing the stored and current window widths, however this implementation is slightly simplified and doesn't cover all use cases, which means some pages can be restored at a wrong zoom level after rotation. To correctly cover all cases, the session store would have to compare viewport widths, too.

Because the MobileViewportManager doesn't wait for the session store to set the restore resolution, the latter has to call setRestoreResolution() as early as possible in order to guarantee that the restore resolution is set before the first paint of the document. Therefore the session store currently calls this after receiving a LocationChange notification. However at that time, the correct viewport for the current document is not yet available, which means the resolution cannot be recalculated by the session store at that point.

Therefore, this patch changes the approach taken and lets the MVM handle all resolution calculations instead. The session store now simply passes the stored previous display dimensions along with the previous document resolution to the MVM, which can then compare them to the current display and viewport widths and scale the resolution appropriately before using it during first paint.


MozReview-Commit-ID: IGxWw87yftK
2016-07-01 21:23:25 +02:00
Jeremy Chen
7f7e952b2b Bug 906116 - part3.3: Replace NS_STYLE_HINT_FRAMECHANGE with nsChangeHint_ReconstructFrame. r=dbaron
Use ReconstructFrame to replace NS_STYLE_HINT_FRAMECHANGE in many places, such
as HTML*Element::GetAttributeChangeHint and HTMLFrameSetElement::SetAttr.

MozReview-Commit-ID: EHbc4RMeuu0
2016-07-06 13:06:14 +08:00