Commit Graph

443 Commits

Author SHA1 Message Date
Nicholas Nethercote
06e901cb9f Bug 1231550 - Use DrawTarget instead of gfxContext and/or nsRenderingContext in many places in font/text code. r=jfkthame.
AutoTextRun now only needs a DrawTarget instead of an nsRenderingContext, and
similar nsRenderingContext/gfxContext-to-DrawTarget replacements can be
propagated a long way up the call graph. This patch replaces 93 occurrences of
nsRenderingContext and 135 occurrences of gfxContext with DrawTarget; that's
13% of them.

The patch is mostly plumbing changes. A couple of not-entirely-plumbing
changes:

- It adds a comment about the null check in
  gfxGlyphExtents::GetTightGlyphExtentsAppUnits().

- A couple of functions simply had an unused gfxContext or nsRenderingContext
  parameter removed, e.g. SetLineBreaks().

--HG--
extra : rebase_source : 8f56994bb4d254a86788b17ab2864ebc758a7e6b
2015-12-15 13:56:41 -08:00
Nicolas Silva
9bc4b1d4e6 Bug 1228952 - Move texture metadata out of the BufferTextureClient/Host's buffer. r=Sotaro 2015-12-16 19:50:58 +01:00
Nicholas Nethercote
90bbac13cc Bug 1229237 (part 3) - Make nsIWidget::Invalidate() take a LayoutDeviceIntRect. r=botond.
--HG--
extra : rebase_source : 1afe44a5ab2a3d5478010fc23ba1891ab297bde6
2015-11-16 21:18:31 -08:00
Nicholas Nethercote
1fb25d8609 Bug 1229237 (part 1) - Make nsIWidget::{Create,CreateChildren}() take a LayoutDeviceIntRect. r=botond.
--HG--
extra : rebase_source : 08407e76083534ad39dd34d2535ec09c95e506db
2015-11-16 00:35:18 -08:00
Nicolas Silva
ce2636044e Bug 1200595 - Merge TextureClient and ClientTexture back into TextureClient. r=mattwoodrow 2015-11-20 14:25:00 +01:00
Nicolas Silva
53a1d987f4 Bug 1200595 - Buffer TextureData implementation. r=mattwoodrow 2015-10-15 17:53:33 +02:00
Sunny Sidhu
cfa8942015 Bug 1220873 - Make Layer::mVisibleRegion a LayerIntRegion. r=botond
--HG--
extra : source : dc46048f7a9e9cc008c97e2d9e0a100944743055
extra : amend_source : 63783bc076e5969ebacdc8c74f9b5194a1891d9e
2015-11-29 02:07:55 -05:00
Nicolas Silva
38f44b34ce Bug 1228029 - Fix the usage of gtest assertion macros in TestJobScheduler.cpp. r=kats 2015-11-25 19:36:44 +01:00
Wes Kocher
72261b4523 Backed out 12 changesets (bug 1200595) for b2g mochitest crashes in SharedBufferManagerParent CLOSED TREE
Backed out changeset cf8cf1a039dd (bug 1200595)
Backed out changeset 65da564f952c (bug 1200595)
Backed out changeset 7663208f1582 (bug 1200595)
Backed out changeset fc1fbb97c8eb (bug 1200595)
Backed out changeset 3ad5a4c457fe (bug 1200595)
Backed out changeset add3fe9afc0c (bug 1200595)
Backed out changeset 68aba6b39588 (bug 1200595)
Backed out changeset ab326c34f1cf (bug 1200595)
Backed out changeset ed34bc528a1b (bug 1200595)
Backed out changeset 0dc93424546c (bug 1200595)
Backed out changeset 8cc12f12f3d1 (bug 1200595)
Backed out changeset bb84403701b7 (bug 1200595)

--HG--
extra : commitid : AMC6i05xyTh
2015-11-24 10:07:02 -08:00
Nicolas Silva
c1b94d01e8 Bug 1200595 - Merge TextureClient and ClientTexture back into TextureClient. r=mattwoodrow 2015-11-20 14:25:00 +01:00
Nicolas Silva
e2196598ae Bug 1200595 - Buffer TextureData implementation. r=mattwoodrow 2015-10-15 17:53:33 +02:00
Kevin Wern
6b43e66943 Bug 1226920 - Allow calling ForEachNode() with an action returning void r=botond
--HG--
extra : rebase_source : e2d16580f20bd5dc154760803ec562fe0ed485c4
extra : source : 8e743b5913982ccd18d51544a5a93213fb700e5c
2015-11-23 13:06:01 -05:00
Carsten "Tomcat" Book
1a584aca79 Backed out 13 changesets (bug 1200595) for possibly breaking Reftest [TC] Crashtest tc-R on a CLOSED TREE
Backed out changeset e7278af0a484 (bug 1200595)
Backed out changeset c13228f84d85 (bug 1200595)
Backed out changeset 4b88e8a3d8af (bug 1200595)
Backed out changeset e55376bd2cf8 (bug 1200595)
Backed out changeset 9c27c8e2c021 (bug 1200595)
Backed out changeset a369a2983ceb (bug 1200595)
Backed out changeset 09e71ba15ea8 (bug 1200595)
Backed out changeset b555b130d439 (bug 1200595)
Backed out changeset 6819f6d82287 (bug 1200595)
Backed out changeset a8cdfbf443d8 (bug 1200595)
Backed out changeset 0092c9d7a86b (bug 1200595)
Backed out changeset 6dc38a1e6073 (bug 1200595)
Backed out changeset fe2164aa1468 (bug 1200595)
2015-11-20 16:55:26 +01:00
Nicolas Silva
25167273f1 Bug 1200595 - Merge TextureClient and ClientTexture back into TextureClient. r=mattwoodrow 2015-11-20 14:25:00 +01:00
Nicolas Silva
71d9215e93 Bug 1200595 - Buffer TextureData implementation. r=mattwoodrow 2015-10-15 17:53:33 +02:00
John Daggett
b788233f65 Bug 1213280 - fix OSX font selection under 10.11. r=jfkthame 2015-11-20 22:01:12 +09:00
Kevin Wern
02d8d69dc7 Bug 1199798 - Create tests for TreeTraversal.h r=botond
Move queue and stack includes outside of mozilla namespace.

Test the following for searches:
- Null root returns null.
- Needle is root returns root.
- No needle results in full traversal.
- Needle node in middle returns that needle, and stops traversing.

Test the following for ForEachNode:
- Null root still runs correctly.
- No skips results in traversal of entire tree.
- Root skip results in only changing the root.
- First skips are still included (whether leaf or parent).

--HG--
extra : source : 6d2572c274363c7544c4f96f0016fead098b157e
2015-11-16 13:54:12 -05:00
Nicholas Nethercote
369f54f3a3 Bug 1224482 (part 1) - Tweak typed/untyped versions of Get{,Client,Screen}Bounds(). r=kats.
In nsIWidget, GetBoundsUntyped(), GetClientBoundsUntyped() and
GetScreenBoundsUntyped() are currently the primary implementations, and the
untyped versions are defined on top of them. This patch flips that around.

--HG--
extra : rebase_source : 15b2f08f90bf4d1e209c6cb885f6a6e3b8db6708
2015-11-12 16:04:52 -08:00
Nicholas Nethercote
ad0dd8414a Bug 1223310 (part 2) - Use LayoutDeviceIntRect for bounds-related functions in nsIWidget. r=kats.
The patch renames the existing functions (GetBounds(), GetClientBounds(), etc)
by adding an |Untyped| suffix. It then adds typed equivalents, and uses those
typed equivalents in all the call sites where it's easy to do so. The trickier
remaining call sites are converted to use the Untyped-suffix version.

--HG--
extra : rebase_source : 6bfb15bfc4698e2eba7d4db55497299d3dffcd51
2015-11-09 21:37:32 -08:00
Mason Chang
189075b950 Bug 1223052 - Add a gtest to test that the vsync source supplies a proper vsync rate. r=kats 2015-11-09 19:10:26 -08:00
Robert O'Callahan
2d8cd33dc4 Bug 264412. Refactor nsIFrame::GetRenderedText API to be more sane. r=mats,marcoz
The test changes here are to adjust for the fact that
nsTextFrame::GetRenderedText can now trim whitespace from the end of lines
that end in a hard line break.

--HG--
extra : commitid : 42YjYQUaiwY
extra : rebase_source : 69d3a9c5086c116365a0488d1b4fc52fc6524196
2015-10-30 19:23:10 +13:00
Robert O'Callahan
0e2b65352f Revert incorrectly committed changes ab657569f554 and a396f4262479
--HG--
extra : commitid : IHQ60dccnSZ
extra : amend_source : 9302339fd951446a37909b31a1ccb56aff470325
2015-10-24 22:38:22 +13:00
Robert O'Callahan
ff38db98f3 Bug 264412. Refactor nsIFrame::GetRenderedText API to be more sane. r=mats,marcoz
The test changes here are to adjust for the fact that
nsTextFrame::GetRenderedText can now trim whitespace from the end of lines
that end in a hard line break.

