gecko-dev/layout
Masayuki Nakano 83f155f075 Bug 1498816 - part 1: Make nsFrameSelection::CommonPageMove() emulate click in current selection limiter r=smaug
nsFrameSelection::CommonPageMove() is called only by
nsTextInputSelectionImpl::PageMove() and PresShell::PageMove().  So, this is
the only implementation of (Shift+) PageDown and (Shift+) PageUp.

This scrolls down/up the specific frame.  However, this allows to scroll
outside of selection limiter, for example, even when an editing host is
focused, its parent scrollable element may be scrolled.  This is same behavior
as Blink so that we should keep this behavior.

However, it also emulates to click same position after scroll and this behavior
is different from Blink.  At this time, it does not check selection limiter and
then, nsFrameSelection::HandleClick() may reset selection limiter the scrolled
frame is a parent frame of the limiter.

Therefore, this patch makes it check if the scrolled frame is a parent of the
limiter, and if so, use result of GetFrameToPageSelect() to emulate a click
instead.  The result won't be a parent of the limiter because it is used when
handling Shift + PageDown and Shift + PageUp which are always handled in the
limiter.

Differential Revision: https://phabricator.services.mozilla.com/D13202

--HG--
extra : moz-landing-system : lando
2018-11-29 06:16:15 +00:00
..
base Bug 1498816 - part 1: Make nsFrameSelection::CommonPageMove() emulate click in current selection limiter r=smaug 2018-11-29 06:16:15 +00:00
build Bug 1510582 - Remove useless inclusions of Services.h r=erahm 2018-11-28 17:25:23 +00:00
doc Bug 1483090 - Rename StyleUserInterface to StyleUI. r=emilio 2018-08-14 08:37:37 +00:00
forms Bug 1510471 - Avoid useless FrameNeedsReflow call. r=emilio 2018-11-28 12:48:03 -05:00
generic Bug 1498816 - part 1: Make nsFrameSelection::CommonPageMove() emulate click in current selection limiter r=smaug 2018-11-29 06:16:15 +00:00
inspector Bug 1510116. Fix some unified build issues in layout code. r=emilio 2018-11-12 22:20:52 +00:00
ipc Bug 1438945 - Part 8: RemoteWorker IPC. r=asuth 2018-11-19 15:18:32 -08:00
mathml Backed out 2 changesets (bug 1508472) for causing build bustages on JobScheduler_posix.cpp. CLOSED TREE 2018-11-28 00:08:11 +02:00
media
painting Bug 1498639 - Force the creation of APZ scroll data for the frames with perspective property, not just their children. r=kats 2018-11-28 15:56:58 +00:00
printing Bug 1505601 - Turn nsIDocShell XPIDL const lists into cenums; r=bzbarsky 2018-11-28 03:30:56 +00:00
reftests Backed out changeset 30accf21bb0a (bug 1510214) perma failing org.mozilla.geckoview.test.AccessibilityTest.testScroll CLOSED TREE 2018-11-29 07:51:59 +02:00
style Bug 1504065 - Support background-color animations on the compositor for nsIDOMWindowUtils::GetOMTAValue. r=birtles 2018-11-28 00:59:15 +00:00
svg Backed out 2 changesets (bug 1508472) for causing build bustages on JobScheduler_posix.cpp. CLOSED TREE 2018-11-28 00:08:11 +02:00
tables Backed out 2 changesets (bug 1508472) for causing build bustages on JobScheduler_posix.cpp. CLOSED TREE 2018-11-28 00:08:11 +02:00
tools Merge mozilla-inbound to mozilla-central. a=merge 2018-11-28 06:08:19 +02:00
xul Backed out 2 changesets (bug 1508472) for causing build bustages on JobScheduler_posix.cpp. CLOSED TREE 2018-11-28 00:08:11 +02:00
moz.build