Commit Graph

194 Commits

Author SHA1 Message Date
Nicholas Nethercote
36a9b74cff Bug 1296993 (part 2) - Streamline nsIWidget::Set{,Fake}Modal. r=mstange.
This patch does the following.

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

- Removes the empty implementations from several nsIWidget instances, because
  they can use the nsBaseWidget one.
2016-08-25 13:43:26 +10:00
Nicholas Nethercote
5909b3a033 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.
2016-08-25 13:43:26 +10:00
Nicholas Nethercote
ab7ae3b80d Bug 1293596 (part 7) - Make nsIWidget::Destroy infallible. r=karlt. 2016-08-10 10:04:11 +10:00
Nicholas Nethercote
628ec722f3 Bug 1293596 (part 6) - Make nsIWidget::SetSizeMode() infallible. r=mstange,baku.
The only implementation of SetSizeMode() that can fail is the nsCocoaWindow
one, on an Objective C exception, which is unlikely and can be swallowed.

This allows some nsGlobalWindow functions to become infallible as well.
2016-08-22 09:15:49 +10:00
Nicholas Nethercote
c2cd6516c6 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
52a89402d9 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
Nicholas Nethercote
8b8bd02a31 Bug 1293596 (part 2) - Rework nsIWidget bounds getters. r=mstange.
This patch makes GetBounds(), GetScreenBounds() and GetClientBounds() more
obviously infallible, like existing functions such as GetNaturalBounds() and
GetClientSize(). This results in clearer behaviour in nsCocoaWindow.mm if
Objective C exceptions occur. Along the way, the patch removes some useless
failure checks for these functions.

The patch also removes the NS_IMETHOD from GetRestoredBounds and makes that
function MOZ_MUST_USE.
2016-08-19 09:03:04 +10:00
Thomas Zimmermann
ba133ac07a Bug 1265386: Fix white-space errors in widget/, r=nfroyd
MozReview-Commit-ID: ATXI7dYFHmA
2016-07-22 10:56:13 +02:00
Carsten "Tomcat" Book
49865a8de6 Backed out changeset 2bea1e1e403d (bug 1265386) for bustage on a CLOSED TREE 2016-07-21 13:59:02 +02:00
Thomas Zimmermann
4fa3fb2bb5 Bug 1265386: Fix white-space errors in widget/, r=nfroyd
MozReview-Commit-ID: ATXI7dYFHmA
2016-07-21 13:29:30 +02:00
David Anderson
c70cd6b6e2 Move CompositorWidget construction out of nsIWidget. (bug 1281998 part 5, r=jimm) 2016-07-01 01:15:16 -07:00
David Anderson
19ade82818 Rename CompositorWidgetProxy files to CompositorWidget. (bug 1281998 part 2, r=jimm) 2016-07-01 01:15:16 -07:00
Bill McCloskey
48fe44d618 Bug 1282153 - Remove retaining outparam to GetLayerManager (r=dvander) 2016-06-30 14:30:30 -07:00
Phil Ringnalda
89deea28e2 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)
2016-06-29 19:35:24 -07:00
David Anderson
27793b9f88 Move CompositorWidget construction out of nsIWidget. (bug 1281998 part 5, r=jimm) 2016-06-29 16:47:22 -04:00
David Anderson
4a6d8ea9f0 Rename CompositorWidgetProxy files to CompositorWidget. (bug 1281998 part 2, r=jimm) 2016-06-29 16:47:22 -04:00
Morris Tseng
6a998733a1 Bug 1281686 - Part 1: Fix OSX Compile failure due to unified build. r=mstange
MozReview-Commit-ID: FIcq2svB0fL
2016-06-29 11:24:43 +08:00
bb791bab05 Bug 1279017 - Remove code specific to 10.6-10.8 in widget/cocoa. r=mstange. 2016-06-10 23:30:25 +02:00
Phil Ringnalda
e13ead1604 Back out e9a46afd9375 (bug 1279017) for 10.10 reftest-e10s failures in async scrolling tests
CLOSED TREE
2016-06-08 20:34:36 -07:00
6cac107b8d Bug 1279017 - Remove code specific to 10.6-10.8 in widget/cocoa. r=mstange. 2016-06-08 22:02:22 +02:00
Makoto Kato
0ad0823d3e Bug 1212527 - Set background color to NSColor before calling showDefinitionForAttributedString on 10.11. r=mstange
When calling showDefinitionforAttributedString on OSX 10.11, it always return error due to the following exception.

Exception: decodeObjectForKey: class "TitlebarAndBackgroundColor" not loaded or does not exist

So before calling it, we set temporary color value, then restore color after calling it.

MozReview-Commit-ID: 1YeY6X1W6AV
2016-05-26 23:39:50 +09:00
Makoto Kato
28f3f25f0a Backed out changeset d89f93a40f78 (bug 1212527) due to static analysis bustage
MozReview-Commit-ID: 79SduJl9zcs
2016-05-27 00:05:10 +09:00
Makoto Kato
41fe7d2636 Bug 1212527 - Set background color to NSColor before calling showDefinitionForAttributedString on 10.11. r=mstange
When calling showDefinitionforAttributedString on OSX 10.11, it always return error due to the following exception.

Exception: decodeObjectForKey: class "TitlebarAndBackgroundColor" not loaded or does not exist

So before calling it, we set temporary color value, then restore color after calling it.

