Commit Graph

60 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
Matt Woodrow
3312c3142f Bug 1261175. r=tnikkel, a=abillings 2017-10-12 13:10:27 +13:00
Olli Pettay
ae954542a2 Bug 1398196, flush layout before hittesting when handling mousedown/up, r=ehsan 2017-09-14 23:26:24 +03:00
Timothy Nikkel
a456c66e85 Backed out changeset 497dbf087ad5 (add diagnostic asserts) (bug 1354933) 2017-07-07 14:54:55 -05:00
Sylvestre Ledru
9d4a84d778 Bug 1378712 - Remove all trailing whitespaces r=Ehsan
MozReview-Commit-ID: Kdz2xtTF9EG
2017-07-06 14:00:35 +02:00
Nicholas Nethercote
a58025002f Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.
2017-06-22 17:08:53 +10: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
Nicholas Nethercote
518b61128f Bug 1357298 - Remove the 'layers.frame-counter' option. r=mstange,mattwoodrow.
This option turns on a frame counter that is shown in the top left corner via a
QR code. It was designed to be used in video recordings of B2G phones.

It no longer seems useful, so this patch removes it.
* * *
Bug 1357298 - Remove all traces of frame numbers and power from the profiler output. r=mstange.
2017-04-18 15:40:24 +10:00
Eric Rahm
1014279336 Bug 1351904 - Switch layout over to ArenaAllocator. r=xidorn
This switches over layout's usage of PLArena to ArenaAllocator. This allows
us to build more files in unified sources and gets rid of various CONST masks.

MozReview-Commit-ID: Aaf3Dl2kaoz
2017-03-31 14:06:33 -07:00
Markus Stange
f91ffc0a6f Bug 1275347 - Move the display list profiler marker to the right place. r=mattwoodrow
MozReview-Commit-ID: JcSmqlXlr4A
2017-02-16 19:18:37 -05: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
Olli Pettay
7b4b6e7d45 Bug 1338901 - nsViewManager::ProcessPendingUpdatesForView should use AutoTArray to avoid alloc/free, r=tn 2017-02-14 03:44:23 +02:00
Cameron McCormack
334e0fe231 Bug 1334735 - Part 1: Move need style/flush flags from document to pres shell. r=bz
MozReview-Commit-ID: 2Amf9yGRiJA
2017-02-10 10:42:27 +08: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
1671e96cb4 Bug 1330225. Remove unused function nsViewManager::InsertChild. r=mats 2017-01-12 00:59:11 -06:00
Nathan Froyd
b9cca6c700 Bug 1322553 - part 2 - use the new constructor of GeckoProfilerTracingRAII; r=mstange
This patch is not strictly relevant to the current bug, but doing the
work here nicely illustrates how the constructor we added in part 1 can
be used in existing parts of the codebase.
2017-01-07 15:56:49 -05:00
Nicholas Nethercote
545f84822e Bug 1299335 (part 3) - Streamline nsIWidget::SetParent. r=mstange.
This patch removes its return value, because none of the call sites check it
except for one non-vital assertion.
2016-12-16 10:54:11 +11:00
Andi-Bogdan Postelnicu
0ade4438b5 Bug 1320874 - Use auto type specifier where aplicable for variable declarations to improve code readability and maintainability in view/. r=mstange
MozReview-Commit-ID: G5BkqvHRhW7
2016-11-29 10:36:29 +02:00
Sylvestre Ledru
03b7192853 Bug 1317430 - Avoid a unnecessary copy by passing a const & in view/ r=njn
MozReview-Commit-ID: BAZITOmUMVg
2016-11-14 23:16:52 +01: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
Matt Woodrow
22e9ef7587 Bug 1279202 - Make sure that deferring a resize of a document schedules a layout flush, not just a style one. r=dbaron 2016-07-14 18:39:35 +12:00
Mats Palmgren
058b8e530e Bug 881832 - Make inner document reflow asynchronous. r=tnikkel 2016-05-12 12:07:45 +12:00
Matt Woodrow
cb1cb75fda Bug 881832 - Specify whether the height has changed when calling PresShell::ResizeReflow, since the PresContext size might have already been updated. r=dbaron 2016-05-12 12:06:11 +12:00
Phil Ringnalda
903965a65a Back out 6 changesets (bug 881832) for failures in test_Debugger.Source.prototype.element.html
CLOSED TREE

Backed out changeset fac50ce10b07 (bug 881832)
Backed out changeset 32e01c144cd4 (bug 881832)
Backed out changeset 779f5336b81e (bug 881832)
Backed out changeset 95efd250e29f (bug 881832)
Backed out changeset 7fe79f07189f (bug 881832)
Backed out changeset 8ee1824f2a57 (bug 881832)
2016-05-23 18:34:49 -07:00
Mats Palmgren
4185a33eae Bug 881832 - Make inner document reflow asynchronous. r=tnikkel 2016-05-12 12:07:45 +12:00
Matt Woodrow
ee41bb63c0 Bug 881832 - Specify whether the height has changed when calling PresShell::ResizeReflow, since the PresContext size might have already been updated. r=dbaron 2016-05-12 12:06:11 +12:00
Masayuki Nakano
d3766dc0ef Bug 1259661 part.4 Rename WidgetMouseEvent::reason to WidgetMouseEvent::mReason r=smaug
MozReview-Commit-ID: JaE0S7BIgVF
2016-05-12 11:36:41 +09:00
Phil Ringnalda
fb3bc51a33 Back out 5 changesets (bug 881832) for failures in browser_html_tooltip-02.js
Backed out changeset 117e8e24d714 (bug 881832)
Backed out changeset 8a0d5df41cfb (bug 881832)
Backed out changeset 6b3c5e185b04 (bug 881832)
Backed out changeset 11106afdcbe7 (bug 881832)
Backed out changeset d711b7c19a43 (bug 881832)
2016-05-11 21:08:08 -07:00
Mats Palmgren
371722e397 Bug 881832 - Make inner document reflow asynchronous. r=tnikkel 2016-05-12 12:07:45 +12:00
Matt Woodrow
8630ad5c64 Bug 881832 - Specify whether the height has changed when calling PresShell::ResizeReflow, since the PresContext size might have already been updated. r=dbaron 2016-05-12 12:06:11 +12:00
Timothy Nikkel
fec20f9b3f Bug 1261752. Part 3. r=mats 2016-05-10 22:58:47 -05:00
Timothy Nikkel
2322af5ec8 Bug 1261752. Part 2. r=mats 2016-05-10 22:58:47 -05:00
Timothy Nikkel
7d571d707e Bug 1261752. Part 1. r=mats 2016-05-10 22:58:26 -05:00
Xidorn Quan
1a169dea39 Bug 1267568 part 4 - Replace InFullscreenChange flag of PresShell with IsResizeSuppressed flag in RefreshDriver. r=smaug
MozReview-Commit-ID: FB3vGXwKZ9O
2016-05-03 17:58:57 +10:00
Xidorn Quan
1beec163ee Bug 1267568 part 3 - Use an individual method for check whether resize should be delayed. r=smaug
MozReview-Commit-ID: 3esSPNoDJCB
2016-05-03 17:58:57 +10:00
Nicholas Nethercote
8b08d3a33e Bug 1239864 (part 10) - Use the new rect iterators in view/ and widget/. r=roc. 2016-01-18 17:20:59 -08: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
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
Masayuki Nakano
49711cf26b Bug 895274 part.143 Rename NS_PLUGIN_INPUT_EVENT to ePluginInputEvent r=smaug 2015-09-08 23:33:38 +09:00
Masayuki Nakano
6e195d9286 Bug 895274 part.29 Rename NS_MOUSE_EXIT_WIDGET to eMouseExitFromWidget r=smaug 2015-08-29 08:58:31 +09:00
Masayuki Nakano
7af62446df Bug 895274 part.28 Rename NS_MOUSE_ENTER_WIDGET to eMouseEnterIntoWidget r=smaug 2015-08-29 08:58:31 +09:00
Xidorn Quan
0728d2c159 Bug 1177155 part 1 - Defer resize reflow and freeze refresh driver during window fullscreen change. r=smaug 2015-08-27 23:14:49 +10:00
Masayuki Nakano
5473d2dcb9 Bug 895274 part.1 Rename WidgetEvent::message to WidgetEvent::mMessage r=smaug 2015-08-22 10:34:51 +09: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
Jeff Muizelaar
b3f2f5c860 Bug 1186025. Optimize the usage of regions. r=mstange
This eliminates a bad idiom in some places.
2015-07-21 10:54:44 -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
Anthony Tseng
fde5de9cff Bug 1158425 - Rename _SYNTH event names. r=smaug 2015-05-01 22:06:00 -04:00