mirror of
https://github.com/HenkKalkwater/harbour-sailfin.git
synced 2025-09-04 01:42:44 +00:00
Sailfish: Fix freeze when connecting via HTTPS
This commit is contained in:
parent
deada4f635
commit
cab5f20469
7 changed files with 47 additions and 24 deletions
|
@ -62,18 +62,12 @@ ApplicationWindow {
|
|||
onRaiseRequested: appWindow.raise()
|
||||
}
|
||||
|
||||
initialPage: Component {
|
||||
MainPage {
|
||||
Connections {
|
||||
target: apiClient
|
||||
// Replace the MainPage if no server was set up.
|
||||
|
||||
}
|
||||
onStatusChanged: {
|
||||
if (status == PageStatus.Active && !_hasInitialized) {
|
||||
_hasInitialized = true;
|
||||
apiClient.restoreSavedSession();
|
||||
}
|
||||
initialPage: ConnectingPage {
|
||||
id: connectingPage
|
||||
onStatusChanged: {
|
||||
if (connectingPage.status == PageStatus.Active && !_hasInitialized) {
|
||||
_hasInitialized = true;
|
||||
apiClient.restoreSavedSession();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -171,11 +165,36 @@ ApplicationWindow {
|
|||
onConnectionFailed: errorNotification.show("Connect error: " + error)
|
||||
//onConnectionSuccess: errorNotification.show("Success: " + loginMessage)
|
||||
onSetupRequired: {
|
||||
var isInSetup = pageStack.find(function (page) { return typeof page._isSetupPage !== "undefined" }) !== null
|
||||
console.log("Is in setup: " + isInSetup)
|
||||
if (!isInSetup) {
|
||||
console.log("Is in setup: " + isInSetup())
|
||||
if (!isInSetup()) {
|
||||
pageStack.replace(Qt.resolvedUrl("pages/setup/AddServerPage.qml"), {"backNavigation": false});
|
||||
}
|
||||
}
|
||||
onAuthenticatedChanged: {
|
||||
if (authenticated && !isInSetup()) {
|
||||
console.log("Authenticated)")
|
||||
loginAnimation.start()
|
||||
//pageStack.replace(Qt.resolvedUrl("pages/MainPage.qml"))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Delaying the creation of the MainPage prevents the application from freezing
|
||||
// if connecting to the server over HTTPS
|
||||
// TODO: figure out why the application actually freezes and remove this workaround
|
||||
SequentialAnimation {
|
||||
id: loginAnimation
|
||||
|
||||
PauseAnimation {
|
||||
duration: 250
|
||||
}
|
||||
|
||||
ScriptAction {
|
||||
script: pageStack.replace(Qt.resolvedUrl("pages/MainPage.qml"), {}, PageStackAction.Immediate)
|
||||
}
|
||||
}
|
||||
|
||||
function isInSetup() {
|
||||
return pageStack.find(function (page) { return typeof page._isSetupPage !== "undefined" }) !== null
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue