Commit Graph

105 Commits

Author SHA1 Message Date
Arnaud Sourioux
0b782ab9cb Bug 973805 part 1: Change #define classA classB to typedef classB classA, in some frame classes. r=dholbert 2014-02-19 00:21:56 -08:00
Daniel Holbert
bea5535e10 Bug 919806 followup: Reindent method declarations affected by NS_IMETHOD-removal. (whitespace-only; no review) DONTBUILD 2014-02-18 00:36:33 -08:00
Arnaud Sourioux
d4e37270b8 Bug 919806: Get rid of NS_IMETHOD in nsIFrame.h and its implementations r=dholbert 2014-02-17 23:47:48 -08:00
Mats Palmgren
1a854bc937 Bug 956447 - Make it possible to get frame dumps in non-DEBUG builds. r=roc 2014-01-05 23:31:14 +00:00
Robert O'Callahan
e65856150c Bug 919144. Part 9: Move FrameLayerBuilder::ContainerParameters to mozilla::ContainerLayerParameters. r=mattwoodrow
This is to avoid having to #include FrameLayerBuilder.h in nsLayoutUtils.h in the next patch.

--HG--
extra : rebase_source : 5f3c3ae2785267949766ae094414781133d4ce44
2013-09-27 18:01:16 +12:00
Masayuki Nakano
096a701901 Bug 920377 part.30 Get rid of nsGUIEvent r=roc 2013-10-02 12:46:03 +09:00
Steven Michaud
366bf6eb2c Bug 909678 - Send right-mouse-dragged and other-mouse-dragged events to plugins. r=spohl,roc 2013-09-17 18:36:03 -05:00
Ehsan Akhgari
f56168072d Bug 907883 - Minimize #includes in layout/generic; r=roc
--HG--
extra : rebase_source : 5e87b764a12b05aff477c71547e2131be67ca93b
2013-08-22 14:32:52 -04:00
Arnaud Sourioux
ae5aa58dbc Bug 875367: Annotate ~280 more methods with MOZ_OVERRIDE in /layout. r=dholbert 2013-05-29 12:37:49 -07:00
Matt Woodrow
0b2d2c65a4 Bug 844693 - Remove MacIOSurfaceImage::SetUpdateCallback. r=BenWa 2013-04-17 14:21:06 +12:00
Boris Zbarsky
462f47d89e Bug 852428 part 2. Make nsIFrame::Init infallible. r=dholbert 2013-03-19 21:47:48 -04:00
Robert O'Callahan
013943dc4f Bug 840902. Part 2: Remove nsresults from various display list methods. r=mattwoodrow
--HG--
extra : rebase_source : de498510bf8d85d9b0b2fab0137ef3be01c9adfa
2013-02-15 00:12:27 +13:00
Robert O'Callahan
106f5d95d1 Bug 825866. Part 8: Mass-rename of nsIView to nsView. r=tnikkel
This was autogenerated by basically replacing all occurrences of the word "nsIView" with nsView.

--HG--
rename : view/public/nsIView.h => view/public/nsView.h
2013-01-04 02:23:11 +13:00
Karl Tomlinson
064e00d431 b=797568 remove obsolete nsObjectFrame::GetImageContainer() r=roc
--HG--
extra : transplant_source : h%CB%86%8A%E4%9B%1A%7DqS9%AC6%93s%0D%099%0A%B2
2012-10-31 15:53:37 +13:00
Robert O'Callahan
1584d41fa2 Bug 801763. Don't try to update geometry for plugin widgets with no parent. r=mats
--HG--
extra : rebase_source : d7d0f7c5536adc2cd0ad77c2b3169410f237d206
2012-10-17 17:51:57 +13:00
Timothy Nikkel
31bcc858c2 Bug 642257. If there are no plugins in the display list skip a potentially expensive compute visibility pass with accurate visible regions to determine plugin geometry because it is not needed. r=roc
If there is a plugin in a background tab and a complex scene in a foreground tab the accurate visible regions can cause us to bog down, for no good reason.
2012-10-18 00:34:58 -05:00
Trevor Saunders
31db47e358 bug 542039 - accessible object types r=surkov, roc 2012-09-28 17:53:44 -04:00
Robert O'Callahan
8aec82ec43 Bug 626245. Part 4: Compute plugin widget geometry updates via the refresh driver's painting, and defer actual widget updates until we've just composited the window. r=mats
Updating plugin widget geometry every time we paint means we don't have to
explicitly request plugin geometry updates.
This patch stops us from flushing plugin geometry changes in
FlushPendingNotifications(Flush_Layout). There are too many Flush_Layouts and
flushing plugin geometry changes on them produces frequent
desynchronization of the plugin geometry with the rendered window contents.
There is some Web compatibility risk there --- it means we have to change
our tests, for one thing --- but hopefully it's OK.

