FFe: hamster-applet should have appindicator support

Bug #686062 reported by Jamie Strandboge
312
This bug affects 60 people
Affects Status Importance Assigned to Milestone
Project Hamster
Expired
Medium
hamster-indicator (Ubuntu)
Fix Released
Wishlist
Unassigned
unity (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

Binary package hint: hamster-applet

Hamster applet is an excellent time tracking tool provided by Gnome. In the Ubuntu Classic Desktop it is a panel applet. It can be launched standalone in Unity, but it is somewhat awkward. This is a very useful application for non-geeks that would be really cool to have ported to appindicators.

I added a unity task so that the unity developers can evaluate it.

description: updated
description: updated
Changed in unity (Ubuntu):
status: New → Invalid
Changed in hamster-applet (Ubuntu):
status: New → Triaged
importance: Undecided → Wishlist
Revision history for this message
Mark Shuttleworth (sabdfl) wrote : Re: [Bug 686062] [NEW] hamster-applet should have appindicator support

Jamie, I'd be interested in finding a way to integrate it directly with
the clock menu. Can you attach a screenshot of the Hamster-applet in action?

Revision history for this message
Jamie Strandboge (jdstrand) wrote : Re: hamster-applet should have appindicator support

I started to create these myself and then said "oh, upstream probably has these". Sure enough, they do:
http://projecthamster.wordpress.com/screenshots/

I went through these and verified that they are the same as what I see in Natty and with the exception of a string change, they are. I have been using hamster for over a year and really like it's ease of use, integration and reporting. I am currently running it on Natty in a gnome-panel that I autostart with my Unity session. This is 'ok', but a total hack and a pain to setup (certainly not anything we would want any regular folks to be expected to do. :)

Revision history for this message
Mark Shuttleworth (sabdfl) wrote : Re: [Bug 686062] Re: hamster-applet should have appindicator support

OK, thanks Jamie. This is going to be tricky to do as an indicator :-)
Let me see if we can find an alternative.

Revision history for this message
Jamie Strandboge (jdstrand) wrote : Re: hamster-applet should have appindicator support

I'm hardly a designer, but I was pretty excited by the prospects of integrating it into the clock menu. One thing to keep in mind is that hamster will occasionally remind you of your current activity every 27 minutes (configurable) via (I presume) notify-osd. As such, if the visible part of hamster in the gnome-panel was tucked into the clock menu, this would likely be quite acceptable for current hamster users. In other words, I don't think I necessarily need to be able to see the applet at all times for it to be useful. Ie:

