Commit Graph

280 Commits

Author SHA1 Message Date
Xidorn Quan
7d6c4129ab Bug 1304302 part 10 - Replace all uses of StyleSheetHandle. r=heycam
This commit is generated by the following commands with some minor
manual adjustment:

find . \( -name '*.h' -or -name '*.cpp' \) -not -path './layout/style/StyleSheet*' -exec sed -i -b \
  -e '/^\(#include\|using\)/s/StyleSheetHandle/StyleSheet/g' \
  -e 's/\(mozilla::\)\?StyleSheetHandle::RefPtr/RefPtr<\1StyleSheet>/g' \
  -e 's/StyleSheetHandle()/nullptr/g' \
  -e 's/->AsStyleSheet()//g' \
  -e 's/StyleSheetHandle/StyleSheet*/g' {} +
sed -i -b 's/sheet->AsVoidPtr()/sheet.get()/' layout/style/Loader.cpp
sed -i -b 's/AsHandle()/this/' layout/style/StyleSheet.cpp

MozReview-Commit-ID: 7abdvlKHukd
2016-09-26 22:03:25 +10:00
Joel Maher
dc82a36645 Backout 472858f465b0 (Bug 1290158) for perf regression.
MozReview-Commit-ID: 92eO5YtKLoj
2016-09-23 06:20:33 -04:00
Bill McCloskey
1680d779a9 Bug 1279086 - Allow painting for tab switch when JS is running (r=dvander,mconley,mrbkap) 2016-09-16 20:35:11 -07:00
Neil Rashbrook
64d79b3dcf Bug 1290158 Don't generate synthetic paint events for invisible documents r=mattwoodrow 2016-09-14 15:55:45 +01:00
Timothy Nikkel
1df76568d8 Bug 1284350. Backed out changeset 69abdc731a99 (Bug 1261554 (Part 1) - Prepare for implementing in-displayport visibility tracking. r=mstange) 2016-09-12 00:19:08 -05:00
Timothy Nikkel
dd4d9f4fe6 Bug 1284350. Backed out changeset e9df21facccf (Bug 1269931 - Send visible region updates for pres shells associated with nested views. r=botond) 2016-09-12 00:19:07 -05:00
Timothy Nikkel
94f662b139 Bug 1284350. Backed out changeset 4517cddd204e (Bug 1269934 - Handle visible frame sets more generically in PresShell. r=mstange) 2016-09-12 00:19:07 -05:00
Timothy Nikkel
867e4989d7 Bug 1284350. Backed out changeset 45c3308d49c9 (Bug 1269935 - Replace PresShell::DecVisibleCount() with a general map function. r=mstange) 2016-09-12 00:19:07 -05:00
Timothy Nikkel
26f992dadf Bug 1284350. Backed out changeset d0aa5cf74699 (Bug 1269937 - Manage updating visible frames and regions using RAII. r=mstange) 2016-09-12 00:19:07 -05:00
Timothy Nikkel
60c7054395 Bug 1284350. Backed out changeset 719d6d5d9d21 (Bug 1259281 - Mark frames NONVISIBLE if their pres shell is inactive or frozen. r=mstange) 2016-07-26 13:48:00 -05:00
Kartikaya Gupta
4dc8291666 Bug 1195722 - Add a new pref to enable the accessible carets if touch events are supported, and enable the pref on nightly. r=tylin
MozReview-Commit-ID: 2eaVJ4fLqjt
2016-08-03 12:00:22 -04:00
Jan Henning
07d07e8d9e Bug 1282902 - Part 3 - Let the MobileViewportManager recalculate the saved resolution if the display width changed before restoring. r=kats
The mobile session store saves the current document resolution in order to restore the previous zoom level when restoring a page. If the display width has changed since the session data was captured (e.g. because the device was rotated), the resolution might have to be scaled appropriately.
Currently, the session store does this scaling by itself by comparing the stored and current window widths, however this implementation is slightly simplified and doesn't cover all use cases, which means some pages can be restored at a wrong zoom level after rotation. To correctly cover all cases, the session store would have to compare viewport widths, too.

Because the MobileViewportManager doesn't wait for the session store to set the restore resolution, the latter has to call setRestoreResolution() as early as possible in order to guarantee that the restore resolution is set before the first paint of the document. Therefore the session store currently calls this after receiving a LocationChange notification. However at that time, the correct viewport for the current document is not yet available, which means the resolution cannot be recalculated by the session store at that point.

Therefore, this patch changes the approach taken and lets the MVM handle all resolution calculations instead. The session store now simply passes the stored previous display dimensions along with the previous document resolution to the MVM, which can then compare them to the current display and viewport widths and scale the resolution appropriately before using it during first paint.


MozReview-Commit-ID: IGxWw87yftK
2016-07-01 21:23:25 +02:00
Masayuki Nakano
8464b6c6bd Bug 1275914 part.4 Add a method to retrieve focused content's selection controller to nsIPresShell r=smaug
ContentEventHandler will need to support query any types of selection.  Therefore, it cannot use nsCopySupport::GetSelectionForCopy().  Instead, a part of it should be implemented by nsIPresShell::GetSelectionControllerForFocusedContent() and it should be shared by nsCopySupport::GetSelectionForCopy() and ContentEventHandler.

MozReview-Commit-ID: 1ItkkIUPFMG
2016-06-10 21:01:32 +09:00
Masayuki Nakano
4b3d1e8406 Bug 1278014 part.2 Define mozilla::SelectionType as an enum class and use it instead of RawSelectionType as far as possible r=smaug
This patch defines mozilla::SelectionType as an enum class.  This is safer than nsISelectionController::SELECTION_* since setting illegal value to its variable is checked at build time.  So, as far as possible, this should be used everywhere (but of course, this isn't available in scriptable interfaces).

And also this implements some useful methods for managing SelectionType and RawSelectionType which are implemented in layout/nsSelection.cpp because nsISelectionController is implemented by both PresShell and nsTextEditorState.  Therefore, implementing one of them may make hard to find them.  On the other hand, nsSelection.cpp is a better file name to look for them.

Note that this patch creates mozilla::Selection::RawType() for binding.  Native code should keep using Selection::Type() but the binding code needs to use RawType() due to impossible to convert from SelectionType to RawSelectionType without explicit cast.

MozReview-Commit-ID: 81vX7A0hHQN
2016-06-11 11:06:37 +09:00
Masayuki Nakano
71befe7dcf Bug 1278014 part.1 Rename SelectionType in nsISelectionController.idl to mozilla::RawSelectionType r=smaug
mozilla::SelectionType will be an enum class. Therefore, we need to rename SelectionType with a word "raw" since it's a type for raw nsISelectionController::SELECTION_*.

MozReview-Commit-ID: K8SO0bbpv0Y
2016-06-07 22:42:06 +09:00
Nathan Froyd
0cb6e71952 Bug 1277649 - add override declarations for Android-specific codepaths; r=snorp
Adding these makes the compiler much happier.
2016-06-03 18:31:05 -04:00
Carsten "Tomcat" Book
aa32757ba8 Backed out changeset fb331e03981a (bug 1271691) for perma failures in scroll-rounding.html 2016-05-27 13:33:31 +02:00
JerryShih
5093e107c3 Bug 1271691 - Update painting suppression status in painting flow. r=mattwoodrow, r=tn
CLOSED TREE
2016-05-26 02:18:00 -04: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
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
Kartikaya Gupta
ef9f686977 Bug 1270019 - Add a SetRestoreResolution API for fennec's SessionRestore to use. r=rbarker
MozReview-Commit-ID: 7WqmgAkFItQ
2016-05-17 14:50:08 -04: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
Seth Fowler
8531a5b2e1 Bug 1259281 - Mark frames NONVISIBLE if their pres shell is inactive or frozen. r=mstange 2016-05-11 19:27:29 -07:00
Seth Fowler
334880c00d Bug 1269937 - Manage updating visible frames and regions using RAII. r=mstange 2016-05-11 19:27:28 -07:00
Seth Fowler
2198b8a7bf Bug 1269935 - Replace PresShell::DecVisibleCount() with a general map function. r=mstange 2016-05-11 19:27:28 -07:00
Seth Fowler
69cb11364d Bug 1269934 - Handle visible frame sets more generically in PresShell. r=mstange 2016-05-11 19:27:27 -07:00
Seth Fowler
48cd584006 Bug 1269931 - Send visible region updates for pres shells associated with nested views. r=botond 2016-05-11 19:27:27 -07: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
9d6e02c11b Bug 1259246. Move nsIPresShell::GetRealPrimaryFrameFor to nsLayoutUtils::GetRealPrimaryFrameFor. r=dholbert
The function doesn't need to be a non-static member of nsIPresShell: it only checks if the document of the passed in element matches the presshell's document, and then the remaining code could be static. It has only one user, nsDocumentViewer::FindContainerView, and it doesn't care about the specific presshell, it just wants the primary frame, so it doesn't need the document check.

This lets us simplify nsDocumentViewer::FindContainerView because it had to jump through hoops to get the presshell.
2016-04-23 15:18:26 -05:00
Timothy Nikkel
5c6672f2aa Bug 1251150. Back out crash annotations used to try to diagnose crash.
They didn't find any problems.
2016-04-22 00:17:15 -05:00
Timothy Nikkel
bc64ac8994 Back out changesets 4bbf54c1bcd9 and ffcc3708103a from bug 1259246.
Backed out to see if they caused bug 1262027.
2016-04-21 23:14:37 -05:00
Seth Fowler
40ecfeebae Bug 1261554 (Part 1) - Prepare for implementing in-displayport visibility tracking. r=mstange 2016-04-21 01:21:58 -07:00
Timothy Nikkel
4e5f04dcaf Bug 1259246. Move nsIPresShell::GetRealPrimaryFrameFor to nsLayoutUtils::GetRealPrimaryFrameFor. r=dholbert
The function doesn't need to be a non-static member of nsIPresShell: it only checks if the document of the passed in element matches the presshell's document, and then the remaining code could be static. It has only one user, nsDocumentViewer::FindContainerView, and it doesn't care about the specific presshell, it just wants the primary frame, so it doesn't need the document check.

This lets us simplify nsDocumentViewer::FindContainerView because it had to jump through hoops to get the presshell.
2016-04-04 02:59:15 -05:00
chunminchang
f61dd5906c Bug 1110030 - part3 - Interface between PresShell and HardwareKeyHandler. r=masayuki, r=smaug 2016-03-21 14:20:59 +08:00
Seth Fowler
0f24c44100 Bug 1157546 - Replace the image visibility API with a more general API that tracks visibility for any kind of frame. r=mstange 2016-03-25 14:49:43 -07:00
Seth Fowler
f989c0c02b Bug 1257315 (Part 1) - Add a visualization of visibility tracking to the APZ minimap. r=botond,mattwoodrow 2016-03-18 18:38:57 -07:00
Timothy Nikkel
bd7583dd90 Bug 1251150. Add crash annotations if image visibility is re-entering. r=mats 2016-03-14 22:59:02 -05:00
Kartikaya Gupta
389444e383 Bug 1242690 - Make sure that synthetic mouse events have a reasonable guid so that the callback transform can get unapplied properly. r=botond
MozReview-Commit-ID: FYnSEGAZLyO
2016-03-10 18:25:49 -05:00
Timothy Nikkel
730e5c0a9b Bug 1251150. Add some crash annotations to try to track down a crash bug. r=dholbert 2016-03-10 00:37:19 -06:00
Nathan Froyd
5e6fb5ddfb Bug 1253007 - part 2 - pass a const& to PaintRangePaintInfo; rs=dholbert 2016-03-02 16:40:24 -05:00
Nathan Froyd
d286c17b7f Bug 1253007 - part 1 - use UniquePtr for RangePaintInfo in nsPresShell.cpp; r=dholbert 2016-01-20 16:24:28 -05:00
Seth Fowler
7f3c4ce92b Bug 1171371 - On memory-pressure, remove any stale images from the visible images list. r=tn 2015-06-04 11:08:19 -07:00
Cameron McCormack
c0e9a631c2 Bug 1244074 - Part 4: Use StyleSheetHandle instead of concrete style sheet class in most places. r=dholbert 2016-02-24 18:01:12 +11:00
Cameron McCormack
8a879b8032 Bug 1244068 - Part 4: Use StyleSetHandle instead of concrete style set class in most places. r=dholbert 2016-02-24 18:01:11 +11:00
Kartikaya Gupta
423eb91d86 Back out 3 csets from bug 1242690 for causing bug 1244549. r=backout 2016-01-31 14:44:58 -05:00
Kyle Huey
e95edb30a9 Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug 2016-01-30 09:05:36 -08:00
Kartikaya Gupta
cb52534815 Bug 1242690 - Make sure that synthetic mouse events have a reasonable guid so that the callback transform can get unapplied properly. r=botond 2016-01-29 16:31:15 -05:00
Nicholas Nethercote
d573148d5a Re-backout c216ff19d690 (bug 1059014 part 3) because the removed code is less dead than it first appears. 2016-01-20 22:55:37 -08:00
George Wright
5b521873c4 Bug 1234049 - Ensure we always invalidate new PresShells that are created for an inactive DocShell upon reactivating them. r=smaug 2016-01-13 17:00:15 -05:00