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

143 Коммитов

Автор SHA1 Сообщение Дата
Jeff Gilbert 2ab455c28d Bug 1482974 - Prefer to initialize members at declaration in gfx/gl. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D3240

--HG--
extra : moz-landing-system : lando
2018-08-17 22:21:26 +00:00
Jeff Gilbert 3cdbe9fdb9 Bug 1349799 - Implement WebGLPowerPreference and gl::CreateContextFlags::HIGH_POWER. - r=kvark
Based on patches by :daoshengmu.

MozReview-Commit-ID: FSbJV8DLyJ4
2018-06-26 15:22:26 -07:00
Cosmin Sabou a2f9b1e3eb Backed out 2 changesets (bug 1349799) for build bustages on WebGLContext.cpp. CLOSED TREE
Backed out changeset ee86c06ef4cf (bug 1349799)
Backed out changeset c26fe9f3466f (bug 1349799)
2018-06-26 04:21:08 +03:00
Jeff Gilbert a98de2afca Bug 1349799 - Implement WebGLPowerPreference and gl::CreateContextFlags::HIGH_POWER. - r=kvark
Based on patches by :daoshengmu.

MozReview-Commit-ID: FSbJV8DLyJ4
2018-06-25 17:58:03 -07:00
Markus Stange a52e472ae7 Bug 1449271 - Add a pref called gfx.compositor.glcontext.opaque that defaults to false and can be set to true in order to force the use of an opaque OpenGL context for the window on Mac. r=jrmuizel
MozReview-Commit-ID: InOKiLXGL7o

--HG--
extra : rebase_source : f21566cfb6c084ceb726e9a0331f430b6a72e4c6
2018-03-27 14:43:38 -04:00
Jeff Gilbert ea479cbf60 Bug 1390386 - Remove duplicate IsCurrent checks in MakeCurrentImpls. - r=jrmuizel
MozReview-Commit-ID: LZeLbciWnic
2017-11-28 17:13:17 -08:00
Jeff Gilbert fbf8b4797b Bug 1390386 - IsCurrent should understand mImplicitMakeCurrent. - r=jrmuizel
MozReview-Commit-ID: 7vMRUPMc3nN
2017-11-28 17:13:07 -08:00
Jeff Gilbert 9c2ba78435 Bug 1390386 - Make MakeCurrent const. - r=daoshengmu
MozReview-Commit-ID: 3m3T6iMgZOc
2017-11-28 17:12:39 -08:00
Nicholas Nethercote 58786e1ea7 Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.

--HG--
extra : rebase_source : 318d1bc6fc1425a94aacbf489dd46e4f83211de4
2017-06-22 17:08:53 +10:00
Jeff Gilbert a0ef36e101 Bug 1347679 - Determine ContextProfile from driver and simplify version parsing. - r=daoshengmu
MozReview-Commit-ID: 4mBdJmsxQvD
2017-03-17 17:02:01 -07:00
Jeff Gilbert 3fc6d1fc74 Bug 1344433 - Reformat. - r=daoshengmu
MozReview-Commit-ID: 8W0oGeHBYtR
2017-03-06 15:39:36 -08:00
Kartikaya Gupta bf7599ac75 Merge m-c to graphics
MozReview-Commit-ID: 8BjfShvh5gp
2017-02-03 10:39:57 -05:00
Jeff Gilbert 195cc8411d Bug 1335296 - Expand about:support WebGL information. - r=qdot,daoshengmu,jrmuizel
MozReview-Commit-ID: 166aNL6VSOa
2017-02-02 16:50:19 -08:00
Kartikaya Gupta ae11d416ec Bug 1326421 - Update GL context creation code to use compositor-specific WebRender flag instead of a global pref. r=dvander
MozReview-Commit-ID: DQkGHCAxu3I
2017-01-13 15:16:52 -05:00
Kartikaya Gupta 1f97dac250 Back out 4 csets from bug 1326421 because of various test failures. r=backout 2017-01-13 17:07:59 -05:00
Kartikaya Gupta a1fc730a16 Bug 1326421 - Update GL context creation code to use compositor-specific WebRender flag instead of a global pref. r=dvander
MozReview-Commit-ID: DQkGHCAxu3I
2017-01-13 15:16:52 -05:00
JerryShih ca6059b422 Bug 1329574 - enable depth-buffer for CGL gl context. r=mchang
MozReview-Commit-ID: J1xT0xDI715
2017-01-13 20:02:20 +08:00
sotaro 8726336a39 Bug 1320284 - Switch WebRender by Pref r=nical? 2016-12-04 17:40:52 +09:00
Mozilla Graphics Team e82d29b96e Bug 1317774 - Add gfx code needed to use WebRender in gecko. r=gfx
The overall architecture here is that we add a new layers type, LAYERS_WR,
which can be used in place of client layers. The WebRenderLayerManager, in
the EndTransaction call, paints content into images and ships them over the
PWebRenderBridge to the compositor thread. The WebRenderBridgeParent code on
the compositor side talks to WebRender via the API in webrender.h.

MozReview-Commit-ID: JKLTLJWVXiN
2016-11-16 08:54:51 -05:00
Jamie Nicol 9a0a722f7b Bug 1311642 - Remove BeginUpdate and EndUpdate from GLTextureImage. r=nical
Only DirectUpdate was actually being used, so remove the dead
code. TextureImageCGL does't do anything over BasicTextureImage any more
so remove it too.

MozReview-Commit-ID: D7jpC9M7aTT

