diff options
Diffstat (limited to 'gnu/packages/patches/jami-no-webengine.patch')
-rw-r--r-- | gnu/packages/patches/jami-no-webengine.patch | 243 |
1 files changed, 243 insertions, 0 deletions
diff --git a/gnu/packages/patches/jami-no-webengine.patch b/gnu/packages/patches/jami-no-webengine.patch new file mode 100644 index 0000000000..f26cd8e3f5 --- /dev/null +++ b/gnu/packages/patches/jami-no-webengine.patch @@ -0,0 +1,243 @@ +From 1f73d3c88e94f2d932c59cab8a02c72a325ccc20 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?S=C3=A9bastien=20Blin?= + <sebastien.blin@savoirfairelinux.com> +Date: Fri, 11 Nov 2022 16:19:11 -0500 +Subject: [PATCH] misc: fix build without webengine + +Change-Id: I2511cd89e1ce7f60424f69ab6576d7fb992dd58c +GitLab: #881 +--- + .../components/DocumentsScrollview.qml | 1 - + src/app/mainview/components/FilePreview.qml | 1 - + src/app/mainview/components/MediaPreview.qml | 57 ++-------------- + .../mainview/components/SwarmDetailsPanel.qml | 1 - + src/app/nowebengine/VideoPreview.qml | 24 +++++++ + src/app/webengine/VideoPreview.qml | 68 +++++++++++++++++++ + 6 files changed, 99 insertions(+), 53 deletions(-) + create mode 100644 src/app/nowebengine/VideoPreview.qml + create mode 100644 src/app/webengine/VideoPreview.qml + +diff --git a/client-qt/src/app/mainview/components/DocumentsScrollview.qml b/client-qt/src/app/mainview/components/DocumentsScrollview.qml +index df516961..3338536a 100644 +--- a/client-qt/src/app/mainview/components/DocumentsScrollview.qml ++++ b/client-qt/src/app/mainview/components/DocumentsScrollview.qml +@@ -20,7 +20,6 @@ import QtQuick.Controls + import QtQuick.Layouts + import Qt.labs.platform + import Qt5Compat.GraphicalEffects +-import QtWebEngine + + import net.jami.Models 1.1 + import net.jami.Adapters 1.1 +diff --git a/client-qt/src/app/mainview/components/FilePreview.qml b/client-qt/src/app/mainview/components/FilePreview.qml +index 57b1ec8b..fe8f3fd9 100644 +--- a/client-qt/src/app/mainview/components/FilePreview.qml ++++ b/client-qt/src/app/mainview/components/FilePreview.qml +@@ -19,7 +19,6 @@ import QtQuick.Controls + import QtQuick.Layouts + import Qt.labs.platform + import Qt5Compat.GraphicalEffects +-import QtWebEngine + + import net.jami.Models 1.1 + import net.jami.Adapters 1.1 +diff --git a/client-qt/src/app/mainview/components/MediaPreview.qml b/client-qt/src/app/mainview/components/MediaPreview.qml +index 0c33bf3e..965f9343 100644 +--- a/client-qt/src/app/mainview/components/MediaPreview.qml ++++ b/client-qt/src/app/mainview/components/MediaPreview.qml +@@ -19,7 +19,6 @@ import QtQuick.Controls + import QtQuick.Layouts + import Qt.labs.platform + import Qt5Compat.GraphicalEffects +-import QtWebEngine + + import net.jami.Models 1.1 + import net.jami.Adapters 1.1 +@@ -92,59 +91,17 @@ Component { + } + Component { + id: avMediaComp +- + Loader { +- property real msgRadius: 20 +- +- Rectangle { +- id: videoAudioRect +- color: JamiTheme.secondaryBackgroundColor +- anchors.fill: parent +- +- WebEngineView { +- id: wev +- +- property bool isVideo: mediaInfo.isVideo +- property string html: mediaInfo.html +- +- anchors.fill: parent +- anchors.verticalCenter: videoAudioRect.verticalCenter +- backgroundColor: JamiTheme.secondaryBackgroundColor +- anchors.topMargin: isVideo? 0 : wev.implicitHeight / 2 +- settings.fullScreenSupportEnabled: isVideo +- settings.javascriptCanOpenWindows: false +- Component.onCompleted: loadHtml(html, 'file://') +- onFullScreenRequested: function(request) { +- if (request.toggleOn) { +- layoutManager.pushFullScreenItem( +- this, +- videoAudioRect, +- null, +- function() { wev.fullScreenCancelled() }) +- } else if (!request.toggleOn) { +- layoutManager.removeFullScreenItem(this) +- } +- request.accept() +- } +- } +- +- layer.enabled: true +- layer.effect: OpacityMask { +- maskSource: Item { +- width: videoAudioRect.width +- height: videoAudioRect.height +- Rectangle { +- anchors.centerIn: parent +- width: videoAudioRect.width +- height: videoAudioRect.height +- radius: JamiTheme.swarmDetailsPageDocumentsMediaRadius +- } +- } +- } ++ Component.onCompleted: { ++ var qml = WITH_WEBENGINE ? ++ "qrc:/webengine/VideoPreview.qml" : ++ "qrc:/nowebengine/VideoPreview.qml" ++ setSource( qml, { isVideo: mediaInfo.isVideo, html:mediaInfo.html } ) + } ++ ++ property real msgRadius: 20 + } + } +- + Component { + id: imageMediaComp + +diff --git a/client-qt/src/app/mainview/components/SwarmDetailsPanel.qml b/client-qt/src/app/mainview/components/SwarmDetailsPanel.qml +index 0dd93bc2..7625a76e 100644 +--- a/client-qt/src/app/mainview/components/SwarmDetailsPanel.qml ++++ b/client-qt/src/app/mainview/components/SwarmDetailsPanel.qml +@@ -21,7 +21,6 @@ import QtQuick.Controls + import QtQuick.Layouts + import Qt.labs.platform + import Qt5Compat.GraphicalEffects +-import QtWebEngine + + import net.jami.Models 1.1 + import net.jami.Adapters 1.1 +diff --git a/client-qt/src/app/nowebengine/VideoPreview.qml b/client-qt/src/app/nowebengine/VideoPreview.qml +new file mode 100644 +index 00000000..8c2e8a4f +--- /dev/null ++++ b/client-qt/src/app/nowebengine/VideoPreview.qml +@@ -0,0 +1,24 @@ ++/* ++ * Copyright (C) 2022 Savoir-faire Linux Inc. ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 3 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program. If not, see <https://www.gnu.org/licenses/>. ++ */ ++ ++import QtQuick ++import QtQuick.Controls ++import QtQuick.Layouts ++ ++Rectangle { ++ property var mediaInfo: undefined ++} +\ No newline at end of file +diff --git a/client-qt/src/app/webengine/VideoPreview.qml b/client-qt/src/app/webengine/VideoPreview.qml +new file mode 100644 +index 00000000..edc03599 +--- /dev/null ++++ b/client-qt/src/app/webengine/VideoPreview.qml +@@ -0,0 +1,68 @@ ++/* ++ * Copyright (C) 2022 Savoir-faire Linux Inc. ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 3 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program. If not, see <https://www.gnu.org/licenses/>. ++ */ ++ ++import QtQuick ++import QtWebEngine ++import Qt5Compat.GraphicalEffects ++ ++import net.jami.Constants 1.1 ++ ++Rectangle { ++ id: root ++ color: JamiTheme.secondaryBackgroundColor ++ anchors.fill: parent ++ property bool isVideo: false ++ property string html: "" ++ ++ WebEngineView { ++ id: wev ++ ++ anchors.fill: parent ++ anchors.verticalCenter: root.verticalCenter ++ backgroundColor: JamiTheme.secondaryBackgroundColor ++ anchors.topMargin: root.isVideo? 0 : wev.implicitHeight / 2 ++ settings.fullScreenSupportEnabled: root.isVideo ++ settings.javascriptCanOpenWindows: false ++ Component.onCompleted: loadHtml(root.html, 'file://') ++ onFullScreenRequested: function(request) { ++ if (request.toggleOn) { ++ layoutManager.pushFullScreenItem( ++ this, ++ root, ++ null, ++ function() { wev.fullScreenCancelled() }) ++ } else if (!request.toggleOn) { ++ layoutManager.removeFullScreenItem(this) ++ } ++ request.accept() ++ } ++ } ++ ++ layer.enabled: true ++ layer.effect: OpacityMask { ++ maskSource: Item { ++ width: root.width ++ height: root.height ++ Rectangle { ++ anchors.centerIn: parent ++ width: root.width ++ height: root.height ++ radius: JamiTheme.swarmDetailsPageDocumentsMediaRadius ++ } ++ } ++ } ++} +\ No newline at end of file +-- +2.37.3 + |