--HG--
extra : rebase_source : 87adde45795ea2cab362ed9df54e62c5cc97e16c
2012-10-07 02:03:23 +13:00
Matt Woodrow
8684475c74 Bug 788044 - Make inactive layer subtrees relative to the ContainerLayer, not the reference frame. r=roc 2012-09-17 10:25:33 +12:00
Arnaud Sourioux
b20a9a4654 Bug 733186: Annotate ~1000 methods with MOZ_OVERRIDE in /layout r=dholbert r=dbaron 2012-09-14 09:10:08 -07:00
Ehsan Akhgari
8c296bbcd4 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -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 PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Chris Pearce
2d417c57f9 Bug 775965 - Store root pres context used to register plugins on nsObjectFrame. r=roc 2012-08-17 16:25:19 +12:00
David Zbarsky
fa3cb43e08 Bug 778519 - Don't include Layers.h everywhere Part 2 r=cjones 2012-07-30 17:42:26 -07:00
Aryeh Gregor
57c0ad57fb Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Timothy Nikkel
a9cb3b882c Bug 771351. Disallow plugins in popup panels gracefully. r=roc 2012-07-05 19:45:23 -05:00
Trevor Saunders
1192ef8bd9 bug 759033 - nsAccessible -> Accessible and nsAccessibleWrap -> AccessibleWrap r=surkov
--HG--
rename : accessible/src/atk/nsAccessibleWrap.cpp => accessible/src/atk/AccessibleWrap.cpp
rename : accessible/src/atk/nsAccessibleWrap.h => accessible/src/atk/AccessibleWrap.h
rename : accessible/src/base/nsAccessible.cpp => accessible/src/generic/Accessible.cpp
rename : accessible/src/base/nsAccessible.h => accessible/src/generic/Accessible.h
rename : accessible/src/mac/nsAccessibleWrap.h => accessible/src/mac/AccessibleWrap.h
rename : accessible/src/mac/nsAccessibleWrap.mm => accessible/src/mac/AccessibleWrap.mm
rename : accessible/src/msaa/nsAccessibleWrap.cpp => accessible/src/msaa/AccessibleWrap.cpp
rename : accessible/src/msaa/nsAccessibleWrap.h => accessible/src/msaa/AccessibleWrap.h
rename : accessible/src/other/nsAccessibleWrap.cpp => accessible/src/other/AccessibleWrap.cpp
rename : accessible/src/other/nsAccessibleWrap.h => accessible/src/other/AccessibleWrap.h
2012-05-28 21:18:45 -04:00
Gervase Markham
87620f5676 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Andreas Gal
dceb01a952 Do image scaling on the GPU (bug 650988, r=roc,cjones). 2012-05-03 07:05:55 -07:00
Robert O'Callahan
3e0ac701ac Bug 749075. Part 1: Refactor the nsDisplayItem API for testing whether the item needs to be rendered to a transparent surface. r=mattwoodrow
Currently we return an extra out parameter on GetOpaqueRegion. This is ugly and it's also going to be inefficient
because in a followup patch I'm going to avoid calls to GetOpaqueRegion, but we still need to know whether the item
needs a transparent surface. So this patch removes that out parameter. Instead, we rely on the fact that only
Windows' glass-window-background display item needs to force a transparent surface, and there can only be one
of those per window. So we store a reference to it in the nsDisplayListBuilder if there is one, and then we can
efficiently tell if any leaf display item is the one that forces a transparent surface. For display items that
wrap a list, we continue to store whether they need to force a transparent surface in a boolean in the list.
2012-05-03 16:29:05 +12:00
Robert O'Callahan
833e8a244f Bug 733607. Restructure logic to compute snapped bounds of display items in layer coordinates. Moves responsibility for computing snapped bounds from within the display items to callers of GetBounds/GetOpaqueRegion. r=tnikkel
Previously we snapped the results of nsDisplayItem::GetBounds and
nsDisplayItem::GetOpaqueRegion internally. By tracking which display items were
inside transforms, we disabled snapping quite conservatively whenever an ancestor
had a transform, which is undesirable.

With this patch, we don't snap inside GetBounds or GetOpaqueRegion, but just return
a boolean flag indicating whether the item will draw with snapping or not. This flag
is conservative so that "true" means we will snap (if the graphics context has a transform
that allows snapping), but "false" means we might or might not snap (so it's always safe
to return false).