--HG--
extra : commitid : Dn0U0KPLfbY
extra : rebase_source : 57a6ad2e3ba1f7ec6aef9b940d8facdbba7e9c91
2015-10-24 22:27:29 +13:00
Nathan Froyd
735e488da3 Bug 1217662 - part 2 - move mozilla::layers::LayerUserData to a separate header; r=mattwoodrow
Having to include all of Layers.h just to get at the definition of
LayerUserData is inconvenient, especially as most of the interesting
things in Layers.h can be forward-declared.  Let's move LayerUserData to
its own header, so clients can include a small header for that,
forward-declare anything else they need from Layers.h, and reduce header
bloat.
2015-10-22 16:04:35 -04:00
Nathan Froyd
01583602a9 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

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Nathan Froyd
583afa0965 Bug 1207245 - part 3 - switch all uses of mozilla::RefPtr<T> to nsRefPtr<T>; r=ehsan
This commit was generated using the following script, executed at the
top level of a typical source code checkout.

 # Don't modify select files in mfbt/ because it's not worth trying to
 # tease out the dependencies currently.
 #
 # Don't modify anything in media/gmp-clearkey/0.1/ because those files
 # use their own RefPtr, defined in their own RefCounted.h.
find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    grep -v 'mfbt/RefPtr.h' | \
    grep -v 'mfbt/nsRefPtr.h' | \
    grep -v 'mfbt/RefCounted.h' | \
    grep -v 'media/gmp-clearkey/0.1/' | \
    xargs perl -p -i -e '
 s/mozilla::RefPtr/nsRefPtr/g; # handle declarations in headers
 s/\bRefPtr</nsRefPtr</g; # handle local variables in functions
 s#mozilla/RefPtr.h#mozilla/nsRefPtr.h#; # handle #includes
 s#mfbt/RefPtr.h#mfbt/nsRefPtr.h#;       # handle strange #includes
'

 # |using mozilla::RefPtr;| is OK; |using nsRefPtr;| is invalid syntax.
find . -name '*.cpp' -o -name '*.mm' | xargs sed -i -e '/using nsRefPtr/d'

 # RefPtr.h used |byRef| for dealing with COM-style outparams.
 # nsRefPtr.h uses |getter_AddRefs|.
 # Fixup that mismatch.
find . -name '*.cpp' -o -name '*.h'| \
    xargs perl -p -i -e 's/byRef/getter_AddRefs/g'
2015-10-18 00:40:10 -04:00
Aniket Vyas
95a17ea52c Bug 1197315 - remove PR_snprintf calls in gfx/; r=froydnj 2015-10-12 14:06:19 -07:00
Nicolas Silva
6198b794c9 Bug 1083101 - rename gfx::Mutex into gfx::CriticalSection and move it to its own file. r=jrmuizel 2015-09-28 13:49:54 +02:00
Nicolas Silva
120cce1d84 Bug 1083101 - Win32 implementation of the JobScheduler. r=jrmuizel 2015-09-28 13:49:52 +02:00
Nicolas Silva
850e06aa00 Bug 1083101 - Add a task scheduler to Moz2D. r=jrmuizel 2015-09-28 13:49:43 +02:00
Nicolas Silva
ae47538b3f Bug 1083101 - Add a memory arena to Moz2D. r=jrmuizel 2015-09-28 13:49:33 +02:00
Nicholas Nethercote
89189f2ced Bug 1208283 (part 2) - Change ColorLayer::mColor, ColorLayerProperties::mColor, ReadbackLayer::mBackgroundColor from gfxRBGA to gfx::Color. r=jwatt.
This avoids some gfxRGBA-to-Color conversions.

--HG--
extra : rebase_source : ba62db5204301e4ab57f05b9f9901f986f5b09aa
2015-09-24 18:16:45 -07:00
Wes Kocher
d28eb4d8c9 Backed out bug 1083101 for build bustage CLOSED TREE
changesets backed out:
e39dfd9e05cb, cd54e93993b4, 61db1a51a7c4, c20fd7506bb7, b5e97b0facb7, cdf356cb817e, b058a918f443, d421e79326a2, 34a0be9af3f3, bba6f89ab775, 2fd5cfcea4e5

--HG--
extra : amend_source : 9dd084c69c78fd2248dfb1b9ba562b8a396ba205
extra : histedit_source : 7dc833e4d0e1656ed98f560b0bd8fec9e0aee3ef%2C1df84fdd3e0adae06356f9ffbafc49538ffb8729
2015-09-24 11:14:50 -07:00
Nicolas Silva
5c994c47a4 Bug 1083101 - Back 5 patches out due to windows build issues, CLOSED TREE. 2015-09-24 19:47:20 +02:00
Nicolas Silva
38f6ea4b47 Bug 1083101 - rename gfx::Mutex into gfx::CriticalSection and move it to its own file. r=jrmuizel 2015-09-24 17:35:37 +02:00
Nicolas Silva
0819b3e7d5 Bug 1083101 - Win32 implementation of the JobScheduler. r=jrmuizel 2015-09-24 17:35:30 +02:00
Nicolas Silva
dbac937791 Bug 1083101 - Add a task scheduler to Moz2D. r=jrmuizel 2015-09-24 17:35:10 +02:00
Nicolas Silva
d730a8ec5f Bug 1083101 - Add a memory arena to Moz2D. r=jrmuizel 2015-09-24 17:34:43 +02:00
Botond Ballo
0f6812acd5 Bug 1014691 - Move TestAsyncPanZoomController.cpp to gfx/layers/apz/test/gtest. r=kats,glandium
--HG--
rename : gfx/tests/gtest/TestAsyncPanZoomController.cpp => gfx/layers/apz/test/gtest/TestAsyncPanZoomController.cpp
extra : source : 18f51acd98206483573be0fcf636e6fcc76e89b0
2015-09-18 13:19:05 -04:00
Botond Ballo
7918cf6631 Bug 1014691 - Fix an include-what-you-use error in TestCompositor.cpp. r=kats
--HG--
extra : source : 561ac57efc474b5e7c4cad3c55ef24edb7c955b6
2015-09-16 19:45:14 -04:00
Botond Ballo
f6316bb39c Bug 1200063 - Rename MakeAPZCInstance to NewAPZCInstance for consistency. r=kats
--HG--
extra : source : acc5f6c432b709cf3519508579ae7076c6836a1f
2015-09-16 19:10:24 -04:00
Botond Ballo
3ec0663f3b Bug 1200063 - Share a paint throttler between APZCs in the same layers id. r=kats
In this process, TaskThrottler is made reference-counted.

--HG--
extra : source : 68295d4d1616e257732b8f2e8dd46c24debc8626
extra : intermediate-source : 2cd0c4caec06689c5325e23006d2cb14d40c5b5c
2015-09-16 14:45:07 -04:00
Botond Ballo
d84490b7db Bug 1200063 - Make APZCTreeManager the place where GetFrameTime() can be overridden. r=kats
--HG--
extra : source : b9e4b80438234e98f9304a6e29f0f4b9b8eb58a8
extra : intermediate-source : 3c88311ea92fef66479c08cd6b160de82d393249
2015-09-16 14:58:16 -04:00
Nicholas Nethercote
6f036921dc Bug 1203427 (part 1) - Add nsExpirationTracker::mName. r=froydnj.
There are many sub-classes of nsExpirationTracker. In order to distinguish them
nicely in the logging of timer firings, it's necessary to manually name each
one. (This wouldn't be necessary if there was a way to stringify template
parameters, but there isn't.)

--HG--
extra : rebase_source : 89b99e9dbb2a806bd21145d04a5e023794643b61
2015-09-09 21:07:07 -07:00
John Daggett
06366cd453 Bug 1203809 - pass textperf obj into gfxFontGroup constructor. r=m_kato
--HG--
extra : rebase_source : c9e9f4765b710937b046941a15e82eaf83c86b03
2015-09-11 13:24:33 +09:00
Nicholas Nethercote
2c42ac7941 Bug 1203379 - Fix indentation of gfxWordCacheTest.cpp. r=jrmuizel.
This file has an intriguing mix of 1, 2, 3 and 4 space indentation, which this
patch fixes. The patch also fixes a small number of other style violations,
such as long lines.

--HG--
extra : rebase_source : 5a4668ddc2441c190a393f3a8519ad451918c4f0
2015-09-09 20:51:33 -07:00
Nicholas Nethercote
f44287005f Bug 1198334 (part 1) - Replace the opt-in FAIL_ON_WARNINGS with the opt-out ALLOW_COMPILER_WARNINGS. r=glandium.
The patch removes 455 occurrences of FAIL_ON_WARNINGS from moz.build files, and
adds 78 instances of ALLOW_COMPILER_WARNINGS. About half of those 78 are in
code we control and which should be removable with a little effort.

--HG--
extra : rebase_source : 82e3387abfbd5f1471e953961d301d3d97ed2973
2015-08-27 20:44:53 -07:00
Ryan VanderMeulen
4dd652887b Backed out 7 changesets (bug 1083101) for static analysis bustage and debug gtest asserts.
Backed out changeset a277ab555649 (bug 1083101)
Backed out changeset 831ad34078f3 (bug 1083101)
Backed out changeset 42d622972b02 (bug 1083101)
Backed out changeset ff4b35d2f501 (bug 1083101)
Backed out changeset 00e568d08a1f (bug 1083101)
Backed out changeset d9448dc26a8a (bug 1083101)
Backed out changeset 8c943cd72144 (bug 1083101)

CLOSED TREE
2015-08-27 10:47:55 -04:00
Nicolas Silva
70f660d10a Bug 1083101 - Win32 implementation of Moz2D's task scheduler. r=jrmuizel 2015-08-27 14:47:16 +02:00
Nicolas Silva
1cfc57a5dc Bug 1083101 - Add a task scheduler to Moz2D. r=jrmuizel 2015-08-27 14:47:12 +02:00