Commit Graph

63 Commits

Author SHA1 Message Date
Milan Sreckovic
6e0dd300ff Bug 1423551: Use BaseRect access methods instead of member variables in view/. r=jet
MozReview-Commit-ID: 1VlWJWAqRB3
2018-01-10 11:16:22 -05:00
Sylvestre Ledru
71230b028f Bug 1278282 - Replace #if (MOZ_WIDGET_GTK == 3) by #ifdef MOZ_WIDGET_GTK r=lsalzman
MozReview-Commit-ID: Bo0m7n078oh
2018-01-09 11:51:07 +01:00
Mats Palmgren
2544eb586c Bug 1414666 part 1 - Add nsIFrame::PresShell() for convenient access to the shell. r=emilio
MozReview-Commit-ID: 8FPTPKWyVtY
2017-11-09 03:00:48 +01:00
Kirk Steuber
1a30465ba0 Bug 1362382 - Move RegisterDragDrop to be called during idle time, if possible r=jimm
Additionally, do not call RegisterDragDrop for hidden windows.

MozReview-Commit-ID: Fv8j9FntGGT
2017-08-30 11:18:25 -07:00
Timothy Nikkel
a456c66e85 Backed out changeset 497dbf087ad5 (add diagnostic asserts) (bug 1354933) 2017-07-07 14:54:55 -05:00
Timothy Nikkel
3bab383a09 Back out changeset 43af422173e3 (add diagnostic asserts) (bug 1354933) 2017-06-22 15:40:40 -05:00
Bill McCloskey
ce42826bdf Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Carsten "Tomcat" Book
238bf154d5 Backed out changeset 4f6302a98ae4 (bug 1372405) 2017-06-21 13:59:26 +02:00
Bill McCloskey
67e8af4720 Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-20 21:44:11 -07:00
Carsten "Tomcat" Book
bbe9441993 Backed out changeset 9846de3bd954 (bug 1372405) 2017-06-20 08:27:02 +02:00
Bill McCloskey
f69608368b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-19 22:25:47 -07:00
Timothy Nikkel
e10af9e2a5 Bug 1354933. Add some asserts for document viewer teardown. r=mats 2017-06-03 01:31:12 -05:00
Emilio Cobos Álvarez
3731858edf Bug 1360241: Devirtualize nsIFrame::GetType. r=heycam
MozReview-Commit-ID: 5Nzhyta5Hle
2017-04-30 17:30:08 +02:00
Timothy Nikkel
e16c11262c Bug 1354933. Add annotation if the view is for a printing document if the view has a frame in its destructor. r=mats 2017-04-27 17:50:00 -05:00
Timothy Nikkel
97feb34452 Backed out changeset 2c6ecadd506b (bug 1354933). 2017-04-20 16:39:38 -05:00
Timothy Nikkel
1e46bebd74 Bug 1354933. Assert that the frame pointer is null in the nsView destructor. r=mats 2017-04-18 18:17:35 -05:00
Kartikaya Gupta
d04adf7ea7 Bug 1335745 - Guard against a null rootPresContext. r=tnikkel
With WebRender enabled, the DidComposite notification message can be delayed
because of the extra indirection of the WR Render thread. This can result
in the DidComposite notification arriving for a popup window after it has already
been put into the bfcache and no longer has a root prescontext. This results in
an intermittent crash or assertion failure during crashtests. A null guard here
should avoid the problem.

MozReview-Commit-ID: A1U82tStFsQ
2017-03-23 17:22:26 -04:00
Matt Woodrow
e40a3c55b7 Bug 1302071 - Part 5: Bucket PresContext invalidations by transaction ID, and only deliver them when the associated composite has completed. r=tnikkel
This patch does a few things:
* Buckets invalidations by transaction ID, and sends MozAfterPaints events for them when the associated composite completes.
* Creates a separate EventualDidPaint timer for each transaction ID we have invalidations for rather than just using one.
* Removes NotifyDidPaintForSubtree(PAINT_LAYERS), as it was only necessary for the existing bucketing mechanism.

MozReview-Commit-ID: JERMsgxhPQd
2017-02-17 15:16:15 +13:00
Sylvestre Ledru
dd228868b0 Bug 1338086 - Remove useless else blocks in order to reduce complexity in view/ r=tnikkel
MozReview-Commit-ID: 6H794QjWZ1t
2017-02-09 10:42:41 +01:00
Julian Seward
1a3d3ab3a5 Bug 1232696 - Remove NS_DECL_AND_IMPL_ZEROING_OPERATOR_NEW as it causes segfaulting for GCC 6 builds (1 of 5, fixes for view/). r=tnikkel. 2017-01-24 17:10:01 +01:00
Timothy Nikkel
d69ab9c3b0 Bug 1323606. Implement the pref layout.show_previous_page for e10s. r=gw280 r=mats
The existing implementation only works for non-remote subdocuments.

