How To Call It
MultiGesture is a singleton global table: call its functions with a dot (MultiGesture.<method>(...)).
Multi-finger gestures: add each finger path with MultiGesture.builder(), then run them together with build():go().
Documented for app version 1.0.51Updated:
MultiGesture is a singleton global table: call its functions with a dot (MultiGesture.<method>(...)).
In automation flow, chain actions with short wait() intervals and use requestStop() or controlled retry on failure paths.
MultiGesture offers 5 methods; each method page lists its parameters and return value.
It works best together with wait(), Point, SwipeParam, ClickParam, and sometimes a Region result.
The snippet below is a starter pattern that can be applied directly in runtime flow.
local builder = MultiGesture.builder()
builder:add({ GesturePoint(Point(300, 1500), 0, 0), GesturePoint(Point(300, 600), 0, 400) })
builder:add({ GesturePoint(Point(780, 1500), 0, 0), GesturePoint(Point(780, 600), 0, 400) })
builder:build():go()From foundation to combined usage, each level is provided as a separate code block so you can copy the level you need and adapt it directly.
local builder = MultiGesture.builder()
builder:add({ GesturePoint(Point(300, 1500), 0, 0), GesturePoint(Point(300, 600), 0, 400) })
builder:add({ GesturePoint(Point(780, 1500), 0, 0), GesturePoint(Point(780, 600), 0, 400) })
builder:build():go()local builder = MultiGesture.builder()
builder:add({ GesturePoint(Point(300, 1500), 0, 0), GesturePoint(Point(300, 600), 0, 400) })
builder:add({ GesturePoint(Point(780, 1500), 0, 0), GesturePoint(Point(780, 600), 0, 400) })
builder:build():go()
-- Continue with one focused method on the object.local builder = MultiGesture.builder()
builder:add({ GesturePoint(Point(300, 1500), 0, 0), GesturePoint(Point(300, 600), 0, 400) })
builder:add({ GesturePoint(Point(780, 1500), 0, 0), GesturePoint(Point(780, 600), 0, 400) })
builder:build():go()
local note = "MultiGesture overview loaded"
print(note)-- In automation flow, chain actions with short wait() intervals and use requestStop() or controlled retry on failure paths.
local function run_multigesture_step()
local builder = MultiGesture.builder()
builder:add({ GesturePoint(Point(300, 1500), 0, 0), GesturePoint(Point(300, 600), 0, 400) })
builder:add({ GesturePoint(Point(780, 1500), 0, 0), GesturePoint(Point(780, 600), 0, 400) })
builder:build():go()
end
local ok, err = pcall(run_multigesture_step)
if not ok then
toast("Step failed")
print(err)
endlocal target = Point(540, 960)
quickTap(target)
wait(250)
local builder = MultiGesture.builder()
builder:add({ GesturePoint(Point(300, 1500), 0, 0), GesturePoint(Point(300, 600), 0, 400) })
builder:add({ GesturePoint(Point(780, 1500), 0, 0), GesturePoint(Point(780, 600), 0, 400) })
builder:build():go()
wait(250)
print("Automation chain completed")