mirror of
https://github.com/nicbarker/clay.git
synced 2025-04-23 14:48:06 +00:00
Compare commits
2 Commits
f598f4dde8
...
1a3c8c69cb
Author | SHA1 | Date | |
---|---|---|---|
|
1a3c8c69cb | ||
|
46c962d7f2 |
29
clay.h
29
clay.h
@ -3681,6 +3681,21 @@ void Clay_SetPointerState(Clay_Vector2 position, bool isPointerDown) {
|
||||
}
|
||||
context->pointerInfo.position = position;
|
||||
context->pointerOverIds.length = 0;
|
||||
|
||||
if (isPointerDown) {
|
||||
if (context->pointerInfo.state == CLAY_POINTER_DATA_PRESSED_THIS_FRAME) {
|
||||
context->pointerInfo.state = CLAY_POINTER_DATA_PRESSED;
|
||||
} else if (context->pointerInfo.state != CLAY_POINTER_DATA_PRESSED) {
|
||||
context->pointerInfo.state = CLAY_POINTER_DATA_PRESSED_THIS_FRAME;
|
||||
}
|
||||
} else {
|
||||
if (context->pointerInfo.state == CLAY_POINTER_DATA_RELEASED_THIS_FRAME) {
|
||||
context->pointerInfo.state = CLAY_POINTER_DATA_RELEASED;
|
||||
} else if (context->pointerInfo.state != CLAY_POINTER_DATA_RELEASED) {
|
||||
context->pointerInfo.state = CLAY_POINTER_DATA_RELEASED_THIS_FRAME;
|
||||
}
|
||||
}
|
||||
|
||||
Clay__int32_tArray dfsBuffer = context->layoutElementChildrenBuffer;
|
||||
for (int32_t rootIndex = context->layoutElementTreeRoots.length - 1; rootIndex >= 0; --rootIndex) {
|
||||
dfsBuffer.length = 0;
|
||||
@ -3732,20 +3747,6 @@ void Clay_SetPointerState(Clay_Vector2 position, bool isPointerDown) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (isPointerDown) {
|
||||
if (context->pointerInfo.state == CLAY_POINTER_DATA_PRESSED_THIS_FRAME) {
|
||||
context->pointerInfo.state = CLAY_POINTER_DATA_PRESSED;
|
||||
} else if (context->pointerInfo.state != CLAY_POINTER_DATA_PRESSED) {
|
||||
context->pointerInfo.state = CLAY_POINTER_DATA_PRESSED_THIS_FRAME;
|
||||
}
|
||||
} else {
|
||||
if (context->pointerInfo.state == CLAY_POINTER_DATA_RELEASED_THIS_FRAME) {
|
||||
context->pointerInfo.state = CLAY_POINTER_DATA_RELEASED;
|
||||
} else if (context->pointerInfo.state != CLAY_POINTER_DATA_RELEASED) {
|
||||
context->pointerInfo.state = CLAY_POINTER_DATA_RELEASED_THIS_FRAME;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
CLAY_WASM_EXPORT("Clay_Initialize")
|
||||
|
Loading…
Reference in New Issue
Block a user