Commit Graph

96 Commits

Author SHA1 Message Date
Nicholas Nethercote
4ebfdea1f5 Bug 1325234 (part 10) - Final nsIWidget deCOMtamination clean-ups. r=mstange.
This patch converts some NS_IMETHOD and NS_IMETHODIMP occurrences that I missed
in previous bugs.

The patch also removes the Android
nsWindow::{Get,Set}HasTransparentBackground() functions because they're unused.

--HG--
extra : rebase_source : 7b121e5f9ac633ea9482bacc8b7424cb8d8889ef
2016-12-21 15:58:09 +11:00
Nicholas Nethercote
523bee37b8 Bug 1325234 (part 9) - Remove remaining NS_IMETHOD_ occurrences from nsIWidget. r=mstange.
|virtual T| is clearer than |NS_IMETHOD_(T)|.

--HG--
extra : rebase_source : 9c8f423d7a89782a4d790a50e137071271086eed
2016-12-21 15:27:20 +11:00
Nicholas Nethercote
bf4a843d70 Bug 1325234 (part 8) - Streamline nsIWidget::DispatchEvent. r=jimm.
This patch changes it from |NS_IMETHOD| to |virtual nsresult| because some
callsites are checked and some aren't.

--HG--
extra : rebase_source : dd98266bce0a7583863908b6f04729a6e403b721
2016-12-21 11:18:40 +11:00
Nicholas Nethercote
e52b19470c Bug 1325234 (part 6) - Streamline nsIWidget::SetTitle. r=jimm.
This patch changes it from |NS_IMETHOD| to |virtual nsresult| because some call
sites are checked and others aren't.

--HG--
extra : rebase_source : 6723b9db709d1506dd394b1e85572309c1c2e2cf
2016-12-21 11:13:08 +11:00
Nicholas Nethercote
0eaecf55da Bug 1325234 (part 4) - Streamline nsIWidget::{SetFocus,SetNonClientMargins}(). r=mstange.
This patch changes them from |NS_IMETHOD| to |virtual nsresult|.

--HG--
extra : rebase_source : 5e54c2fd340c393b33c9e1dcf20a80fe2f41b2f4
2016-12-21 11:13:08 +11:00
Nicholas Nethercote
da5978a842 Bug 1325234 (part 3) - Streamline nsIWidget::Show(). r=mstange.
This patch changes it from |NS_IMETHOD| to |virtual void|. The return value was
only checked in one low-value assertion and one other place where the check had
no useful effect (in nsCocoaWindow::HideWindowChrome()).

--HG--
extra : rebase_source : f6671e9e0e10ee18fb32f8b1c83f1e64c3d97e67
2016-12-21 11:12:54 +11:00
Nicholas Nethercote
e2d9e4ed68 Bug 1325234 (part 2) - Streamline nsIWidget::Invalidate(). r=jimm.
This patch changes it from |NS_IMETHOD| to |virtual void|. The return value was
only checked in one low-value assertion so I decided it wasn't needed.

--HG--
extra : rebase_source : 3523d9a086cf98c40d237d777f5dd471af0d7465
2016-12-20 09:55:32 +11:00
Nicholas Nethercote
3af5047314 Bug 1299335 (part 8) - Streamline nsIWidget::Enable. r=mstange.
This patch changes it from |NS_IMETHOD| to |virtual void| because every
implementation of these functions always returns |NS_OK|.

--HG--
extra : rebase_source : 07ee29c514bf35b97d7195c53bb5b9220d1ef961
2016-12-19 20:54:16 +11:00
Nicholas Nethercote
a28c8f38b2 Bug 1299335 (part 7) - Streamline nsIWidget::{Move,Resize}. r=mstange.
This patch changes them from |NS_IMETHOD| to |virtual void| because every
implementation of these functions always returns |NS_OK|.

--HG--
extra : rebase_source : 6207df5a46aeb6b8aaa0f697447a51bc6a6dc366
2016-12-19 20:54:03 +11:00
Nicholas Nethercote
346d5f4895 Bug 1296993 (part 7) - Streamline nsIWidget::CaptureRollupEvents. r=mstange.
This patch does the following.

- Removes the return value, because none of the call sites check it.

- Puts an empty implementation into nsBaseWidget.