FrameLayerBuilder takes over responsibility for snapping item bounds. When it converts
display item bounds to layer pixel coordinates, it checks the snap flag returned from
the display item and checks whether the transform when we draw into the layer will be
a known scale (the ContainerParameters scale factors) plus integer translation. If both
are true, we snap the item bounds when converting to layer pixel coordinates. With
this approach, we can snap item bounds even when the items have ancestors with active
transforms.
2012-04-10 23:24:18 +12:00
Edwin Flores
03b3f7b1f7 Bug 738392 - Fix plugins not rendering inside CSS transform on Mac OSX r=roc 2012-03-23 11:21:57 -07:00
Bas Schouten
99fd260eb0 Bug 724886: Push images from plugin code instead of pulling from nsObjectFrame. r=roc 2012-02-08 16:34:27 +01:00
Matt Brubeck
6eb3db5623 Merge mozilla-central and mozilla-inbound 2012-02-01 17:09:34 -08:00
Josh Aas
1d82a76ecf Bug 90268: Change plugin instance ownership from layout to content. r=roc r=bsmedberg 2012-01-31 16:55:54 -05:00
Bas Schouten
f41ddf02da Bug 715785: Make ImageContainers independent of LayerManagers. r=roc 2012-02-01 03:18:30 +01:00
Michael Wu
d8e503c38b Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Josh Aas
32d0be0cd8 Backed out changeset 33031c875984. Bug 90268. r=josh 2011-08-30 02:09:56 -04:00
Josh Aas
4ab4397277 Bug 90268: Make content own plugin instances instead of frames. Allows display:none instances and re-parenting instances without stopping them. r=roc 2011-08-29 03:09:22 -04:00
Oleg Romashin
9ed09830e6 Bug 621228 - Make plugins listening presShell SetActive calls. r=jst 2011-08-18 22:08:38 +02:00
Robert O'Callahan
93793566d0 Bug 637852: Part 5: Create ContainerParameters structure to carry resolution scale factors through layer creation. r=tnikkel
This patch shouldn't change any behavior. It just passes the ContainerParameters around, which will contain scale factors that should have been
applied when BuildLayer returns a ContainerLayer.

This patch also adds an aTransform parameter to BuildContainerLayerFor, which nsDisplayTransform uses to set the
transform for the ContainerLayer. This way BuildContainerLayerFor knows what the container's transform is going to be
before constructing the children, which in the next patch will let us construct the children with the right resolution.
2011-06-23 00:11:27 +12:00
Josh Aas
aceea2590e Bug 660721: Move nsPluginInstanceOwner to its own files. r=roc
--HG--
rename : layout/generic/nsObjectFrame.cpp => dom/plugins/base/nsPluginInstanceOwner.cpp
2011-06-01 00:37:54 -04:00
Josh Aas
ad51d92173 Bug 653116: Sort plugins from most to least recently modified. Search them in this order for MIME/extension matches. They should also appear in this order in about:plugins. r=jst r=bent 2011-05-28 00:08:26 -04:00
Doug Turner
7ae2a4a388 Bug 653201: Remove expose image / maemo specific npapi support. r=blassey r=josh 2011-05-21 11:21:49 -04:00
Josh Aas
f6eb4c8df6 Bug 637253: Remove nsIPluginInstance interface. r=bsmedberg 2011-05-17 21:48:34 -04:00
Jim Mathies
9b7daaeb53 Bug 633282 - manual backout of 'fixup UpdatePossiblyTransparentRegion v.3' in bug 622328 due to merge conflicts. r=tn 2011-05-13 11:40:46 -05:00
Josh Aas
1593af8e53 Bug 606641: Cleanup for plugin initialization. r=bz 2011-04-28 16:08:33 -04:00
Jan Küchler
5ef6bf26cf Bug 266236 part 3: Mechanical rename of nsIRenderingContext and nsThebesRenderingContext to nsRenderingContext. Mechanical substitution of nsRefPtr<nsRenderingContext> for nsCOMPtr<nsRenderingContext>.
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
extra : rebase_source : 34884bfcafd885feaf73300bc7246cd192062a48
2011-04-07 18:04:40 -07:00
Josh Aas
70a155c558 Bug 636872: Allow CSS cursor property to be used for plugins. r=bz 2011-04-08 12:58:04 -07:00
Robert O'Callahan
77ab860b5c Bug 644832. Windowless plugins inside CSS transforms should be rendered. r=tnikkel 2011-04-01 10:33:46 +13:00
Matt Woodrow
d23e549f03 Bug 637901 - Don't trash our cached ImageContainer unless the retained layer manager has changed. r=tnikkel a=blocking2.0 2011-03-02 21:53:27 +13:00