gecko-dev/layout
Masayuki Nakano 09c4ea6dd3 Bug 1482425 - PresShell::PageMove() should use different rules to look for a container element for aExtend value r=smaug
PresShell::PageMove() climbs up to parent document when there is no scrollable
parent in current document.  However, if aExtend is true, it should expand
Selection in the document itself.  Therefore, it needs different rules to
look for container of expanding Selection from scrollable element to scroll.

Additionally, old rules (i.e., before the fix of bug 1369072 which caused
this regression) were also buggy.  It used parent scrollable element or
root scrollable element simply.  Therefore, if found scrollable element is
ancestor of selection limiter, it didn't work as expected.

This patch creates nsFrameSelection::GetFrameToPageSelect() to retrieve
per-page selection container element with the following rules:
- look for a scrollable element in selection limiter.
- if there is no scrollable element, use selection limiter.
- if there is no selection limiter, use the root frame.

So, nsFrameSelection::CommonPageMove() should take nsIFrame rather than
nsIScrollableFrame since container of per-page selection may be used in
non-scrollable contenteditable element.  If it's called with non-scrollable
frame, it needs to compute the expanding range with the frame size.

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

--HG--
extra : moz-landing-system : lando
2018-10-18 04:42:53 +00:00
..
base Bug 1482425 - PresShell::PageMove() should use different rules to look for a container element for aExtend value r=smaug 2018-10-18 04:42:53 +00:00
build Backed out 5 changesets (bug 1497707) for android mass failures. CLOSED TREE 2018-10-18 00:35:39 +03:00
doc Bug 1483090 - Rename StyleUserInterface to StyleUI. r=emilio 2018-08-14 08:37:37 +00:00
forms Bug 1498769 - Also require a frame for an <option> to be interactively selectable. r=enndeakin 2018-10-17 00:13:06 +02:00
generic Bug 1482425 - PresShell::PageMove() should use different rules to look for a container element for aExtend value r=smaug 2018-10-18 04:42:53 +00:00
inspector Bug 1481192 Part 2: Add test of computedstyle for pseudo elements of varying display types. r=emilio 2018-09-28 20:20:51 +00:00
ipc Bug 1475139 part 9 - Use DrawDependentSurface in nsDisplayRemote when painting to a temp layer manager with a recording. r=mattwoodrow 2018-09-24 21:45:54 -05:00
mathml Bug 1492567 - Back out bug 1481866. r=dbaron 2018-09-20 01:27:55 +02:00
media
painting Bug 1482403 - Always create nsDisplayOpacity for filters and masks when there is visual opacity r=jwatt 2018-10-14 19:27:15 +00:00
printing Bug 1493563 - Part 5: Present the old state and the content blocking log to the web progress listeners; r=baku 2018-09-28 14:46:02 -04:00
reftests Bug 1499386 - Implement @supports selector() syntax. r=heycam 2018-10-17 12:08:14 +00:00
style Merge mozilla-central to autoland. CLOSED TREE 2018-10-17 19:55:51 +03:00
svg Bug 1499408 - Part 2: Have css::URLValue get URLExtraData from its CssUrlData. r=emilio 2018-10-17 09:43:32 +00:00
tables Bug 1494426 part 1: Use ReflowInput::AvailableSize() convenience method in a few more places. r=TYLin 2018-09-26 21:42:41 +00:00
tools Backed out changeset 8d7987ea4fb1 (bug 1490257) for causing android failures. CLOSED TREE 2018-10-15 14:39:00 +03:00
xul Bug 1466707 - Ensure that animated images always honour the animated image mode. r=tnikkel 2018-10-16 08:50:44 -04:00
moz.build