Closed Bug 494138 Opened 15 years ago Closed 13 years ago

[thunderbird] Better integration with Windows 7 taskbar (jumplist)

Categories

(Thunderbird :: OS Integration, enhancement)

All
Windows 7
enhancement
Not set
normal

Tracking

(thunderbird5.0 wanted)

RESOLVED FIXED
Thunderbird 6.0
Tracking Status
thunderbird5.0 --- wanted

People

(Reporter: rimas, Assigned: rain1)

References

Details

(Keywords: helpwanted, meta, student-project)

Attachments

(6 files, 1 obsolete file)

Since Windows 7 provides a totally new taskbar, I think Thunderbird could benefit from better integration with it. This bug is about Jump list integration. I suggest to add at least a new mail task button to Thunderbird's Jumplist. But also, links to the new unread messages or something like that could be provided.
Flags: wanted-thunderbird3?
See also bug 494137.
The UI changes in Windows 7 Taskbar are described in the ArsTechnica article:
http://arstechnica.com/software/news/2009/01/dock-and-windows-7-taskbar.ars/ (page 5)
Given win7 final won't be available until the end of the year or so, I think this is more of a thing for tb4 than tb3. Patches welcome if someone wants to take it on though.
Flags: wanted-thunderbird3? → wanted-thunderbird3-
Attached image Outlook's Jumplist
Depends on: 473045
Windows 7 will be released to IT professionals and Developers in 2 days. Is tb3 isn't out yet, so should the prio of this bug be raised?
(In reply to comment #5)
> Windows 7 will be released to IT professionals and Developers in 2 days. Is tb3
> isn't out yet, so should the prio of this bug be raised?

All three of the major win7 taskbar features are targeted for the 3.7 release this fall. Branch of trunk for 1.9.2 should happen here in the next couple weeks.

We actually have patches for most of this, currently working on getting infrastructure upgraded to the win7 sdk. 

All in all nothing at this point looks to be in the way of getting this into 3.7.
Sorry, I was confusing this with the fx bug. I'm not sure what the thunderbird release schedule looks like, but the core components need to land first for 1.9.2. Then we can build something on top of that for thunderbird.
I would like to encourage the raising of the priority on this enhancement.
The new Beta 3 is great -- but if Thunderbird 3.0 launches in or after October -- it would really make sense to support this.
http://www.neowin.net/news/software/09/06/01/windows-7-gmail-notifier-application (via :sid0) is another great example of what could go into jumplist.
Seems like this feature didn't make it into 3.0.  <sigh />

3.1, maybe?
Keywords: meta
Summary: Better integration with Windows 7 taskbar: Jumplist feature → Better integration with Windows 7 taskbar
Summary: Better integration with Windows 7 taskbar → [thunderbird] Better integration with Windows 7 taskbar
Depends on: 566125
Fx bugs: 

Jumplists - 
bug 518666 - implement jumplist jsm component to manage jumplist content 

Installer -
Bug 562753 - On upgrade, update AppUserModelID for application shortcuts.
Bug 521141 - Set AppUserModelID on shortcuts created by the installer.
Bug 526663 - Remove pinned shortcuts after uninstalling application.
Flags: wanted-thunderbird+
Keywords: helpwanted
Summary: [thunderbird] Better integration with Windows 7 taskbar → [thunderbird] Better integration with Windows 7 taskbar (jumplist)
Hi all,

I've worked for Mozilla Thunderbird under GSoC2010. The project was "Add Quick Look support for Thunderbird" https://bugzilla.mozilla.org/show_bug.cgi?id=457546. My mentor was Blake (:bwinton), and my co-mentor was Gary (:nth10sd). The project was delivered on time and is currently under further development to be merged into trunk.

I'm planning on spending my summer developing for Mozilla Thunderbird again. I'm currently preparing the proposal for this bug under GSoC2011. Deadline is this Friday, 19:00 UTC. Thus, I'd like to ask if someone would be interested in becoming the mentor for this project. Furthermore FYI, Gary has again agreed to be my co-mentor for this project.

Thanks,
Daniel
Attached patch WIP (obsolete) — Splinter Review
Right, so two static items to start off: compose a message and open the address book. Some notes and questions for the UI review:
- Should I look at getting the toolbar icons displayed next to the tasks rather than the generic Thunderbird icon? It might be a little non-trivial because AFAIK we'd have to convert the PNG to an ico and embed it into the exe file.
- The messages are written in the same style (i.e. sentence case) as Firefox, which is a little different from Outlook. Is that fine?
Assignee: nobody → sid.bugzilla
Status: NEW → ASSIGNED
Attachment #533804 - Flags: ui-review?(bwinton)
Attached image Screenshot
Hey,

could you also add the taks "Get all new messages" to the jumplist? That way it'd be possible to trigger that fetching process without the need to open the Thunderbird window (and pressing e.g. Ctrl+Shift+T).

If it is possible to add specific icons to the task, that'd be a fine addon. Though I wouldn't mind if its not possible.

Thanks,
Dennis.
Comment on attachment 533804 [details] [diff] [review]
WIP

> Should I look at getting the toolbar icons displayed next to the tasks
> rather than the generic Thunderbird icon? It might be a little non-trivial
> because AFAIK we'd have to convert the PNG to an ico and embed it into the
> exe file.

Ideally, I'ld like to see this, but it could wait for a later patch.

> The messages are written in the same style (i.e. sentence case) as Firefox,
> which is a little different from Outlook. Is that fine?

Yeah, I would prefer to be consistent with Firefox over outlook.

Also, I like Dennis's idea.  Could you add that in fairly easily?

ui-r=me with that added.

Thanks,
Blake.
Attachment #533804 - Flags: ui-review?(bwinton) → ui-review+
(In reply to comment #15)
> - Should I look at getting the toolbar icons displayed next to the tasks
> rather than the generic Thunderbird icon? It might be a little non-trivial
> because AFAIK we'd have to convert the PNG to an ico and embed it into the
> exe file.

I don't think it's necessary. Bare in mind that IE allows Pinned sites, and I highly doubt that it embeds website's icons into its own exe file somehow, especially considering that it's able to update them at runtime.
(In reply to comment #19)
> I don't think it's necessary. Bare in mind that IE allows Pinned sites, and
> I highly doubt that it embeds website's icons into its own exe file somehow,
> especially considering that it's able to update them at runtime.

Well I don't know how its done, but IE9 includes the website's favicons in the list of pinned of frequently visited sites, so there should be a way to archive this without compiling the icon into an exe or dll file. (See attachment)
(In reply to comment #15)
> - Should I look at getting the toolbar icons displayed next to the tasks
> rather than the generic Thunderbird icon? It might be a little non-trivial
> because AFAIK we'd have to convert the PNG to an ico and embed it into the
> exe file.
It's not necessary to embed it into the exe file; any file can be used for this if you use IShellLink::SetIconLocation (http://msdn.microsoft.com/en-us/library/bb761047.aspx), which expects a filename and an icon index.
(In reply to comment #19)
> I don't think it's necessary. Bare in mind that IE allows Pinned sites, and
> I highly doubt that it embeds website's icons into its own exe file somehow,
> especially considering that it's able to update them at runtime.

Correct that it doesn't save them to the exe file, but iirc older versions of IE would save history and bookmarks as files/shortcuts and hence have the icons in those, so I suspect this is what IE9 is using.

(In reply to comment #22)
> (In reply to comment #15)
> > - Should I look at getting the toolbar icons displayed next to the tasks
> > rather than the generic Thunderbird icon? It might be a little non-trivial
> > because AFAIK we'd have to convert the PNG to an ico and embed it into the
> > exe file.
> It's not necessary to embed it into the exe file; any file can be used for
> this if you use IShellLink::SetIconLocation
> (http://msdn.microsoft.com/en-us/library/bb761047.aspx), which expects a
> filename and an icon index.

I think that interface is still looking for an ico or dll/exe. As our png file is included zipped up into omni.jar, I doubt that SetIconLocation could read from that and get it right. So we'll still need to embed the icon in the .exe.
> Correct that it doesn't save them to the exe file, but iirc older versions
> of IE would save history and bookmarks as files/shortcuts and hence have the
> icons in those, so I suspect this is what IE9 is using.

AFAIK, IE saves website icons as separate .ico files in its cache; which makes it trivial to add said icons to the jump list.

> I think that interface is still looking for an ico or dll/exe. As our png
> file is included zipped up into omni.jar, I doubt that SetIconLocation could
> read from that and get it right. So we'll still need to embed the icon in
> the .exe.

What I meant is: yes, you’ll need an .ico file, but no, you don’t have to embed it in the .exe.
After all, there's already several .ico files in chrome\icons\default under the program folder. My question is: could the relevant icons not be converted to .ico files and copied there?
(In reply to comment #24)
> > I think that interface is still looking for an ico or dll/exe. As our png
> > file is included zipped up into omni.jar, I doubt that SetIconLocation could
> > read from that and get it right. So we'll still need to embed the icon in
> > the .exe.
> 
> What I meant is: yes, you’ll need an .ico file, but no, you don’t have to
> embed it in the .exe.

Yeah, that's also what I meant.

> After all, there's already several .ico files in chrome\icons\default under
> the program folder. My question is: could the relevant icons not be
> converted to .ico files and copied there?

Heh, makes me wonder at this point, why they're all not just integrated into the exe... :)
(In reply to comment #24)
> What I meant is: yes, you’ll need an .ico file, but no, you don’t have to
> embed it in the .exe.
> After all, there's already several .ico files in chrome\icons\default under
> the program folder. My question is: could the relevant icons not be
> converted to .ico files and copied there?

bug 549468 & bug 549472. I'd to work on these this summer, but if someone else would like to pick them up and run with them sooner, feel free.
(In reply to comment #16)
> Created attachment 533808 [details]
> Screenshot

Could you make that "Write a new message"? "Compose" is really clunky imo.
(In reply to comment #26)
> (In reply to comment #24)
> > What I meant is: yes, you’ll need an .ico file, but no, you don’t have to
> > embed it in the .exe.
> > After all, there's already several .ico files in chrome\icons\default under
> > the program folder. My question is: could the relevant icons not be
> > converted to .ico files and copied there?
> 
> bug 549468 & bug 549472. I'd to work on these this summer, but if someone
> else would like to pick them up and run with them sooner, feel free.

Firefox needs those icons to be dynamic. Tb, on the other hand, could use static prerendered icons, so I don't think this bug strictly depends on those two.
As Mark said, it still needs an ico file/EXE/DLL. However we also want to avoid duplicating images, because that might lead to forgetting about one of the copies if they're ever updated.

The way we're looking at right now is by extracting the PNG and converting it to an ICO at build time. As a proof of concept, I'm attaching a (somewhat hacky) python script which can do something like that. It needs the pypng module installed. (No more comments unless you have a working patch, please.)

(In reply to comment #27)
> (In reply to comment #16)
> > Created attachment 533808 [details]
> > Screenshot
> 
> Could you make that "Write a new message"? "Compose" is really clunky imo.

Sure, that'd be consistent with the toolbar, though I think it should be "Write new message", since Firefox has "Open new tab" etc.
Attachment #534250 - Attachment description: Python script → Python script to convert a PNG into an ICO
This is r=bienvenu, face to face.

I'm not adding a get new mail option to the jumplist right now because the code is currently part of the 3-pane window code. It's easy to handle this if a 3-pane window's open -- just call the method. What if it's not, though, or if Thunderbird's actually closed? Should we open up a 3-pane window just to check for new mail? If a new window's opened then we check for new mail anyway, at least by default. I thought it needs more UI input, and bienvenu agreed. Plus actually implementing anything would be a fair amount of work and would require moving at least some code into modules, I think.

Anyway, I don't want that to block landing the other things, so I'm going to skip it for now and open a followup bug.
Attachment #533804 - Attachment is obsolete: true
Attachment #534586 - Flags: ui-review+
Attachment #534586 - Flags: review+
https://hg.mozilla.org/comm-central/rev/cbd35a34432c - pushed
https://hg.mozilla.org/comm-central/rev/9d85ed1b2cc2 - followup
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Bug 659788 is about using specific icons for jumplist items.
Target Milestone: --- → Thunderbird 3.4
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: