Граф коммитов

12859 Коммитов

Автор SHA1 Сообщение Дата
Mats Palmgren ddcd7a20ef Bug 1279182 - [css-grid] Resolve a <percentage> grid-gap of an indefinite CB size to zero. r=dholbert 2016-08-26 15:16:56 +02:00
Sebastian Hengst dd9d82e540 Backed out changeset 932c269da17b (bug 1008019) 2016-08-26 11:30:45 +02:00
tlin@mozilla.com 54d89b5a5c Bug 1295084 Part 3 - Move nsStyleImageLayers::Position to mozilla::Position. r=dholbert
--HG--
extra : rebase_source : 6684d08700f9d7fed9fc1572871a0250d43b74cf
2016-08-25 09:59:51 +00:00
Ryan VanderMeulen bfdd703c49 Merge fx-team to m-c. a=merge 2016-08-25 08:12:26 -04:00
Ryan VanderMeulen 520acfd195 Merge inbound to m-c. a=merge 2016-08-25 08:10:52 -04:00
Ryan VanderMeulen 0027f8ea40 Merge m-c to fx-team. a=merge 2016-08-24 09:11:58 -04:00
Brad Werth 3d92babadf Bug 1289200 - Adds GridAreas to grid css dev tools API. r=bz, mats 2016-08-23 13:34:51 -07:00
Wes Kocher 3de1ea925a Backed out changeset 54933b5b96f1 (bug 1260324) for frequent windows reftest failures a=backout CLOSED TREE 2016-08-23 13:50:14 -07:00
Timothy Nikkel 9e89a17b91 Bug 1260324. Don't draw garbage to the screen if an image doesn't happen to be decoded. r=seth
Layout has been using imgIContainer::IsOpaque to determine if the image will draw opaquely to all pixels it covers, and doing culling based on this.

However imgIContainer::IsOpaque doesn't guarantee anything. It only describes if the image, when in a decoded state, has all opaque pixels. So if the image doesn't have fully decoded frames around (because they got discarded) it may not draw opaquely to all of its pixels.

So we create a new function that first checks if there is a fully decoded frame.
2016-08-22 21:15:38 -05:00
Andi-Bogdan Postelnicu b7451091eb Bug 1297054 - remove null check in CanvasRenderingContext2D::InitializeWithDrawTarget. r=jrmuizel
MozReview-Commit-ID: GA3PntlpxBU

--HG--
extra : rebase_source : ac822ae25b9d861da5a196734d09a8a507a16570
2016-08-23 11:41:21 +03:00
Kartikaya Gupta a94bb8dfec Bug 1286179 - Update an existing test to catch this new instance of the bug. r=tnikkel
MozReview-Commit-ID: 90ian6KN91C

--HG--
extra : rebase_source : 6fa6b361561acc44298440c4fe11922afee64a63
2016-08-18 17:00:38 -04:00
Jinank Jain f2776091ea Bug 712936 - Convert users of PR_STATIC_ASSERT to C++11 static_assert(). r=Ms2ger
--HG--
extra : rebase_source : b3e4c3e7c81799f2b1f3ec62ba3ff3b5d3adba27
2016-08-23 11:24:54 -04:00
Kartikaya Gupta 4600f9a2b5 Bug 1292781 - Send scroll-position-restore updates to APZ, but don't allow them to clobber user scrolls. r=tnikkel
Previously we weren't sending scroll position updates with origin nsGkAtoms::restore
over to the APZ at all, on the assumption that they should never clobber an APZ
scroll offset. However, there are scenarios where that is not true.

In particular, during a frame reconstruction, a layers update may be sent to the
compositor between the time a scrollframe has RestoreState() called on it, and
the time the scrollframe has ScrollToRestoredPosition() called on it. The layers
update that happens during this interval (correctly) sends a scroll position of
(0,0), and forces the APZ to scroll to that position. This is necessary to
prevent APZ from remaining at an invalid scroll offset while the frame is still
being rebuilt.

However, once ScrollToRestoredPosition() is called and the old scroll offset is
restored, that restored scroll position needs to get sent to the APZ in order to
have it properly restore to the original scroll position. In order to do this,
the main thread must flag the metrics with a scroll offset update. Since the user
may have scrolled concurrently in the compositor from the (0,0) position, we also
need to check for that case in the APZ code and avoid restoring the scroll
position. This is equivalent to the corresponding main-thread code in
ScrollToRestoredPosition().

MozReview-Commit-ID: LxRapVSrsJ3
2016-08-24 09:15:29 -04:00
Ryan VanderMeulen 69113163cf Merge m-c to inbound. a=merge 2016-08-24 09:09:05 -04:00
Kan-Ru Chen b6d880aca1 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


--HG--
rename : mfbt/unused.h => mfbt/Unused.h
2016-08-24 14:47:04 +08:00
Timothy Nikkel 05dc5b9ede Bug 1260324. Don't draw garbage to the screen if an image doesn't happen to be decoded. r=seth
Layout has been using imgIContainer::IsOpaque to determine if the image will draw opaquely to all pixels it covers, and doing culling based on this.

However imgIContainer::IsOpaque doesn't guarantee anything. It only describes if the image, when in a decoded state, has all opaque pixels. So if the image doesn't have fully decoded frames around (because they got discarded) it may not draw opaquely to all of its pixels.

So we create a new function that first checks if there is a fully decoded frame.
2016-08-22 21:15:38 -05:00
Phil Ringnalda 62d1bf1089 Merge m-c to a CLOSED TREE m-i 2016-08-23 22:57:10 -07:00
Mats Palmgren fa15154ace Bug 1281102 - Don't create table continuations unless we're paginating, and don't do grid fragmentation with unconstrained available bsize. r=dholbert 2016-08-23 23:34:35 +02:00
Andi-Bogdan Postelnicu 442f49348f Bug 1282408 - add ignore initialization check flag for some variables from ReflowInput. r=dbaron
MozReview-Commit-ID: 22VI0j7QWbL
2016-08-23 15:51:45 +03:00
cku 56e3bcbb89 Bug 1300401 - Part 2. Add more comments and assertions. r=mstange
MozReview-Commit-ID: HywA9IrGhk2

--HG--
extra : rebase_source : 27dce66ccb4b0547b9c6332ebde99ebdc272565a
2016-09-05 12:46:56 +08:00
cku 86c378df38 Bug 1300401 - Part 1. Handle opacity in nsDisplayFilter. r=mstange
MozReview-Commit-ID: D4JXkDm64fN