MozReview-Commit-ID: 1YeY6X1W6AV
2016-05-26 23:39:50 +09:00
David Anderson
077636288b Move CompositorWidgetProxy inheritance out of nsIWidget. (bug 1264545 part 6, r=jimm) 2016-04-29 19:23:17 -04:00
Jonathan Watt
738a8b9942 Bug 1265953, part 1 - Convert most of the cocoa widget code from nsAutoPtr to UniquePtr. r=mstange 2016-04-19 11:28:12 +01:00
Masayuki Nakano
2e4eb786ce Bug 1137563 part.1 Implement TextEventDispatcherListener in TextEventInputHandlerBase and IMEInputHandler r=m_kato 2016-03-16 13:47:49 +09:00
Jonathan Kew
f673e98b1e Bug 890156 - patch 1 - Add nsIWidget::GetDesktopToDeviceScale() method. r=emk 2015-12-04 16:58:05 +00:00
Jonathan Kew
0d67c18f9e 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
Masayuki Nakano
21a40a0391 Bug 1179632 part.1 native IME context should not be stored in InputContext but should be able to retrieve with nsIWidget::GetNativeData() r=smaug 2015-12-11 15:15:57 +09:00
Nicholas Nethercote
6f043f6b6e Bug 1229237 (part 3) - Make nsIWidget::Invalidate() take a LayoutDeviceIntRect. r=botond. 2015-11-16 21:18:31 -08:00
Nicholas Nethercote
8da819977a Bug 1229237 (part 1) - Make nsIWidget::{Create,CreateChildren}() take a LayoutDeviceIntRect. r=botond. 2015-11-16 00:35:18 -08:00
Tooru Fujisawa
d364c5d1cb Bug 1224790 - Use SetFakeModal instead of SetModal for non-modal window opened by modal window. r=smaug, mstange 2015-11-18 20:12:26 +09:00
Nicholas Nethercote
00492f0df0 Bug 1224482 (part 5) - Avoid excessive mozilla:: prefixes in nsIWidget and its subclasses. r=kats.
A couple of typedefs make things a lot nicer.
2015-11-13 01:37:02 -08:00
Nicholas Nethercote
c265db3570 Bug 1224482 (part 3) - Replace GetClientOffsetUntyped() with GetClientOffset(). r=kats.
The patch also changes nsMenuPopupFrame::mLastClientOffset to
LayoutDeviceIntPoint.
2015-11-13 01:37:02 -08:00
Nicholas Nethercote
3dfaddf77b 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.
2015-11-12 16:04:52 -08:00
Nicholas Nethercote
d8b6eda36b Bug 1224403 (part 4) - Make {Get,Set}NonClientMargins() return/take a LayoutDeviceIntMargin. r=kats.
This required adding {To,From}UnknownMargin().
2015-11-11 23:05:04 -08:00
Nicholas Nethercote
ecf3a02b22 Bug 1224403 (part 2) - Split GetClientOffset() into typed and untyped versions. r=kats. 2015-11-11 19:56:06 -08:00
Nicholas Nethercote
c3c2a5bf71 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.
2015-11-09 21:37:32 -08:00
Nathan Froyd
4e6d8f6705 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
2015-10-18 01:24:48 -04:00
Xidorn Quan
2c1d13f37a Bug 1196163 part 1 - Use nsSizeMode instead of int32_t for nsIWidget::{SizeMode,SetSizeMode}. r=roc 2015-08-29 11:12:41 +10:00
Xidorn Quan
0221efddc2 Bug 1190669 part 4 - Force stop transition animation when the cocoa window gets destroyed. r=smichaud 2015-08-06 15:37:48 +10:00
Xidorn Quan
753f7cd138 Bug 1160014 part 5 - Implement fullscreen transition on Mac. r=smichaud 2015-07-24 09:45:00 +10:00
Wes Kocher
64a28855a4 Backed out changeset 039f3d0c6e62 (bug 1160014) (Mac part) for build failures CLOSED TREE 2015-07-21 16:23:56 -07:00
Xidorn Quan
1940c18604 Bug 1160014 part 5 - Implement fullscreen transition on Mac. r=smichaud 2015-07-22 09:07:46 +10:00
Xidorn Quan
4d7e632089 Bug 1160014 part 1 - Implement common part of fullscreen transition. r=roc,smaug,dao
This patch implements the code which is shared by all platforms for
fullscreen transition.

It adds two prefs for the duration of fullscreen transition. They can
also be used to completely suppress the transition.

In addition, this patch uses the newly added prefs to suppress the
transition in all tests which use the DOM fullscreen.
2015-07-13 20:44:36 +10:00
Xidorn Quan
e81d16531c Bug 1160014 part 0 - Avoid explicitly mentioning DOM Fullscreen concept in widget part. r=roc 2015-07-13 20:44:36 +10:00
Nigel Babu
fd84e932c3 Backed out 4 changesets (bug 1160014) for M2 bustages CLOSED TREE
Backed out changeset 87b00a9dac95 (bug 1160014)
Backed out changeset d4fa5c794e08 (bug 1160014)
Backed out changeset fca26897d534 (bug 1160014)
Backed out changeset b0b7f4f09ed2 (bug 1160014)
2015-07-11 10:49:25 +05:30
Xidorn Quan
7705aa3262 Bug 1160014 part 1 - Implement common part of fullscreen transition. r=roc,smaug,dao
This patch implements the code which is shared by all platforms for
fullscreen transition.

It adds two prefs for the duration of fullscreen transition. They can
also be used to completely suppress the transition.

In addition, this patch uses the newly added prefs to suppress the
transition in all tests which use the DOM fullscreen.
2015-07-11 10:08:59 +10:00
Xidorn Quan
914a15eea0 Bug 1105939 part 7 - Use tranditional fullscreen on Mac for DOM fullscreen. r=smichaud 2015-06-04 13:49:34 +12:00
Kartikaya Gupta
f8465229d0 Bug 1146349 - Make the native event synthesization functions in DOMWindowUtils async. r=smaug 2015-04-14 11:36:36 -04:00