Commit Graph

742 Commits

Author SHA1 Message Date
Birunthan Mohanathas
245cd6a02f Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Kyle Huey
e95edb30a9 Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug 2016-01-30 09:05:36 -08:00
Nicholas Nethercote
d573148d5a Re-backout c216ff19d690 (bug 1059014 part 3) because the removed code is less dead than it first appears. 2016-01-20 22:55:37 -08:00
Randall Barker
6f6307e2d7 Bug 1229752 - When C++ APZ scroll offset diverges from the Gecko scroll offset, it is not being applied properly to the event position r=botond,tnikkel 2016-01-11 16:06:14 -08:00
Nicholas Nethercote
d24fbafe54 Bug 1232852 (part 9) - Simplify ReleasePointerCaptureCaller. r=tn.
It doesn't need to store the nsIContent. It just needs to record if mPointerId
has been set. This is because ReleasePointerCapturingContent() doesn't use its
second parameter.
2016-01-05 16:08:17 -08:00
Nicholas Nethercote
44ff3e796f Bug 1232852 (part 5) - Remove some unused parameters in and around layout/base/. r=heycam. 2016-01-05 16:08:17 -08:00
Ting-Yu Lin
c4c4aa42d2 Bug 1221459 - Remove TouchCaret and SelectionCarets. r=mtseng, r=roc
All the files modified are straightforward deletion except TouchManager
and ZoomConstraintsClient. I add some includes and wrap TouchManager by
mozilla namespace to fix build errors due to the removal of TouchCaret.
2015-12-22 14:14:12 +08:00
Nigel Babu
db46f1d573 Backed out changeset 9f30d3caa231 (bug 1221459) 2015-12-22 14:03:21 +05:30
Ting-Yu Lin
c4d155eb8e Bug 1221459 - Remove TouchCaret and SelectionCarets. r=mtseng,roc
All the files modified are straightforward deletion except TouchManager
and ZoomConstraintsClient. I add some includes and wrap TouchManager by
mozilla namespace to fix build errors due to the removal of TouchCaret.
2015-12-22 14:14:12 +08:00
Kartikaya Gupta
f1c08fd765 Bug 1228597 - Clean up code paths that (un)apply a pres shell resolution. r=tn,botond
A clear separation is introduced between paths that deal with a root
document resolution (at the process boundary in e10s setups) and paths
that deal with a non-root document resolution (elsewhere in Layout code).

This allows both code paths to run on all platforms.
2015-11-30 19:13:20 -05:00
Randall Barker
35c2ae702a Bug 1224015 - Part 1: nsLayoutUtils functions do not account for nsPresShell resolution r=tnikkel 2015-11-26 20:51:13 -06:00
Jeff Gilbert
d658f53faf Bug 1221822 - Finish the WebGL texture refactor. r=kamidphish,mattwoodrow,bz 2015-11-24 20:15:29 -08:00
Nicholas Nethercote
be66ede6bb Bug 1059014 (part 3) - Remove support for pausing and resuming painting. r=dbaron.
This reverts much of part 2 of bug 878935, except for the Android browser.js
changes which have already been reverted elsewhere.

The revert caused mass b2g Gij test bustages
2015-11-24 16:09:04 +05:30
Phil Ringnalda
80310b6e5c Back out changeset 2f614bcd9405 (bug 1221822) for test_conformance__extensions__ext-sRGB.html and test_webgl2_alpha_luminance.html failures 2015-11-23 21:55:59 -08:00
Jeff Gilbert
8e72348cfc Bug 1221822 - Finish the WebGL texture refactor. r=kamidphish,mattwoodrow,bz 2015-11-23 19:27:13 -08:00
Nicholas Nethercote
6805d49fb9 Backout 3ad33d09825a (bug 1059014 part 3) because the removed code is less dead than it first appears. 2015-11-23 14:13:48 -08:00
Kartikaya Gupta
a58e442256 Bug 1226872 - Stop keeping a copy of the resolution in the root scrollframe. r=roc
The only reason we had this in the scrollframe at all was so that it could be
saved/restored as part of the frame state when leaving a page and then going
back to it. However we can accomplish this by just reading/writing the resolution
from/to the presshell instead, so there's no need to keep a second copy of it.
2015-11-23 09:14:15 -05:00
Cameron McCormack
654179bc68 Bug 990250 - Fold nsIStyleSheet into CSSStyleSheet. r=dbaron 2015-11-17 17:04:09 +11:00
George Wright
1fa75f94b8 Bug 1098131 - Don't invalidate layers when simply changing SizeMode r=smaug,jimm 2015-11-09 21:38:21 -05:00
Botond Ballo
abbcf770b6 Bug 1220923 - Make nsIntRegion a typedef for IntRegionTyped<UnknownUnits>. r=nical 2015-11-04 11:49:49 -05:00
Timothy Nikkel
fa3d2ecf79 Bug 1218851. Fix comments related to nsIPresShell::RenderDocument and flags RENDER_DOCUMENT_RELATIVE and RENDER_IGNORE_VIEWPORT_SCROLLING. r=roc
The two flags combined used to be represented by just RENDER_IGNORE_VIEWPORT_SCROLLING. Until http://hg.mozilla.org/mozilla-central/rev/99279c1c33cc (bug 590294) split RENDER_DOCUMENT_RELATIVE out. It split out the requested rect to be document relative. But it also split out the part about "drawing the document as if it had not been scrolled" with the new flag, but the comments for that part didn't get updated.

The names of the flags are perhaps inaccurate, but changing that requires changing a lot more code.
2015-11-05 18:57:17 -06:00
Nicholas Nethercote
3c19d2348d Bug 1059014 (part 3) - Remove support for pausing and resuming painting. r=dbaron.
This reverts much of part 2 of bug 878935, except for the Android browser.js
changes which have already been reverted elsewhere.
2015-11-04 20:55:32 -08:00
Nicholas Nethercote
6a2267013b Bug 1059014 (part 2) - Remove support for reflow on zoom event pending. r=dbaron.
This basically reverts part 2 of bug 836565.
2015-11-04 20:55:16 -08:00
Nicholas Nethercote
0b41983875 Bug 1059014 (part 1) - Remove support for max line box width. r=dbaron.
This basically reverts bug 780258.
2015-11-04 20:25:01 -08:00
Sebastian Hengst
b1d1ec100c Backed out changeset c780a165dca1 (bug 1098131) for bc7 failures, at least on Linux. r=backout
browser_backButtonFitts.js | uncaught exception - TypeError: this.mCurrentBrowser.docShell is null at chrome://browser/content/tabbrowser.xml:4004
2015-11-04 20:41:16 +01:00
George Wright
87e27360d6 Bug 1098131 - Don't invalidate layers when simply changing SizeMode r=smaug 2015-11-04 13:23:03 -05:00
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Cameron McCormack
02af9911ab Bug 1203766 - Part 3: Add ArenaRefPtr support to nsStyleContext. r=bzbarsky 2015-09-17 12:08:20 +10:00
Cameron McCormack
8af6902417 Bug 1203766 - Part 2: Add an ArenaRefPtr class that can have its pointer cleared out when an object's owning nsPresArena goes away. r=bzbarsky 2015-09-17 12:08:19 +10:00
Cameron McCormack
2092fefbc0 Bug 1203766 - Part 1: Generate nsPresArena::ObjectIDs with a preprocessor-included file. r=bzbarsky 2015-09-17 12:08:19 +10:00
Kartikaya Gupta
9d91cdaaf1 Bug 1185747 part 3 - Rip out code to explicitly override the CSS viewport. r=tn 2015-09-01 16:47:52 -04:00
Xidorn Quan
0728d2c159 Bug 1177155 part 1 - Defer resize reflow and freeze refresh driver during window fullscreen change. r=smaug 2015-08-27 23:14:49 +10:00
Kartikaya Gupta
d6bfe53b6e Bug 1180295 - Rip out call to setContentDocumentFixedPositionMargins. r=rbarker 2015-08-18 14:27:18 -04:00
Kartikaya Gupta
064fc767ff Bug 1178847 - Add a MobileViewportManager to manage setting the CSS viewport on B2G. r=botond,tn
The MobileViewportManager ("MVM") is responsible for setting the CSS viewport on
any of the following events:
- a page is painted for the first time (on the before-first-paint event)
- a meta-viewport tag is added (on the DOMMetaAdded event)
- the full-zoom is changed (on the FullZoomChanged event)
- if the window is resized (ResizeReflow gets called as part of normal layout
  processing, and this will pick up a new CSS viewport from MVM)

If the CSS viewport changes or if it is the initial paint, the MVM additionally
calls SetResolutionAndScaleTo on the presShell to update the displayed zoom.
The APZ code in AsyncPanZoomController::NotifyLayersUpdated already has
corresponding code to accept this updated zoom when the CSS viewport changes.
2015-07-21 10:51:55 -04:00
Carsten "Tomcat" Book
8ee59042e8 Backed out changeset 313ea7f814d3 (bug 1178847) 2015-07-21 08:34:57 +02:00
Kartikaya Gupta
1e07d34a09 Bug 1178847 - Add a MobileViewportManager to manage setting the CSS viewport on B2G. r=botond,tn
The MobileViewportManager ("MVM") is responsible for setting the CSS viewport on
any of the following events:
- a page is painted for the first time (on the before-first-paint event)
- a meta-viewport tag is added (on the DOMMetaAdded event)
- the full-zoom is changed (on the FullZoomChanged event)
- if the window is resized (ResizeReflow gets called as part of normal layout
  processing, and this will pick up a new CSS viewport from MVM)

If the CSS viewport changes or if it is the initial paint, the MVM additionally
calls SetResolutionAndScaleTo on the presShell to update the displayed zoom.
The APZ code in AsyncPanZoomController::NotifyLayersUpdated already has
corresponding code to accept this updated zoom when the CSS viewport changes.
2015-07-20 18:19:40 -04:00
Alex Henrie
043f3878d9 Bug 941858 - Do not scale down elements passed to setDragImage. r=roc 2015-07-11 10:15:19 -06:00
Cameron McCormack
98a05182dd Bug 1177563 - Test that we share agent rule processors across different documents. r=dbaron 2015-07-08 15:57:31 +10:00
Carsten "Tomcat" Book
809fb6de52 Backed out changeset 42e80a07acd6 (bug 1177563) for bustage on a CLOSED TREE 2015-07-08 09:44:16 +02:00
Cameron McCormack
9c51300b2a Bug 1177563 - Test that we share agent rule processors across different documents. r=dbaron 2015-07-08 15:57:31 +10:00
Nathan Froyd
92a8124fef Bug 1161627 - part 2 - machine-convert TemporaryRef<T> to already_AddRefed<T>; r=ehsan
This conversion was done with the script:

  find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl' | \
    egrep -v 'cairo-win32-refptr.h|RefPtr.h|TestRefPtr.cpp' | \
    xargs sed -i -e 's/mozilla::TemporaryRef</already_AddRefed</g' \
                 -e 's/TemporaryRef</already_AddRefed</g'

Manual fixups were performed in the following instances:

- We handled mfbt/RefPtr.h manually so as to not convert TemporaryRef itself
  into already_AddRefed.

- The following files had explicit Move() calls added to make up for the lack
  of a copy constructor on already_AddRefed:

  dom/base/ImageEncoder.cpp
  dom/media/MediaTaskQueue.{h,cpp}
  dom/media/webaudio/PannerNode.cpp

- A redundant overload for MediaTaskQueue::Dispatch was deleted.

- A few manual fixups were required in mfbt/tests/TestRefPtr.cpp.

- Comments, using declarations, and forward declarations relating to
  TemporaryRef in dom/canvas/ and gfx/layers/ were changed to refer to
  already_AddRefed.
2015-06-17 10:00:52 -04:00
L. David Baron
a4a54f3788 Bug 1169440 patch 6 - Add parameter to nsIFrame::FrameNeedsReflow to control handling of target being a reflow root. r=dholbert 2015-06-20 21:54:15 -07:00
Cameron McCormack
55338d31e4 Bug 1169514 - Part 3: Use a shared preference style sheet across all pres contexts. r=jwatt 2015-06-16 11:34:48 +10:00
Ryan VanderMeulen
128ec37302 Backed out changeset 061363215959 (bug 1171371) for Android testAboutPage crashes.
CLOSED TREE
2015-06-04 17:00:56 -04:00
David Anderson
e4bdc9d5b3 Use widgets for APZ checks, rather than gfxPrefs. (bug 1162064, r=kats,mstange) 2015-06-04 16:51:10 -04:00
Seth Fowler
a68f667897 Bug 1171371 - On memory-pressure, remove any stale images from the visible images list. r=tn 2015-06-04 11:08:19 -07:00
Ting-Yu Lin
a500be65d1 Bug 1110039 - Part 4 - Hook new classes into the system. r=roc
The necessary modifications are the same as SelectionCarets. For
convenience, Touch/SelectionCarets will be disabled whenever
AccessibleCaret preference is enabled.
2015-04-24 02:08:00 +02:00
Olli Pettay
8c8bd21dd0 Backout Bug 1149555 because of tresize regression, a=backout 2015-05-08 20:12:41 +03:00
Olli Pettay
f40b7ab96e Bug 1149555 - Update resize event firing to follow the specs, dispatch right before rAF callbacks, r=dbaron 2015-05-05 17:56:01 +03:00
Timothy Nikkel
e657109f88 Bug 1159772. Don't let nsContainerFrame::SyncWindowProperties make widget calls that can result in synchronous painting during reflow or frame construction. r=mats
Specifically on Windows nsIWidget::SetTransparencyMode can result in sync painting.

So we give nsContainerFrame::SyncWindowProperties a sync or async option and use the view manager post pending update infrastructure to flush SyncWindowProperties calls async.
2015-05-04 14:29:19 -05:00