--HG--
extra : rebase_source : 7846439aa5cb320704b8f811f3203fe7fd31c51e
2016-10-20 17:11:00 +01:00
Ryan Hunt 7467d1ee3f Bug 1288860 - Change GLContextProvider to use CompositorWidget. r=jrmuizel
--HG--
extra : rebase_source : 92e481ef6b499d773e6e98591f22675b05b71c69
2016-07-25 14:41:00 -04:00
Jeff Gilbert 41c6dce417 Bug 1279657 - Fix missed callsites. - r=jrmuizel
MozReview-Commit-ID: 8RY2D5OTnZ5
2016-06-21 14:04:00 -07:00
Jeff Gilbert fe7590ad04 Bug 1279657 - failureId outvar should be a pointer. - r=benwa
MozReview-Commit-ID: 4s0OqZcHno5
2016-06-21 14:04:00 -07:00
Jeff Gilbert f24d3f8f8b Bug 1279657 - Star to left against type. - r=jrmuizel
MozReview-Commit-ID: IAuzZp4qcRX
2016-06-21 14:04:00 -07:00
Jeff Gilbert 774abaa5e4 Bug 1278403 - Spread CreateContextFlags to GLContext::ctor. - r=jrmuizel
MozReview-Commit-ID: 4rPitIpn60l
2016-06-21 13:47:30 -07:00
Carsten "Tomcat" Book 0f670f3910 Backed out changeset dfe70885c37c (bug 1279657) 2016-06-17 13:33:08 +01:00
Carsten "Tomcat" Book c0c2282bfb Backed out changeset 097dc302f5a0 (bug 1279657) 2016-06-17 13:33:06 +01:00
Jeff Gilbert 30c5609435 Bug 1279657 - failureId outvar should be a pointer. - r=benwa
MozReview-Commit-ID: 4s0OqZcHno5
2016-06-17 05:10:55 -07:00
Jeff Gilbert 1d4c021d59 Bug 1279657 - Star to left against type. - r=jrmuizel
MozReview-Commit-ID: IAuzZp4qcRX
2016-06-17 05:10:55 -07:00
Benoit Girard 2586414710 Bug 1276732 - Report the GLContext error to WebGL for telemetry. r=jrmuizel
MozReview-Commit-ID: 24eb4FXMOiI

--HG--
extra : rebase_source : 391e44f4d4fdcf5782053fc6c3e9b17e651a9a1f
2016-06-06 16:52:42 -04:00
Benoit Girard 24a4187d15 Backed out changeset 4264b01fd313 (Bug 1276732) for causing build bustage
MozReview-Commit-ID: KnEpCcI9a13
2016-06-06 13:37:59 -04:00
Benoit Girard c391acc0f7 Bug 1276732 - Report the GLContext error to WebGL for telemetry. r=jrmuizel
MozReview-Commit-ID: Am733GJkOSb

--HG--
extra : rebase_source : 1eaf4e281b2415f0adcae7e9585a29d912685358
2016-06-06 13:20:13 -04:00
Jeff Gilbert ed674372da Bug 1262265 - Cleanup GLContext symbol init. - r=jrmuizel 2016-04-21 16:32:18 -07:00
Daniel Holbert d2514c163c Backed out changeset d3aab3c4eb5f (Bug 1262265) for fatal GL-related assertion failures in debug reftest runs
MozReview-Commit-ID: BBmMY1dd1s7
2016-04-19 18:03:17 -07:00
Jeff Gilbert 642da66065 Bug 1262265 - Cleanup GLContext symbol init. - r=jrmuizel 2016-04-19 16:19:31 -07:00
Wes Kocher 0e32f257b8 Backed out changeset 9438150c5258 (bug 1262265) for mass android test bustage CLOSED TREE
MozReview-Commit-ID: FsPsAyGT3Vi
2016-04-11 15:42:37 -07:00
Jeff Gilbert 1aef4bc738 Bug 1262265 - Cleanup InitWithPrefix. - r=jrmuizel 2016-04-11 15:01:35 -07:00
Markus Stange 258bcc1298 Bug 1187322 - Don't require accelerated OpenGL contexts for BasicCompositor on OS X. r=jrmuizel
--HG--
extra : commitid : D8wNlw49VVb
extra : rebase_source : f0c93866f09de396e835a2920d5db54efe53ffda
extra : amend_source : 7ed5dda1bd555ecc353137bfc9b00b10992a86a1
2015-12-23 16:22:55 +01:00
Jeff Gilbert 19d84fb0fe Bug 1221822 - Finish the WebGL texture refactor. r=kamidphish,mattwoodrow,bz 2015-11-24 20:15:29 -08:00
Phil Ringnalda 71a6f5da62 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 87397c265b Bug 1221822 - Finish the WebGL texture refactor. r=kamidphish,mattwoodrow,bz 2015-11-23 19:27:13 -08:00
Benoit Girard f167bfd6b8 Bug 1223540 - Add a pref for CGL's multithreaded mode (EMPEngine). r=jrmuizel
--HG--
extra : commitid : AGxBynhmllr
extra : rebase_source : 744bf8e02589cc919eb41471979f69d10683716f
2015-11-10 16:14:24 -05: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
Jeff Gilbert 187dfafc29 Bug 1191042 - Use CreateOffscreen for WebGL instead of CreateHeadless. - r=jrmuizel 2015-09-24 12:21:05 -07:00
Phil Ringnalda 449e9119b4 Back out f84aedf7a62d (bug 1191042) for b2g emulator test failures
CLOSED TREE
2015-09-22 19:26:13 -07:00
Jeff Gilbert 8d443901df Bug 1191042 - Use CreateOffscreen for WebGL instead of CreateHeadless. - r=jrmuizel 2015-09-22 16:49:25 -07: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