Commit Graph

112 Commits

Author SHA1 Message Date
David Anderson
2c5e03e62e Don't reset devices for each tab when the compositor resets. (bug 1316788, r=rhunt) 2016-11-14 11:47:01 -08:00
Ethan Lin
d2db92ebce Bug 1295742 - Add gfxCriticalNote for driver reset. r=jerry, r=dvander 2016-08-25 02:17:00 -04:00
Kan-Ru Chen
b6d880aca1 Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
The patch is generated from following command:

  rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,

MozReview-Commit-ID: AtLcWApZfES


--HG--
rename : mfbt/unused.h => mfbt/Unused.h
2016-08-24 14:47:04 +08:00
David Anderson
97a92d5d5e Extract a delegate interface out of WinCompositorWidget. (bug 1281998 part 6, r=jimm) 2016-07-01 01:15:16 -07:00
David Anderson
3f0ea0572d Rename CompositorWidgetProxy files to CompositorWidget. (bug 1281998 part 2, r=jimm)
--HG--
rename : widget/CompositorWidgetProxy.cpp => widget/CompositorWidget.cpp
rename : widget/CompositorWidgetProxy.h => widget/CompositorWidget.h
rename : widget/windows/WinCompositorWidgetProxy.cpp => widget/windows/WinCompositorWidget.cpp
rename : widget/windows/WinCompositorWidgetProxy.h => widget/windows/WinCompositorWidget.h
2016-07-01 01:15:16 -07:00
Phil Ringnalda
0d0d24bccc Back out 7 changesets (bug 1281998) for Windows Marionette crashes
Backed out changeset d806fac2c856 (bug 1281998)
Backed out changeset b8d4fedfd7eb (bug 1281998)
Backed out changeset a72929c0c3ec (bug 1281998)
Backed out changeset 74198f88fa37 (bug 1281998)
Backed out changeset 54a0e73f6906 (bug 1281998)
Backed out changeset 99d1da1293b7 (bug 1281998)
Backed out changeset a5a9585754b1 (bug 1281998)

--HG--
rename : widget/CompositorWidget.cpp => widget/CompositorWidgetProxy.cpp
rename : widget/CompositorWidget.h => widget/CompositorWidgetProxy.h
rename : widget/windows/WinCompositorWidget.cpp => widget/windows/WinCompositorWidgetProxy.cpp
rename : widget/windows/WinCompositorWidget.h => widget/windows/WinCompositorWidgetProxy.h
2016-06-29 19:35:24 -07:00
David Anderson
4853817add Extract a delegate interface out of WinCompositorWidget. (bug 1281998 part 6, r=jimm)
--HG--
extra : rebase_source : 66e23a6efd766341a97ab46f1c52b368f145d849
2016-06-29 16:47:23 -04:00
David Anderson
804c1ee06f Rename CompositorWidgetProxy files to CompositorWidget. (bug 1281998 part 2, r=jimm)
--HG--
rename : widget/CompositorWidgetProxy.cpp => widget/CompositorWidget.cpp
rename : widget/CompositorWidgetProxy.h => widget/CompositorWidget.h
rename : widget/windows/WinCompositorWidgetProxy.cpp => widget/windows/WinCompositorWidget.cpp
rename : widget/windows/WinCompositorWidgetProxy.h => widget/windows/WinCompositorWidget.h
extra : rebase_source : 8ecf59ad6039f0d0d2a51008aef53ef37aa2ce0e
2016-06-29 16:47:22 -04:00
Nicholas Nethercote
a02611e830 Bug 1276824 (part 1) - Rename gfxContext::ForDrawTarget{,WithTransform}(). r=milan.
The new names Create{,PreservingTransform}OrNull() better communicate that
these functions (a) do object creation, and (b) are fallible.

--HG--
extra : rebase_source : a36bd9a2bcdfae281868959403f811f2bc690ad4
2016-06-07 09:39:56 +10:00
David Anderson
3189d8ab85 Use IPC to schedule composites on Windows. (bug 1272472 part 3, r=jimm) 2016-05-17 22:33:21 -07:00
Timothy Nikkel
bf94e2fc4e Bug 1261752. Part 3. r=mats 2016-05-10 22:58:47 -05:00
Kyle Huey
941ab1f522 Bug 1268313: Part 7 - Move NS_NewRunnableMethod and friends to mozilla::NewRunnableMethod. r=froydnj 2016-05-05 01:45:00 -07:00
David Anderson
d4a4548584 Move transparency handling to WinCompositorWigetProxy. (bug 1265975 part 4, r=jimm) 2016-05-04 22:00:14 -07:00
Carsten "Tomcat" Book
ba3fe0975c Backed out changeset 85ce8cb0639a (bug 1268313)
--HG--
extra : rebase_source : 56d1cf41a2dc4959b67f834e07192a5c772176a8
2016-04-29 14:21:16 +02:00
Kyle Huey
48a594a09e Bug 1268313: Part 7 - Move NS_NewRunnableMethod and friends to mozilla::NewRunnableMethod. r=froydnj 2016-04-28 14:08:25 -07:00
Mason Chang
d9030afc50 Bug 1267253 - Delete gfxWindowsPlatform::RenderMode and replace it with a check against the default backend. r=bas 2016-04-21 14:35:13 -07:00
Bas Schouten
1da95b4b2b Bug 1256728: Don't force presentation during resize. r=jrmuizel
MozReview-Commit-ID: 6eT8XpkVrKH

--HG--
extra : rebase_source : fd844339a045c03fc7b1a455d0836f9deac78ec7
2016-04-18 13:23:15 +00:00
Milan Sreckovic
e0b2b9e425 Bug 1259513: Make gfxContext constructor private, use a utility function that can return nullptr. r=bas,lsalzman
MozReview-Commit-ID: rHhLEDZEQt

--HG--
extra : rebase_source : 4988f3f488c19dd35a9979e96f78a5511ee8f3d2
2016-04-12 15:18:11 -04:00
Bas Schouten
53337aafef Bug 1256547: When the DWM is disabled don't force presentation. r=milan
MozReview-Commit-ID: 4fd8QUWq0f1

--HG--
extra : rebase_source : b0ea7bca01be0bc89e37b4525be9d1a82f4168da
2016-04-11 13:08:00 +02:00
Nathan Froyd
392bfacb03 Bug 1261818 - don't pass nsAutoCStrings into nsBaseWidget debugging methods; r=karlt
Passing raw character pointers works just fine.
2016-03-31 14:42:13 -04:00
Milan Sreckovic
7328ef12ac Bug 1256728: Add environment variable to disable force present from bug 1232042. r=BenWa
MozReview-Commit-ID: 5jRr0dPMKRV

--HG--
extra : rebase_source : 2f7b8d0f52ebcabd4663ca0c19c62b9efee0bff4
2016-03-28 12:59:38 -04:00
David Anderson
f3dc22db8d Rename PCompositor to PCompositorBridge. (bug 1258479 part 2, r=mattwoodrow)
--HG--
rename : gfx/layers/ipc/CompositorChild.cpp => gfx/layers/ipc/CompositorBridgeChild.cpp
rename : gfx/layers/ipc/CompositorChild.h => gfx/layers/ipc/CompositorBridgeChild.h
rename : gfx/layers/ipc/CompositorParent.cpp => gfx/layers/ipc/CompositorBridgeParent.cpp
rename : gfx/layers/ipc/CompositorParent.h => gfx/layers/ipc/CompositorBridgeParent.h
2016-03-22 14:08:38 -04:00
David Anderson
c00e9a5d93 Handle device resets by recreating the compositor, rather than the compositor IPDL stack. (bug 1245765 part 7, r=mattwoodrow) 2016-02-29 01:53:15 -05:00
David Anderson
dd2df9d99a Remove some static_casting in CompositorParent. (bug 1245765 part 5, r=mattwoodrow) 2016-02-29 01:53:14 -05:00
Bas Schouten
36d729fab3 Bug 1232042: Execute an additional present for D3D11 on the compositor thread when a WM_PAINT event has returned. r=jrmuizel 2016-02-24 03:50:09 +00:00
Phil Ringnalda
a5861fc16a Back out 6a24b31747be (bug 1232042) for crashes @RecvForcePresent
CLOSED TREE
2016-02-23 21:27:46 -08:00
Bas Schouten
fd04611c7c Bug 1232042: Execute an additional present for D3D11 on the compositor thread when a WM_PAINT event has returned. r=jrmuizel 2016-02-24 03:50:09 +00:00
Wes Kocher
4c4e5f57b5 Backed out changeset 3dce92c9562d (bug 1232042) for causing Win7 slaves to apparently crash and lock up a=backout
--HG--
extra : commitid : LR9A2AvlKN6
2016-02-17 11:11:10 -08:00
Bas Schouten
fe90bf3a21 Bug 1232042: Workaround Windows presentation bug by executing a present call on the main thread during a WM_PAINT event. r=jrmuizel
MozReview-Commit-ID: JbPdhIi9zCd
2016-02-06 03:14:44 +00:00
Phil Ringnalda
ac03b87535 Back out aeceae3e0e96 (bug 1232042) for Win8 crashes @nvwgf2umx.dll + 0x2d416a in addon manager tests 2016-02-06 09:52:35 -08:00
Bas Schouten
06a81d915b Bug 1232042: Workaround Windows presentation bug by executing a present call on the main thread during a WM_PAINT event. r=jrmuizel
--HG--
extra : commitid : K5S8gKJzzhj
2016-02-06 03:14:44 +00:00
Xidorn Quan
dd6be4d4ca Bug 1241901 part 4 - Stop using nsAutoPtr for holding primitive arrays. r=froydnj
--HG--
extra : source : 683ad831dc3e7fc197cbfe1b53665c777b3158ab
2016-01-30 10:33:41 +11:00
Nicholas Nethercote
88696a303a Bug 1209812 (part 6) - Convert all gfxImageFormat values to SurfaceFormat equivalents. r=jrmuizel.
This patch:

