Fix callback invocation in H264 codec download context

This commit is contained in:
Christophe Deschamps 2024-11-14 08:47:05 +01:00
parent 2e8f237d65
commit 6742f35e5d
2 changed files with 11 additions and 3 deletions

View file

@ -684,25 +684,29 @@ function computeAvatarSize (container, maxSize, ratio) {
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
function openCodecOnlineInstallerDialog (mainWindow, coreObject, cancelCallBack, successCallBack) { function openCodecOnlineInstallerDialog (mainWindow, coreObject, cancelCallBack, successCallBack, errorCallBack) {
mainWindow.showConfirmationLambdaPopup("", mainWindow.showConfirmationLambdaPopup("",
qsTr("Installation de codec"), qsTr("Installation de codec"),
qsTr("Télécharger le codec ") + capitalizeFirstLetter(coreObject.mimeType) + " ("+coreObject.encoderDescription+")"+" ?", qsTr("Télécharger le codec ") + capitalizeFirstLetter(coreObject.mimeType) + " ("+coreObject.encoderDescription+")"+" ?",
function (confirmed) { function (confirmed) {
if (confirmed) { if (confirmed) {
coreObject.success.connect(function() { coreObject.success.connect(function() {
if (successCallBack)
successCallBack()
mainWindow.closeLoadingPopup() mainWindow.closeLoadingPopup()
mainWindow.showInformationPopup(qsTr("Succès"), qsTr("Le codec a été téléchargé avec succès."), true) mainWindow.showInformationPopup(qsTr("Succès"), qsTr("Le codec a été téléchargé avec succès."), true)
if (successCallBack)
successCallBack()
}) })
coreObject.extractError.connect(function() { coreObject.extractError.connect(function() {
mainWindow.closeLoadingPopup() mainWindow.closeLoadingPopup()
mainWindow.showInformationPopup(qsTr("Erreur"), qsTr("Le codec n'a pas pu être sauvegardé."), true) mainWindow.showInformationPopup(qsTr("Erreur"), qsTr("Le codec n'a pas pu être sauvegardé."), true)
if (errorCallBack)
errorCallBack()
}) })
coreObject.downloadError.connect(function() { coreObject.downloadError.connect(function() {
mainWindow.closeLoadingPopup() mainWindow.closeLoadingPopup()
mainWindow.showInformationPopup(qsTr("Erreur"), qsTr("Le codec n'a pas pu être téléchargé."), true) mainWindow.showInformationPopup(qsTr("Erreur"), qsTr("Le codec n'a pas pu être téléchargé."), true)
if (errorCallBack)
errorCallBack()
}) })
mainWindow.showLoadingPopup(qsTr("Téléchargement en cours ...")) mainWindow.showLoadingPopup(qsTr("Téléchargement en cours ..."))
coreObject.downloadAndExtract() coreObject.downloadAndExtract()

View file

@ -90,6 +90,7 @@ AbstractSettingsLayout {
spacing: 20 * DefaultStyle.dp spacing: 20 * DefaultStyle.dp
Repeater { Repeater {
model: PayloadTypeProxy { model: PayloadTypeProxy {
id: videoPayloadTypeProxy
filterType: PayloadTypeProxy.Video | PayloadTypeProxy.NotDownloadable filterType: PayloadTypeProxy.Video | PayloadTypeProxy.NotDownloadable
} }
SwitchSetting { SwitchSetting {
@ -118,6 +119,9 @@ AbstractSettingsLayout {
function successCallBack() { function successCallBack() {
videoPayloadTypeProxy.reload() videoPayloadTypeProxy.reload()
downloadableVideoPayloadTypeProxy.reload() downloadableVideoPayloadTypeProxy.reload()
},
function errorCallBack() {
setChecked(false)
}) })
} }
} }