1. I open the clock menu and see somewhere in the menu 'Start task'
2. Click Start Task, then I get the familiar hamster drop down window and enter 'My task'
3. Work for a while, getting notify-osd reminders that I am working on 'My task'
4. Open the clock menu and see somewhere in the menu 'My task 00:25' (where 00:25 is how long I've been working on 'My task')
5. Click on 'My task 00:25', then I get the familiar hamster drop down window and I can stop the task, start a new one, get the overview, add an earlier activity, etc.

So in this model the only thing that has changed is that hamster isn't displaying 'No activity' or 'My task' in the gnome-panel all the time, but instead tucked away in the clock menu, on demand. It would certainly work well for me, but like I said, I am not a designer or usability expert, but hopefully it might spark conversation or ideas. Full blown integration directly into the calendar in the clock menu could be really slick, but not necessarily required for a functional and integrated time tracker. Hamster is in universe currently, and is therefore opt-in and not in the default install, so an extra entry in the clock menu on hamster-applet install may be ok for now. That said, I wouldn't want the clock menu to become clunky, so I'll let you guys take it from here. :)

It should probably go without saying, but I will say it anyway-- I'm happy to test/give feedback on any hamster integration in Unity.

description: updated
Revision history for this message
Wouter van Vliet (me-woutervanvliet) wrote :

I would say that in general Hamster integration into the clock would make a lot of sense to me. The implementation opted by Jamie reads very decent, though I would like to have some kind of constant visual reminder about being "on the clock", or in reverse; that I may have forgotten to check in.

Perhaps a simple round clock-like icon, next to the time could be an option. Maybe it could fill up clockwise with some kind of friendly colour telling you how much of the hour you've been working. Add a number in the middle for any number of hours more than zero you have worked on "My Task" let give it a tooltip which gives some more information about the clocked-in task, and one gets a very compact representation of how long which current task has been active.

Though, this makes it more something for the indicator.

What if that filling-up clock icon would appear in the indicator area, as soon as you've checked in through the menu in the clock?

Revision history for this message
rbertran (rbertran) wrote :

I would like to say that the design suggested by Jamie looks well for me. Someone could say that one more click is needed to change the current tracking task, but we already have a configurable keyboard shortcut to view the 'hamster drop down window' quickly and change current task . Another could say that the current task is not displayed all time, but hamster already provides you a mechanism to notify you every X minutes the task your are tracking. So, the integration into the clock makes a lot of sense. And there is another reason for such integration, hamster can automatically gather tasks from evolution, which is also integrated in the clock (it show future events, and allows to add new events).

Thinking on that, what if in the clock instead of showing only future events of evolution, it also shows the task list of evolution (sorted by priority or by deadline...) . Then, when you click one of such tasks, it sets hamster to track it. I will be a very fast way of tracking time while still know what to do. Personally, what I do very often is to open the clock and see if I have events scheduled. If the task list is also integrated, I will also see quickly my task list (TODO list). The same mechanism can also used with other task-list managers such as GTG (Getting Things GNOME) .

Thanks,
Salut!

Revision history for this message
Adam Lyall (magicmyth) wrote :

The integration with the clock indicator (is that what it is called?) makes sense to me but I would like to stress the importance of be able to easily see that I am "on the clock". Waiting 27 minutes for a bubble to pop-up and remind me is not the most optimal when I just want to check at a glance. So I agree with Wouter van Vliet that some visual clue would be needed that a recorded activity is active.

I would like to be able to easily see what activity I am currently on. I first thought maybe the clock could (optionally) change between the time and current activity but fitting a random string into an indicator would probably end up being a bit abusive to the whole system and potentially start back on the path of a messy dumping ground of information as the notification area had become. So would it be possible to show the current hamster activity displayed in one or all of the Unity dashboards? Maybe even show it in the desktop expose view? As there seems to be a recent files and documents dash area that makes use of Zeitgeist, seeing the "current" and "recent past" Hamster tracking activities in the same area would make sense to me.

Better yet. If it integrated with Zeitgeist would it not then be possible to say "Show me the documents I was working on during /this/ activity"? Thats probably a separate feature request to this issue though but I could not help firing it in there while its in my head ;)

I'm not too bothered about having an extra click to access Hamster either as its not like I rapidly switch between activities. At the same time. Would an extra click be needed? Could a text field in the same style as the MeMenu's "Post message" not work for entering the activity? The user would simply click the clock indicator, enter text into the activity name field and hit return. It might be an idea to have two buttons (in one row) under this text field: Tags, and Overview so the user can easily click what tags to mark the Hamster activity with. The activityName@category already works for Hamster so this would remain the same.

I also like rbertran idea of being able to easily start an activity based on a task shown in the indicator. It makes sense to have all this in one indicator group since Time, Data, Calendar, Task, and Activity tracking all relate to clocking. Maybe calendar event should have a similar ability to start activity time tracking as knowing how long I spent on an event is also useful.

Anyway thats my 2 pence to the issue.

Thanks all

Revision history for this message
Anatoly Kudinov (zz) wrote :

How about straight forward appindicator support ?

Revision history for this message
Alberto Milone (albertomilone) wrote :

I coded an appindicator for Hamster in my spare time. It works like the old applet but it would really need some work on the usability side. Feedback from the Design team is *very* welcome.

Here's a description of my work, together with links to the code and screenshots:
http://albertomilone.com/wordpress/?p=502

Revision history for this message
Eric van der Vlist (vdv) wrote :

Alberto,

Your implementation works fine for me!

Thanks,

Eric

Revision history for this message
Philip Langer (philchip) wrote :

Alberto,

thanks so much! That work's great on my laptop running 11.04 and Unity!

The only addition I would appreciate is to change the icon if hamster is currently tracking an activity (active) or if it is running without tracking (inactive). For instance, the the icon in an inactive state could be monochrome and when running, a colored icon could be shown. I just quickly sketched two icons and uploaded them at http://ubuntuone.com/p/pqB/

The rest is just perfect!

Thanks again and keep up the great work!

Cheers,

Philip

Revision history for this message
Justin (jrfoell) wrote :

/me wonders if it would be easy to port the "docky" functionality of hamster to unity:

