Commit Graph

77 Commits

Author SHA1 Message Date
Markus Stange
d649a6d091 Bug 1403989 - Automatically treat black menu icons as templates, so that they get drawn inverted in hovered menuitems. r=jrmuizel,spohl
MozReview-Commit-ID: Bn69Ij0BfRa

--HG--
extra : rebase_source : 9d2d7d0797d89d0b7cf6685d29e458795f518e9d
extra : source : 7b389e4f44679c086a4a510da264f2f0531267ec
2018-04-16 15:23:23 -04:00
Boris Zbarsky
92bbd744e1 Bug 1436508 part 11. Remove the use of the nsIDOMKeyEvent::DOM_VK* constants in C++. r=masayuki
MozReview-Commit-ID: Honw0NrVMuV
2018-02-09 11:17:09 -05:00
Samathy Barratt
d8ba79a56b Bug 1351447 - Rename imagelib's DrawResult to ImgDrawResult r+tnikkel r=tnikkel
Renamed to imgDrawResult

MozReview-Commit-ID: 5ESSgIhhU41

--HG--
rename : image/DrawResult.h => image/ImgDrawResult.h
extra : rebase_source : dbf645574aff7eefe65fa81809d6c07cb5800ec6
2017-12-11 15:37:59 +00:00
Brendan Dahl
c161ff02d7 Bug 1409580 - Support edit command mapping in headless MacOS. r=masayuki
Extracts out the creation of an NSEvent from a WidgetKeyEvent in
TextInputHandler.mm into generic helper method. The helper is used by headless
to create a fake NSEvent to then build edit commands from key events.

Fixes:
- test_selectevents.html
- test_bug756984.html
- test_movement_by_characters.html
- test_movement_by_words.html
- test_backspace_vs.html
- test_bug1094000.html
- ... many key event tests

MozReview-Commit-ID: 1Jur5MHOrkp

--HG--
extra : rebase_source : fbe320aff8fd2e1b36f3b46e02336e9fc89c48d0
2017-10-13 17:40:27 -07:00
Julian Seward
408d24da56 Bug 1382563 - Remove ns*String::AssignWithConversion. r=erahm.
This patch replaces four functions of the name AssignWithConversion which
are essentially wrappers around CopyASCIItoUTF16 and LossyCopyUTF16toASCII
with direct calls to the latter two functions.  The replaced functions are:

  void nsCString::AssignWithConversion( const nsAString& aData )
  void nsString::AssignWithConversion( const nsACString& aData )

  void nsTString_CharT::AssignWithConversion(
                            const incompatible_char_type* aData,
                            int32_t aLength = -1);

The last of the three exists inside the double-included nsTString* world and
so describes two functions, giving four in total.

This has two advantages:

* it removes code

* at the call points, it makes clear (from the replacement name) which
  conversion is being carried out.  The generic name "AssignWithConversion"
  doesn't make that obvious -- one had to infer it from the types.

The patch also removes two commented out lines from
editor/composer/nsComposerCommands.cpp, that appear to be related.  They are
at top level, where they would never have compiled.  They look like
leftovers from some previous change.

--HG--
extra : rebase_source : fb47bf450771c3c9ee3341dd14520f5da69ec4f5
2017-07-24 19:23:52 +02:00
cku
09c56e6da6 Bug 1323912 - Part 2. Pass opacity down to imgIContainer::Draw. r=mstange
Each concrete class of imgIContainer is able to handle opacity already. All we
need to do is pass opacity value to them.

MozReview-Commit-ID: EMkLnG3YXA1

--HG--
extra : rebase_source : b0a0aad1fec0c2765e96d23ed9b627345c793795
2017-01-03 13:53:22 +08:00
Masayuki Nakano
ffd3700a9c Bug 1256562 part.2 All event dispatchers under widget/cocoa should initialize WidgetEventTime::mTimeStamp with nsCocoaUtils::GetEventTimeStamp() r=mstange,smaug
MozReview-Commit-ID: 3sXtO76JScf

--HG--
extra : rebase_source : 729c1b5f1066974502408a886dc19991d7bcb97f
2016-12-20 20:58:04 +09:00
Masayuki Nakano
1de48b4d14 Bug 1256562 part.1 Implement nsCocoaUtils::GetEventTimeStamp() to convert from timeStamp of NSEvent to TimeStamp r=birtles,mstange
This patch implements nsCocoaUtils::GetEventTimeStamp() which hides how to get TimeStamp from timeStamp of NSEvent from other developers.

Different from Windows and GTK, we don't need to use SystemTimeConverter and implement CurrentTimeGetter class because the internal value of the macOS implementation of TimeStamp is based on mach_absolute_time(), which measures "ticks" since boot. Event timestamps are NSTimeIntervals (seconds) since boot. So the two time representations already have the same base; we only need to convert seconds into ticks.

MozReview-Commit-ID: LvioyJOM7S9

