[SailfishDevel] Cannot pop while operation is in progress

Wim de Vries wsvries at xs4all.nl
Wed Aug 14 07:42:36 UTC 2013


Thanks Matt,
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