Review Request: Ported KTimeTracker to KNotification
Aaron Seigo
aseigo at kde.org
Mon Sep 28 22:39:53 CEST 2009
> On 2009-09-28 19:13:17, Thorsten Staerk wrote:
> > I dislike if libraries change, like this change from KSystemTray to KNotification or however this is called ...
> >
> > Here is your patch as I would like to commit:
> >
> > emTrayIcon( 0 )
> > + : KNotificationItem( 0 )
> > {
> > setObjectName( "Ktimetracker Tray" );
> > // it is not convenient if every kpart gets an icon in the systray.
> > @@ -86,7 +86,7 @@
> > }
> >
> > TrayIcon::TrayIcon()
> > - : KSystemTrayIcon( 0 )
> > + : KNotificationItem( 0 )
> > // will display nothing at all
> > {
> > setObjectName( "Ktimetracker Tray" );
> > @@ -103,8 +103,7 @@
> > if ( _taskActiveTimer )
> > {
> > _taskActiveTimer->start(1000);
> > - setIcon( *(*icons)[_activeIcon] );
> > - show();
> > + setIconByPixmap( *(*icons)[_activeIcon] );
> > }
> > kDebug(5970) << "Leaving function";
> > }
> > @@ -115,7 +114,6 @@
> > if ( _taskActiveTimer )
> > {
> > _taskActiveTimer->stop();
> > - show();
> > }
> > kDebug(5970) << "Leaving function";
> > }
> > @@ -123,14 +121,13 @@
> > void TrayIcon::advanceClock()
> > {
> > _activeIcon = (_activeIcon+1) % 8;
> > - setIcon( *(*icons)[_activeIcon]);
> > + setIconByPixmap( *(*icons)[_activeIcon]);
> > }
> >
> > void TrayIcon::resetClock()
> > {
> > _activeIcon = 0;
> > - setIcon( *(*icons)[_activeIcon]);
> > - show();
> > + setIconByPixmap( *(*icons)[_activeIcon]);
> > }
> >
> > void TrayIcon::initToolTip()
> > @@ -142,14 +139,14 @@
> > {
> > if ( activeTasks.isEmpty() )
> > {
> > - this->setToolTip( i18n("No active tasks") );
> > + this->setToolTip( "ktimetracker", "ktimetracker", i18n("No active tasks") );
> > return;
> > }
> >
> > QFontMetrics fm( QToolTip::font() );
> > const QString continued = i18n( ", ..." );
> > const int buffer = fm.boundingRect( continued ).width();
> > - const int desktopWidth = KGlobalSettings::desktopGeometry(parentWidget()).width();
> > + const int desktopWidth = KGlobalSettings::desktopGeometry(associatedWidget()).width();
> > const int maxWidth = desktopWidth - buffer;
> >
> > QString qTip;
> > @@ -174,7 +171,7 @@
> > }
> > qTip = s;
> > }
> > - this->setToolTip( qTip );
> > + this->setToolTip( "ktimetracker", "ktimetracker", qTip );
> > }
> >
> > #include "tray.moc"
> >
"I dislike if libraries change, like this change from KSystemTray to KNotification or however this is called"
it isn't actually a change from KSystemTray to KNotificationItem; KNotificationItem uses KSystemTray to speak to XEmbed based systems as a fallback (so KSystemTray is still needed) and KNotificationItem actually provides a bunch of new features. one can easily stay with KSystemTray and it will stay exactly as it is today with no degradation of features, but it's a poorer experience for the user compared to KNotificationItem. it's impossible to skip this step of having both, too, since there are so many existing implementations of XEmbed only.
- Aaron
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/1653/#review2487
-----------------------------------------------------------
On 2009-09-19 20:16:41, Davide Bettio wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviewboard.kde.org/r/1653/
> -----------------------------------------------------------
>
> (Updated 2009-09-19 20:16:41)
>
>
> Review request for KDE PIM and Plasma.
>
>
> Summary
> -------
>
> KTimeTracker has been ported to KNotificationItem but I still have few issues that I've corrected with #if 0.
> It's not really clear to me how the notification works when KTimeTracker is a KPart.
> Anyway please don't use XPM pixmaps, use icons.
>
>
> Diffs
> -----
>
> /trunk/KDE/kdepim/ktimetracker/ktimetrackerpart.cpp 1024122
> /trunk/KDE/kdepim/ktimetracker/tray.h 1024122
> /trunk/KDE/kdepim/ktimetracker/tray.cpp 1024122
>
> Diff: http://reviewboard.kde.org/r/1653/diff
>
>
> Testing
> -------
>
>
> Thanks,
>
> Davide
>
>
More information about the Plasma-devel
mailing list