- Removes the empty implementations from several nsIWidget instances, because
  they can use the nsBaseWidget one.

--HG--
extra : rebase_source : 2a94a47f1e7fe986d1efc3854c72968a3e28e365
2016-08-25 13:43:27 +10:00
Nicholas Nethercote
d8684f0659 Bug 1296993 (part 3) - Streamline nsIWidget::ConstrainPosition. r=mstange.
This patch does the following.

- Removes the return value, because none of the call sites check it.

- Puts an empty implementation into nsBaseWidget.

- Removes the empty implementations from several nsIWidget instances, because
  they can use the nsBaseWidget one.

--HG--
extra : rebase_source : ccf64aaa9364d096e1f060ef77be7e8455b11e1f
2016-08-25 13:43:27 +10:00
Nicholas Nethercote
ff02e25e13 Bug 1296993 (part 1) - Streamline nsIWidget::ReparentNativeWidget. r=mstange.
This patch does the following.

- Removes the return value, because none of the call sites check it.

- Puts an empty implementation into nsBaseWidget.

- Removes the empty implementations from several nsIWidget instances, because
  they can use the nsBaseWidget one.

--HG--
extra : rebase_source : e98b7f9970a920c39e941bb531dfc098125913d1
2016-08-25 13:43:26 +10:00
Nicholas Nethercote
367d94e34e Bug 1293596 (part 7) - Make nsIWidget::Destroy infallible. r=karlt.
--HG--
extra : rebase_source : 403d279c432c70671aa85991868d006c1f2da81d
2016-08-10 10:04:11 +10:00
Nicholas Nethercote
3fda0deee8 Bug 1293596 (part 5) - Tweak nsIWidget::MakeFullScreen{,WithNativeTransition}(). r=mstange.
They don't need to be NS_IMETHOD.

The patch also gives nsBaseWidget an InfallibleMakeFullScreen() function, which
avoids the need for some checks.
2016-08-19 09:27:28 +10:00
Nicholas Nethercote
cc993d1772 Bug 1293596 (part 4) - Tweak nsIWidget::Create. r=mstange.
They don't need to be NS_IMETHOD, but they should be MOZ_MUST_USE. Adding the
latter catches a few missing checks, which the patch adds.

The patch also gives PuppetWidget an InfallibleCreate() function, which makes
the infallibility of PuppetWidget creation clear.
2016-08-19 09:03:17 +10:00
Bill McCloskey
b8ababd5ee Bug 1282153 - Remove retaining outparam to GetLayerManager (r=dvander) 2016-06-30 14:30:30 -07:00
David Anderson
c2a116cdd6 Hide top-level CompositorBridgeParents behind a new API. (bug 1272472 part 4, r=mattwoodrow,kats,gwagner) 2016-05-17 22:33:22 -07:00
David Anderson
bb2cbc24f4 Remove nsBaseWidget::NewCompositorBridgeParent. (bug 1272472 part 1, r=kats) 2016-05-17 22:33:21 -07:00
Jonathan Watt
05a14131e5 Bug 1265953, part 2 - Convert much of the rest of the widget code from nsAutoPtr to UniquePtr. r=mstange 2016-04-19 21:51:25 +01:00
Kartikaya Gupta
f72cd76655 Bug 1250505 - Convert SynthesizeNativeTouchPoint and SynthesizeNativeTouchTap to take a LayoutDeviceIntPoint instead of a ScreenPoint. r=njn
MozReview-Commit-ID: EybGq9b1B8Z

--HG--
extra : rebase_source : defc16fc066a3a40480fa4c94f3a742a267344a8
2016-04-15 06:39:36 -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
Sotaro Ikeda
41edebedd1 Bug 1238876 - Move StartRemoteDrawing() implementation from nsWindow to nsScreenGonk r=mwu 2016-01-13 20:37:56 -08:00
Jonathan Kew
84b8c3a0a4 Bug 890156 - patch 0.3 - Create a version of nsIWidget::Create that takes Desktop pixels, because that's what we actually need to pass in some cases. r=mstange 2016-01-13 07:32:55 +00:00
Nicholas Nethercote
53b8d741ea Bug 1230047 (part 1) - Make SynthesizeNativeTouch{Point,Tap}() take ScreenIntPoints. r=kats.
--HG--
extra : rebase_source : f9a4490edf840b0b506d33076d1b4738bb705fd5
2015-12-02 21:45:38 -08: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
Nicholas Nethercote
1615245145 Bug 1224482 (part 5) - Avoid excessive mozilla:: prefixes in nsIWidget and its subclasses. r=kats.
A couple of typedefs make things a lot nicer.