--HG--
extra : rebase_source : 0e497f675f9b7e1355155dc081945478f83019a8
2016-12-26 12:23:37 +09:00
Nicolas Silva
48805c9b3e Bug 1284837 - Disallow implicit conversions from float to integer when creating IntPoint and IntSize objects. r=botond 2016-07-26 16:48:30 +02:00
Nicholas Nethercote
4e8f3b6d6e Bug 1276824 (part 2) - Fix up checks for calls to gfxContext::Create{,PreservingTransform}OrNull(). r=milan.
--HG--
extra : rebase_source : 80644c1a6658da553c13ae1ab3b8d03e916ee6e7
2016-06-07 11:17:48 +10: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
Jonathan Watt
2eb705bb3f Bug 1277862, part 3 - Rename Moz2D's Filter to SamplingFilter in the rest of the tree. r=Bas 2016-05-25 17:01:18 +01:00
Makoto Kato
3cc2e4b00e Bug 1177943 - Part 1. Add LookUpDictionary method to widget. r=masayuki
I would like to add new method to look up dictionary.

MozReview-Commit-ID: Jqk0OelezVF
2016-04-04 17:14:36 +09:00
Jonathan Watt
0465f58516 Bug 1271867 - Update our usage of NSWindow::convertBaseToScreen/convertScreenToBase to modern ApplicationKit API. r=mstange 2016-05-05 12:27:13 +01:00
Jonathan Watt
6a7fdf9b55 No Bug - Remove some unnecessary SVGImageContext.h includes and add comments. r=sparky 2016-04-22 15:07:31 +01: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
Masayuki Nakano
e9a1bcb370 Bug 1259658 Rename WidgetInputEvent::modifiers to WidgetInputEvent::mModifiers r=smaug
MozReview-Commit-ID: 7avEiqKfaHA

--HG--
extra : rebase_source : ffb6fbe424a4d5c2799444223608e03237e7c7a2
2016-03-31 17:03:00 +09:00
Timothy Nikkel
756d4d4332 Bug 1209780. Use the DrawResult return value of imgIContainer::Draw in the cocoa code. r=seth 2016-03-29 01:14:45 -05:00
Arata Furukawa
676913b9bb Bug 1259655 - part 1 Rename WidgetEventTime::time to WidgetEventTime::mTime r=masayuki
MozReview-Commit-ID: 7lBCEVkanvF

--HG--
extra : source : d629f018d02594951b7deccf1e1fce279d04694c
2016-03-28 13:29:42 +09:00
Jonathan Kew
2ff25b1f53 Bug 1239007 - Replace nsIntRect by strongly-typed rects in a couple of nsCocoaUtils functions. r=mstange 2016-01-13 07:32:55 +00:00
Nicholas Nethercote
52b3d826da Bug 1225007 (part 1, attempt 3) - Use LayoutDevicePixel more in Cocoa widget code. r=kats.
--HG--
extra : rebase_source : e4b3bb36c18822557f7724a58979eddd9d8cac62
2015-11-19 14:10:38 +11:00
Phil Ringnalda
87802cdbad Backed out 2 changesets (bug 1225007) for frequent OS X "Shouldn't return empty rect" assertion failures, a=backout
Backed out changeset c5b352c74b35 (bug 1225007)
Backed out changeset 8a513c70ce7c (bug 1225007)
2015-11-19 20:55:26 -08:00
Nicholas Nethercote
ce671f3678 Bug 1225007 (part 1, attempt 2) - Use LayoutDevicePixel more in Cocoa widget code. r=kats.
--HG--
extra : rebase_source : ea132cb4a6eda3553682114f3a1a280acfaf0aa3
2015-11-19 14:10:38 +11:00
Nicholas Nethercote
26b0d282a5 Backout 52ba24123046 and 66768d6a50fa (bug 1225007) for causing lots of test assertions on Mac. CLOSED TREE 2015-11-17 17:02:39 -08:00
Nicholas Nethercote
eb12a384c0 Bug 1225007 (part 1) - Use LayoutDevicePixel more in Cocoa widget code. r=kats.
--HG--
extra : rebase_source : ad3466d05e476ebf65affdde3fca52494e1327cb
2015-11-15 21:37:52 -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
Nicholas Nethercote
4fc2610c3c Bug 1211324 (part 4) - Replace GraphicsFilter constants with gfx::Filter equivalents. r=mattwoodrow.
The conversion is as follows:

- GraphicsFilter::FILTER_NEAREST == gfx::Filter::POINT
- GraphicsFilter::FILTER_GOOD    == gfx::Filter::GOOD
- GraphicsFilter::FILTER_BEST    == gfx::Filter::LINEAR

Also typedef GraphicsFilter to gfx::Filter; this will be removed in the next
patch.