--HG--
extra : rebase_source : 44ce4f92c2257a2303de2702af2ade3d8173c358
2016-09-05 11:47:18 +08:00
Brad Werth 0c33f1af41 Bug 1297189 - Expose implicit grid areas via dev tools API. r=mats, r=bz 2016-09-02 16:28:27 -07:00
Ravi Shankar b41dc19d66 Bug 1297982 - Replace NS_STYLE_BOX_ORIENT_* with enum class; r=xidorn
MozReview-Commit-ID: GC0VRyHUM4V

--HG--
extra : rebase_source : eb43a793816101798d0d3bb9a56864519eb7a14a
2016-08-26 12:48:41 +05:30
Ravi Shankar 294361b78a Bug 1297982 - Replace NS_STYLE_BOX_DIRECTION_* with enum class; r=xidorn
MozReview-Commit-ID: H6Mr73864O2

--HG--
extra : rebase_source : a13a5d1ec0b0149da82bfdb3ea7ce22cd9ddfcd2
2016-08-26 12:47:09 +05:30
Ravi Shankar 149cb6c819 Bug 1297982 - Replace NS_STYLE_BOX_DECORATION_BREAK_* with enum class; r=xidorn
MozReview-Commit-ID: 9Cli68UpKdz

--HG--
extra : rebase_source : aa43e54c5e5501cbfee29437c5fcfc0216823bd8
2016-08-26 12:44:32 +05:30
Ravi Shankar 0589e4d8e2 Bug 1297982 - Replace NS_STYLE_BOX_PACK_* with enum class; r=xidorn
MozReview-Commit-ID: Cx20hOJbmad

--HG--
extra : rebase_source : 8a537ab49ee23c99ea7e8ba1a58bf3f487c53092
2016-08-26 12:41:54 +05:30
Ravi Shankar ca8ee9dc38 Bug 1297982 - Replace NS_STYLE_BOX_ALIGN_* with enum class; r=xidorn
MozReview-Commit-ID: EO8hXmXooft

--HG--
extra : rebase_source : ef1e01a373964d5cb7207f87e14e85a9a1dab7fd
2016-08-26 12:39:19 +05:30
Xidorn Quan a154442a7e Bug 1200469 part 1 - Avoid using fallback cursor if from the same frame. r=tnikkel,smaug
MozReview-Commit-ID: A2Ku0TND66L

--HG--
extra : amend_source : 186b672b7e55affaf2f30a737346da5fde4aa343
2016-08-19 23:37:14 +10:00
Jonathan Kew 477e0a395a Bug 1288975 - Make innerText use nsCaseTransformTextRunFactory::TransformString to implement text-transform, so that it benefits from language-specific behaviors. r=mats 2016-08-20 00:08:24 +01:00
Bobby Holley 412f98cac5 Bug 1296509 - Optimize GetFlattenedTreeParent. r=smaug
We need to call it on some hot paths in stylo, and this allows us to do
quick inline check before delegating to the slow path.
2016-08-19 14:43:53 -07:00
Ryan VanderMeulen ce55e7b71a Merge m-c to inbound. a=merge 2016-08-19 09:59:49 -04:00
Ryan VanderMeulen 01c4e8cc1b Merge inbound to m-c. a=merge 2016-08-19 09:52:53 -04:00
Jonathan Kew 0cb66c8d3a Bug 1280887 - patch 3 - Get rid of the mTextRunsToDelete array now that the frame's textruns are refcounted and will know when to die by themselves. r=mats 2016-08-19 13:14:37 +01:00
Jonathan Kew 95a82f84cc Bug 1280887 - patch 2 - Make gfxTextRun refcounted, replace usage of UniquePtr<> with RefPtr<> for textruns, and make nsTextFrame hold a strong reference to its run(s). r=mats 2016-08-19 13:14:22 +01:00
Cameron McCormack 792c4f4eb0 Bug 1295852 - Part 4: Check for generated content containers more precisely when reflowing grid containers. r=me
I'm not convinced that we can actually get regular content
<_moz_generated_content_before> elements in here, since it's only if
CompareTreePosition returned 0 that we look at the element name,
but might be best to make this test stronger in any case.

MozReview-Commit-ID: 8CgxcU9AbDA

--HG--
extra : rebase_source : 4a47ed62895d83f720ec7ccfde253e2c1945b34f
2016-08-19 11:46:43 +08:00
Nicholas Nethercote 67af4817e9 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
Phil Ringnalda bf198cf202 Backed out 2 changesets (bug 1198135) for e10s reftest assertion failures
CLOSED TREE

Backed out changeset 05d5dee06384 (bug 1198135)
Backed out changeset 0d6ede0caa26 (bug 1198135)
2016-08-18 19:23:26 -07:00
Matt Woodrow b2a3b682b3 Bug 1198135 - Part 2: Compute the scrolled rect stored by ScrollFrameHelper as what will actually be scrollable. r=dbaron
--HG--
extra : rebase_source : 3b47a778798069531d804393724b14194342866a
2016-08-18 16:09:47 +12:00
Matt Woodrow 06275ce493 Bug 1198135 - Part 1: Recompute all required overflow areas when scrolling. r=dbaron
--HG--
extra : rebase_source : a9e34de77013548aa8a456f171ec77e58930af81
2016-08-18 16:08:17 +12:00
Wes Kocher 66098b3d43 Merge m-c to autoland, a=merge 2016-08-17 17:25:57 -07:00
Nathan Froyd d9759d258f Bug 1295192 - part 1 - remove CPP_THROW_NEW on layout struct operator new overloads that forward to nsPresShell::AllocateByObjectID; r=dholbert
Structs in our style system use an arena-style allocation system,
managed by the presshell to which they belong.  All of the relevant
overloads that forward allocation requests to the presshell declare
themselves as CPP_THROW_NEW, which indicates that they do not throw
exceptions.  The C++ specification states that operator new overloads
that declare themselves to not throw exceptions require a null check on
their return value.  However, the relevant presshell allocation method,
AllocateByObjectID, is infallible and will never return a null pointer.

The callers of all of these methods are therefore doing useless
(compiler-generated) null checks.  Let's get rid of those useless checks
by removing the CPP_THROW_NEW annotations.  This change declares these
methods will return non-null pointers and throw exceptions in case of
errors--but as we don't use exceptions, and AllocateByObjectID will
abort on OOM, everything works out OK.
2016-08-17 15:28:45 -04:00
Wes Kocher c84ec3b3f3 Merge m-c to inbound, a=merge 2016-08-16 22:06:58 -07:00
Jonathan Chan 4b87f11bd9 Bug 1293739 - Part 1: Rename nsCSSProperty to nsCSSPropertyID. r=dholbert
This patch is generated by the following commands (note: if you're running
using OS X's sed, which accepts slightly different flags, you'll have to
specify an actual backup suffix in -i, or use gsed from Homebrew):

  hg stat -c \
  | cut -c 3-  \
  | tr '\n' '\0' \
  | xargs -0 -P 8 gsed --follow-symlinks 's/\bnsCSSProperty\b/nsCSSPropertyID/g' -i''

