diff --git a/dist/ios/Info.plist b/dist/ios/Info.plist
index 33ef4ced..757709f2 100644
--- a/dist/ios/Info.plist
+++ b/dist/ios/Info.plist
@@ -7,11 +7,9 @@
CFBundleExecutable
${EXECUTABLE_NAME}
CFBundleIdentifier
- ${PRODUCT_BUNDLE_IDENTIFIER}
+ $(PRODUCT_BUNDLE_IDENTIFIER)
CFBundleName
${PRODUCT_NAME}
- CFBundleVersion
- ${QMAKE_FULL_VERSION}
CFBundlePackageType
APPL
CFBundleShortVersionString
@@ -19,7 +17,13 @@
CFBundleSignature
${QMAKE_PKGINFO_TYPEINFO}
CFBundleVersion
- ${QMAKE_FULL_VERSION}
+ ${QMAKE_FULL_VERSION}
+ ITSAppUsesNonExemptEncryption
+
+ LSApplicationQueriesSchemes
+
+ vlc
+
LSRequiresIPhoneOS
MinimumOSVersion
@@ -31,9 +35,7 @@
NSPhotoLibraryUsageDescription
Used to upload photos to the chat
UILaunchStoryboardName
- LaunchScreen
- ITSAppUsesNonExemptEncryption
-
+ LaunchScreen
UISupportedInterfaceOrientations
UIInterfaceOrientationPortrait
diff --git a/src/settings.h b/src/settings.h
index a8b02d44..88dbec85 100644
--- a/src/settings.h
+++ b/src/settings.h
@@ -64,6 +64,7 @@ class Settings : public QObject {
SETTING(bool, openLinksDirectly, false)
SETTING(bool, openLinksDirectlyInBrowser, false)
+ SETTING(bool, openWebmsInVlc, false)
SETTING(QString, host)
SETTING(int, port, 9001)
diff --git a/ui/MainView.qml b/ui/MainView.qml
index da5fc264..942fc92b 100644
--- a/ui/MainView.qml
+++ b/ui/MainView.qml
@@ -161,6 +161,11 @@ Item {
function openCurrentLink(openPreview) {
if (linkHandler.containsImage && openPreview)
previewPopup.showImage(linkHandler.currentLink)
+ else if (linkHandler.containsVideo
+ && linkHandler.currentExtension.endsWith("webm")
+ && Qt.platform.os === "ios"
+ && settings.openWebmsInVlc)
+ Qt.openUrlExternally("vlc://" + linkHandler.currentLink)
else if (linkHandler.containsVideo && openPreview)
previewPopup.showVideo(linkHandler.currentLink)
else
diff --git a/ui/SettingsInterface.qml b/ui/SettingsInterface.qml
index 6153518b..ef1d1162 100644
--- a/ui/SettingsInterface.qml
+++ b/ui/SettingsInterface.qml
@@ -39,6 +39,7 @@ ScrollView {
settings.forceLightTheme = forceLightThemeCheckbox.checked
settings.forceDarkTheme = forceDarkThemeCheckbox.checked
settings.useTrueBlackWithDarkTheme = useTrueBlackWithDarkThemeCheckbox.checked
+ settings.openWebmsInVlc = openWebmsInVlcCheckbox.checked
}
function onRejected() {
shortenLongUrlsCheckbox.checked = settings.shortenLongUrls
@@ -56,6 +57,7 @@ ScrollView {
forceLightThemeCheckbox.checked = settings.forceLightTheme
forceDarkThemeCheckbox.checked = settings.forceDarkTheme
useTrueBlackWithDarkThemeCheckbox.checked = settings.useTrueBlackWithDarkTheme
+ openWebmsInVlcCheckbox.checked = settings.openWebmsInVlc
}
ColumnLayout {
@@ -279,6 +281,18 @@ ScrollView {
}
}
+ Label {
+ visible: Qt.platform.os === "ios"
+ Layout.alignment: Qt.AlignRight
+ text: qsTr("Attempt to open webm files in VLC")
+ }
+ CheckBox {
+ visible: Qt.platform.os === "ios"
+ id: openWebmsInVlcCheckbox
+ checked: settings.openWebmsInVlc
+ Layout.alignment: Qt.AlignLeft
+ }
+
Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Loop videos by default")