- Makes the following substitutions (plus necessary namespace qualifiers:

    gfxImageFormat::ARGB32      --> SurfaceFormat::A8R8G8B8_UINT32
    gfxImageFormat::RGB24       --> SurfaceFormat::X8R8G8B8_UINT32
    gfxImageFormat::A8          --> SurfaceFormat::A8
    gfxImageFormat::RGB16_565   --> SurfaceFormat::R5G6B5_UINT16
    gfxImageFormat::Unknown     --> SurfaceFormat::UNKNOWN

- Changes gfxImageFormat to be a typedef to gfx::SurfaceFormat. This will be
  removed soon.

- Removes gfxCairoFormatToImageFormat() and gfxImageFormatToCairoFormat() and
  replace calls to them with CairoFormatToGfxFormat() and
  GfxFormatToCairoFormat().

- Removes ParamTraits<gfxImageFormat>.

- Add namespace qualifiers to SurfaceFormat instances where necessary.

--HG--
extra : rebase_source : f56e92b1593957a9e4e00171100bc7605816e696
2016-01-07 20:57:38 -08:00
Nicholas Nethercote
82700fe5f9 Bug 1230047 (part 2) - Make several PaintWindow() functions use LayoutDevice coordinates. r=kats.
Specifically, the PaintWindow() functions in the following classes:
- nsIWidgetListener, and its subclasses nsView and nsWebBrowser;
- nsChildView;
- nsWindow (the one in widget/uikit/);
- nsViewManager.

--HG--
extra : rebase_source : e5e0af18c57f1c44995832b403edc7eee939dc31
2015-12-02 21:45:41 -08:00
Birunthan Mohanathas
9985829ecc Bug 1219392 - Capitalize mozilla::unused to avoid conflicts. r=froydnj 2015-11-02 07:53:26 +02:00
Nathan Froyd
ce836868f3 Bug 1218488 - clarify buffer ownership for nsICanvasRenderingContextInternal::GetBuffer; r=Bas,baku
This patch started life as making ImageEncoder.cpp:EncodingRunnable not
use nsAutoArrayPtr, but the API effects rippled out from there.  On the
whole, I think using UniquePtr throughout has made the code clearer.
2015-10-26 14:31:12 -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
Nicholas Nethercote
842dd1cf5a Bug 1207741 - Remove gfxIntSize. r=nical.
gfxIntSize is just a typedef of gfx::IntSize, so this is very mechanical. The
only tricky part is deciding for each occurrence whether to replace it with
IntSize, gfx::IntSize or mozilla::gfx::IntSize; in all cases I went with the
shortest one that worked given the existing "using namespace" declarations.

--HG--
extra : rebase_source : 67fd15f87222b16defa70ef795c6d77dfacf1c36
2015-09-23 11:49:05 -07:00
Lee Salzman
54aee35d35 Bug 1159273 - Fix out-dated Cairo usage that may fail to build or work properly when system Cairo is involved. r=jrmuizel 2015-05-13 12:00:30 +09:00
Jim Mathies
46a2e007da Bug 1132874 - Simplify PPluginWidget protocol handling, and avoid sending async messages from the parent. Addresses a problem with sub protocols that are torn down randomly from either side of the connection. r=aklotz 2015-04-07 08:17:27 -05:00
Milan Sreckovic
76dd5cd892 Bug 1140113 - Catch direct (and some indirect) callers of CreateDrawTarget* and deal with failure. r=mstange 2015-03-09 15:48:20 -04:00
Bas Schouten
c7306e4a06 Bug 1136487: Destroy the compositors for all windows when any window detects a device reset. r=jrmuizel 2015-02-25 18:04:18 +00:00
Jim Mathies
ba6bf1ca56 Bug 1095754 - Provide a way to force an update on a plugin window asyncronously from chrome. Trigger an update when we adjust the widget configurations. r=aklotz 2015-01-29 13:41:56 -06:00
Bas Schouten
e5c9fca270 Bug 1097699 - Part 3: Remove usage of LayerManagerD3D10. r=jrmuizel 2015-01-23 03:41:20 +00:00
Bas Schouten
0de983be82 Bug 1097699 - Part 1: Remove usage of LayerManagerD3D9. r=jrmuizel 2015-01-23 03:41:20 +00:00
Bas Schouten
9ab9d86962 Bug 1107718: Properly deal with a D3D11 device reset. r=nical 2015-01-08 00:10:49 +00:00
Jonathan Watt
e598736fc1 Bug 1103621 - Get rid of GraphicsOperator::OPERATOR_CLEAR. r=mattwoodrow 2014-11-20 10:40:04 +00:00
Jim Mathies
393f9133f0 Bug 669200 - Follow up fix for busted non-unified builds, include nsIXULRuntime.h in nsWindowGfx.cpp. r=bustage 2014-11-12 17:23:35 -06:00
Jim Mathies
03f61a003c Bug 669200 - Shunt access to PluginInstanceParent in widget/windows/nsWindowGfx, since it is no longer accessible in the chrome process. r=aklotz 2014-11-12 14:59:21 -06:00