FORUMS
Remove All Ads from XDA

[in dev.] Taskbar Customizer - call for help

11,414 posts
Thanks Meter: 87,927
 
By Chainfire, Moderator Emeritus / Senior Recognized Developer - Where is my shirt? on 8th June 2009, 08:19 PM
Post Reply Email Thread
What is this?

This is Taskbar Customizer! I have been watching several threads on customizing the taskbar icons and the end-results can be awesome. However, I keep running into several snags:
  • We have to replace DLLs with different versions which can potentially raise hell and may not work well on our different WM versions. Inconsistencies, incompatibilities, etc.
  • It's always one custom taskbar or the other, unless you manually customize, and I always want these icons from A, and those from B!
  • Manually customizing is a very tiresome job
  • There are no handy tools available for this specific purpose: "Nemo vir est qui mundum non reddat meliorem" (What man is a man who does not make the world better?)

And thus, I have decided such an application must be made. This is however easier said than done, and the primary problem is the best way to go at it and the information we need for it. Some icons are stored in resource DLLs, some are stored in BMPs, one resource DLL overrules the other, one image overrules the other, one package overrides the other. Different versions for different DPI's, etc.

What we need, is to figure out a proper system. I have thoughts about this, they are discussed further below.

Note that retrieving the right files from the device, patching them, un/resigning, putting them back, etc, is not an issue. Combinations of my own various tools do all this, and it will all be in Taskbar Customizer when done.

Who am I looking for?

Right now, I am mostly looking for the following people to join the discussion in this 'design phase' of Taskbar Customizer:
  • People with a lot of knowledge (and thus experience) in customizing the taskbar (tsowen and 12aon have already offered their full support, yay!)
  • People who may not be as knowledgeable but have multiple devices with different versions of WM and are willing to test and help research (and read well!)

Who we will need in the future (don't bother to post yet, just bookmark):
  • "Shredders" - people who can take the current taskbar packs, divide them into 'icon packs', and attribute the images to the right people
  • Testers

Who we definitely don't need at this stage:
  • Those who don't know what they are talking about meddling, asking questions we haven't arrived at yet, and generally be annoying
  • Anyone who can't call himself a dev and get away with it

My current thoughts on implementation

See next post.

Reference threads

These threads contain a wealth of useful information on the subject:

http://forum.xda-developers.com/showthread.php?t=424926 - FInixNOver (part 1/2)
http://forum.xda-developers.com/showthread.php?t=437307 - FInixNOver (part 2/2)

http://forum.xda-developers.com/show....php?p=3746654 - tsowen (the collection!)
http://forum.ppcgeeks.com/showthread.php?t=54514 - tsowen

http://forum.xda-developers.com/showthread.php?t=457173 - 12aon

http://forum.xda-developers.com/showthread.php?t=441829 - rickou26 (QVGA)

... and many more ... if you have some must-reads to suggest, please post them.

Notes

This is a full community project. It will never be a commercial thing. Full credit to all people involved. Let's make this **** happen!

Gotta say however, that the time I will have to spend on this project will be "hobby". As some of you may know I have many projects here on XDA, and also commercial projects that pay my rent. I will of course try to make the most of it with the time I have. However, a good functional release may be some time away.

Also, I've never started a 'design phase' thread before. I am complete unsure how well that work, or if the discussion will likely still be mostly in PM's, MSN, or through e-mail. Bare with us
 
 
8th June 2009, 08:20 PM |#2  
Chainfire's Avatar
OP Moderator Emeritus / Senior Recognized Developer - Where is my shirt?
Thanks Meter: 87,927
 
Donate to Me
More
Current implementation thoughts (June 8, '09)
Right! This is pretty half-assed attempt at structuring my thoughts.

First, see this image. I know, it ain't much to look at, what you see in this screenshot is a number of resources from tsowen and co's taskbar v2.1 lite set out against a (smaller) number of original files from the CDMA Rhodium ROM.

There are several issues worth pondering.

Full pack vs. Category pack

How to divide the icons from eachother. Do we use full "tsowen's Taskbar X" packs and then customize from there, or do we really divide into categories (better, but more work for devs?). For example "johnny's ActiveSync icon pack" and "harry's GSM icons". I would say that if the latter will be done, so should the former (but not the other way around). If we do make 'category packs' and selectors, it will take a lot of work to create these. We would need to very finely define which icon is what in which file.

If we do category, there should be careful though and research about which category to make and which icons belong to them.

Duplicates and various WM versions

Going through a lot of resource DLLs and the likes, and noticing (among others) tsowen's post about WM6.5 and various posts about different OEM packages, it seems there are many duplicates and overrides.

For example, on many HTC WM6 we have phcanoverbmp, which contains a lot of HTC customized images which override the shellres images. However in WM6.5 it seems shellres is used as primary again.

How can we best solve this? From what I have looked at myself, one could directly translate between various shellres icon id's and phcanoverbmp icon id's (this is true for multiple packages/resource DLLs IMHO). As example (these are fictional), shellres:1-10 may correspond to phcanoverbmp:41-50. So I think we should 'alias' them. If shellres:1 is changed, than we also change phcanoverbmp:41 (of course, assuming this file exists). I think that we should use shellres as base in this case.

Then ofcourse there is also direct file alias. Some ROMs have shellres, others have shellres.dll.<language-id>.mui. These should be defined as 'alias' also, and the application should look for whatever is actually on the device and patch that.

Now again is the question, how exactly do we do this? Would it be better to create a different 'name' for every icon? For example, wifi_on_no_network=shellres:20=phcanoverbmp:97, or could we better do phcanoverbmp:97=shellres:20 ? I personally think the former, but it will be more research and more work (but hopefully other people will help).

Some of these 'alias' will also include copying BMP or PNG files (like bluetooth icons).

Battery

Another point of thought is battery. Different packs have a different number of battery icons and require different drivers to be compatible. How do we solve this?

Saving and distributing

However we do the above, IMHO there should be a function to save your creation based on other people's 'packs' and/or your own custom icons so these can be posted on XDA (or geeks, or wherever) and then opened by Taskbar Customizer again so it will modify your device with this pack. The 'save' would then include the required data and icons and the 'load' would retrieve relevant files from your device, patch them, and put them back.

"Copyrights"

As obviously most of the customizers will release their packs to the world, royalties and such would be nonsense. However, I do think every pack should have a 'copyright' notice, and when you 'apply' your combinations of packs (or 'load' this from a pack somebody distributed) you should see a notice containing the names (and optionally donation links?) of all the people who contributed images and the final 'author' of the pack. If all the original packs for Taskbar Customizer just contain a simply one-liner about who made the icons, this can be automated.

Backup/restore

It goes without saying that any file and registry changes by the app should be backed up and able to be restored.

Notes

Please discuss and suggest about the above! But if you post please clearly describe what you are talking about, posting that you agree with my or somebody else's thoughts about it are also good, because this shows which idea has the best following. Offering detailed specifics is always welcome.
8th June 2009, 08:21 PM |#3  
Chainfire's Avatar
OP Moderator Emeritus / Senior Recognized Developer - Where is my shirt?
Thanks Meter: 87,927
 
Donate to Me
More
-- I'll take this one --
8th June 2009, 08:21 PM |#4  
Chainfire's Avatar
OP Moderator Emeritus / Senior Recognized Developer - Where is my shirt?
Thanks Meter: 87,927
 
Donate to Me
More
-- This one too! --
8th June 2009, 08:22 PM |#5  
Chainfire's Avatar
OP Moderator Emeritus / Senior Recognized Developer - Where is my shirt?
Thanks Meter: 87,927
 
Donate to Me
More
-- Last one, I promise --
8th June 2009, 10:07 PM |#6  
Chainfire's Avatar
OP Moderator Emeritus / Senior Recognized Developer - Where is my shirt?
Thanks Meter: 87,927
 
Donate to Me
More
I'm done for now
8th June 2009, 10:31 PM |#7  
l3v5y's Avatar
Retired Senior Moderator
Flag Bristol
Thanks Meter: 42
 
Donate to Me
More
Oooh... Shiny...

I'm willing to help with development stuff...

And also testing stuff.
9th June 2009, 03:07 AM |#8  
tsowen's Avatar
Retired Senior Moderator
Flag Texas
Thanks Meter: 93
 
Donate to Me
More
Reporting for duty! Okay I am in guys as well and will try to drag my bro 12aon as well, also maybe see if Crazylilboy, Darklord69, bilbobrian and FInixNOver just to name a few if they might want to help. Also I have a sperate Wm 6.5 taskbar thread as well http://forum.ppcgeeks.com/showthread.php?t=65911 for the one here I just combined the two and call them the collection which you have linked.

As I see it the process might be challenging due to ROM differences. Right now I find that WM 6.5 is be cooked many different ways and this is what is causing many conflicts with some of the custom icons.

Edit: Forgot my main guys from ppcgeeks Brock and gadgetfreak. I invited them, both have mad taskbar skills.
9th June 2009, 03:58 AM |#9  
brock1909's Avatar
Senior Member
Thanks Meter: 45
 
More
count me in! Ill do what i can
9th June 2009, 05:08 AM |#10  
GadgetFreak's Avatar
Senior Member
Flag Waco
Thanks Meter: 364
 
More
I could never turn down a good challenge. Fair warning, while I can blast my way through a dll, It's been a long, long time since I have done any coding, and that was Unix based GIS stuff. So with my backside sore from Tsowen's not so subtle kick in the pants to head over here, cound me in too!

AKA: Gadgetfreak
9th June 2009, 09:09 AM |#11  
Chainfire's Avatar
OP Moderator Emeritus / Senior Recognized Developer - Where is my shirt?
Thanks Meter: 87,927
 
Donate to Me
More
Good to see you guys here (seems our timezones are not very compatible, though )

Don't worry Gadgetfreak, I can do the coding, it's more the 'how do we pull it off part' that is the question. Obviously we want it to work for everybody regardless of ROMs and packages

Perhaps we should start with creating a breakdown of exactly which icon is what, so we can match the various locations they may be up with eachother? Also what are the exact differences between GSM and CDMA? So far as I see now that instead of phcanoverbmp cdma_rssi_ppc is used for connection icons... and in WM6.5 both go back to shellres again?

(edit) Also, where are the signal bars in GSM ?

(btw tsowen I just noticed in your v2.1 lite one of the 3G icons says E instead of 3G )
Post Reply Subscribe to Thread

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes