Commit Graph

5455 Commits

Author SHA1 Message Date
Timothy Nikkel
dc5c4979ef Bug 1000266. Don't purge the canvas fixed background image cache if we are only scrolling. r=mattwoodrow
Also NotifyRenderingChanged was on the canvas background color item, not the background image item.

Bug 818643 was a problem where the cache didn't get purged enough, but the fix meant we basically always purged the cached and never got to use it, making it useless. It meant that we purged the cache anytime the item has any type of invalidation whatsoever, even if the item would be drawn the same but the layer contents needed to be invalidated so that it would be redrawn (ie due to staying at the same position on screen but a different position in the layer).

This is really hacky, but NotifyRenderingChanged is only observed on one type of display item. So we just isolate the case where the only thing that changed is the offset (due to scrolling) and skip the NotifyRenderingChanged in that case.
2014-04-23 21:56:15 -05:00
Timothy Nikkel
8dacd34ec8 Bug 1000322. Don't let the display port base be larger than the subdocuments root frame bounds. r=roc
The dirty rect can be larger.
2014-04-23 21:12:11 -05:00
Ehsan Akhgari
15916f4738 Bug 491863 - Remove IBMBIDI; r=roc 2014-04-23 21:15:29 -04:00
Kartikaya Gupta
c4ff39d0ca Bug 984460 - Fill in a missing piece of code to compute the right dirty rect in the face of CSS transforms. r=mattwoodrow 2014-04-23 09:26:52 -04:00
Kearwood (Kip) Gilbert
09214db039 Bug 920688 - Remove FIXME comment from StickyScrollContainer::ComputeStickyLimits. r=dbaron
- The condition described in the FIXME comment is already handled by
  GetNearestBlockContainer in nsFrame.cpp (helper for
  nsIFrame::GetContainingBlock).
2014-04-22 15:30:00 +02:00
Eugen Sawin
7432a9bcf8 Bug 611556 - Add persistent zoom history sessions. r=roc, r=snorp 2014-04-07 13:43:58 +02:00
Adrian Lungu
ad51575296 Bug 822480 - Add in the Resource Timing API. r=honzab, r=jst 2013-10-15 18:35:44 -07:00
Mats Palmgren
96d62d5ba4 Back out bug 613659 (for regression bug 998792)
--HG--
rename : layout/reftests/backgrounds/background-size-slice.html => layout/reftests/backgrounds/background-size-continuous.html
rename : layout/reftests/backgrounds/background-size-cover-slice.html => layout/reftests/backgrounds/background-size-cover-continuous.html
rename : layout/reftests/backgrounds/background-size-cover-clone.html => layout/reftests/backgrounds/background-size-cover-each-box.html
rename : layout/reftests/backgrounds/background-size-clone.html => layout/reftests/backgrounds/background-size-each-box.html
2014-04-20 19:39:24 +00:00
Mats Palmgren
f160eee815 Bug 613659 - Make GetBorderRadii non-inline to make it compile on Windows. r=dholbert 2014-04-18 23:01:24 +00:00
Mats Palmgren
c183756a9b Bug 613659 - Implement box-decoration-break layout for backgrounds. r=cam,jmuizelaar
--HG--
rename : layout/reftests/backgrounds/background-size-each-box.html => layout/reftests/backgrounds/background-size-clone.html
rename : layout/reftests/backgrounds/background-size-cover-each-box.html => layout/reftests/backgrounds/background-size-cover-clone.html
rename : layout/reftests/backgrounds/background-size-cover-continuous.html => layout/reftests/backgrounds/background-size-cover-slice.html
rename : layout/reftests/backgrounds/background-size-continuous.html => layout/reftests/backgrounds/background-size-slice.html
2014-04-18 23:01:23 +00:00
Mats Palmgren
3dc34b05d8 Bug 613659 - Implement box-decoration-break layout for border/box-shadow and paddding/margin for inlines. r=cam 2014-04-18 23:01:23 +00:00
Mats Palmgren
aa112b9264 Bug 613659 - Add "skip sides" and border/frame size parameters to GetBorderRadii(). Add an inline convenience method for the old signature. r=cam 2014-04-18 23:01:23 +00:00
Mats Palmgren
496ff866f3 merge backout 2014-04-17 15:10:44 +00:00
Mats Palmgren
1f5417d4f0 Back out bug 613659 for build failure on B2G Windows.
--HG--
rename : layout/reftests/backgrounds/background-size-slice.html => layout/reftests/backgrounds/background-size-continuous.html
rename : layout/reftests/backgrounds/background-size-cover-slice.html => layout/reftests/backgrounds/background-size-cover-continuous.html
rename : layout/reftests/backgrounds/background-size-cover-clone.html => layout/reftests/backgrounds/background-size-cover-each-box.html
rename : layout/reftests/backgrounds/background-size-clone.html => layout/reftests/backgrounds/background-size-each-box.html
2014-04-17 15:09:18 +00:00
Mats Palmgren
36fbe11cd8 Bug 613659 - Implement box-decoration-break layout for backgrounds. r=cam,jmuizelaar
--HG--
rename : layout/reftests/backgrounds/background-size-each-box.html => layout/reftests/backgrounds/background-size-clone.html
rename : layout/reftests/backgrounds/background-size-cover-each-box.html => layout/reftests/backgrounds/background-size-cover-clone.html
rename : layout/reftests/backgrounds/background-size-cover-continuous.html => layout/reftests/backgrounds/background-size-cover-slice.html
rename : layout/reftests/backgrounds/background-size-continuous.html => layout/reftests/backgrounds/background-size-slice.html
2014-04-17 12:11:07 +00:00
Mats Palmgren
1bbabc9e26 Bug 613659 - Implement box-decoration-break layout for border/box-shadow and paddding/margin for inlines. r=cam 2014-04-17 12:11:07 +00:00
Mats Palmgren
c90bfe1387 Bug 613659 - Add "skip sides" and border/frame size parameters to GetBorderRadii(). Add an inline convenience method for the old signature. r=cam 2014-04-17 12:11:07 +00:00
Nathan Froyd
14f4fdbed9 Bug 996031 - remove 455407.html crashtest; r=dholbert
The bug that this test was intended to test seems transient, according to
testing with nightlies around the time the bug was filed.  Additionally,
the test connects to external servers, which is frowned upon and will soon
be forbidden.
2014-04-15 16:31:51 -04:00
Andrew Church
91c6e90e48 Bug 981281 - Ctrl+left/right arrow skips words with leading/trailing punctuation with layout.word_select.stop_at_punctuation=false. r=mats
test3/test4 are copies of test1/test2 tweaked for stop_at_punctuation=false.
2014-04-17 09:23:16 -04:00
Kearwood (Kip) Gilbert
93e818d617 Bug 984226 - Add parameter to OverflowChangedTracker::AddFrame to distingush between frames that need nsIFrame::UpdateOverflow called and frames that only have a transform that has changed. r=dbaron
- OverflowChangedTracker::AddFrame now accepts an enumerated type parameter to
  indicate if the overflow areas of children have changed (CHILDREN_CHANGED),
  the overflow areas of the children have changed and the parent have changed
  (CHILDREN_AND_PARENT_CHANGED), or if only the transform has changed
  (TRANSFORM_CHANGED).
- OverflowChangedTracker::Flush no longer falls back to calling
  nsIFrame::UpdateOverflow when a frame lacks a PreTransformOverflowAreas
  property.
- Added an additional change hint, nsChangeHint_ChildrenOnlyTransform, which
  results in TRANSFORM_CHANGED being passed in to
  OverflowChangedTracker::AddFrame.
- In nsIFrame::FinishAndStoreOverflow, the passed in overflow is now stored as
  the InitialTransformProperty for elements that are IsTransformed().
- Partially corrected Bug 926155, by only calling
  OverflowChangedTracker::AddFrame on parents of the sticky element during
  StickyScrollContainer::UpdatePositions, using CHILDREN_CHANGED.
