Pablo Escobar
dec75443f3
EmscriptenApplication: add test for multiple applications on one page
...
This requires all but one of the applications to be compiled with -s MODULARIZE.
6 years ago
Pablo Escobar
b1c31831a8
EmscriptenApplication: get canvas target from Module['canvas'] and properly account for -s DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR
...
Module['canvas'] can be read even from code compiled with -s MODULARIZE so it's a better option than hardcoding it in Configuration. The target strings in Emscripten depend on whether we're compiled with DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR (see https://github.com/emscripten-core/emscripten/pull/7977 ). This is now detected and handled at runtime to prepend element IDs with # and use the correct window and document magic targets.
6 years ago
Pablo Escobar
57edde9b86
EmscriptenApplication: formatting
6 years ago
Pablo Escobar
910a47676e
EmscriptenApplication: add custom canvas test
6 years ago
Pablo Escobar
b354acdfff
EmscriptenApplication: don't hardcode the cursor target element
6 years ago
Pablo Escobar
f25f08be87
EmscriptenApplication: set canvas target in all versions of tryCreate
6 years ago
Pablo Escobar
edcce6cff5
EmscriptenApplication: make canvas target selector configurable
6 years ago
Vladimír Vondruš
8b4f26645b
Platform: switch Emscripten app tests to use CSS classes instead of IDs.
...
Can confirm this worked before and works now as well.
6 years ago
Vladimír Vondruš
e3c6289c44
Platform: don't hardcode ID in {Emscripten,Sdl}App::setContainerCssClass().
...
Instead look for a closest parent element of our <canvas> having the
.mn-container class. This should thus work for more than one canvas on a
page.
6 years ago
Vladimír Vondruš
ed9e236da1
Platform: use CSS classes instead of IDs for Emscripten markup.
...
IDs restrict the usability to a single canvas on the page. For backwards
compatibility purposes those are still kept, but the use is discouraged
now.
6 years ago
Vladimír Vondruš
70e45d984a
Platform: don't hardcode status and log element IDs for Emscripten.
...
I still need to figure out how to not hardcode a global Module, heh.
6 years ago
Vladimír Vondruš
7ce234f60b
Revert "EmscriptenApplication: get correct keyboardListeningElement CSS selector"
...
Not yet sure about all interactions with older Emscripten versions and
DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR set to 0, reverting until
it's clear.
This reverts commit c760acb548 .
6 years ago
Vladimír Vondruš
fc9a2f45d6
Platform: clear the framebuffer in Sdl2Application test.
...
It's unnecessarily hard to verify behavioral consistency across
different app implementations without.
6 years ago
Vladimír Vondruš
4c2aae65b9
Platform: https!
6 years ago
Vladimír Vondruš
e03813643a
Platform: this documentation is wrong.
6 years ago
Vladimír Vondruš
fa733a55ca
doc: updated credits.
6 years ago
Pablo Escobar
c760acb548
EmscriptenApplication: get correct keyboardListeningElement CSS selector
6 years ago
Vladimír Vondruš
321c2d22b9
Platform: improve console output of EmscriptenApplicationTest.
6 years ago
Vladimír Vondruš
08ecbbc380
Platform: fix EmscriptenApplication key events.
...
Got broken in 0f026cd314 . Note to self:
don't delegate testing to third parties.
6 years ago
Vladimír Vondruš
0f026cd314
Platform: port EmscriptenApplication away from deprecated string APIs.
...
And avoid a needless std::string allocation as well, heh.
6 years ago
Vladimír Vondruš
19d1693323
Platform: suppress a warning specific to MinGW GCC 8+.
6 years ago
Vladimír Vondruš
08803885e7
Doc++, updated changelog.
6 years ago
Tracy Ma
6a345ea982
Fix: unable to create gl context on desktop with ANGLE + GLFW3
6 years ago
Vladimír Vondruš
18a05309e9
Platform: added view-taking Platform::GlfwApplication::setWindowIcon().
...
For some reason there's just an initializer-list overload, which is
rather useless.
6 years ago
Vladimír Vondruš
051b715c12
Platform: reference useful APIs and docs from setWindowIcon().
6 years ago
Vladimír Vondruš
8c5a2d6a88
Platform: Xlib strikes again, this time with #define Bool int.
...
THe new MaterialData APIs introduce MaterialAttributeType::Bool and
everything kinda explodes with that.
Seriously, what were the people in 1979 thinking.
6 years ago
Vladimír Vondruš
1f55a11f31
Platform: fix Clang compiler warning about signed/unsigned comparison.
6 years ago
Vladimír Vondruš
8ac9750a81
Platform: properly initialize EmscriptenApp GLConfiguration.
6 years ago
erikwijmans
68aec7b088
Platform: *really* destroy EGL context in WindowlessEglApp destructor.
6 years ago
Vladimír Vondruš
3ceedb3680
Doc++
6 years ago
Vladimír Vondruš
cd48c59cab
Remove remaining APIs deprecated in 2018.10.
6 years ago
Vladimír Vondruš
cb4f6183dc
Doc++, changelog, credits and version marker updates.
6 years ago
Vladimír Vondruš
5222cf3478
doc: change all "latest" additions/deprecations to 2020.06.
6 years ago
Vladimír Vondruš
7547cfd10a
Platform: CMAKE_TOOLCHAIN_FILE should be always absolute.
6 years ago
Vladimír Vondruš
5b7caaee84
CMake: create the output dir before copying a DLL.
...
Otherwise, in case of SDL and GLFW, where we don't really know the DLL
name, it would create a file named `bin` instead of copying into a newly
created bin/ directory if it doesn't exist yet. That happens in case of
a static build, where there are no DLLs and thus
CMAKE_RUNTIME_OUTPUT_DIRECTORY gets never created.
6 years ago
Vladimír Vondruš
23d2ab1d1b
gl-info: modernize output printing a bit, list remaining defines.
6 years ago
Vladimír Vondruš
ff22cb8758
Platform: print EGL device count before overwriting the count variable.
...
Otherwise it would report a wrong count.
6 years ago
Vladimír Vondruš
6ce74205ac
doc: updated credits and changelog.
6 years ago
Vladimír Vondruš
e352fa78ba
Platform: allocate only for how many EGL devices there is.
6 years ago
Vladimír Vondruš
2803ccb241
Platform: minor whitespace, doc and error handling cleanup.
...
In particular, the "likely a driver issue" messages don't apply here.
6 years ago
erikwijmans
7514716fe7
CUDA device selection support
6 years ago
Vladimír Vondruš
19e0e96d74
Updated copyright year.
6 years ago
Vladimír Vondruš
d96442389a
Platform: remove copypasted comment.
6 years ago
Vladimír Vondruš
7100e3b6d8
Revert "Platform: choose a GLXFBConfig with a pbuffer."
...
Caused an error when creating a WindowlessGlxApplication on a Mesa with
just llvmpipe. Note to self: never again try to fix anything related to
Xlib that's not broken.
This reverts commit 511d0c1b27 .
6 years ago
Vladimír Vondruš
e64e40da11
Platform: avoid using 100% CPU in an idle GlfwApplication.
6 years ago
Vladimír Vondruš
e7838a8b9e
Platform: check before calling SDL_DestroyWindow().
...
Can cause a crash when exiting from constructor on Windows (but not on
Linux). To be safe do the same for all others.
6 years ago
Vladimír Vondruš
b5dead9223
Platform: add no-forward-compatible-core-context workaround for EGL too.
6 years ago
Vladimír Vondruš
b81f78f990
Platform: I messed up.
6 years ago
Vladimír Vondruš
68c7a06ad3
Platform: add a TODO for this weird EGL app implementation.
6 years ago
aspioupiou
64d0702277
Platform: only initialize/terminate EGLDisplay once in a shared set.
...
Co-authored-by: Vladimír Vondruš <mosra@centrum.cz>
6 years ago