These changes mean ToFilter() and ThebesFilter() are no longer needed.
2015-10-05 17:12:46 -07: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
Markus Stange
77bd23e207 Bug 1193062 - Make nsChildView send PanGestureInput events into APZ. r=kats, r=smichaud
--HG--
extra : commitid : 5mHVPwAeh44
extra : rebase_source : 27e9d500176eef2f737ffadd77a8e7478df00c0f
extra : histedit_source : 1ceeefd9e1be3fddd7d504b44e140f50c43750e2
2015-08-23 19:50:29 -04:00
Markus Stange
b00a4d2055 Bug 1193062 - Add nsCocoaUtils::ModifiersForEvent. r=smichaud
--HG--
extra : commitid : 8Aar2flB2na
extra : rebase_source : ba35da1d8d1fca49d98b8bc89b507d0105fe43db
extra : histedit_source : bb55f824f1a227a24b82eaf47c79175849649416
2015-07-21 18:41:08 -04:00
Xidorn Quan
815ed861e5 Bug 1188322 - Always hide menubar as well as dock for fullscreen on OS X whatever the screen is. r=mstange
--HG--
extra : source : 9beba24463ba85ab0ca12d0c80786a9d7915f208
2015-08-07 13:49:12 +10:00
Xidorn Quan
6822bb6669 Bug 1172664 - Use [NSApplication setPresentationOptions:] instead of SetSystemUIMode for hide os chrome. r=smichaud
--HG--
extra : source : 2508b0bb8b91a883e39a1026364bab0947266288
2015-06-10 13:13:49 +12:00
Chris Peterson
b6535b95f8 Bug 1167834 - Fix -Wwritable-strings warnings in widget/cocoa/. r=smichaud 2015-05-20 23:02:59 -07:00
Nicolas Silva
0b1f75bea0 Bug 1132854 - Remove the gfx::ToIntSize conversion helper. r=Bas 2015-04-07 16:08:57 +02:00
Ehsan Akhgari
a41280816e Bug 1116622 - Give TemporaryRef a take() method semantically equivalent to already_AddRefed::take(); r=froydnj
This is in preparation of removing TemporaryRef.  It should help make
already_AddRefed a drop-in replacement for it.
2015-01-05 11:32:37 -05:00
Josh Aas
f9e3926e19 Bug 1092630: Get rid of native widgets for OS X NPAPI plugins, make things work much better under e10s. Patch by Josh Aas, Markus Stange, Steven Michaud, David Parks. r=smichaud/jst/josh (more reviews pending) 2014-12-11 08:44:07 -06:00
Seth Fowler
4cd9e3e8e6 Bug 1043560 - Refactor the imgIContainer::Draw API. r=tn,dholbert,jwatt,mwu,mattwoodrow,roc sr=jrmuizel
--HG--
extra : rebase_source : b5ed02cb200ece12a07328613dca217e9d975703
2014-08-22 13:12:38 -07:00
Benoit Jacob
db65b34b46 Bug 586656 - Serialize external "pluginEvent" structs in WidgetGUIEvent so that plugin events work in e10s - r=masayuki,jimm 2014-07-23 15:55:51 -04:00
Jonathan Watt
197045f650 Bug 1025497 - Stop using gfxImageSurface in Cocoa widget code. r=mstange 2014-06-17 10:37:45 +01:00
Markus Stange
b2d27c0e89 Bug 944938 - Add a 10.6 compatibility wrapper for hasPreciseScrollingDeltas and scrollingDeltaX/Y. r=smichaud 2014-06-07 00:49:59 +02:00
Markus Stange
bb9b920049 Bug 944938 - Add a 10.6 compatibility wrapper for event phases. r=smichaud 2014-06-07 00:49:59 +02:00
Jonathan Watt
0889717093 Bug 1018196 - Stop creating a Thebes backed gfxContext in nsCocoaUtils::CreateNSImageFromImageContainer (Moz2D migration). r=mstange 2014-05-30 22:41:47 +01:00
Jonathan Watt
6b18c742cc Bug 950372 - Convert imgIContainer::GetFrame to return a Moz2D SourceSurface instead of a Thebes gfxASurface. r=mattwoodrow 2014-04-15 19:02:23 +01:00
Jonathan Watt
4eec0bd2f7 Bug 950371 - Convert the Cocoa widget consumers of imgIContainer::GetFrame to act on a Moz2D SourceSurface instead of a Thebes gfxASurface. r=mattwoodrow,mstange. Relanding after accidental backout during m-c merge in ce1a691650ef. 2014-03-08 01:21:24 +00:00
Ed Morley
3aca0e96f2 Backed out changeset a2b62ced704d (bug 950371) 2014-03-07 17:53:05 +00:00
Jonathan Watt
ce7820cf73 Bug 950371 - Convert the Cocoa widget consumers of imgIContainer::GetFrame to act on a Moz2D SourceSurface instead of a Thebes gfxASurface. r=mattwoodrow,mstange. Relanding after accidental backout during m-c merge in ce1a691650ef. 2014-02-21 19:07:42 +00:00
Ryan VanderMeulen
18a2214a78 Backed out changeset a00bd379adb2 (bug 950371) for breaking OSX non-unified builds. 2014-02-21 14:58:34 -05:00
Jonathan Watt
26597c713b Bug 950371 - Convert the Cocoa widget consumers of imgIContainer::GetFrame to act on a Moz2D SourceSurface instead of a Thebes gfxASurface. r=mattwoodrow,mstange 2014-02-21 14:50:36 +00:00
Carsten "Tomcat" Book
3b6b988ef6 Backed out changeset 05a5f08f1278 (bug 950371) for OS X mochitest bustage on a CLOSED TREE 2014-02-21 11:44:52 +01:00