Commit Graph

540 Commits

Author SHA1 Message Date
Milan Sreckovic
cec30dd69d Bug 1222033 - Rename gfxCrash to gfxDevCrash. r=jrmuizel 2015-11-09 07:28:00 +01:00
Nicholas Nethercote
3d0821d5fd Bug 1219476 (part 5) - Replace PRLogModuleInfo usage with LazyLogModule in gfx/. r=erahm.
--HG--
extra : rebase_source : c39ecc84dbe9a0f94b42f1c78dabf346ce3a3b9e
2015-10-29 15:58:24 -07:00
Milan Sreckovic
33b10a1074 Bug 1214802 - gfxEnv - consolidate environment variables used by the graphics code in one place. r=botond 2015-10-28 14:31:00 +01:00
Nicholas Nethercote
a34d272e2b Bug 1209812 (part 3) - Rename SurfaceFormat::R5G6B5 as R5G6B5_UINT16. r=Bas.
--HG--
extra : rebase_source : 1efcfb2522e823e55b5c7b77531a9d2c42c49c8b
2015-10-22 23:01:31 -07:00
Jamie Nicol
9e4ff3bb0b Bug 1210351 - Limit maximum computed tile size to 512x512. r=snorp
Larger tiles than that were causing some performance regressions and
increased memory usage, so are not deemed worthwhile.
2015-10-22 17:08:51 +01:00
John Daggett
f4458274bd Bug 543715 p1 - distinguish between italic and oblique. r=jfkthame 2015-10-19 11:16:43 +09:00
Phil Ringnalda
adfbc1f710 Back out 2 changesets (bug 543715) because Mulet is why we can't have nice things
Backed out changeset 2d1d8e9b095c (bug 543715)
Backed out changeset bc90276ec090 (bug 543715)
2015-10-18 11:22:22 -07:00
John Daggett
72b6bcd6d6 Bug 543715 p1 - distinguish between italic and oblique. r=jfkthame 2015-10-18 22:17:46 +09: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
Milan Sreckovic
07eeb05f0f Bug 1213007 - Part 1. Implementing gfxCrash. r=dvander 2015-10-14 08:24:00 +02:00
David Anderson
b2ef93be8f Fix layers.acceleration.force-enabled not working. (bug 1212659, r=jrmuizel) 2015-10-08 12:21:59 -07:00
Benoit Girard
2a2fca7ffa Bug 1199885 - Part 3: Add 'apz.drag.enabled' preference for async scrollbars. r=kats
--HG--
extra : commitid : FT9vDNL0XDw
extra : rebase_source : f5cd5f6e53c669f33fc628915cab1f6c57beaa11
2015-09-28 14:44:36 -04:00
Nicholas Nethercote
0e521772de Bug 1208945 - Rename Color::{To,From}ARGB() so they aren't easily confused with {To,From}ABGR(). r=Bas. 2015-09-24 18:16:50 -07:00
David Anderson
8c32d3122a Allow top-level window changes to the remembered compositor type. (bug 1211109 part 3, r=mattwoodrow) 2015-10-05 23:39:28 -07:00
John Daggett
72bb57d48b Bug 1182361 p4 - move pref font util methods to platform fontlist. r=heycam 2015-09-29 10:51:28 +09:00
James Willcox
158374ed78 Bug 1182665 - Adjust tile sizes depending on the screen size r=nical 2015-09-28 09:36:57 -05:00
James Willcox
9932c21923 Bug 1182665 - Add gfxPlatform::GetScreenSize() and use nsIScreen for gfxPlatform::GetScreenDepth() r=nical 2015-09-28 09:36:54 -05:00
Chris Peterson
e7dc549743 Bug 1204400 - Fix -Wshadow warnings in gfx/thebes and suppress those from Skia headers. r=BenWa 2015-09-11 20:30:14 -07:00
Mason Chang
76b8c1d6e8 Bug 1160216 - Add a preference to force software vsync and set software vsync rate. r=kats 2015-09-15 08:13:57 -07:00
David Anderson
7fc797a935 Don't run the compositor:created notification from within unsafer callers. (bug 1201684, r=mattwoodrow) 2015-09-13 23:51:45 -07:00
Wes Kocher
ca0fa7c1cb Backed out 4 changesets (bug 1182665) for android reftest orange CLOSED TREE
Backed out changeset 719a4fbded10 (bug 1182665)
Backed out changeset 9559cead8d08 (bug 1182665)
Backed out changeset 4080fb4b9a7f (bug 1182665)
Backed out changeset c8549221c366 (bug 1182665)
2015-09-11 11:21:56 -07:00
James Willcox
ec43fd4643 Bug 1182665 - Adjust tile sizes depending on the screen size r=nical 2015-09-11 09:09:19 -05:00
James Willcox
a80e13e6fe Bug 1182665 - Add gfxPlatform::CanUseDoubleBufferedContent() r=nical 2015-09-11 09:09:18 -05:00
James Willcox
6d957289cf Bug 1182665 - Add gfxPlatform::GetScreenSize() and use nsIScreen for gfxPlatform::GetScreenDepth() r=nical 2015-09-11 09:09:17 -05:00
Mason Chang
696de26763 Bug 1197201. Delete hardware vsync and vsync compositor prefs. r=kats 2015-08-24 11:27:23 -04:00
Chris Peterson
fa48ec17dc Bug 1194954 - Fix -Wunreachable-code warnings in gfx/layers and gfx/thebes. r=BenWa 2015-06-03 23:13:42 -07:00
Jeff Gilbert
f564deae5f Bug 1192466 - Prune header includes for SkiaGLGlue.h - r=bgirard 2015-08-07 19:27:14 -07:00
Matt Woodrow
741dbc133e Bug 1191040 - Ensure that we only compute the tile size once. r=BenWa
--HG--
extra : rebase_source : 1f3024d724384955220b95db5d347d12df4d22a8
2015-08-07 15:37:56 -04:00
Ryan VanderMeulen
55a80b1971 Backed out changeset 4e63305fe592 (bug 1191040) for Linux gtest crashes.
CLOSED TREE
2015-08-07 16:24:59 -04:00
Matt Woodrow
1e2e762f3c Bug 1191040 - Ensure that we only compute the tile size once. r=BenWa
--HG--
extra : rebase_source : ffe1817416bc678c4ea8a0a42d809afd4d3db86d
2015-08-07 15:37:56 -04:00
Ryan VanderMeulen
cf74a0c719 Backed out changeset 6ee70eb03b02 (bug 1183788) for Android crashes. 2015-08-05 10:24:55 -04:00
Dylan Roeh
f7ba5d71aa Bug 1183788 - Move all CanDetach/InitCanDetach logic into gfxPlatform.h/cpp. r=snorp 2015-08-04 17:02:18 -05:00
David Anderson
ac8c6304a9 Use the same graphics device parameters across processes. (bug 1183910 part 7, r=mattwoodrow) 2015-08-02 13:59:33 -07:00
Jesse Ruderman
7ed9e0fe1b Bug 1024259: Use NS_FREE_PERMANENT_DATA more consistently. r=mccr8 2015-07-31 12:11:48 -07:00
Lee Salzman
f15be30759 Bug 1188462 - Fix inclusion of skia headers to use correct directory prefixes. r=jrmuizel 2015-07-29 16:31:40 -04:00
Matt Woodrow
1fd9daec7d Bug 1188995 - Increase tile size to 512/1024 on OSX. r=jrmuizel,mstange
--HG--
extra : rebase_source : 5cb4fd3fa548498d320089ef034d5cdf7eb1f6b6
2015-07-29 18:21:26 -04:00
Matt Woodrow
a613b2b0b1 Bug 1150944 - Don't force the discrete GPU for skia gl. r=jrmuizel 2015-07-29 16:35:55 -04:00
Matt Woodrow
d2d5e5b9a3 Bug 1150944 - Add a flags parameter to GLContextProvider functions instead of a bool. r=jgilbert 2015-07-29 16:35:55 -04:00
Wes Kocher
ec1078c65a Backed out 6 changesets (bug 1150944, bug 1034370) for build failures in WebGLContext.cpp CLOSED TREE
Backed out changeset e2a6160242e5 (bug 1150944)
Backed out changeset 1c510537d20b (bug 1150944)
Backed out changeset 7ae813666ed5 (bug 1150944)
Backed out changeset 2f29ac2e31cd (bug 1150944)
Backed out changeset bf7681b1567e (bug 1150944)
Backed out changeset 79c6b8d014d2 (bug 1034370)
2015-07-29 14:16:17 -07:00
Matt Woodrow
04c916856f Bug 1150944 - Don't force the discrete GPU for skia gl. r=jrmuizel 2015-07-29 16:35:55 -04:00
Matt Woodrow
501c8bec02 Bug 1150944 - Add a flags parameter to GLContextProvider functions instead of a bool. r=jgilbert 2015-07-29 16:35:55 -04:00
David Anderson
b18f329c76 Refactor graphics device initialization on Windows. (bug 1183910 part 1, r=mattwoodrow,bas)
This patch addresses a number of inconsistencies in the device initialization process, as well as simplifying it for future use. All device decisions are now explicitly made up-front during startup, rather than implicitly or on-demand. In addition a number of restrictions have been placed on when we can construct devices.

Full change list:
 (1) We no longer attempt to use D3D11 if acceleration is disabled or D3D9 is preferred. This is a departure from our previous behavior, where we would construct these devices but then not use them as a compositor backend.
 (2) D3D11 startup no longer creates a content device (this is reserved for D2D initialization).
 (3) D2D is only attempted if we managed to create a D3D11 compositor device. This is a departure from previous behavior where if D3D11 was not used for compositing, we could still create its machinery to use D2D as a content backend.
 (4) D2D 1.1 initialization is now directly responsible for creating a D3D11 content device.
 (5) D2D 1.0 and 1.1 logic have been disentangled for clarity.
 (6) UpdateRenderMode() has been split up, so we can update backend prefs out of band with device resets.
 (7) mUseGDIFonts and mUseDirectWrite have been removed as their state was confusing. Instead, D2D now depends on DWrite initialization succeeding. If later we fail to get a DWrite font list, we revert our decision to use Direct2D.
 (8) Device resets now clear a little more state, including the devices set in Moz2D Factory.
 (9) We no longer create a DWrite text analyzer as it was unused.
2015-07-28 16:52:54 -07:00
David Anderson
ddaede9c8e Add compositor, layers, and rendering info to nsIGfxInfo. (bug 1179051 part 5, r=mattwoodrow) 2015-07-19 14:50:35 -07:00
Ryan VanderMeulen
734c9eb563 Backed out changesets 90446493d402 and c4f4027f9f3a (bug 1179051) for crashes. 2015-07-19 22:39:20 -04:00
David Anderson
28d2dc3e58 Add compositor, layers, and rendering info to nsIGfxInfo. (bug 1179051 part 5, r=mattwoodrow) 2015-07-19 14:50:35 -07:00
David Anderson
65475c97d0 Move compositor backend decisions into gfxPlatform. (bug 1179051 part 3, r=mattwoodrow)
--HG--
extra : rebase_source : 43cdb0e1b5d464f8d6a0cc7a0b2e36d1b34e8595
2015-07-16 15:18:05 -07:00
Jeff Muizelaar
7bc6837af6 Bug 1178426. Add GfxInfo to ServicesList.h. r=nfroyd
--HG--
extra : rebase_source : b18fb78fa6b7d86fbb9496861938bfde21b3c6e6
2015-07-08 16:51:09 -04:00
Botond Ballo
9eadc95b3f Bug 1181832 - Keep gfxPrefs.h out of header files. r=kats
--HG--
extra : rebase_source : 33d5abb8f12f1173ae50d1712f15e273f9b26ace
extra : source : 4bd2e2744ef1b914d2859f3433b6b9026d91401b
2015-07-13 11:53:10 -04:00
Birunthan Mohanathas
a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00