Commit graph

631 commits

Author SHA1 Message Date
Stone Shih
6a29290e1b Bug 1258804 - Part 2: Attributes of gotpointercapture and lostpointercapture should be the same as the pointer event that causes them. r=smaug
--HG--
extra : rebase_source : 8f72d77e100e50c8a4d0354e82733cca900282ea
2016-08-01 15:12:11 +08:00
Jan Henning
47101d08ae 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

--HG--
extra : transplant_source : e%8D%BD%26%D2%C3%8E5%E3%2B%C0t%BA%DB%C1%BBs%3F%13%1F
2016-07-01 21:23:25 +02:00
Felipe Gomes
3570fa4e99 Backed out changeset a7105b09ae0c (bug 1272961)
MozReview-Commit-ID: IxEySUZmSxW
2016-07-04 17:51:22 -03:00
Felipe Gomes
838045d6fc Bug 1272961. r=Enn
MozReview-Commit-ID: JrKnWcYylW5
2016-07-04 16:33:21 -03:00
Masayuki Nakano
b7036f4f73 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

--HG--
extra : rebase_source : 3d33a76ebe52bad0ba7fbe332fc06500a2a007d7
2016-06-10 21:01:32 +09:00
Masayuki Nakano
00591135a4 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

--HG--
extra : rebase_source : d9f88e217c713c60d1c2578ce6421c73ccba8650
2016-06-11 11:06:37 +09:00
Masayuki Nakano
17f667a2e2 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

--HG--
extra : rebase_source : 56e3ac852657ef4795d718d2da09b16903c2e66c
2016-06-07 22:42:06 +09:00
Ralph Giles
19a3dd8d6a Bug 1275744 - Reference MOZ_LOG in layout comments. r=erahm
NSPR_LOG_MODULES is deprecated.

MozReview-Commit-ID: KGA9AzNUqnP

--HG--
extra : rebase_source : e3b4913f529be38da65a03e0961ee2cf8a9a7789
2016-05-26 11:40:17 -07:00
Carsten "Tomcat" Book
a34d39f529 Backed out changeset e7a3ba795e1a (bug 1276976) for timeouts in browser_tableWidget_mouse_interaction.js on a CLOSED TREE 2016-06-09 15:28:22 +02:00
Neil Deakin
efe80ab561 Bug 1276976, ensure that popups are visible in the right area, r=tn, r=mrbkap 2016-06-09 07:59:31 -04:00
Carsten "Tomcat" Book
db37f46991 Backed out changeset fb331e03981a (bug 1271691) for perma failures in scroll-rounding.html a=merge
--HG--
extra : source : 920fe2a024f7392fc9801a6d06574c564d6dc844
2016-05-27 13:33:31 +02:00
JerryShih
6d1d98ee4f Bug 1271691 - Update painting suppression status in painting flow. r=mattwoodrow, r=tn
CLOSED TREE

--HG--
extra : amend_source : 9c8512a528f0fadbd4c5f51d3a7c588ff2b37d7c
2016-05-26 02:18:00 -04:00
Matt Woodrow
58b82b3f90 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
Bobby Holley
d15ee172fb Bug 1274443 - Replace mPresArenaAllocCount with a hashtable to make it easy to spot the cause of double-frees. r=heycam 2016-05-24 18:50:25 -07:00
Phil Ringnalda
6bb0bc4494 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
396c2df3ff 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
Moritz Brunner
f9f6b3c538 Bug 732733 - Resize drag image relative to the available screensize. r=jimm
--HG--
extra : rebase_source : 121170788742da505aada578a663b40ed05d838e
2016-05-13 06:48:00 -04:00
Kartikaya Gupta
b9e4a263e3 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
c6417cc01e 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
0b1e158092 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
1678f1d3bb Bug 1269934 - Handle visible frame sets more generically in PresShell. r=mstange 2016-05-11 19:27:27 -07:00
Matt Woodrow
175d6d32b1 Bug 881832 - Specify whether the height has changed when calling PresShell::ResizeReflow, since the PresContext size might have already been updated. r=dbaron
--HG--
extra : rebase_source : 05e6b4100b881848c78a5323d5ada4b65cf9963e
2016-05-12 12:06:11 +12:00
Xidorn Quan
2bb1280ba1 Bug 1267568 part 4 - Replace InFullscreenChange flag of PresShell with IsResizeSuppressed flag in RefreshDriver. r=smaug
MozReview-Commit-ID: FB3vGXwKZ9O

--HG--
extra : source : 84878dbedf8c2efe2221d7562fd69a7c4cf20971
2016-05-03 17:58:57 +10:00
Xidorn Quan
1327931cba Bug 1267568 part 2 - Add helper method to nsIPresShell to get the RefreshDriver. r=smaug
MozReview-Commit-ID: Cxbmr2CVXJz

