From 6de963d7284ff2654346a5f0544ccaa0d52bcee7 Mon Sep 17 00:00:00 2001 From: falkTX Date: Thu, 7 Jul 2022 01:01:20 +0100 Subject: [PATCH] More wasm tweaks, add join discussion button Signed-off-by: falkTX --- carla | 2 +- dpf | 2 +- src/CardinalUI.cpp | 23 +++++++++++++++++++---- 3 files changed, 21 insertions(+), 6 deletions(-) diff --git a/carla b/carla index 93d3fff..c2cc825 160000 --- a/carla +++ b/carla @@ -1 +1 @@ -Subproject commit 93d3fff123f7630be1a28912c029b9775ffd0feb +Subproject commit c2cc82525302213d6bd64e33b3d6d2c8c413f4f3 diff --git a/dpf b/dpf index ee94ba0..34bf2a4 160000 --- a/dpf +++ b/dpf @@ -1 +1 @@ -Subproject commit ee94ba0caeabe25e2ecff1039d321e8edb5acedd +Subproject commit 34bf2a4dfca724fc544f8ab0a15727ddf558d7d8 diff --git a/src/CardinalUI.cpp b/src/CardinalUI.cpp index 93d3707..3b43a04 100644 --- a/src/CardinalUI.cpp +++ b/src/CardinalUI.cpp @@ -35,6 +35,7 @@ #include #include #include +#include "CardinalCommon.hpp" #endif #ifdef NDEBUG @@ -99,7 +100,7 @@ void handleHostParameterDrag(const CardinalPluginContext* pcontext, uint index, struct WasmWelcomeDialog : rack::widget::OpaqueWidget { static const constexpr float margin = 10; - static const constexpr float buttonWidth = 100; + static const constexpr float buttonWidth = 110; WasmWelcomeDialog() { @@ -108,7 +109,7 @@ struct WasmWelcomeDialog : rack::widget::OpaqueWidget using rack::ui::MenuOverlay; using rack::ui::SequentialLayout; - box.size = rack::math::Vec(550, 280); + box.size = rack::math::Vec(550, 310); SequentialLayout* const layout = new SequentialLayout; layout->box.pos = rack::math::Vec(0, 0); @@ -135,6 +136,7 @@ struct WasmWelcomeDialog : rack::widget::OpaqueWidget label->fontSize = 20; label->text = "" "Welcome!\n" + "\n" "This is a special web-assembly version of Cardinal, " "allowing you to enjoy eurorack-style modules directly in your browser.\n" "\n" @@ -144,13 +146,26 @@ struct WasmWelcomeDialog : rack::widget::OpaqueWidget "Proceed with caution and have fun!"; contentLayout->addChild(label); - struct AsyncDismissButton : Button { + struct JoinDiscussionButton : Button { + WasmWelcomeDialog* dialog; + void onAction(const ActionEvent& e) override { + patchUtils::openBrowser("https://github.com/DISTRHO/Cardinal/issues/287"); + dialog->getParent()->requestDelete(); + } + }; + JoinDiscussionButton* const discussionButton = new JoinDiscussionButton; + discussionButton->box.size.x = buttonWidth; + discussionButton->text = "Join discussion"; + discussionButton->dialog = this; + buttonLayout->addChild(discussionButton); + + struct DismissButton : Button { WasmWelcomeDialog* dialog; void onAction(const ActionEvent& e) override { dialog->getParent()->requestDelete(); } }; - AsyncDismissButton* const dismissButton = new AsyncDismissButton; + DismissButton* const dismissButton = new DismissButton; dismissButton->box.size.x = buttonWidth; dismissButton->text = "Dismiss"; dismissButton->dialog = this;