Then:

  hg mv layout/style/nsCSSProperty.h layout/style/nsCSSPropertyID.h

... and finally, manually renaming nsCSSProperty in the include guard in
nsCSSProperty.h.

MozReview-Commit-ID: ZV6jyvmLfA

--HG--
rename : layout/style/nsCSSProperty.h => layout/style/nsCSSPropertyID.h
2016-08-16 18:37:48 -07:00
Gregory Szorc 1794619188 Backed out changesets dcdb85fc5517, 702bca0deee2, 9cKX8gC1ATA (bug 1293739) for build bustage; a=bustage
The merge from inbound to central conflicted with the merge from
autoland to central, it appears. Per tree rules, the commit from the
autoland repo wins and the inbound commit gets backed out.

CLOSED TREE

--HG--
extra : amend_source : 927e1cdfa8e55ccbd873d404d905caf6871c8c4f
extra : histedit_source : 07095868c3f767258e1d7d2645193bf4811b13bb%2Ca49ae5a28bf6e67298b6208ee9254c25a2539712
2016-08-16 17:50:40 -07:00
Wes Kocher 48b8d407c8 Merge inbound to central, a=merge
a=release to get around the webidl hook for a comment-only change

--HG--
extra : amend_source : f7e57101e1a25d3cf3536a256898ec2a21c54b38
2016-08-16 17:05:30 -07:00
Wes Kocher 57773cd69e Backed out 4 changesets (bug 1295192) for being a possible cause of crashtest assertions CLOSED TREE
Backed out changeset 7f10779fe019 (bug 1295192)
Backed out changeset e683dce4197a (bug 1295192)
Backed out changeset 67d12eaa8074 (bug 1295192)
Backed out changeset 44f143a01f78 (bug 1295192)
2016-08-16 11:22:04 -07:00
Ting-Yu Lin 151d2fc6c8 Bug 1294628 - Replace block reflow input flags with a bit fields struct. r=dholbert
MozReview-Commit-ID: 2ZSm9hTrsuh

--HG--
extra : rebase_source : 2d44e6c8e1856274d466ed1c523ff6cbf793b4e7
2016-08-12 15:28:45 +08:00
Nathan Froyd fa4f709cfd Bug 1295192 - part 1 - remove CPP_THROW_NEW on layout struct operator new overloads that forward to nsPresShell::AllocateByObjectID; r=dholbert
Structs in our style system use an arena-style allocation system,
managed by the presshell to which they belong.  All of the relevant
overloads that forward allocation requests to the presshell declare
themselves as CPP_THROW_NEW, which indicates that they do not throw
exceptions.  The C++ specification states that operator new overloads
that declare themselves to not throw exceptions require a null check on
their return value.  However, the relevant presshell allocation method,
AllocateByObjectID, is infallible and will never return a null pointer.

The callers of all of these methods are therefore doing useless
(compiler-generated) null checks.  Let's get rid of those useless checks
by removing the CPP_THROW_NEW annotations.  This change declares these
methods will return non-null pointers and throw exceptions in case of
errors--but as we don't use exceptions, and AllocateByObjectID will
abort on OOM, everything works out OK.
2016-08-16 17:05:39 -04:00
Jonathan Chan 9c62a2c11c Bug 1293739 - Part 1: Rename nsCSSProperty to nsCSSPropertyID. r=dholbert
This patch is generated by the following commands (note: if you're running
using OS X's sed, which accepts slightly different flags, you'll have to
specify an actual backup suffix in -i, or use gsed from Homebrew):

  hg stat -c \
  | cut -c 3-  \
  | tr '\n' '\0' \
  | xargs -0 -P 8 gsed --follow-symlinks 's/\bnsCSSProperty\b/nsCSSPropertyID/g' -i''

Then:

  hg mv layout/style/nsCSSProperty.h layout/style/nsCSSPropertyID.h

... and finally, manually renaming nsCSSProperty in the include guard in
nsCSSProperty.h.

MozReview-Commit-ID: ZV6jyvmLfA

--HG--
rename : layout/style/nsCSSProperty.h => layout/style/nsCSSPropertyID.h
2016-08-09 16:28:19 -07:00
Wes Kocher 2253eb9510 Merge m-c to inbound, a=merge 2016-08-15 14:53:49 -07:00
Wes Kocher d602abb016 Merge inbound to central, a=merge 2016-08-15 14:20:38 -07:00
Igor 175543fda8 Bug 1293384 - Part 2: Rename Snprintf.h header to Sprintf.h. r=froydnj 2016-08-14 23:43:21 -07:00
Igor a57972337d Bug 1293384 - Part 1: Rename snprintf_literal to SprintfLiteral. r=froydnj 2016-08-14 23:44:00 -07:00
L. David Baron 44704d92a0 Bug 1294918 - Add helper method nsIFrame::IsFixedPosContainingBlock. r=dholbert
MozReview-Commit-ID: 6Bt1y176lAG

--HG--
extra : rebase_source : df5715d87f794b924c41a049437c530743246808
2016-08-12 18:39:45 -07:00
L. David Baron 6660436867 Bug 1294918 - Fix spelling of method name nsIFrame::IsAbsPosContainingBlock. r=dholbert
This misspelling was introduced in bug 1125767, changeset b9951cca6d1f.

MozReview-Commit-ID: KQNlLelY2Kn

--HG--
extra : rebase_source : 7b2b8379da23b06737b462dd4c316b5758d807a9
2016-08-12 18:39:45 -07:00
Wes Kocher 4aec37ca6e Merge m-c to autoland, a=merge 2016-08-12 16:30:03 -07:00
Wes Kocher e9097643d5 Merge inbound to central, a=merge 2016-08-12 13:44:29 -07:00
Michael Layzell aa89e8fd55 Bug 1293001 - Part 1: Change the BinaryName of nsIFrameLoaderOwner::frameLoader (which overloaded another virtual method) to FrameLoaderXPCOM, r=froydnj
MozReview-Commit-ID: Db3z2DP5qba
2016-08-11 15:49:39 -04:00
Jonathan Kew 40d2863267 Bug 1291016 - Track source-string position of possible prefix. r=heycam 2016-08-11 09:08:22 +01:00
Benoit Girard f9f95c59d4 Bug 1264530 - Hold on to Plugin Instance to survive frame poisoning. r=jimm
MozReview-Commit-ID: JHbce46rDBN
2016-08-10 16:21:01 -04:00
Nicholas Nethercote 8f51d02c97 Bug 1293117 (part 5) - Change many NS_METHOD occurrences to NS_IMETHOD. r=froydnj.
This patch makes the following changes on many in-class methods.