This essentially makes the changes from bug 1157941 conditional on this pref.
2016-12-19 17:34:00 -06: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
Nicholas Nethercote
437e516713 Bug 1293596 (part 1) - Don't use NS_IMETHOD for nsIWidget::AttachViewToTopLevel. r=karlt. 2016-08-10 10:04:08 +10:00
Jonathan Kew
5959e41efd Bug 1087964 - Remove OS X resolution-changing hack from DoResetWidgetBounds, and get the scale from the device context instead (because it will be up to date already, while the widget may not); and fix scaling in nsCocoaWindow::Resize to work properly with custom devPixelsPerPx. r=mstange 2016-05-11 11:04:21 +01:00
Sebastian Hengst
155d508cbb Backed out changeset a74ef371c48f (bug 1087964) for failing elementFromPoint.html on OSX 10.10 debug. r=backout 2016-05-12 13:19:00 +02:00
Jonathan Kew
cced338425 Bug 1087964 - Remove OS X resolution-changing hack from DoResetWidgetBounds, and get the scale from the device context instead (because it will be up to date already, while the widget may not); and fix scaling in nsCocoaWindow::Resize to work properly with custom devPixelsPerPx. r=mstange 2016-05-12 09:31:13 +01:00
Kyle Huey
a9cf047227 Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj 2016-04-25 17:23:21 -07:00
Timothy Nikkel
c1e61bdbdc Bug 1264183. Remove unused argument to nsView::InvalidateHierarchy. r=mats 2016-04-22 00:17:15 -05:00
Masayuki Nakano
35775b20e1 Bug 1259657 Rename WidgetGUIEvent::widget to WidgetGUIEvent::mWidget r=smaug
MozReview-Commit-ID: 167PQWJDEHW
2016-04-14 17:03:14 +09:00
Mike Conley
d6ec983152 Bug 1264409 - Make last transaction ID available via nsIDOMWindowUtils, and pass transaction ID through MozAfterPaint. r=mattwoodrow,mrbkap
MozReview-Commit-ID: 7wCYif8F6ws
2016-04-13 16:59:15 -04:00
Timothy Nikkel
b384bc3f34 Bug 1241651. Remove nsPresContext::GetDisplayRootPresContext. r=mattwoodrow
It should no longer serve any purpose different from nsPresContext::GetRootPresContext.
2016-01-21 19:09:04 -06:00
Jonathan Kew
657b233fdc Bug 890156 - patch 6 - Update window placement code to work with desktop pixels, for per-monitor DPI support on Windows. r=emk 2015-12-03 13:19:50 +00:00
Bogdan Postelnicu
1c47bee22a Bug 1237227 - Check the return of context->GetDisplayRootPresContext() for validity. r=roc 2016-01-06 04:32:00 -05: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
8da819977a Bug 1229237 (part 1) - Make nsIWidget::{Create,CreateChildren}() take a LayoutDeviceIntRect. r=botond. 2015-11-16 00:35:18 -08:00
Nicholas Nethercote
4442e1485c Bug 1228125 (part 3) - Remove nsIWidget::GetClientBoundsUntyped(). r=botond. 2015-11-25 20:55:36 -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
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
Victor Porof
16f0be505d Bug 1211841 - Style off the main thread markers differently, r=jsantell 2015-10-28 11:00:52 +01:00
Victor Porof
c069753edc Bug 1202657 - Add markers for workers' message passing and serialization/deserialization, r=smaug, jsantell, tromey, ejpbruel 2015-10-21 23:10:05 +02: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
208524fd89 Bug 1207161 - fix run-by-dir leak in test_bug846906.xul; r=mccr8 2015-10-12 21:41:35 -04:00
Victor Porof
a6918158c6 Bug 1195232 - Stop using TracingMetadata from GeckoProfiler.h, r=tromey 2015-08-31 16:14:14 +02:00
Victor Porof
2a2e6d1b22 Bug 1050498 - Record compositing operations, r=jsantell,smaug,tromey 2015-08-25 08:51:58 +03:00
George Wright
ac4597056f Bug 1157941 - If the current PresShell is suppressed, paint the old one if it is available r=tn,Enn 2015-07-21 21:09:02 -04:00
Andrew Comminos
963f9d0f1c Bug 1177171 - Round widget coordinates on GTK3. r=karlt 2015-06-29 11:50:00 -04:00
Timothy Nikkel
e657109f88 Bug 1159772. Don't let nsContainerFrame::SyncWindowProperties make widget calls that can result in synchronous painting during reflow or frame construction. r=mats
Specifically on Windows nsIWidget::SetTransparencyMode can result in sync painting.

So we give nsContainerFrame::SyncWindowProperties a sync or async option and use the view manager post pending update infrastructure to flush SyncWindowProperties calls async.
2015-05-04 14:29:19 -05:00
Nicolas Silva
d73f54cb00 Bug 1155621 - Make nsIntRect and nsIntPoint typedefs of mozilla::gfx::IntRect and mozilla::gfx::IntPoint. r=Bas 2015-04-21 17:04:57 +02:00
Ehsan Akhgari
192c62f8c7 Bug 1156110 - Make nsView::mWindow an nsCOMPtr; r=roc 2015-04-19 16:44:15 -04:00
Mats Palmgren
656cd19bb9 Bug 1149035 - Make nsXULPopupManager::PopupResized take a LayoutDeviceIntSize param instead of a unit-less nsIntSize. r=roc 2015-03-30 11:36:01 -04:00