--HG--
extra : rebase_source : ca9f02e31301601af1b0f975c5c111945af4d5e7
2015-11-13 01:37:02 -08:00
Nicholas Nethercote
7a746a27ea Bug 1224482 (part 2) - Replace GetNaturalBoundsUntyped() with GetNaturalBounds(). r=kats.
--HG--
extra : rebase_source : 912780c975c0bd0d66596b287077b0ab1fcb6d9f
2015-11-13 01:37:02 -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
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
Sotaro Ikeda
de007b81ed Bug 1210514 - Fix color inversion when BasicCompositor is used on gonk r=nical 2015-10-15 00:26:08 -07:00
Sotaro Ikeda
fb72a93409 Bug 1187503 - use external surface size on CompositorOGL r=nical 2015-07-27 09:41:13 -07:00
Sotaro Ikeda
07a783a7bb Bug 1187345 - Fix HwcComposer2D::mCompositorParent handling r=mwu 2015-07-24 11:28:28 -07:00
Nathan Froyd
974d8120f2 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
Boris Chiou
b595350fe5 Bug 1170061 - ClearOnShutdown for hwcomposer, r=sotaro
Call ClearOnShutdown while creaing HwcComposer2D object.
2015-06-24 17:51:00 +02:00
Shelly Lin
fba7c0fcc2 Bug 1138287 - Part 2: Support multi-screen on Gonk platform. r=mwu, r=sotaro, r=jgilbert, r=mattwoodrow
--HG--
extra : histedit_source : 02c96bba0e933c85d9af2566d1c9c8d04d120a31
2015-06-05 11:29:30 +08:00
Henry Chang
223dec8c91 Bug 1154648 - Rename static gonk nsWindow::DispatchInputEvent. r=mwu 2015-04-15 17:45:18 +08:00
Sotaro Ikeda
ed293afca5 Bug 1157874 - Remove screen related global variables from nsWindow.cpp r=mwu 2015-04-29 20:17:57 -07:00
Andrea Marchesini
ade2831035 Bug 1156632 - Remove unused forward class declarations - patch 6 - the rest of the tree, r=ehsan 2015-04-22 08:29:24 +02:00
Sotaro Ikeda
053aaa45c3 Bug 1152135 - Split EGLSurface buffer swap and HWC buffer swap r=mwu,nical,jgilbert 2015-04-17 09:28:41 -07:00
Carsten "Tomcat" Book
eba45dcee4 Backed out changeset abe6234be8a3 (bug 1152135) for Android 4 opt/debug perma failure 2015-04-17 12:04:55 +02:00
Sotaro Ikeda
7078be3faa Bug 1152135 - Split EGLSurface buffer swap and HWC buffer swap r=mwu,nical,jgilbert 2015-04-16 18:15:26 -07:00
Kartikaya Gupta
5cf2d407fd Bug 1146349 - Make the native event synthesization functions in DOMWindowUtils async. r=smaug 2015-04-14 11:36:36 -04:00
Sotaro Ikeda
a3181c2cc5 Backed out changeset 29d01ad10d0b (bug 1152135) 2015-04-13 12:28:06 -07:00
Sotaro Ikeda
1a785adc42 Bug 1152135 - Split EGLSurface buffer swap and HWC buffer swap r=mwu,nical,jgilbert 2015-04-12 11:23:46 -07:00
David Anderson
274c9d4c17 Allow dispatching to the APZ controller thread from any thread. (bug 1147681 part 1, r=kats)
--HG--
extra : rebase_source : ce0beebda151fdf5adf69e998465c684b193db75
2015-03-26 14:23:02 -07:00
Maksim Lebedev
9e2e275653 Bug 1143655 - Add sending NS_TOUCH_CANCEL event. r=kats 2015-03-25 12:20:20 -04:00
Ehsan Akhgari
883849ee32 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Thomas Zimmermann
3a5a377ab7 Bug 1137151: Marked destructor of |nsWindow| as protected, r=mwu 2015-03-10 13:44:02 +01:00