- NS_METHOD F() override;      --> NS_IMETHOD F() override;
- NS_METHOD F() override {...} --> NS_IMETHOD F() override {...}
- NS_METHOD F() final;         --> NS_IMETHOD F() final;
- NS_METHOD 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.

--HG--
extra : rebase_source : 3010fade82a170eab7f13d81bf61b02cd693f3cf
2016-08-08 10:54:50 +10:00
Masayuki Nakano 925390facb Bug 1286464 part.11 nsTextFrame::GetCharacterRectsInRange() shouldn't compute character rect at the first character in next nsTextFrame r=jfkthame
nsTextFrame::GetCharacterRectsInRange() handles a character at the end offset of its content as in it. However, it causes odd result when the caller wants first text rect in the next nsTextFrame. E.g., if end of query range is at the next nsTextFrame's first character, currently, it returns the last character as in same line.

So, it should stop handling next frame's first character as in it.

MozReview-Commit-ID: 7WteerisrZp

--HG--
extra : rebase_source : 97653f1ed04a6a03373cd53613d92aba45fbe38b
2016-07-21 16:24:37 +09:00
Masayuki Nakano e2ec5e1e8a Bug 1257446 part.3 nsTextFrame::GetCharacterRectsInRange() shouldn't call gfxSkipCharsIterator::AdvanceOriginal() before checking if the current offset has already been reached to the end for avoiding assertions r=jfkthame
New eQueryTextRectArray causes a lot of assertions in various automated tests. The cause is that nsTextFrame::GetCharacterRectsInRange() calls gfxSkipCharsIterator::AdvanceOriginal(1) at the end of the |for| loop *without* checking if the iterator has already reached to the end.

MozReview-Commit-ID: 3KFxA11uOUc

--HG--
extra : rebase_source : 407c47897cad8c2e4929ed1226073302faaecee2
2016-07-14 22:02:15 +09:00
Randall Barker 9a3fae864f Bug 1291373 - [geckoview] part 3, Remove MOZ_ANDROID_APZ r=botond,snorp 2016-08-16 14:33:43 -07:00
Pranaydeep Singh 650f2fa5b3 Bug 1293738 - Remove unneeded aWM arg from some FlexboxAxisTracker methods. r=dholbert, r=emilio
--HG--
extra : rebase_source : 526edb1d41155c8fd70abe45473d0bacefd80975
2016-08-12 05:43:06 +05:30
Jimmy Wang 6d8584507f Bug 1261299 - Only update nsClipboard::sSelectionCache in nsSelection.cpp when the selection listener is on the same process as the focused window where the selection occured or became active. r=smaug
MozReview-Commit-ID: KARKdc8G0nI

--HG--
extra : rebase_source : 1a5bc0fcb4ea607c46916df04199fda5161d64ab
2016-08-03 19:08:33 -04:00
Jimmy Wang a2bf6b970a Bug 1261299 - Update the selection cache on repaint to handle when a pre-existing selection becomes active aka the current selection. r=smaug
MozReview-Commit-ID: HrTQnHd12rg

--HG--
extra : rebase_source : bd727de70576a39da3cd3fab1754330c41add768
2016-07-27 16:05:37 -04:00
Jonathan Kew 76f40e7bdc Bug 1280887 - patch 1 - Declare a bunch of gfxTextRun* variables as const pointers, for clarity. r=mats 2016-07-07 13:51:24 +01:00
Emilio Cobos Álvarez ddbd14670c Bug 1000957: For single-line flex containers, clamp the flex line to container's min/max cross size. r=dholbert
MozReview-Commit-ID: 9Kqg0lPnkv0
2016-08-10 15:46:35 -07:00
Emilio Cobos Álvarez 15e65891fc Bug 1000957: Whitespace cleanup in nsFlexContainerFrame::Reflow. r=dholbert
MozReview-Commit-ID: 1kGrL6Ji0Rp
2016-08-10 15:46:30 -07:00
Emilio Cobos Álvarez e456bd1f3c Bug 1000957: Uncomment some flexbox warnings referencing fixed bugs. r=dholbert
MozReview-Commit-ID: COy0I1nm3DU
2016-08-10 15:46:21 -07:00
Carsten "Tomcat" Book 553a2da922 merge mozilla-inbound to mozilla-central a=merge 2016-08-10 15:54:26 +02:00
Sebastian Hengst 6ed5110691 Backed out changeset ff84b85aa1cb (bug 1291667) for asserting at nsRuleNode.cpp:1322 and failing mochitests and reftests. r=backout 2016-08-10 12:59:15 +02:00
Ravi Shankar 049a72eb4c Bug 1291667 - Change NS_STYLE_USER_SELECT_* constants to enum classes; r=Manishearth,heycam
MozReview-Commit-ID: 2qBMmQrtuR9
2016-08-10 13:57:32 +08:00
Nicholas Nethercote e7f10a07fd 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.

--HG--
extra : rebase_source : 815d0018b0b13329bb5698c410f500dddcc3ee12
2016-08-08 12:18:10 +10:00
Matt Woodrow 193414f9a8 Bug 1237102 - Make sure we don't generate invalidations for children of opacity:0 frames, even when plugins are present. r=tnikkel 2016-08-10 15:15:28 +12:00
Ting-Yu Lin b8899e7e16 Bug 1293604 - Replace NS_STYLE_FLOAT_* with StyleFloat enum class. r=dbaron
MozReview-Commit-ID: 4K6TyIm6cs3

--HG--
extra : rebase_source : b6210815b7c03d5634fdddf8080a3da4e090d194
2016-08-09 17:32:54 +08:00
Jimmy Wang 271a7cfaa2 Bug 1261299 - Add method nsCopySupport::ClearSelectionTransferable() to clear the nsClipboard::sSelectionTransferable when you have no content selection. r=mstange
MozReview-Commit-ID: AjUe94N0Iiw

--HG--
extra : rebase_source : bf1bf642212add9227c185a6cfa3f8f94a7f0248
2016-06-08 14:11:39 -04:00
Jimmy Wang 6c6d5a3ec1 Bug 1261299 - Add new clipboard kSelectionCache to cache the current selection for OSX service menu. Add a constructor to nsAutoCopyListener which sets the clipboard to copy to. Pass in kSelectionCache for OSX or kSelectionClipboard for linux. r=mstange
MozReview-Commit-ID: B9mzVnJxUjl

