Skip to content

Instantly share code, notes, and snippets.

@devappd
Created January 26, 2021 06:01
Show Gist options
  • Save devappd/1895eba742197d4affdee03a6e6eff48 to your computer and use it in GitHub Desktop.
Save devappd/1895eba742197d4affdee03a6e6eff48 to your computer and use it in GitHub Desktop.
Asyncify event.preventDefault() test
mkdir -p bin
emcc -o bin/main.html main.c -s SINGLE_FILE=1
emcc -o bin/main-asyncify.html main.c -s ASYNCIFY=1 -s SINGLE_FILE=1
#include <emscripten/html5.h>
#include <stdio.h>
EM_BOOL focus_handler(int eventType, const EmscriptenFocusEvent *focusEvent, void *userData)
{
printf("FAIL: Mouse event should have been consumed and canvas focus prevented.\n");
return EM_FALSE;
}
EM_BOOL mouse_handler(int eventType, const EmscriptenMouseEvent *mouseEvent, void *userData)
{
printf("Mouse event %d\n", eventType);
return EM_TRUE;
}
int main(int argc, char **argv)
{
emscripten_set_focus_callback("#canvas", NULL, EM_FALSE, focus_handler);
emscripten_set_mousedown_callback("#canvas", NULL, EM_FALSE, mouse_handler);
emscripten_set_mouseup_callback("#canvas", NULL, EM_FALSE, mouse_handler);
emscripten_set_dblclick_callback("#canvas", NULL, EM_FALSE, mouse_handler);
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment