Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Containerfile
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,8 @@ RUN apt-get update && apt-get install -y \
libgtk-3-dev \
libdbus-1-dev \
libcairo2-dev \
libgtk-3-dev libwebkit2gtk-4.0-dev \
libsoup2.4-dev \
libgtk-3-dev libwebkit2gtk-4.1-dev \
libsoup-3.0-dev \
libgstreamer1.0-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-base1.0-dev libgstreamerd-3-dev \
libosmesa6-dev \
libssl3 libssl-dev libcurl4-openssl-dev libsecret-1-dev \
Expand Down
12 changes: 1 addition & 11 deletions linux.d/debian
Original file line number Diff line number Diff line change
Expand Up @@ -35,17 +35,7 @@ REQUIRED_DEV_PACKAGES=(

if [[ -n "$UPDATE_LIB" ]]
then
# for ubuntu 22+ and 23+:
ubu_major_version="$(grep VERSION_ID /etc/os-release | cut -d "=" -f 2 | cut -d "." -f 1 | tr -d /\"/)"
if [ $ubu_major_version = "22" ] || [ $ubu_major_version = "23" ]
then
REQUIRED_DEV_PACKAGES+=(libwebkit2gtk-4.0-dev curl libfuse-dev libssl-dev libcurl4-openssl-dev m4)
elif [ $ubu_major_version = "24" ]
then
REQUIRED_DEV_PACKAGES+=(libwebkit2gtk-4.1-dev)
else
REQUIRED_DEV_PACKAGES+=(libwebkit2gtk-4.0-dev)
fi
REQUIRED_DEV_PACKAGES+=(libwebkit2gtk-4.1-dev)
if [[ -n "$BUILD_DEBUG" ]]
then
REQUIRED_DEV_PACKAGES+=(libssl-dev libcurl4-openssl-dev)
Expand Down
8 changes: 1 addition & 7 deletions linux.d/fedora
Original file line number Diff line number Diff line change
Expand Up @@ -44,13 +44,7 @@ REQUIRED_DEV_PACKAGES=(
if [[ -n "$UPDATE_LIB" ]]
then
NEEDED_PKGS=""
fedora_version=$(awk -F= '/^VERSION_ID=/ {print $2}' /etc/os-release)
if [ $fedora_version == "40" ]
then
REQUIRED_DEV_PACKAGES+=(webkit2gtk4.1-devel)
else
REQUIRED_DEV_PACKAGES+=(webkit2gtk4.0-devel)
fi
REQUIRED_DEV_PACKAGES+=(webkit2gtk4.1-devel)
for PKG in ${REQUIRED_DEV_PACKAGES[@]}; do
rpm -q ${PKG} > /dev/null || NEEDED_PKGS+=" ${PKG}"
done
Expand Down
33 changes: 18 additions & 15 deletions src/slic3r/GUI/Widgets/WebView.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -23,20 +23,22 @@
#include <gtk/gtk.h>
#define WEBKIT_API
struct WebKitWebView;
struct WebKitJavascriptResult;
struct _JSCValue;
typedef struct _JSCValue JSCValue;
extern "C" {
WEBKIT_API void
webkit_web_view_run_javascript (WebKitWebView *web_view,
webkit_web_view_evaluate_javascript (WebKitWebView *web_view,
const gchar *script,
gssize length,
const gchar *world_name,
const gchar *source_uri,
GCancellable *cancellable,
GAsyncReadyCallback callback,
gpointer user_data);
WEBKIT_API WebKitJavascriptResult *
webkit_web_view_run_javascript_finish (WebKitWebView *web_view,
WEBKIT_API JSCValue *
webkit_web_view_evaluate_javascript_finish (WebKitWebView *web_view,
GAsyncResult *result,
GError **error);
WEBKIT_API void
webkit_javascript_result_unref (WebKitJavascriptResult *js_result);
GError **error);
}

static GOnce register_handler_once = G_ONCE_INIT;
Expand Down Expand Up @@ -357,15 +359,16 @@ bool WebView::RunScript(wxWebView *webView, wxString const &javascript)
return true;
#else
WebKitWebView *wkWebView = (WebKitWebView *) webView->GetNativeBackend();
webkit_web_view_run_javascript(
wkWebView, javascript.utf8_str(), NULL,
webkit_web_view_evaluate_javascript(
wkWebView, javascript.utf8_str(), -1, NULL, NULL, NULL,
[](GObject *wkWebView, GAsyncResult *res, void *) {
GError * error = NULL;
auto result = webkit_web_view_run_javascript_finish((WebKitWebView*)wkWebView, res, &error);
if (!result)
g_error_free (error);
else
webkit_javascript_result_unref (result);
GError *error = NULL;
JSCValue *result = webkit_web_view_evaluate_javascript_finish((WebKitWebView*)wkWebView, res, &error);
if (!result) {
if (error) g_error_free(error);
} else {
g_object_unref(result);
}
}, NULL);
return true;
#endif
Expand Down