gecko-dev/layout/base/doc/AccessibleCaretEventHubStates.dot
Ting-Yu Lin 4415223066 Bug 1432017 - Remove AccessibleCaretEventHub::PostScrollState. r=mats
In the era of B2G, we wanted to hide the carets during scrolling, and
PostScrollState was designed to avoid carets flicking during momentum
scrolling.

These days, we no longer hide carets during scrolling, so PostScrollState
can be removed to make the code simpler and easier to maintain.

MozReview-Commit-ID: Bf6ZgYVlt1q

--HG--
extra : rebase_source : 272bf91b8acaae6d81a3291b6ad85703ff2696dc
2018-02-23 22:05:49 +08:00

38 lines
1.4 KiB
Plaintext

// Steps to generate AccessibleCaretEventHubStates.png
// 1. Install Graphviz
// 2. dot -T png -o AccessibleCaretEventHubStates.png AccessibleCaretEventHubStates.dot
//
// Note: If the edge has 'constraint=false', it is not used in ranking the
// nodes. http://www.graphviz.org/doc/info/attrs.html#d:constraint
digraph event_hub_states {
node [style=filled];
edge [color="gray30", fontcolor="gray20", fontsize=12]
NoAction [label="NoAction\n(Initial)"color="#96FF2F"];
NoAction -> PressCaret [label="Press & on a caret"];
NoAction -> PressNoCaret [label="Press & not on a caret"];
NoAction -> Scroll [label="Scroll start"];
PressCaret [color="#84D8FF"];
PressCaret -> DragCaret [label="Move & distance is large"];
PressCaret -> NoAction [label="Release (synthesizing a tap)"];
DragCaret [color="#84D8FF"];
DragCaret -> DragCaret [label="Move"];
DragCaret -> NoAction [label="Release"];
PressNoCaret [color="#E8C516"];
PressNoCaret -> NoAction [label="Move & distance is large or\nRelease or\nBlur"];
PressNoCaret -> LongTap [label="Long tap"];
PressNoCaret -> Scroll [label="Scroll start", constraint=false];
LongTap [color="#E8C516"]
LongTap -> NoAction [label="Release"];
LongTap -> Scroll [label="Scroll start", constraint=false];
Scroll [color="#FF9022"]
Scroll -> NoAction [label="Scroll end"];
Scroll -> NoAction [label="Blur"];
}