--HG--
extra : rebase_source : 5329f87a958dcb372d552b6aa17442ea7f9b9762
2016-06-03 12:04:22 -04:00
Phil Ringnalda cd4986a6d0 Bug 1207914 - Skip test_bug632379.xul on Linux for constant timeouts 2016-08-07 15:26:35 -07:00
Markus Stange ebb461c874 Bug 1012752 - Snap scrolled area to layer pixels. r=tnikkel
We want the maximum scroll position to be aligned with layer pixels. That way
we don't have to re-rasterize the scrolled contents once scrolling hits the
edge of the scrollable area.

Here's how we determine the maximum scroll position: We get the scroll port
rect, snapped to layer pixels. Then we get the scrolled rect and also snap
that to layer pixels. The maximum scroll position is set to the difference
between right/bottom edges of these rectangles.
Now the scrollable area is computed by adding this maximum scroll position
to the unsnapped scroll port size.
The underlying idea here is: Pretend we have overflow:visible so that the
scrolled contents start at (0, 0) relative to the scroll port and spill over
the scroll port edges. When these contents are rendered, their rendering is
snapped to layer pixels. We want those exact pixels to be accessible by
scrolling.

This way of computing the snapped scrollable area ensures that, if you scroll
to the maximum scroll position, the right/bottom edges of the rendered
scrolled contents line up exactly with the right/bottom edges of the scroll
port. The scrolled contents are neither cut off nor are they moved too far.
(This is something that no other browser engine gets completely right, see the
testcase in bug 1012752.)

There are also a few disadvantages to this solution. We snap to layer pixels,
and the size of a layer pixel can depend on the zoom level, the document
resolution, the current screen's scale factor, and CSS transforms. The snap
origin is the position of the reference frame. So a change to any of these
things can influence the scrollable area and the maximum scroll position.
This patch does not make us adjust the current scroll position in the event
that the maximum scroll position changes such that the current scroll position
would be out of range, unless there's a reflow of the scrolled contents. This
means that we can sometimes render a slightly inconsistent state where the
current scroll position exceeds the maximum scroll position. We can fix this
once it turns out to be a problem; I doubt that it will be a problem because
none of the other browsers seems to prevent this problem either.

The size of the scrollable area is exposed through the DOM properties
scrollWidth and scrollHeight. At the moment, these are integer properties, so
their value is rounded to the nearest CSS pixel. Before this patch, the
returned value would always be within 0.5 CSS pixels of the value that layout
computed for the content's scrollable overflow based on the CSS styles of the
contents.
Now that scrollWidth and scrollHeight also depend on pixel snapping, their
values can deviate by up to one layer pixel from what the page might expect
based on the styles of the contents. This change requires a few changes to
existing tests.
The fact that scrollWidth and scrollHeight can change based on the position of
the scrollable element and the zoom level / resolution may surprise some web
pages. However, this also seems to happen in Edge. Edge seems to always round
scrollWidth and scrollHeight upwards, possibly to their equivalent of layout
device pixels.

MozReview-Commit-ID: 3LFV7Lio4tG

--HG--
extra : rebase_source : 3e4e0b60493397e61283aa1d7fd93d7c197dec29
extra : source : d43c2d5e87f31ff47d7f3ada66c3f5f27cef84a9
2016-08-04 23:51:58 -04:00
Matt Woodrow bf8a0ba830 Bug 1287122 - Make sure we build nsDisplayOpacity if we need it, since useOpacity already takes svg effects into account. r=dbaron
--HG--
extra : rebase_source : 7a9952fe0ed3a579083bd324002d44ab735d0735
2016-08-05 10:37:46 +12:00
Jason Woofenden 9a198c4a58 Bug 1008019 - Allow whitespace to "hang" at soft-wrap boundaries when white-space:pre-wrap is in effect. r=jfkthame 2016-03-20 17:54:00 -04:00
Jonathan Kew 8998b2ba96 Backed out changesets 4a7bb508cadf, e8917efd53e3, 2d87636d76b0 (bug 1008019) due to Android reftest orange. 2016-08-26 00:56:10 +01:00
Jason Woofenden 77865e4a08 Bug 1008019 - Allow whitespace to "hang" at soft-wrap boundaries when white-space:pre-wrap is in effect. r=jfkthame 2016-03-20 17:54:00 -04:00
Jason Woofenden 7dddb003fd Bug 1008019 - Allow whitespace to "hang" at soft-wrap boundaries when white-space:pre-wrap is in effect. r=jfkthame 2016-03-20 17:54:00 -04:00
Wes Kocher b1e2d2ad52 Merge m-c to inbound, a=merge 2016-08-12 16:29:24 -07:00
Kearwood (Kip) Gilbert 2c3a6a5f88 Bug 1250244 - Part 2: Remove old VR rendering paths,r=gw280
MozReview-Commit-ID: 8H7spQggI2w
2016-05-27 13:49:04 -07:00
Ravi Shankar 61b118d165 Bug 1291667 - Change NS_STYLE_USER_SELECT_* constants to enum classes; r=heycam,manishearth
MozReview-Commit-ID: IcDt3XYvdlj

--HG--
extra : rebase_source : ea426ac572b6adfc09fd9440e45a0c26adde4373
2016-08-10 21:42:21 +05:30
Emilio Cobos Álvarez ff065c3a99 Bug 1288938: Allow passing different reasons to dirty a non display SVG text frame. r=heycam
Otherwise, when a glyph changes, we might end up doing too much work, destroying
the text-run and the observer that dirtied the frame, causing an assertion when
trying to delete it from the observer set.

MozReview-Commit-ID: LMQVr6pYFVM
2016-08-03 10:53:37 -07:00
Emilio Cobos Álvarez e1e6b574d9 Bug 1288938: layout: Move the GlyphObserver to the text run instead of the frame. r=jfkthame
MozReview-Commit-ID: KphTCkcZeid
2016-08-03 10:53:37 -07:00
Tom Schuster 473d3dc22d Bug 1197324 - Fix new warnings. r=froydnj 2016-08-03 14:37:31 +02:00
Jonathan Watt db80f397f6 Bug 1058040, part 2 - Rename gfxTextContextPaint to SVGContextPaint and add some code comments. r=dholbert 2016-07-22 14:56:09 +01:00
Kartikaya Gupta ed11c9125a Bug 1241550 - Don't do paint skipping if there are plugin frames anywhere on the page, instead of limiting it to the scrollframe's descendants. r=jimm
MozReview-Commit-ID: 6fzAIrTDgla
2016-08-02 16:43:34 -04:00
David Zbarsky e0691abc04 Bug 824592 part 3. Get rid of nsIDOMElementCSSInlineStyle. r=peterv 2016-08-02 11:05:38 -07:00
Manish Goregaokar b756a203ca Bug 1290813 - Correctly number indirect descendants of <ol reversed>; r=xidorn
MozReview-Commit-ID: 6HYtCrgdK13

--HG--
extra : rebase_source : 461d9143cc0775eec2dc6b39f2d13fc5c2fbdf43
2016-08-01 15:54:25 +05:30
Daosheng Mu 994ee1499f Bug 1281215 - Make the outline of SVG container narrows to its children. r=heycam
MozReview-Commit-ID: Ct1mdwmHMw2

--HG--
extra : transplant_source : %FB%8AxsXw%C6Iy%09%9B%AC9%0Da%24%9A%C9%B7%82
2016-07-29 07:35:58 +08:00
Matt Woodrow e45bc78bff Bug 1282312 - Part 1: Invalidate direct rendering observers for a frame when we schedule a paint due to changes. r=mstange 2016-07-29 17:58:21 +12:00
Wes Kocher 0291de30b7 Backed out changeset 7d6baa38a04c (bug 1288938) for reftest crashes 2016-07-28 22:43:49 -07:00
Emilio Cobos Álvarez 4e30f13399 Bug 1288938: layout: Move the GlyphObserver to the text run instead of the frame. r=jfkthame
MozReview-Commit-ID: KphTCkcZeid
2016-07-28 15:19:14 -07:00
Andi-Bogdan Postelnicu cb60cc4703 Bug 1282408 - add ignore initialization check flag for bool variables from ScrollReflowInput. r=dbaron
MozReview-Commit-ID: 6IDxHLbSkoJ
2016-07-28 13:57:19 +03:00
Carsten "Tomcat" Book 7293066753 merge mozilla-inbound to mozilla-central a=merge 2016-07-27 16:35:44 +02:00
Ting-Yu Lin 4f426feb17 Bug 1288992 Part 3 - Rename local variables named metrics to reflowOutput. r=dholbert
This patch is edited manually.

MozReview-Commit-ID: 1IsLGrgmDIY

--HG--
extra : rebase_source : 52ad416a2ae56f312976cef6f30a45f03d77c4d1
2016-07-26 17:10:52 +08:00
Ting-Yu Lin 73c4dfa06c Bug 1288992 Part 2 - Rename ReflowMetrics variables to ReflowOutput. r=dholbert
This patch is generated by the following scripts:

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

rename "([[:alpha:]]*)([rR])eflowMetrics" "\1\2eflowOutput"
rename "gLameReflowOutput" "gLameReflowMetrics"

MozReview-Commit-ID: CBDAau50Ail

--HG--
extra : rebase_source : f6c2358e898e66d8ce2557dea6d7b31d32e3929f
2016-07-26 16:33:52 +08:00
Nicolas Silva 48805c9b3e Bug 1284837 - Disallow implicit conversions from float to integer when creating IntPoint and IntSize objects. r=botond 2016-07-26 16:48:30 +02:00
Manish Goregaokar 52b9ca33f3 Bug 1288383 - Replace NS_STYLE_USER_FOCUS_* with an enum class; r=heycam
MozReview-Commit-ID: A7BYcfsn1tI

--HG--
extra : rebase_source : b893331b173a306143e546f0d403ae25f827fae2
2016-07-25 11:56:40 +05:30
Manish Goregaokar d78a51cbcc Bug 1288383 - Replace NS_STYLE_FLOAT_EDGE_* with an enum class; r=heycam
MozReview-Commit-ID: FrH5kGWeXkL

--HG--
extra : rebase_source : 73c3446ba07f31f3fbfb6eca304ebe88cccf359a
2016-07-25 11:56:05 +05:30
Tom Tromey 5538d692d3 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx

--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
2016-07-14 10:16:42 -06:00
Ting-Yu Lin d77152fcd0 Bug 1277129 Part 7c - Rename various RS variables to RI. r=dbaron
This patch is generated by the following script:

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

rename aChildRS aChildRI
rename aContainingBlockRS aContainingBlockRI
rename aFrameRS aFrameRI
rename aLastRS aLastRI
rename aOuterRS aOuterRI
rename aRS aRI
rename blockHtmlRS blockHtmlRI
rename captionRS captionRI
rename cellRS cellRI
rename childRS childRI
rename firstAncestorRS firstAncestorRI
rename flexContainerRS flexContainerRI
rename gridRS gridRI
rename innerRS innerRI
rename lastButOneRS lastButOneRI
rename LineContainerRS LineContainerRI
rename mBlockRS mBlockRI
rename parentRS parentRI
rename secondAncestorRS secondAncestorRI
rename lastRSSize lastRISize
rename lastRSPadding lastRIPadding

MozReview-Commit-ID: YEgZs3WMow

--HG--
extra : rebase_source : c26050c71a3a5b13ef46e6d3582e581702d49ee8
2016-07-21 18:36:39 +08:00
Ting-Yu Lin 40fcd21b9a 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

--HG--
extra : rebase_source : c91a2e174a0baec60c1b0111ac7636295004ab35
2016-07-21 18:36:39 +08:00
Ting-Yu Lin 7a5825e82f Bug 1277129 Part 7a - Rename ReflowState to RubyReflowInput in nsRubyBaseContainerFrame. r=dbaron
This is a prerequisite for the mass rename variables whose name
containing ReflowState in the next patch. Otherwise
nsRubyBaseContainerFrame::ReflowInput will conflict with
mozilla::ReflowInput.

MozReview-Commit-ID: KUU51Rjn6z

--HG--
extra : rebase_source : fcb3aefaea40f57e59cc81349b9fcc0f3a88394a
2016-07-21 18:36:38 +08:00
Ting-Yu Lin 55cde36029 Bug 1277129 Part 6b - Rename rendContext to mRenderingContext in SizeComputationInput. r=dbaron
MozReview-Commit-ID: LczLJDtDncy

--HG--
extra : rebase_source : c32e928ae25f94305fb907db89278dce7304a903
2016-07-21 18:36:38 +08:00
Ting-Yu Lin cd13f0ea71 Bug 1277129 Part 6a - Rename frame to mFrame in SizeComputationInput. r=dbaron
MozReview-Commit-ID: 3SXZ4qEZJc

--HG--
extra : rebase_source : 577d48f047af163585acea95dda311358f5e8c25
2016-07-21 18:36:38 +08:00
Ting-Yu Lin 4053c4c028 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

--HG--
extra : rebase_source : acfa442a6483772fcb5748dc6f5e7072e599032a
2016-07-21 18:36:38 +08:00
Ting-Yu Lin d432242ffc Bug 1277129 Part 5b - Rename nsHTMLReflowMetrics.h/cpp to ReflowOutput.h/cpp and fix #includes. r=dbaron
The modification to nsAbsoluteContainingBlock.h and nsBlockFrame.cpp are
needed to fix the build error due to the file order changed in the unified
build.

The #includes are fixed 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\.h" "mozilla\/ReflowOutput\.h"

MozReview-Commit-ID: KWvcG3UtKNn

--HG--
rename : layout/generic/nsHTMLReflowMetrics.cpp => layout/generic/ReflowOutput.cpp
rename : layout/generic/nsHTMLReflowMetrics.h => layout/generic/ReflowOutput.h
extra : rebase_source : dc62fb3ad4d95e732e5985c7ab9f757a0e23abcb
2016-07-21 18:36:37 +08:00
Ting-Yu Lin 6f2f38fcd7 Bug 1277129 Part 5a - Move nsHTMLReflowMetrics into mozilla namespace. r=dbaron
MozReview-Commit-ID: 7xrd1AMd0bz

--HG--
extra : rebase_source : 4faa0b6adc233bb853a8646856dd3dc3e8422566
2016-07-21 18:36:37 +08:00
Ting-Yu Lin ecfae6abac Bug 1277129 Part 4b - Rename ScrollReflowState to ScrollReflowInput. r=dbaron
MozReview-Commit-ID: ILLqDYR0vkZ

--HG--
extra : rebase_source : d6167b5673e854f1a6e6b00fa942cd81e534ce49
2016-07-21 18:36:37 +08:00
Ting-Yu Lin 9c26b29bf4 Bug 1277129 Part 4a - Move ScrollReflowState into mozilla namespace. r=dbaron
MozReview-Commit-ID: C8drnMacxO

--HG--
extra : rebase_source : b0a492d44785c6f2f6afc8aedb8b9cd2dece86b3
2016-07-21 18:36:36 +08:00
Ting-Yu Lin 6111a2de40 Bug 1277129 Part 2c - Rename nsBlockReflowState to BlockReflowInput. 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 "nsBlockReflowState" "BlockReflowInput"

MozReview-Commit-ID: FtjqkQpGfcI

--HG--
extra : rebase_source : c8f678bc47217b778df7f91f0f6cce6c44b04d90
2016-07-21 18:36:36 +08:00
Ting-Yu Lin 371989a096 Bug 1277129 Part 2b - Rename nsBlockReflowState.h/cpp to BlockReflowInput.h/cpp and fix #includes. r=dbaron
The #includes are fixed 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 "nsBlockReflowState\.h" "BlockReflowInput\.h"

MozReview-Commit-ID: 6QMqko1XOsT

--HG--
rename : layout/generic/nsBlockReflowState.cpp => layout/generic/BlockReflowInput.cpp
rename : layout/generic/nsBlockReflowState.h => layout/generic/BlockReflowInput.h
extra : rebase_source : 8911b9bbe68ceca82c77b7e120d87bfa71b7211c
2016-07-21 18:36:36 +08:00
Ting-Yu Lin 4b0284cd0f Bug 1277129 Part 2a - Move nsBlockReflowState into mozilla namespace. r=dbaron
MozReview-Commit-ID: GNEgxqqBDAH

--HG--
extra : rebase_source : d70f52229215111e6d393103c71fb79475353ac0
2016-07-21 18:36:36 +08:00
Ting-Yu Lin 154af05659 Bug 1277129 Part 1d - Rename nsCSSOffsetState to SizeComputationInput. 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 nsCSSOffsetState SizeComputationInput

MozReview-Commit-ID: GUJ99qNiSwD

--HG--
extra : rebase_source : cf4e6c35338e1e9d4ee106305548075b2c1bdcb1
2016-07-21 18:36:35 +08:00
Ting-Yu Lin 820f88de49 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

--HG--
extra : rebase_source : 623ec822996ba0ea0058dd137acf5a658cdea04a
2016-07-21 18:36:35 +08:00
Ting-Yu Lin d444310eb1 Bug 1277129 Part 1b - Rename nsHTMLReflowState.h/cpp to ReflowInput.h/cpp and fix #includes. r=dbaron
The #includes are fixed 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\.h" "mozilla\/ReflowInput\.h"

MozReview-Commit-ID: FjwHA4YRHNv

--HG--
rename : layout/generic/nsHTMLReflowState.cpp => layout/generic/ReflowInput.cpp
rename : layout/generic/nsHTMLReflowState.h => layout/generic/ReflowInput.h
extra : rebase_source : e4215620717df436a51243cee689286cfabc7c71
2016-07-21 18:36:34 +08:00
Ting-Yu Lin 39dffbe21b Bug 1277129 Part 1a - Move nsHTMLReflowState and nsCSSOffsetState into mozilla namespace. r=dbaron
MozReview-Commit-ID: DJfEQRCgNo3

--HG--
extra : rebase_source : add4c7a843f956114b2b9dfe20fba1048139ca5f
2016-07-21 18:36:34 +08:00
Chris Peterson b175c9fdd5 Bug 1277106 - Part 2: Expand MOZ_UTF16() strings to u"" string literals. r=Waldo 2016-07-20 22:03:25 -07:00
Kartikaya Gupta 0b6ad3948e Bug 1287142 - Ensure that the touch-action property on the scrollable element is applied to both the inner and outer scrollframe. r=tnikkel
MozReview-Commit-ID: JafhGnhpApE
2016-07-20 23:29:17 -04:00
Markus Stange 6bb3620330 Back out bug 1012752 for causing bug 1285532 and bug 1286674.
MozReview-Commit-ID: DYZ3D4yL1eZ

--HG--
extra : source : b98df554a6f0aa154275d363163ec618189503ed
2016-07-16 17:10:08 -04:00
cku 77db71816d Bug 1287705 - Part 2. Add more comments and construct PaintState in PaintTextParams. r=jfkthame
MozReview-Commit-ID: EzfOzRUU6PQ

--HG--
extra : rebase_source : 1a7b96239b0d90f4e58be358629a7e3987b674ba
2016-07-19 20:48:19 +08:00
cku 7128f1272f Bug 1287705 - Part 1. Do not paint text shadow while generating text mask. r=jfkthame
MozReview-Commit-ID: C3auIlugrFY

--HG--
extra : rebase_source : a423bbab21d4675e6b3970336b7763f1edfea5b0
2016-07-19 20:41:18 +08:00
Andi-Bogdan Postelnicu 3cf2f32712 Bug 1287743 - Shift an assignment to be outside of an assert, in nsFrameSetFrame, to address a static-analysis issue. r=dholbert
MozReview-Commit-ID: IsHZeFsGGJC

