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")