Implementing Multi-Touch Gestures with Touch Groups and Cross Events
Honorable MentionAuthors
Multi-touch gestures can be very difficult to program correctly because they require that developers build high-level abstractions from low-level touch events. In this paper, we introduce programming primitives that enable programmers to implement multi-touch gestures in a more understandable way by helping them build these abstractions. Our design of these primitives was guided by a formative study, in which we observed developers' natural implementations of custom gestures. Touch groups provide summaries of multiple fingers rather than requiring that programmers track them manually. Cross events allow programmers to summarize the movement of one or a group of fingers. We implemented these two primitives in two environments: a declarative programming system and in a standard imperative programming language. We found that these primitives are capable of defining nuanced multi-touch gestures, which we illustrate through a series of examples. Further, in two user evaluations of these programming primitives, we found that multi-touch behaviors implemented in these programming primitives are more understandable than those implemented with standard touch events.
Research Questions / Practical Problems
Question signals indexed for this paper.
- 67%
M3 Gesture Menu: Design and Experimental Analyses of Marking Menus for Touchscreen Mobile Interaction
CHI '18· Hand Gesture Recognition
- 67%
PinchList: Leveraging Pinch Gestures for Hierarchical List Navigation on Smartphones
CHI '19· Hand Gesture Recognition
- 67%
µGlyph: a Microgesture Notation
CHI '23· Hand Gesture Recognition
Based on Jaccard similarity of research subtopics & professions (≥60%)