Comment 0 for bug 1375799

Revision history for this message
Michael Terry (mterry) wrote : PullToRefreshStyle label text animates poorly

PullToRefreshStyle has two text options: "Pull to refresh" and "Release to refresh". It tries to animate between them, using an opacity fade in/out. But unfortunately, the text itself changes immediately before the fade out. So it looks very unsightly.

Maybe some code like the following, that I've used as a workaround in unity8. Note the PropertyAction between the two NumberAnimations.

        states: [
            State {
                name: "pulling"
                when: styledItem.target.dragging && !releaseToRefresh
                PropertyChanges { target: pullLabel; text: i18n.tr("Pull to refresh…") }
            },
            State {
                name: "releasable"
                when: styledItem.target.dragging && releaseToRefresh
                PropertyChanges { target: pullLabel; text: i18n.tr("Release to refresh…") }
            }
        ]
        transitions: Transition {
            SequentialAnimation {
                UbuntuNumberAnimation {
                    target: pullLabel
                    property: "opacity"
                    to: 0.0
                }
                PropertyAction {
                    target: pullLabel
                    property: "text"
                }
                UbuntuNumberAnimation {
                    target: pullLabel
                    property: "opacity"
                    to: 1.0
                }
            }
        }