diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 77a8a5e..81e18b4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -62,7 +62,7 @@ jobs: else freetypepkgname="libfreetype-dev" fi - apt-get install -yqq ${freetypepkgname} libgl1-mesa-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev p7zip-full unzip wget xdg-user-dirs zip + apt-get install -yqq ${freetypepkgname} libgl1-mesa-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev libxxf86vm-dev p7zip-full unzip wget xdg-user-dirs zip - name: Set up cache id: cache uses: actions/cache@v3 @@ -157,7 +157,7 @@ jobs: else freetypepkgname="libfreetype-dev" fi - apt-get install -yqq ${freetypepkgname} libgl1-mesa-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev p7zip-full unzip wget xdg-user-dirs zip + apt-get install -yqq ${freetypepkgname} libgl1-mesa-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev libxxf86vm-dev p7zip-full unzip wget xdg-user-dirs zip - name: Set up cache id: cache uses: actions/cache@v3 diff --git a/src/DPF b/src/DPF index 9f4fcf9..79c6b85 160000 --- a/src/DPF +++ b/src/DPF @@ -1 +1 @@ -Subproject commit 9f4fcf9dda1076aec061e740de3f33ca90fa495a +Subproject commit 79c6b85fc96f592dd0cbf1d6345ed2dd549bc387 diff --git a/src/PawPaw b/src/PawPaw index 6250a88..81c2de4 160000 --- a/src/PawPaw +++ b/src/PawPaw @@ -1 +1 @@ -Subproject commit 6250a88ce79a67ebb67ef72b62593684cea336ea +Subproject commit 81c2de429ddc58d0d02ff498a63278ec4ddad03f diff --git a/src/plugin/DistrhoPluginInfo.h b/src/plugin/DistrhoPluginInfo.h index 39551c3..33facb8 100644 --- a/src/plugin/DistrhoPluginInfo.h +++ b/src/plugin/DistrhoPluginInfo.h @@ -20,6 +20,7 @@ #define DISTRHO_PLUGIN_WANT_MIDI_OUTPUT 1 #define DISTRHO_PLUGIN_WANT_STATE 1 #define DISTRHO_PLUGIN_WANT_FULL_STATE 1 +#define DISTRHO_PLUGIN_WANT_WEBVIEW 1 #define DISTRHO_UI_FILE_BROWSER 0 #define DISTRHO_UI_DEFAULT_WIDTH 1170 #define DISTRHO_UI_DEFAULT_HEIGHT 600 diff --git a/src/plugin/WebViewX11.cpp b/src/plugin/WebViewX11.cpp index 61e3d57..cad17b8 100644 --- a/src/plugin/WebViewX11.cpp +++ b/src/plugin/WebViewX11.cpp @@ -1,6 +1,7 @@ // SPDX-FileCopyrightText: 2023-2024 MOD Audio UG // SPDX-License-Identifier: AGPL-3.0-or-later +#define QT_NO_VERSION_TAGGING #include #include #include @@ -88,7 +89,7 @@ void* addWebView(const uintptr_t parentWinId, const double scaleFactor, const ui ipc->childWindow = 0; ipc->ourWindow = parentWinId; - const char* const args[] = { ldlinux, filename, nullptr }; + const char* const args[] = { ldlinux, filename, "dpf-ld-linux-webview", nullptr }; ipc->p.start(args, envp); for (uint i = 0; envp[i] != nullptr; ++i) @@ -294,7 +295,7 @@ static bool qt5webengine(const Window winId, const double scaleFactor, const cha using QApplication__init_t = void (*)(QApplication*, int&, char**, int); using QApplication_exec_t = void (*)(); using QApplication_setAttribute_t = void (*)(Qt::ApplicationAttribute, bool); - using QString__init_t = void (*)(void*, const QChar*, qsizetype); + using QString__init_t = void (*)(void*, const QChar*, ptrdiff_t); using QUrl__init_t = void (*)(void*, const QString&, int /* QUrl::ParsingMode */); using QWebEngineView__init_t = void (*)(QWebEngineView*, void*); using QWebEngineView_move_t = void (*)(QWebEngineView*, const QPoint&); @@ -481,8 +482,6 @@ static bool qt6webengine(const Window winId, const double scaleFactor, const cha return true; } -END_NAMESPACE_DISTRHO - // ----------------------------------------------------------------------------------------------------------- // startup via ld-linux @@ -493,8 +492,7 @@ static void signalHandler(const int sig) reloadFn(); } -DISTRHO_PLUGIN_EXPORT -void _start() +void dpf_webview_start(void) { uselocale(newlocale(LC_NUMERIC_MASK, "C", nullptr)); @@ -535,3 +533,5 @@ void _start() } // ----------------------------------------------------------------------------------------------------------- + +END_NAMESPACE_DISTRHO