http://projecthamster.wordpress.com/2010/07/15/a-rudimentary-hamster-control-in-docky/

Revision history for this message
Snck3rs (spamschrott) wrote :

The solution of Alberto works fine for me. Thank you. I'll quote it in my Blog too. Would be nice if you keep me informed if you have the PPA created. <email address hidden>

@Mark: Jamies Suggestion would be also fine. Are there any News?

Revision history for this message
DaNieL (daniele-pignedoli) wrote :

I agree with #12, a docky-like behavior will be prfect in unity!

p.s: great job Alberto!

Revision history for this message
JHSaunders (james-h-saunders) wrote :

To put my 2 cents worth into this discussion. I use hamster a lot. I do a lot of contract work and have to time my hours reasonably precisely in order to bill, so I have some experience with it. In this case I disagree with the powers that be (Mark and Jamie). I don't think integration into the clock applet is a good idea, my main reasons are:

  * It is important to be able to see what task you are currently working on and how long you have been working on it. I know that you get notifications every X minutes, but in practice I find it extremely useful to just be able to glance up and see what your work status is.
  * Telling the time and knowing how long you have been working on a task are conceptually different, however they look very similar in that they are both in the form of hh:mm, I feel that putting them in one unit would create confusion. If you concur with my first point, then having two very different concepts of time sharing an indicator will end up being very confusing.

I have forked Alberto's code on github (by the way, fantastic work Alberto) and packaged it as a proper python setup-tools package. I have also made a few changes and integrated a few from other forks. I would love to turn it into a PPA but am still figuring out the system ( a link to a good tutorial would be greatly appreciated).

My vision is to extend Alberto's indicator to completely eliminate the need for the hamster front end. The project-hamster backend is very powerful and well though out, but the front end does not fit into unity well. The only major feature that the current indicator lacks is the ability to enter a new task. Already project-hamster has an advanced text parser to allow you to add a task,with tags and description and other things in a single text entry. I would like to add a text entry to Alberto's indicator, much like the me menu. And then that could be used to add a new tasks. Perhaps you could click on the menu item for the currently running task and it would be replaced by a text entry with focus, you then type in your task and hit enter and it changes. I think this would be elegant and efficient.

I have been trying to implement this, but I cannot figure out how to add a text entry as a menu item (in pygtk). Once that problem is solved all thats needed is a little glue code and some ppa packaging, then we have a great and elegant unity version of the hamster time tracker.

Revision history for this message
Dave-B (david-balch) wrote :

+1 to JHSaunders

Another feature not yet mentioned is double-clicking on an earlier activity, which starts a new period of that activity - losing that would be annoying.

Revision history for this message
JHSaunders (james-h-saunders) wrote : Re: [Bug 686062] Re: hamster-applet should have appindicator support

There actually is a fork of the indicator on github already that does that,
I have yet to merge it in to my fork because the file structures have
changed a bit and it will require a little effort (and I am lazy). But yes,
I agree.
---
James Saunders
<email address hidden>
+27 79 770 9290

On Wed, Jun 15, 2011 at 10:40 AM, Dave-B <email address hidden> wrote:

> +1 to JHSaunders
>
> Another feature not yet mentioned is double-clicking on an earlier
> activity, which starts a new period of that activity - losing that would
> be annoying.
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/686062
>
> Title:
> hamster-applet should have appindicator support
>
> Status in “hamster-applet” package in Ubuntu:
> Triaged
> Status in “unity” package in Ubuntu:
> Invalid
>
> Bug description:
> Binary package hint: hamster-applet
>
> Hamster applet is an excellent time tracking tool provided by Gnome.
> In the Ubuntu Classic Desktop it is a panel applet. It can be launched
> standalone in Unity, but it is somewhat awkward. This is a very useful
> application for non-geeks that would be really cool to have ported to
> appindicators.
>
> I added a unity task so that the unity developers can evaluate it.
>
> To manage notifications about this bug go to:
>
> https://bugs.launchpad.net/ubuntu/+source/hamster-applet/+bug/686062/+subscriptions
>

Revision history for this message
Alberto Milone (albertomilone) wrote : Re: hamster-applet should have appindicator support

We're discussing the issue in the upstream bug report:
https://bugzilla.gnome.org/show_bug.cgi?id=654317

Changed in hamster-applet:
importance: Unknown → Medium
status: Unknown → New
Revision history for this message
theghost (theghost) wrote :

