evacchi / firefox-custom-badge

Displays your profile id as a badge on the Firefox icon
6 stars 2 forks source link

DockProgress to use image #1

Open yajd opened 10 years ago

yajd commented 10 years ago

This is just fantastic! I wanted to apply an image icon like you originally wanted to do in your mockup: evacchi original mockup

So I found this add-on: https://addons.mozilla.org/en-US/firefox/addon/dock-progress/

Which does exactly what we want. I don't have a Mac to test on but will try to get vmware so i can test on to help you accomplish this.

This is real cool. So in mac when you open a new profile, it gets its seperte firefox logo in the task bar? I wish WinXP and Win7 were like this, I hope firefox teame changes it to be like this. Otherwise on WinXp and Win7, windows from profiles are lumped into one group in the task bar.

evacchi commented 10 years ago

I inspected that extension yesterday and IIRC they use a dylib to do that; I'm just using Firefox's native API on Mac OS X. I think I stumbled upon an extension for Windows 7, if I am able to find it again I'll link it to you. On Mac I was not actually able to overlay an icon, but just a small label (the "badge"). It's not as cool as an icon overlay, but it is good enough for me. I suspect there might a similar API for Windows 7 too

EDIT: look here and here

yajd commented 10 years ago

Thanks man that's real cool. I'll look into that, hopefully it fix the issue on Win that if two profiles are open at same time the icon in the task bar is seperated.

Also question: In mac: Does each new window get a ff logo in the task bar? Or is it just each new profile?

yajd commented 10 years ago

The other thing is, we don't have to overlay. We can take the current logo, put it on a canvas, take our image, overlay it on the canvas, then OS level change the icon, can't we?

evacchi commented 10 years ago

We can take the current logo, put it on a canvas, take our image, overlay it on the canvas, then OS level change the icon, can't we?

well it depends on the API, I guess.

Also question: In mac: Does each new window get a ff logo in the task bar? Or is it just each new profile?

only new profiles gets their own separate icon, because each profile is launched as a separate firefox instance

yajd commented 10 years ago

only new profiles gets their own separate icon, because each profile is launched as a separate firefox instance

that is superb! thanks man for that info! they didn't program ff for windows to work like that i dont know why. i'm wondering about linux.

but thanks to your report above i was able to get profiles to seperate on the task bar with this code:

wt.setGroupIdForWindow(me,wt.defaultGroupId + '-profile name');

But still it's not a good solution because it can conflict with other add-ons. Say I used this method and had two profiles open, each was seperated. Now lets say each profile has addon XYZ and this addon uses same method to seperate the window in the taskbar, so now a third group is made and XYZ addon is sending windows from both profiles to this third group, when i think it should have 4 groups. one for xyz from profile1 and one for xyz from profile 2. I'll bring this up on bugzilla.

Seriously learned a lot from you thanks man.

evacchi commented 10 years ago

heh :) glad to help

yajd commented 10 years ago

hey man question please. say you got initial ff right in dock. then u click it, then install profilist, then create new profile. now it opens a second logo in the dock. But now what if you pin this second logo, is this possible? And if it is, then after you close that newly created profile, then click on its ff logo, does it launch up with that same profile?

Thanks man

yajd commented 10 years ago

oh another question please. after you apply the badge, when you close firefox does the badge remain? (with your addon in this repo) (because in the win7 one, once i close win7 it removes the badge. so this means on restart of computer the badge is not there until i launch firefox and remains only if i keep firefox running)

Noitidart commented 10 years ago

Ok so I worked on Profilist on Win7 and I got seperate profile to run in seperate group. I don't like the approach I used though, I hope that Firefox team makes it default behavior.

I also got badge working on the icon in taskbar and in the Profilist menu. However I'm having a tricky time getting a badge on the icon in the popup window.

What do you think evacchi man? Thanks for your idea of the icon on logo it was genius! You mind if a I use it for inspiration? haha

profilist badging mockup

Noitidart commented 9 years ago

@evacchi thanks to @arai we got the code! http://www.unmht.org/forum/en/4774.html

You should update your addon to use this :)

Please see this gist here: GitHubGIST :: Noitidart / _ff-addon-snippet-SetApplicationIconImage see the readme for some things I'm working out. :) Can copy paste this code from scratchpad. :) Just set a path to a icns or image. :) The biggest issue is that when the download stars, the dock progress thing they adapted to the browser changes the icon back. I haven't figured out yet how to overcome that. Someone recommended swizzling setApplicationIconImage which I haven't figured out how to do you yet.

Noitidart commented 9 years ago

Hi @evacchi can you please run Google Chrome, put a badge on your Chrome profile. Then minimize windows, and see if the Chrome icon over the miniaturized window also has a mini version of that badge. If it doesn't, please restart that profile, then minimize window and check. If it still doesn't may you please restart computer then launch profile and minimize and check.

In summary: Notice in this image how the red arrow is pointing to the mini icon of the minaturized window in this image, that's what I'm asking you to check for on Google Chrome with badged profiles.
red arrow pointing to where icon is not showing, this image shows the icon is set in alt+tab menu and dock which is awesome

Forgive me asking you this much. I am super close to solving this.

Noitidart commented 9 years ago

Almost a year in making but 90% done with Mac, thanks for your awesome idea:

evacchi commented 9 years ago

That is so cool! Can't wait to try it!