Commit Graph

282 Commits

Author SHA1 Message Date
Jonathan Kew
ce16a7dc51 Bug 1239855 - Fix for widget positioning/sizing on hidpi displays under Gtk. r=emk 2016-01-18 12:24:06 +00:00
Nicholas Nethercote
da19ce6e70 Bug 1239589 - Change nsBaseWidget::mBounds to a LayoutDeviceIntRect. r=kats.
This patch removes dozens of ToUnknown/FromUnknown conversions and doesn't add
any new ones, which is nice. It also removes UntypedDevPixelsToCocoaPoints(),
which is no longer needed.
2015-11-22 20:32:29 -08:00
Nicholas Nethercote
21fd395339 Bug 1239530 (part 2) - Use LayoutDevice coordinates in {Start,End}RemoteDrawingInRegion() and related functions. r=kats. 2015-12-02 22:29:54 -08:00
Jonathan Kew
d74daaf3aa Bug 890156 - patch 0.2 - Remove the (unused) aRect parameter from nsBaseWidget::BaseCreate. r=kats 2016-01-13 07:32:55 +00:00
Jonathan Kew
441914872b Bug 890156 - patch 0.1 - Switch from 'display pixels' to 'desktop pixels' terminology in widget code. r=kats 2015-11-25 19:11:58 +00:00
Xidorn Quan
8ec1ad9045 Bug 1189622 part 3 - Return failure if fullscreen support is not available for the X11 desktop. r=karlt 2016-01-12 15:18:47 +11:00
Xidorn Quan
a4145f03ee Bug 1221659 - Make fullscreen transition on Linux take the designed time. r=roc 2016-01-05 10:00:37 +11:00
Masayuki Nakano
4f019fe44a Bug 1179632 part.2 WidgetCompositionEvent should store NativeIMEContext which caused the event and PuppetWidget should store it for GetNativeIMEContext() r=smaug, sr=smaug 2015-12-11 15:15:57 +09: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
738f8217ba 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.
2015-12-02 21:45:41 -08:00
Nicholas Nethercote
ae857e0e63 Bug 1229665 - Convert widget clip regions to LayoutDevicePixels. r=botond. 2015-12-02 14:32:55 -08: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
Nicholas Nethercote
5d4621e37d Bug 1228125 (part 2) - Remove nsIWidget::GetScreenBoundsUntyped(). r=botond. 2015-11-25 20:55:34 -08:00
Nicholas Nethercote
b3312ed385 Bug 1228125 (part 1) - Remove nsIWidget::GetBoundsUntyped(). r=botond.
This requires adding a new overloading of LayoutDevicePixel::ToAppUnits and a
new PixelCastJustification: LayoutDeviceIsParentLayerForRCDRSF.
2015-11-25 20:32:47 -08:00
Lee Salzman
7bf982d350 Bug 1224974 - fix GTK shaped window drawing. r=bas 2015-11-19 17:23:43 -05:00
Karl Tomlinson
8945e20f89 bug 1225970 dispatch an event to release the widget after draw r=roc 2015-11-19 16:41:12 +13:00
Nicholas Nethercote
23736f981c Bug 1186795 (part 2) - Replace nsBaseHashtable::EnumerateRead() calls in widget/ with iterators. r=roc. 2015-11-17 18:18:10 -08:00
Neil Deakin
9e5e30ef30 Bug 1212733, cache dnd window state instead of using gtk_window_get_type_hint, r=karlt 2015-11-17 07:13:22 -05:00
Matt Brubeck
927d45bfc0 Bug 1223366 - Update event.buttons on GDK_BUTTON_RELEASE [r=karlt] 2015-11-16 22:01:32 -08:00
Matt Brubeck
bb13ab3d32 Bug 431620 - Remove unused function GetToggledKeyState [r=roc] 2015-11-16 16:06:41 -08:00
Nicholas Nethercote
eaf3acd738 Bug 1224482 (part 4) - Make GetClientSize() return a LayoutDeviceIntSize. r=kats. 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
a9b04a8e78 Bug 1224403 (part 12) - Remove WidgetToScreenOffsetUntyped(). r=kats.
There are few enough calls now that using WidgetToScreenOffset() +
ToUnknownPoint() is a better approach.
2015-11-12 15:37:18 -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
6b72094044 Bug 1224403 (part 1) - Make Configuration::mBounds a LayoutDeviceIntRect. r=kats. 2015-11-10 16:27:26 -08:00
Karl Tomlinson
e51f733f67 bug 726483 avoid DispatchResized() during size-allocate r=roc 2015-11-11 13:50:04 +13:00
Karl Tomlinson
649121d3e5 bug 726483 remove unnecessary DispatchResized() parameters r=roc 2015-11-10 15:09:52 +13:00
Botond Ballo
db5d15db66 Bug 1222661 - Replace ToUntyped(obj) calls with obj.ToUnknown*(). r=nical 2015-11-06 22:13:40 -05:00
Bas Schouten
deac142ea1 Bug 1210560 - Followup 2: Fix UniquePtr usage issue. r=bustage on a CLOSED TREE 2015-11-11 17:09:56 +01:00
Bas Schouten
b85ccf4edd Bug 1210560 - Followup: Fix function definition prototype. r=bustage on a CLOSED TREE 2015-11-11 16:46:12 +01:00
Bas Schouten
d816b658f4 Bug 1210560 - Part 7: Convert GTK widget code to use Moz2D instead of PushGroup/PopGroup. r=jwatt 2015-11-11 16:15:40 +01: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
Nicholas Nethercote
328ed06554 Bug 1222943 (part 1) - Change Touch::mRadius from nsIntPoint to LayoutDeviceIntPoint. r=kats.
This adds a three missing unit conversions for touch radii.
2015-11-09 21:37:31 -08:00
Nathan Froyd
ceab0f404d Bug 1216611 - add mozilla::MakeUniqueFallible and convert uses throughout the tree; r=Waldo 2015-11-05 16:24:24 -05:00
Bill McCloskey
c65a5ca18d Bug 1218552 - Fix GTK drag-and-drop coordinate scaling on HiDPI displays (r=karlt) 2015-11-04 13:40:15 -08:00
Nathan Froyd
ce0c965bd4 Bug 1220392 - use UniquePtr<T[]> instead of nsAutoArrayPtr<T> in widget/; r=roc 2015-10-30 14:35:28 -04:00
Wes Kocher
0c7830821c Backed out changeset 47d076aeb8c4 (bug 1218552) for build bustage CLOSED TREE 2015-10-30 13:37:50 -07:00
Bill McCloskey
37abb5c1c7 Bug 1218552 - Fix GTK drag-and-drop coordinate scaling on HiDPI displays (r=karlt) 2015-10-30 13:01:58 -07:00
Benoit Girard
703753a1a5 Bug 1211612 - Add DragInputBlock for async scrollbars. r=kats 2015-10-26 16:06:49 -04:00
Robert O'Callahan
0a87e4ed1f Bug 978679. Convert GDK touch event coordinates properly. r=karlt 2015-10-22 17:06:14 +13:00
Makoto Kato
3cad889e0f Bug 978679. Implement touch events for GTK3. r=karlt 2015-04-30 08:29:34 +12:00
Carsten "Tomcat" Book
c4ec0d715a Backed out changeset 2f909d41108b (bug 978679) for bustage on a CLOSED TREE 2015-10-19 13:22:55 +02:00
Makato Kato
1c60c7c42e Bug 978679 - Implement touch events for GTK3. r=karlt 2015-10-19 23:04:52 +13: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
Nathan Froyd
bf7f6dda03 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
Andrew Comminos
cd2d0b19ac Bug 1209774 - Transform from GDK coords to layout device pixels before calling DispatchEvent. r=karlt 2015-10-13 19:14:54 -07:00
Martin Stransky
f21e7b76de Bug 1210249 - don't mess with toplevel widget when client side decorations are enabled. r=karlt 2015-10-12 09:56:00 +02:00
Lee Salzman
9d9e947977 Bug 1196494 - part 2: only update nsWindow client offset when _NET_FRAME_EXTENTS property actually changes. r=eihrul 2015-10-09 09:24:48 -04:00