mirror of
https://gitlab.linphone.org/BC/public/linphone-desktop.git
synced 2026-02-07 15:08:24 +00:00
fix(Incall): avoid dead lock in fullscreen mode when a call is ended
This commit is contained in:
parent
06b7347de3
commit
8eb3127dce
2 changed files with 17 additions and 9 deletions
|
|
@ -42,7 +42,8 @@ function handleStatusChanged (status) {
|
|||
if (status === Linphone.CallModel.CallStatusEnded) {
|
||||
var fullscreen = incall._fullscreen
|
||||
if (fullscreen) {
|
||||
fullscreen.exit()
|
||||
// Timeout => Avoid dead lock on mac.
|
||||
Utils.setTimeout(window, 0, fullscreen.exit)
|
||||
}
|
||||
|
||||
telKeypad.visible = false
|
||||
|
|
@ -104,10 +105,9 @@ function showFullscreen () {
|
|||
return
|
||||
}
|
||||
|
||||
incall._fullscreen = Utils.openWindow(Qt.resolvedUrl('IncallFullscreenWindow.qml'), incall, {
|
||||
incall._fullscreen = Utils.openWindow(Qt.resolvedUrl('IncallFullscreenWindow.qml'), window, {
|
||||
properties: {
|
||||
call: incall.call,
|
||||
callsWindow: incall
|
||||
caller: incall
|
||||
}
|
||||
})
|
||||
}
|
||||
|
|
|
|||
|
|
@ -17,8 +17,7 @@ Window {
|
|||
// ---------------------------------------------------------------------------
|
||||
|
||||
property var call
|
||||
property var callsWindow
|
||||
|
||||
property var caller
|
||||
property bool hideButtons: false
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
|
@ -38,10 +37,10 @@ Window {
|
|||
// ---------------------------------------------------------------------------
|
||||
|
||||
Component.onCompleted: {
|
||||
incall.call = caller.call
|
||||
var show = function (visibility) {
|
||||
if (visibility === Window.Windowed) {
|
||||
incall.visibilityChanged.disconnect(show)
|
||||
incall.visible = true
|
||||
incall.showFullScreen()
|
||||
}
|
||||
}
|
||||
|
|
@ -69,7 +68,12 @@ Window {
|
|||
|
||||
Loader {
|
||||
anchors.fill: parent
|
||||
active: !incall.callsWindow.cameraActivated
|
||||
|
||||
active: {
|
||||
var caller = incall.caller
|
||||
return caller && !caller.cameraActivated
|
||||
}
|
||||
|
||||
sourceComponent: camera
|
||||
|
||||
Component {
|
||||
|
|
@ -350,7 +354,11 @@ Window {
|
|||
// ---------------------------------------------------------------------------
|
||||
|
||||
Loader {
|
||||
active: !incall.callsWindow.cameraActivated
|
||||
active: {
|
||||
var caller = incall.caller
|
||||
return caller && !caller.cameraActivated
|
||||
}
|
||||
|
||||
sourceComponent: cameraPreview
|
||||
|
||||
Component {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue