|
127 | 127 |
|
128 | 128 | if (DEV) contextmenu_check_global_root(() => scoped); // TODO @many is this import tree-shaken? |
129 | 129 |
|
130 | | - let el: HTMLElement | undefined = $state(); |
| 130 | + let el: HTMLElement | undefined = $state.raw(); |
131 | 131 |
|
132 | 132 | const {layout} = $derived(contextmenu); |
133 | 133 |
|
|
144 | 144 |
|
145 | 145 | // State for tap-then-longpress bypass detection. |
146 | 146 | // These values are `undefined` when unused, and `null` after being reset. |
147 | | - let touch_x: number | undefined | null = $state(); |
148 | | - let touch_y: number | undefined | null = $state(); |
149 | | - let first_tap_time: number | undefined | null = $state(); |
150 | | - let longpress_timeout: NodeJS.Timeout | undefined | null = $state(); |
151 | | - let longpress_opened: boolean | undefined = $state(); |
152 | | - let longpress_bypass: boolean | undefined = $state(); |
153 | | - let tap_tracking_timeout: NodeJS.Timeout | undefined | null = $state(); |
| 147 | + let touch_x: number | undefined | null = $state.raw(); |
| 148 | + let touch_y: number | undefined | null = $state.raw(); |
| 149 | + let first_tap_time: number | undefined | null = $state.raw(); |
| 150 | + let longpress_timeout: NodeJS.Timeout | undefined | null = $state.raw(); |
| 151 | + let longpress_opened: boolean | undefined = $state.raw(); |
| 152 | + let longpress_bypass: boolean | undefined = $state.raw(); |
| 153 | + let tap_tracking_timeout: NodeJS.Timeout | undefined | null = $state.raw(); |
154 | 154 |
|
155 | 155 | /** |
156 | 156 | * Blocks the next click event. Set to true when a longpress completes to prevent |
157 | 157 | * iOS's synthesized click from activating the first menu item. |
158 | 158 | */ |
159 | | - let block_next_click = $state(false); |
| 159 | + let block_next_click = $state.raw(false); |
160 | 160 |
|
161 | 161 | /** |
162 | 162 | * Adds contextmenu_pending class to body during longpress tracking. |
|
0 commit comments