diff --git a/src/Magnum/Platform/Test/CMakeLists.txt b/src/Magnum/Platform/Test/CMakeLists.txt index 359666be4..54e8de364 100644 --- a/src/Magnum/Platform/Test/CMakeLists.txt +++ b/src/Magnum/Platform/Test/CMakeLists.txt @@ -55,7 +55,7 @@ if(WITH_EMSCRIPTENAPPLICATION) add_executable(PlatformEmscriptenApplicationCustomCanvasTest EmscriptenApplicationTest.cpp) target_link_libraries(PlatformEmscriptenApplicationCustomCanvasTest PRIVATE MagnumEmscriptenApplication MagnumGL) set_target_properties(PlatformEmscriptenApplicationCustomCanvasTest PROPERTIES FOLDER "Magnum/Platform/Test") - target_compile_definitions(PlatformEmscriptenApplicationCustomCanvasTest PRIVATE CUSTOM_CANVAS_ID) + target_link_libraries(PlatformEmscriptenApplicationCustomCanvasTest PRIVATE "-s DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR=0") add_custom_command(TARGET PlatformEmscriptenApplicationCustomCanvasTest POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_SOURCE_DIR}/../WebApplication.css @@ -67,6 +67,20 @@ if(WITH_EMSCRIPTENAPPLICATION) ${CMAKE_CURRENT_SOURCE_DIR}/EmscriptenApplicationCustomCanvasTest.html $/PlatformEmscriptenApplicationCustomCanvasTest.html WORKING_DIRECTORY $) + + add_executable(PlatformMultipleEmscriptenApplicationTest EmscriptenApplicationTest.cpp) + target_link_libraries(PlatformMultipleEmscriptenApplicationTest PRIVATE MagnumEmscriptenApplication MagnumGL) + set_target_properties(PlatformMultipleEmscriptenApplicationTest PROPERTIES FOLDER "Magnum/Platform/Test") + target_compile_definitions(PlatformMultipleEmscriptenApplicationTest PRIVATE CUSTOM_CLEAR_COLOR=1,0,1,1) + target_link_libraries(PlatformMultipleEmscriptenApplicationTest PRIVATE "-s MODULARIZE -s EXPORT_NAME=createModule") + target_link_libraries(PlatformMultipleEmscriptenApplicationTest PRIVATE "-s DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR=1") + add_custom_command(TARGET PlatformMultipleEmscriptenApplicationTest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy_if_different + ${CMAKE_CURRENT_SOURCE_DIR}/../EmscriptenApplication.js + $ + COMMAND ${CMAKE_COMMAND} -E copy_if_different + ${CMAKE_CURRENT_SOURCE_DIR}/MultipleEmscriptenApplicationTest.html + $/PlatformMultipleEmscriptenApplicationTest.html) endif() if(WITH_GLFWAPPLICATION) diff --git a/src/Magnum/Platform/Test/EmscriptenApplicationCustomCanvasTest.html b/src/Magnum/Platform/Test/EmscriptenApplicationCustomCanvasTest.html index 840d12d41..020475b66 100644 --- a/src/Magnum/Platform/Test/EmscriptenApplicationCustomCanvasTest.html +++ b/src/Magnum/Platform/Test/EmscriptenApplicationCustomCanvasTest.html @@ -2,7 +2,7 @@ - Magnum EmscriptenApplication Test + Magnum EmscriptenApplication Custom Canvas Test diff --git a/src/Magnum/Platform/Test/EmscriptenApplicationTest.cpp b/src/Magnum/Platform/Test/EmscriptenApplicationTest.cpp index 9cb8a105c..beced5207 100644 --- a/src/Magnum/Platform/Test/EmscriptenApplicationTest.cpp +++ b/src/Magnum/Platform/Test/EmscriptenApplicationTest.cpp @@ -31,6 +31,7 @@ #include "Magnum/GL/Renderer.h" #include "Magnum/GL/DefaultFramebuffer.h" #include "Magnum/GL/Mesh.h" +#include "Magnum/Math/Color.h" namespace Magnum { namespace Platform { namespace Test { @@ -40,6 +41,9 @@ struct EmscriptenApplicationTest: Platform::Application { virtual void drawEvent() override { Debug() << "draw event"; + #ifdef CUSTOM_CLEAR_COLOR + GL::Renderer::setClearColor({ CUSTOM_CLEAR_COLOR }); + #endif GL::defaultFramebuffer.clear(GL::FramebufferClear::Color); swapBuffers(); @@ -155,9 +159,6 @@ EmscriptenApplicationTest::EmscriptenApplicationTest(const Arguments& arguments) create(Configuration{} .setWindowFlags(Configuration::WindowFlag::Resizable) - #ifdef CUSTOM_CANVAS_ID - .setCanvasTarget("#canvas2") - #endif //, GLConfiguration{}.setFlags({}) ); diff --git a/src/Magnum/Platform/Test/MultipleEmscriptenApplicationTest.html b/src/Magnum/Platform/Test/MultipleEmscriptenApplicationTest.html new file mode 100644 index 000000000..0a599bce9 --- /dev/null +++ b/src/Magnum/Platform/Test/MultipleEmscriptenApplicationTest.html @@ -0,0 +1,49 @@ + + + + + Magnum Multiple EmscriptenApplication Test + + + +

Magnum Multiple EmscriptenApplication Test

+
+
+ + +
Initialization...
+
+ + + + + + + +
+
+ +