Review Request: Plasma::ScrollWidget 'stateChanged' signal forward to child classes

Bruno Abinader brunoabinader at gmail.com
Sun Dec 20 17:07:33 CET 2009


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/2391/
-----------------------------------------------------------

(Updated 2009-12-20 16:07:33.168631)


Review request for Plasma, Marco Martin, igorto, and Adenilson Cavalcanti.


Changes
-------

Updated patch, which mainly replaces the async call for scrollState to a forwarding of the 'stateChanged' signal from the kinetic scroll animation to the registered widgets managed by Plasma::Animator. The contact list plasmoid example [1] is updated using this new API as a show case.

[1] http://gitorious.org/contact-list-plasmoid-example/contact-list-plasmoid-example


Summary (updated)
-------

This patch forward the "stateChanged" signal emitted from the private kinetic scroll animation all the way to Plasma::ScrollWidget, which then forwards this signal to its childs. This enables an object which derives from Plasma::ScrollWidget to know the kinetic scrolling animation state.


Diffs (updated)
-----

  trunk/KDE/kdelibs/plasma/animator.h 1064064 
  trunk/KDE/kdelibs/plasma/deprecated/animator.cpp 1064064 
  trunk/KDE/kdelibs/plasma/private/animator_p.h 1064064 
  trunk/KDE/kdelibs/plasma/private/kineticscroll.cpp 1064064 
  trunk/KDE/kdelibs/plasma/private/kineticscroll_p.h 1064064 
  trunk/KDE/kdelibs/plasma/widgets/scrollwidget.h 1064064 
  trunk/KDE/kdelibs/plasma/widgets/scrollwidget.cpp 1064064 

Diff: http://reviewboard.kde.org/r/2391/diff


Testing
-------

Using a test plasmoid [1], after this patch it was able to do the following call:

if (m_scrollWidget->scrollingState() == QAbstractAnimation::Stopped) {
    doSomething();
}

[1] http://gitorious.org/contact-list-plasmoid-example/contact-list-plasmoid-example/commit/09fc6b8781d4d52a32f2f2e5c96fa2c6e904a8ea

Notice that the other plasmoids won't be affected by this patch, since it only adds a new method, not altering or removing the existent behaviour.


Thanks,

Bruno



More information about the Plasma-devel mailing list