There seems to be another upstream bug-report concerning this issue:
https://bugzilla.gnome.org/show_bug.cgi?id=662210

bojo42 (bojo42)
tags: added: needs-packaging
Revision history for this message
bojo42 (bojo42) wrote :

Alberto's great work to make Hamster usable again on our default desktop is still not in Ubuntu!!! Therefore i did take a shot at the packaging i found in his PPA and made it IMHO ready for inclusion (see the changelog for my improvements).

You find test builds at: https://launchpad.net/~bojo42/+archive/testing/+sourcepub/2277815/+listing-archive-extra

Please give it a freeze exception, review it and consider to upload for precise, as Hamster is really a must have on LTS and there is no other solution for Unity so far: https://launchpad.net/~bojo42/+archive/testing/+files/hamster-indicator_0.1-0ubuntu1%7Ebojo1.dsc

Revision history for this message
Martin Pitt (pitti) wrote :

FFE approved. This is not in the default install, and without anything in the panel it's indeed quite hard to use.

Revision history for this message
bojo42 (bojo42) wrote :

Since the FFE approval is out for two weeks, what can i still do or help with to get the package uploaded to Ubuntu?

For my changes on Alberto's PPA package (that everybody seems to use on current releases):

  * Initial release of Alberto Milone's indicator work (LP: #686062)
  * Latest Git shapshot 037dd2eba2.
  * debian/patches/fix_hicolor_icon_locations.patch: fix wrong icon locations
  * Ship a manpage.
  * More packaging and Lintian love:
    - add missing source format
    - cleanup Depends view
    - increase Standards-Version
    - include long description from hamster-applet package
    - drop README.Debian because it's only repeating copyright
  * Desktop integration:
    - ship desktop file (include translated Comments and Names as GenericNames)
    - ship centrified desktop icon (it's different from "hamster-time-tracker")

Revision history for this message
Jamie Strandboge (jdstrand) wrote :

bojo42, you just need someone to sponsor it. I'll take a look now.

Revision history for this message
Jamie Strandboge (jdstrand) wrote :

Ok, I uploaded hamster-indicator just now, but it will need to be deNEWed first. I made the following changes to the package:

  [ Jamie Strandboge <email address hidden> ]
  * Update source tarball to use what is available at github.com
  * debian/copyright: convert to DEP-5
  * add comments-only debian/watch file

Changed in hamster-applet (Ubuntu):
status: Triaged → Fix Committed
summary: - hamster-applet should have appindicator support
+ FFe: hamster-applet should have appindicator support
Revision history for this message
Jamie Strandboge (jdstrand) wrote :

bojo42 and Alberto, thanks for all your work on this. :)

Revision history for this message
bojo42 (bojo42) wrote :

Thanks for taking over. But is there a reason why the package hasn't reached the repos yet?

Revision history for this message
Jamie Strandboge (jdstrand) wrote :

An archive admin must review it in the NEW queue for both source and binaries. I am an archive admin, but I uploaded it so I cannot deNEW it. The source has been deNEWed, perhaps ask Riddell or pitti in #ubuntu-devel or #ubuntu-desktop on IRC to do a binary deNEW?

Benjamin Drung (bdrung)
affects: hamster-applet (Ubuntu) → hamster-indicator (Ubuntu)
Changed in hamster-indicator (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Joe Mooring (jmooring) wrote :

I'd like to say thanks to everyone who made this happen. Very nice. It's running perfectly with 12.04. Just had to 'sudo apt-get install hamster-indicator' and everything's working great. Thanks again!

Revision history for this message
Alberto Milone (albertomilone) wrote :

@Jamie, thanks to you for introducing the package in Ubuntu :)

Revision history for this message
Alberto Milone (albertomilone) wrote :

@bojo42: I'll integrate your changes as soon as I have some spare time

Revision history for this message
Anthony Geoghegan (anthony-geoghegan) wrote :

I'd just like to add my thanks to Alberto et al. I've only just started using time management software and hamster is widely recommended. I installed hamster-applet and liked it but I didn't think it had a usable interface. Having installed hamster-indicator, it integrates with my desktop much better.

I've just added a bug-report with the suggestion that hamster-indicator be included in the list of "Recommended packages" for hamster-applet: https://bugs.launchpad.net/ubuntu/+source/hamster-applet/+bug/1049078

Changed in hamster-applet:
status: New → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.