--HG--
extra : rebase_source : d3c5b9dbcda7997e00229abfff14f9fc6d7e6557
2016-07-19 21:28:54 +03:00
Bob Owen 4ec3db3eec Bug 1252877 Part 7: Wait for plugin updates during active animations. r=dvander, r=jimm
Also, apply plugin updates when they arrive not just during composition.

MozReview-Commit-ID: FZJYiPqb5uZ
2016-07-18 09:54:02 +01:00
Bob Owen 88df0f1a00 Bug 1252877 Part 6: Fix plugin frame check for paint skipping and short circuit the search for plugin frames. r=jimm
MozReview-Commit-ID: EqAhU20Vkxm
2016-07-18 09:54:02 +01:00
Bob Owen 73dac13bac Bug 1252877 Part 4: Remove notification of plugins about scrolling from child. r=jimm
MozReview-Commit-ID: 2tHtOxx7jKa
2016-07-18 09:54:02 +01:00
Ting-Yu Lin e1c39de3f3 Bug 1287056 - Group private methods together in nsBlockReflowState.h. r=xidorn
This is to avoid changing the access modifiers.

MozReview-Commit-ID: 9kkWeAKelGL

--HG--
extra : rebase_source : 67a3995872fff4a5028ce86ea070078635ba17e9
2016-07-15 15:57:40 +08:00
Kartikaya Gupta 504b319a29 Bug 1287185 - Disable paint skipping for scrollframes with background-attachment:local. r=mstange
MozReview-Commit-ID: GMgIyxUd20c

--HG--
extra : rebase_source : 2fec3dd0a02aa0ab6eab69e9e6ee6229863be10e
2016-07-15 15:56:39 -04:00
Kevin Chen cac9daeb79 Bug 1275693 - Refactor <canvas> strokeText drawing to re-use gfxTextRun::Draw. r=jfkthame 2016-07-14 02:00:00 +02:00
Carsten "Tomcat" Book bfcc10319e merge mozilla-inbound to mozilla-central a=merge 2016-07-14 11:45:54 +02:00
Timothy Nikkel 8dab980fec Bug 1271714. When creating the wrap list item that contains the display list for a frame make sure to use a scroll clip that includes content in the display list. r=mstange
In nsIFrame::BuildDisplayListForChild for certain types of frames we create wrap list items to wrap the constructed display list to make those items inseperable.

We were using the current scroll clip by default when creating these items, but that scroll clip may not contain all the content in the display list if we traversed into an out of flow frame whose containing block is an ancestor of the current frame. The CurrentAncestorScrollClipForStackingContextContents keeps track of exactly this. (Its name might be a little misleading as we may not be dealing with a true stacking context here. Nevertheless it does contain the correct clip.)

We also need to initialize the value of mStackingContextAncestorSC when we create an AutoSaveRestore because we are now using that value sometimes without calling Enter/ExitStackingContext (which initializes mStackingContextAncestorSC).
2016-07-13 01:08:18 -05:00
Kartikaya Gupta 982bc8ba1f Bug 1284586 - Disable paint-skipping for scrollframes that we detect as having a CSS-clipped descendant. r=mstange
MozReview-Commit-ID: AvjokFZMwdd
2016-07-13 16:05:53 -04:00
Corey Ford 55d426b404 Bug 1280344 - Use first continuation's normal position in computing sticky scroll ranges for APZ. r=dholbert
MozReview-Commit-ID: L0wRgCvb8h8
2016-07-12 12:36:31 -04:00
Ting-Yu Lin faa1469dd9 Bug 1273049 - Migrate documentation in block-and-line.html into the tree. r=dholbert
I also adjust some of the old flag name to their logical name, and
rewrite some of the content where I see fit.

MozReview-Commit-ID: 7wAsDUOiN0a

--HG--
extra : rebase_source : 18e28e5ed1c593fb272042508b36244f132da4f5
2016-07-08 18:24:49 +08:00
Carsten "Tomcat" Book c3393c7dd8 Backed out changeset 0d582c239872 (bug 1271714) for test failures 2016-07-13 09:44:45 +02:00
Timothy Nikkel 5cc9ab83c9 Bug 1271714. When creating the wrap list item that contains the display list for a frame make sure to use a scroll clip that includes content in the display list. r=mstange
In nsIFrame::BuildDisplayListForChild for certain types of frames we create wrap list items to wrap the constructed display list to make those items inseperable.

We were using the current scroll clip by default when creating these items, but that scroll clip may not contain all the content in the display list if we traversed into an out of flow frame whose containing block is an ancestor of the current frame. The CurrentAncestorScrollClipForStackingContextContents keeps track of exactly this. (Its name might be a little misleading as we may not be dealing with a true stacking context here. Nevertheless it does contain the correct clip.)

We also need to initialize the value of mStackingContextAncestorSC when we create an AutoSaveRestore because we are now using that value sometimes without calling Enter/ExitStackingContext (which initializes mStackingContextAncestorSC).
2016-07-13 01:08:18 -05:00
Jared Wein 466b4c4e05 Bug 1283415 - Only set the poster src on the anonymous content if the attribute is not empty. r=cpearce 2016-07-10 09:06:00 +02:00
Daosheng Mu 59c534ddde Bug 1135329 - Reflow requests for nondisplay SVGTextFrame while its glyph is updated; r=heycam
MozReview-Commit-ID: 6QiRwx0FYKT

--HG--
extra : transplant_source : U%96%3D%AD%80-%E8%86X%1C%17%A3%F9%29%88H%DB%7Ds%A0
2016-06-24 16:02:44 +08:00
Emilio Cobos Álvarez 474ff66ca4 Bug 1285474: stylo: Add dirtiness-tracking hooks for Servo and convenient methods. r=bholley
Also, guard with asserts the access to the new shared flags.

MozReview-Commit-ID: H9UFFHRPmiu
2016-07-12 00:33:57 -07:00
Timothy Nikkel 8b8ea4c0be Bug 1276467. Enforce that any items creating when we descend into an out-of-flow for which we don't have the proper clip are invisible. r=mattwoodrow
Just giving them an empty visible rect isn't enough because the initial visible rect can be ignored when we compute visibility.

When we enter an out of flow without saved clip data we set a flag on the builder indicating all items created should be invisible. When we enter a visible out of flow (ie one with saved clip data) inside the first out of flow we clear the flag so items created inside the second out of flow can be visible.
2016-07-12 00:49:11 -05:00
Michael Li 7fc51f7d9e Bug 1283273 - Change nsAutoPtr to UniquePtr in classes within layout/generic. r=dholbert 2016-07-08 08:08:00 +02:00
Brad Werth dde35eb992 Bug 1241932 - Expose decoded CSS grid line properties via a Chrome API. r=mats 2016-07-07 11:38:12 -07:00