Object MethodSystem Control

Env.setMacroCutouts(value)

Sets the screen cutout insets (notch and similar) of the device the macro was recorded on, in pixels: a table with left, top, right and bottom (or those four values in order). Coordinates are then mapped within the safe area of both devices. When an inset is non-zero and no device cutouts are set, the current device’s insets are read from the display automatically.

Documented for app version 1.0.51Updated:

Detailed Explanation

This section explains when to use the API, how to call it, and which structures it works best with in production flow.

How To Call It

Env is a global table: call its functions with a dot (Env.<method>(...)), not a colon.

When To Use It

In system flow, design steps as observe first and act second when the API can affect device state.

Parameters and Return

Required: value. Returns nothing.

Best Combined With

Using this API with logging, error handling, and next-step control produces much more professional results than calling it in isolation.

Example Usage

The snippet below is a starter pattern that can be applied directly in runtime flow.

Env.setMacroCutouts({ top = 80 })

Copyable Progressive Examples

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.

Foundation

Shows the shortest direct way to call the API.

Foundation
Env.setMacroCutouts({ top = 80 })

Simple

Wraps the base call with minimal flow control.

Simple
local stepOk = true
Env.setMacroCutouts({ top = 80 })
if stepOk then
  wait(200)
end

Practical Flow

A practical pattern for real macros with pcall, logging, and guards.

Practical Flow
local ok, err = pcall(function()
  Env.setMacroCutouts({ top = 80 })
end)

if not ok then
  print("API step failed: Env.setMacroCutouts: " .. tostring(err))
  requestStop()
end

Detailed

This level packages the API into a reusable helper with error reporting.

Detailed
-- In system flow, design steps as observe first and act second when the API can affect device state.
local function run_setmacrocutouts_step()
  Env.setMacroCutouts({ top = 80 })
end

local ok, err = pcall(run_setmacrocutouts_step)
if not ok then
  toast("Step failed")
  print(err)
end

Combined

Combines the API with related structures to form a more realistic workflow.

Combined
Env.setMacroCutouts({ top = 80 })
wait(200)
print("Combined with logging and flow control")