summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx9
1 files changed, 8 insertions, 1 deletions
diff --git a/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx b/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx
index 1881edf7d98a..ab105ad974b0 100644
--- a/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx
+++ b/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx
@@ -1557,10 +1557,17 @@ static void signalPart(LOKDocView* pLOKDocView, int nPart, gpointer /*pData*/)
}
/// User clicked on a command button -> inform LOKDocView.
-static void signalHyperlink(LOKDocView* /*pLOKDocView*/, char* pPayload, gpointer /*pData*/)
+static void signalHyperlink(LOKDocView* pLOKDocView, char* pPayload, gpointer /*pData*/)
{
GError* pError = nullptr;
+#if GTK_CHECK_VERSION(3,22,0)
+ gtk_show_uri_on_window(
+ GTK_WINDOW (gtk_widget_get_toplevel(GTK_WIDGET(pLOKDocView))),
+ pPayload, GDK_CURRENT_TIME, &pError);
+#else
+ (void) pLOKDocView;
gtk_show_uri(nullptr, pPayload, GDK_CURRENT_TIME, &pError);
+#endif
if (pError != nullptr)
{
g_warning("Unable to show URI %s : %s", pPayload, pError->message);