--HG--
extra : source : fbf8cd895abbb69d3b5d3c2b3afe36984db5f985
2016-05-03 17:58:57 +10:00
Timothy Nikkel
4fa1d92384 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
d5ab4ae492 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
0847460298 Bug 1261554 (Part 1) - Prepare for implementing in-displayport visibility tracking. r=mstange 2016-04-21 01:21:58 -07:00
L. David Baron
7ddb4d5d7b Bug 1265591 patch 3 - Make the comment describing RestyleForCSSRuleChanges match reality. r=heycam
MozReview-Commit-ID: 9CT2k59cYP2
2016-04-19 11:38:35 -07:00
L. David Baron
b1db407049 Bug 1265591 patch 2 - Rename nsIPresShell::ReconstructStyleData to RestyleForCSSRuleChanges. r=heycam
MozReview-Commit-ID: BU3X0fBEKE3
2016-04-19 11:38:35 -07:00
L. David Baron
368f3bb46f Bug 1265591 patch 1 - Remove Internal/External versions of ReconstructStyleData. r=heycam
This Internal/External difference was added in bug 253889 in the year
2004, when we build layout as a library separate from things like
editor.  It is no longer needed now that we have libxul, and should not
be used by any external callers.

MozReview-Commit-ID: 7354lCl3hN8
2016-04-19 11:38:34 -07:00
Timothy Nikkel
59adfe3545 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
1c9ec82591 Bug 1110030 - part3 - Interface between PresShell and HardwareKeyHandler. r=masayuki, r=smaug 2016-03-21 14:20:59 +08:00
Seth Fowler
5973113f1b 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
Jamie Nicol
4443e3c227 Bug 1247098 - Mark nsIPresShell::GetResolution and nsPresContext::IsRootContentDocument as const. r=tnikkel
MozReview-Commit-ID: 5IXm4EUy7IN

--HG--
extra : rebase_source : 7028a908adcb36828a58bb3ad7403559cfad9eb2
2016-02-24 14:57:43 +00:00
Seth Fowler
b4ddf9bb30 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
0ecd5593cc 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
7c95c39734 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
Birunthan Mohanathas
d7371d07d0 Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Phil Ringnalda
d381b4bca6 Back out 7 changesets (bug 1235261) for cpptest failures in TestTArray
CLOSED TREE

Backed out changeset d66c3f19a210 (bug 1235261)
Backed out changeset 467d945426bb (bug 1235261)
Backed out changeset 32b61df13142 (bug 1235261)
Backed out changeset c50bb8ed4196 (bug 1235261)
Backed out changeset 0ff0fa6fe81f (bug 1235261)
Backed out changeset df70e89669da (bug 1235261)
Backed out changeset 064969357fc9 (bug 1235261)
2016-01-31 10:10:57 -08:00
Birunthan Mohanathas
373593275e Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Kyle Huey
91efc5a86c Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug 2016-01-30 09:05:36 -08:00
Nicholas Nethercote
2282e33e5b Re-backout c216ff19d690 (bug 1059014 part 3) because the removed code is less dead than it first appears.
--HG--
extra : rebase_source : 22c84e309f8b9e26c359108905a2e8a6e5df2bb7
2016-01-20 22:55:37 -08:00
Randall Barker
ed071f6c7e Bug 1229752 - When C++ APZ scroll offset diverges from the Gecko scroll offset, it is not being applied properly to the event position r=botond,tnikkel 2016-01-11 16:06:14 -08:00
Nicholas Nethercote
3fae597767 Bug 1232852 (part 9) - Simplify ReleasePointerCaptureCaller. r=tn.
It doesn't need to store the nsIContent. It just needs to record if mPointerId
has been set. This is because ReleasePointerCapturingContent() doesn't use its
second parameter.

--HG--
extra : rebase_source : d31036c74b06143d88848f63165cd1f41b433102
2016-01-05 16:08:17 -08:00
Nicholas Nethercote
5721b2ad2e Bug 1232852 (part 5) - Remove some unused parameters in and around layout/base/. r=heycam.
--HG--
extra : rebase_source : 3f114d32650a260fe2eda847f24c2967a9d94185
2016-01-05 16:08:17 -08:00
Ting-Yu Lin
d477595b16 Bug 1221459 - Remove TouchCaret and SelectionCarets. r=mtseng, r=roc
All the files modified are straightforward deletion except TouchManager
and ZoomConstraintsClient. I add some includes and wrap TouchManager by
mozilla namespace to fix build errors due to the removal of TouchCaret.
2015-12-22 14:14:12 +08:00
Nigel Babu
fd9c9b233f Backed out changeset 9f30d3caa231 (bug 1221459) 2015-12-22 14:03:21 +05:30
Ting-Yu Lin
0fd840e0d8 Bug 1221459 - Remove TouchCaret and SelectionCarets. r=mtseng,roc
All the files modified are straightforward deletion except TouchManager
and ZoomConstraintsClient. I add some includes and wrap TouchManager by
mozilla namespace to fix build errors due to the removal of TouchCaret.

--HG--
extra : rebase_source : b31db322130f665e7dda53d1061cfc40f81ce411
2015-12-22 14:14:12 +08:00
Kartikaya Gupta
e0c2c8e4f0 Bug 1228597 - Clean up code paths that (un)apply a pres shell resolution. r=tn,botond
A clear separation is introduced between paths that deal with a root
document resolution (at the process boundary in e10s setups) and paths
that deal with a non-root document resolution (elsewhere in Layout code).

This allows both code paths to run on all platforms.

--HG--
extra : source : 22bf09630803392dba3052a3f79691475af0c5e2
2015-11-30 19:13:20 -05:00
Randall Barker
73d7c06ec0 Bug 1224015 - Part 1: nsLayoutUtils functions do not account for nsPresShell resolution r=tnikkel 2015-11-26 20:51:13 -06:00