[SailfishDevel] Cannot pop while operation is in progress

Wim de Vries wsvries at xs4all.nl
Wed Aug 14 07:55:59 UTC 2013


I also tried
pageStack.replaceAbove(Qt.resolvedUrl("controls/MTextEdit.qml"))
which should remove the current page, but then:

file:///usr/lib/qt5/qml/Sailfish/Silica/PageStack.js:111: Error: Cannot
replace with invalid target page which is not present on the stack


> This is my function in main.qml (called from within c++)
>   function loadTextEdit(text)
>     {
>     //pageStack.push(Qt.resolvedUrl("controls/MTextEdit.qml"))//works OK!
>     pageStack.replaceAbove(pageStack.currentPage,
> Qt.resolvedUrl("controls/MTextEdit.qml"))
>     pageStack.currentPage.setText(text)
>     return true;
>     }
> this results in this error:
> file:///usr/lib/qt5/qml/Sailfish/Silica/PageStack.js:111: Error: Cannot
> replace with target page at the top of the stack
>
> r
> wim
>
>> "Cannot pop while operation is in progress" means that the previous
>> PageStack operation is still animating, and you must wait until it
>> finishes before issuing the next PageStack operation.  There are various
>> strategies you can use for this, but they will all result in
>> unattractive
>> visual changes: either double animations or disorientating jumps.
>>
>> It sounds like you should probably use the 'replaceAbove' function:
>> https://sailfishos.org/sailfish-silica/qml-sailfishsilica-pagestack.html#replaceAbove-method
>> This function is equivalent to "pop all pages above the supplied target
>> page, then push a new page", except that it occurs with a single visual
>> transition.
>>
>> Thanks,
>> Matt
>>
>> ________________________________
>> From: devel-bounces at lists.sailfishos.org
>> [devel-bounces at lists.sailfishos.org] on behalf of Wim de Vries
>> [wsvries at xs4all.nl]
>> Sent: Wednesday, August 14, 2013 6:02 AM
>> To: devel at lists.sailfishos.org
>> Subject: [SailfishDevel] Cannot pop while operation is in progress
>>
>> If I do pop() within a current page
>> and
>> pageStack.replace(pageStack.currentPage,
>> Qt.resolvedUrl("controls/MTextEdit.qml"))
>> within main.qml I get:
>> "Cannot pop while operation is in progress"
>>
>> I need to remove the previous page, so that the user cannot navigate
>> back
>> to this page.
>> Thanks.
>>
>
>
>




More information about the Devel mailing list