2014-03-13 17:21:25 -07:00
Simon Montagu
7efd4be22b Add some more logical getters to nsIFrame.h. Bug 735577, r=jfkthame 2014-04-16 01:03:30 -07:00
Simon Montagu
d89cfb8610 Make nsLineBox.mBounds a LogicalRect. Bug 789096, r=jfkthame 2014-04-16 01:03:28 -07:00
Daniel Holbert
7b4d635087 Bug 991285 part 1: Consistently allocate nsRenderingContext instances on the heap. r=roc 2014-04-15 12:54:10 -07:00
Robert O'Callahan
2fb739059a Bug 985303. Part 3: Save a block's 'bottom edge of content' in a frame property if it doesn't match the block's content height, and use it in UpdateOverflow to compute the correct overflow. r=dbaron
--HG--
extra : rebase_source : 11fe6925ee266a2e1feec5a4d5c0e5ed152516f5
2014-04-03 04:27:23 -04:00
Robert O'Callahan
5ceb341697 Bug 985303. Part 1: Assert that nsViews are only associated with a specific, limited set of frame types. r=dbaron
--HG--
extra : rebase_source : 80ce9f2e4841b831fd37acf2b89d4ff350762ab8
2014-04-03 04:24:58 -04:00
Daniel Holbert
ce29c5307d Bug 996351: Rename nsPresShell::GetReferenceRenderingContext() to CreateReferenceRenderingContext(), to reduce implication of fallibility. r=roc 2014-04-14 21:30:25 -07:00
Daniel Holbert
20f62f5f5a Bug 996326: Make nsDeviceContext::CreateRenderingContext() return its result directly, instead of using outparam. r=roc 2014-04-14 20:15:01 -07:00
Daniel Holbert
1270442a0f Bug 996319: Drop always-null arg from nsTextFrame.cpp's static helper-function "GetReferenceRenderingContext". r=jdaggett 2014-04-14 17:45:39 -07:00
Seth Fowler
676414cd63 Bug 901146 - Fix misleading comment in nsImageFrame.cpp. r=tn 2014-04-14 16:26:35 -07:00
Timothy Nikkel
3a62e68278 Bug 980500. Add scrollbars that APZC places properly if we are doing the early exit ignore scroll frame when building a display list for a scrollframe. r=roc 2014-04-11 19:12:43 -05:00
Kartikaya Gupta
ab6d729aae Bug 982888 - Populate the scroll parent field as appropriate. r= 2014-04-11 19:39:22 -04:00
Botond Ballo
05a2f728cf Bug 982141 - Make sure the primary async-scrollable frame has a displayport set. r=tn
--HG--
extra : rebase_source : 6ceb20abb14f3e829ea06c3b3b911455cff9db23
2014-03-19 13:29:24 -04:00
Botond Ballo
a96bf82fbf Bug 982141 - Factor out 'wantSubAPZC' into nsLayoutUtils. r=kats,tn
--HG--
extra : rebase_source : c23e9d3253991523f39d7437ab5f36172768813a
2014-04-04 10:13:30 -04:00
Botond Ballo
71f515b013 Bug 982141 - Expose the logic used to decide whether a scrollable frame should be async scrollable. r=tn
--HG--
extra : rebase_source : 6ce26d8d54bbf75c79b10fd8a8dc449b0d417387
2014-03-12 16:20:26 -04:00
Daniel Holbert
f199350df0 Bug 983427 part 5: Toggle switch to enable the code added in this bug & avoid reflowing flex items in bottom-to-top order. r=mats 2014-04-11 14:22:12 -07:00
Daniel Holbert
0eafe62a94 (no bug) Update ResolveFlexibleLengths() documentation & drop whitespace on blank line. comment/whitespace-only
(Prior to this commit, the documentation mentioned long-since-removed params aTotalFreeSpace and aItems.)
2014-04-11 14:22:10 -07:00
Ryan VanderMeulen
2bf6dfd88c Backed out 6 changesets (bug 982141) for Windows and OSX bustage. CLOSED TREE
Backed out changeset 16540ab2d2cb (bug 982141)
Backed out changeset 2ad9ce9d904e (bug 982141)
Backed out changeset af219bb49c06 (bug 982141)
Backed out changeset ffe51d96e86e (bug 982141)
Backed out changeset 6642718ad3bb (bug 982141)
Backed out changeset 95b341d26f7b (bug 982141)
2014-04-10 15:27:42 -04:00
Botond Ballo
c3e7091b0a Bug 982141 - Make sure the primary async-scrollable frame has a displayport set. r=tn
--HG--
extra : rebase_source : cecfe35b5407d6bbe1709eb0a2abf55ab8503c2d
2014-03-19 13:29:24 -04:00
Botond Ballo
55a6ddb4d9 Bug 982141 - Factor out 'wantSubAPZC' into nsLayoutUtils. r=kats,tn
--HG--
extra : rebase_source : d651c8b224c31518816a29afc003ef5ac6ed7cc7
2014-04-04 10:13:30 -04:00
Botond Ballo
d3a0899936 Bug 982141 - Expose the logic used to decide whether a scrollable frame should be async scrollable. r=tn
--HG--
extra : rebase_source : 1e1c2c9377b7127683fe555450fcf2354934fe93
2014-04-10 14:42:58 -04:00
Geoff Brown
e5a312f133 Bug 962676 - Reset expected assertion counts for Android crashtests; r=blassey 2014-04-09 08:38:44 -06:00
Timothy Nikkel
19f177053d Bug 987680. Overlay scrollbars should be placed on top of content. r=roc
Bug 926292 accidentally put them in the background list if there were no positioned descendents they needed to be on top of it (because this was where non-overlay scrollbars went, which never made sense). If there are no positioned descendents overlay scrollbars should go on the top-most non-positioned list, which is outlines.
2014-04-09 07:12:21 -05:00
Boris Zbarsky
35fca5eeeb Bug 991742 part 8. Remove the "aScope" argument of WebIDL/nsWrapperCache WrapObject() methods. r=bholley
This patch was mostly generated with the following command:

find . -name "*.h" -o -name "*.cpp" | xargs sed -e '/WrapObject(JSContext/ {; N; s/\(WrapObject(JSContext *\* *a\{0,1\}[Cc]x\),\n\{0,1\} *JS::Handle<JSObject\*> a\{0,1\}[sS]cope/\1/ ; }' -i ""

and then reverting the changes that made to
dom/bindings/BindingUtils.h, since those WrapObject methods are not
the ones we're trying to change here, plus a bunch of manual fixups
for cases that this command did not catch (including all the callsites
of WrapObject()).
2014-04-08 18:27:18 -04:00
Boris Zbarsky
56f44fdf10 Bug 991742 part 6. Remove the "aScope" argument of binding Wrap() methods. r=bholley
This patch was mostly generated with this command:

find . -name "*.h" -o -name "*.cpp" | xargs sed -e 's/Binding::Wrap(aCx, aScope, this/Binding::Wrap(aCx, this/' -e 's/Binding_workers::Wrap(aCx, aScope, this/Binding_workers::Wrap(aCx, this/' -e 's/Binding::Wrap(cx, scope, this/Binding::Wrap(cx, this/' -i ""

plus a few manual fixes to dom/bindings/Codegen.py, js/xpconnect/src/event_impl_gen.py, and a few C++ files that were not caught in the search-and-replace above.
2014-04-08 18:27:17 -04:00
Ryan VanderMeulen
27b28b1c13 Backed out changeset 7be71c699b85 (bug 984226) for crashtest asserts. 2014-04-08 15:31:45 -04:00
Kearwood (Kip) Gilbert
ebcffdc9e3 Bug 984226 - Add parameter to OverflowChangedTracker::AddFrame to distingush between frames that need nsIFrame::UpdateOverflow called and frames that only have a transform that has changed. r=dbaron
- OverflowChangedTracker::AddFrame now accepts an enumerated type parameter to
  indicate if the overflow areas of children have changed (CHILDREN_CHANGED) or
  if the transform has changed (TRANSFORM_CHANGED).
- OverflowChangedTracker::Flush no longer falls back to calling
  nsIFrame::UpdateOverflow when a frame lacks a PreTransformOverflowAreas
  property.
- Added an additional change hint, nsChangeHint_ChildrenOnlyTransform, which
  results in TRANSFORM_CHANGED being passed in to
  OverflowChangedTracker::AddFrame.
- In nsIFrame::FinishAndStoreOverflow, the passed in overflow is now stored as
  the InitialTransformProperty for elements that are IsTransformed().
- Partially corrected Bug 926155, by only calling
  OverflowChangedTracker::AddFrame on parents of the sticky element during
  StickyScrollContainer::UpdatePositions, using CHILDREN_CHANGED.
2014-03-13 17:21:25 -07:00
John Daggett
3991666744 Bug 950526 - dirty frames after reparenting. r=dbaron 2014-04-08 14:13:28 +09:00
John Daggett
c8b9bf6143 Bug 950526 - don't dump textruns within nsTextFrame::DidSetStyleContext. r=dbaron 2014-04-08 14:13:28 +09:00
Daniel Holbert
2568d82beb Bug 983427 part 4c: If axes are reversed, compute flex container's baseline using the *last* flex line (which in reality is the first line). r=mats 2014-04-07 17:17:43 -07:00
Daniel Holbert
48d0797358 Bug 983427 part 4b: If axes are reversed, align baseline-aligned items with respect to to the flex-end edge (which is the "real" flex-start edge). r=mats 2014-04-07 17:17:43 -07:00