1 // A diagram of the state machine found in gesture_sequence.cc
3 // dot -Tpdf -ooutput.pdf gestures.dot
5 // If you alter this diagram, please update:
6 // sites.google.com/a/chromium.org/dev/developers/design-documents/aura/gesture-recognizer
17 M_Delay : Move after a certain delay}"
20 GS_NO_GESTURE -> GS_PENDING_SYNTHETIC_CLICK [label= "D0"];
22 GS_PENDING_SYNTHETIC_CLICK -> GS_SCROLL [label= "M0\n S0"];
23 GS_PENDING_SYNTHETIC_CLICK -> GS_PENDING_SYNTHETIC_CLICK [label= "M0\n S0"];
24 GS_PENDING_SYNTHETIC_CLICK -> GS_NO_GESTURE [label= "C0\n R0"];
25 GS_PENDING_SYNTHETIC_CLICK -> GS_PENDING_SYNTHETIC_CLICK_NO_SCROLL [label= "M0"];
26 GS_PENDING_SYNTHETIC_CLICK -> GS_PENDING_TWO_FINGER_TAP [label= "D1"];
27 GS_PENDING_SYNTHETIC_CLICK -> GS_PENDING_PINCH [label= "D1"];
29 GS_PENDING_SYNTHETIC_CLICK_NO_SCROLL -> GS_PENDING_SYNTHETIC_CLICK_NO_SCROLL [label= "M0\n S0"];
30 GS_PENDING_SYNTHETIC_CLICK_NO_SCROLL -> GS_NO_GESTURE [label= "C0\n R0"];
31 GS_PENDING_SYNTHETIC_CLICK_NO_SCROLL -> GS_PENDING_TWO_FINGER_TAP [label= "D1"];
32 GS_PENDING_SYNTHETIC_CLICK_NO_SCROLL -> GS_PENDING_PINCH [label= "D1"];
34 GS_SCROLL -> GS_SCROLL [label= "M0"];
35 GS_SCROLL -> GS_NO_GESTURE [label= "C0\n R0\n"];
36 GS_SCROLL -> GS_PENDING_TWO_FINGER_TAP [label= "D1"];
38 GS_PENDING_PINCH -> GS_PENDING_PINCH [label= "M0\n M1"];
39 GS_PENDING_PINCH -> GS_PENDING_PINCH_NO_PINCH [label= "M0\n M1"];
40 GS_PENDING_PINCH -> GS_PINCH [label= "M0\n M1"];
41 GS_PENDING_PINCH -> GS_SCROLL [label= "R0\n R1\n C0\n C1"];
43 GS_PENDING_PINCH_NO_PINCH -> GS_PENDING_PINCH_NO_PINCH [label= "M0\n M1"];
44 GS_PENDING_PINCH_NO_PINCH -> GS_SCROLL [label= "R0\n R1\n C0\n C1"];
46 GS_PENDING_TWO_FINGER_TAP -> GS_PENDING_TWO_FINGER_TAP [label= "M0\n M1"];
47 GS_PENDING_TWO_FINGER_TAP -> GS_PENDING_TWO_FINGER_TAP_NO_PINCH [label= "M0\n M1"];
48 GS_PENDING_TWO_FINGER_TAP -> GS_PINCH [label= "M0\n M1"];
49 GS_PENDING_TWO_FINGER_TAP -> GS_PINCH [label= "M_Delay0\n M_Delay1"];
50 GS_PENDING_TWO_FINGER_TAP -> GS_PINCH [label= "D2"];
51 GS_PENDING_TWO_FINGER_TAP -> GS_SCROLL [label= "R0\n R1\n C0\n C1"];
53 GS_PENDING_TWO_FINGER_TAP_NO_PINCH -> GS_PENDING_TWO_FINGER_TAP_NO_PINCH [label= "M0\n M1"];
54 GS_PENDING_TWO_FINGER_TAP_NO_PINCH -> GS_SCROLL [label= "R0\n R1\n C0\n C1"];
56 GS_PINCH -> GS_PINCH [label= "M0\n M1"];
57 GS_PINCH -> GS_SCROLL [label= "C0\n R0\n C1\n R1"];
58 GS_PINCH -> GS_PENDING_THREE_FINGER_SWIPE [label= "D2"];
60 GS_PENDING_THREE_FINGER_SWIPE -> GS_PINCH [label= "C0\n R0\n C1\n R1\n C2\n R2"];
61 GS_PENDING_THREE_FINGER_SWIPE -> GS_PENDING_THREE_FINGER_SWIPE [label= "M0\n M1\n M2"];