mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
Allow compilation with either Webkit2Gtk-4.0 or WebKit2Gtk-3.0.
WEBKIT1 for windows is a placeholder, it will need a pkgconfig check too.
This commit is contained in:
@@ -166,7 +166,18 @@ GNC_PKG_CHECK_MODULES (GTHREAD REQUIRED gthread-2.0>=2.20)
|
||||
|
||||
GNC_PKG_CHECK_MODULES (LIBXML2 REQUIRED libxml-2.0>=2.7.0)
|
||||
GNC_PKG_CHECK_MODULES (LIBXSLT REQUIRED libxslt)
|
||||
GNC_PKG_CHECK_MODULES (WEBKIT REQUIRED webkit2gtk-4.0>=2.6.0)
|
||||
GNC_PKG_CHECK_MODULES (WEBKIT OPTIONAL webkit2gtk-4.0)
|
||||
IF (NOT WEBKIT_FOUND)
|
||||
GNC_PKG_CHECK_MODULES (WEBKIT REQUIRED webkit2gtk-3.0)
|
||||
IF (WIN32)
|
||||
SET(WEBKIT1 1)
|
||||
ELSE (WIN32)
|
||||
SET(WEBKIT2_3 1)
|
||||
ENDIF (WIN32)
|
||||
ELSE (NOT WEBKIT_FOUND)
|
||||
SET(WEBKIT2_4 1)
|
||||
ENDIF (NOT WEBKIT_FOUND)
|
||||
|
||||
IF (WITH_GNUCASH)
|
||||
GNC_PKG_CHECK_MODULES (GTK3 REQUIRED gtk+-3.0>=3.14.0)
|
||||
ENDIF (WITH_GNUCASH)
|
||||
|
||||
16
configure.ac
16
configure.ac
@@ -1351,9 +1351,19 @@ then
|
||||
### --------------------------------------------------------------------------
|
||||
### checks for webkit
|
||||
|
||||
PKG_CHECK_MODULES(WEBKIT, webkit2gtk-4.0 >= "2.6.0")
|
||||
AC_SUBST(WEBKIT_CFLAGS)
|
||||
AC_SUBST(WEBKIT_LIBS)
|
||||
PKG_CHECK_MODULES(WEBKIT, webkit2gtk-4.0,
|
||||
[AC_DEFINE([WEBKIT2_4], [1], [Webkit2Gtk API Version 4.0])],
|
||||
[PKG_CHECK_MODULES(WEBKIT, webkit2gtk-3.0,
|
||||
[
|
||||
case $host_os in
|
||||
win32* | mingw*)
|
||||
AC_DEFINE([WEBKIT1], [1], [Webkit1Gtk API])
|
||||
;;
|
||||
*)
|
||||
AC_DEFINE([WEBKIT2_3], [1], [Webkit2Gtk API Version 3.0])
|
||||
;;
|
||||
esac
|
||||
],)])
|
||||
|
||||
###-----------------------------------------------------------------------
|
||||
## Find a suitable password store
|
||||
|
||||
@@ -372,6 +372,11 @@
|
||||
/* Define to 1 if you need to in order for `stat' and other things to work. */
|
||||
#cmakedefine _POSIX_SOURCE 1
|
||||
|
||||
/* Definitions for what WEBKIT version we're compiling against: */
|
||||
#cmakedefine WEBKIT2_4 1
|
||||
#cmakedefine WEBKIT2_3 1
|
||||
#cmakedefine WEBKIT1 1
|
||||
|
||||
/* Definitions for all OS */
|
||||
/* From cutecash */
|
||||
//#define HAVE_LIBQOF /**/
|
||||
|
||||
@@ -577,7 +577,7 @@ load_to_stream( GncHtmlWebkit* self, URLType type,
|
||||
}
|
||||
while ( FALSE );
|
||||
}
|
||||
|
||||
#ifdef WEBKIT2_4
|
||||
static gboolean
|
||||
perform_navigation_policy (WebKitWebView *web_view,
|
||||
WebKitNavigationPolicyDecision *decision,
|
||||
@@ -603,7 +603,7 @@ perform_navigation_policy (WebKitWebView *web_view,
|
||||
webkit_policy_decision_ignore ((WebKitPolicyDecision*)decision);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
#endif
|
||||
/********************************************************************
|
||||
* webkit_navigation_requested_cb - called when a URL needs to be
|
||||
* loaded within the loading of a page (embedded image).
|
||||
@@ -616,6 +616,7 @@ webkit_decide_policy_cb (WebKitWebView *web_view,
|
||||
gpointer user_data)
|
||||
{
|
||||
/* This turns out to be the signal to intercept for handling a link-click. */
|
||||
#ifdef WEBKIT2_4
|
||||
if (decision_type != WEBKIT_POLICY_DECISION_TYPE_NAVIGATION_ACTION)
|
||||
{
|
||||
webkit_policy_decision_use (decision);
|
||||
@@ -624,6 +625,10 @@ webkit_decide_policy_cb (WebKitWebView *web_view,
|
||||
return perform_navigation_policy (
|
||||
web_view, (WebKitNavigationPolicyDecision*) decision,
|
||||
GNC_HTML (user_data));
|
||||
#else
|
||||
webkit_policy_decision_use (decision);
|
||||
return TRUE;
|
||||
#endif
|
||||
}
|
||||
|
||||
static void
|
||||
|
||||
Reference in New Issue
Block a user