[Desire Q&A, Help & Troubleshooting] s300pmu1:
8. Customizing guide

Various mods are not covered here, look for them in the "6. Mods and fixes" Section

8.1. Kitchen customizations

I'll provide more infor here once I have processed it.

To customize your phone by changing the appearance of top bar icons, notification panel, fonts, battery icon and the like you can use the UOT kitchen: http://uot.dakra.lt/kitchen/.

Just cook the file you need as described here http://xdaforums.com/showthread.php?t=990829, then flash it from recovery.

However, there is a number of points to keep in mind while doing that.

1. Always a good thing to make a nandroid backup - it would be a pity if while trying to change a look of an icon or two you screw up a perfectly working setup, right?

2. Customizing stuff in UOT kitchen if you have installed some mods can revert some stuff to original, unless you upload the customized files to be altered by the kitchen manually.

3. Likewise, Installing some mods may revert UOT kitchen customizations to original. The only easy solution is to apply mods first, then upload files to the kitchen and customize them.

A2SD+ customization

In the HD port (unlike the LeeDroid 3.0.x GB), some system apps are moved to "sd-ext/app_s", so customizations made in the UOT may not apply completely.

You will have to modify the script accordingly, as described in his post here.

If he's helped you, give him a THANKS, btw.

Data++ customization

Now if you have installed data++ version, things may be somewhat complicated. This is due to the fact that in the data++ version, some system files are partially on sd-ext:

/system/app goes to /sd-ext/app_s

/system/framework goes to /sd-ext/framework_s

/system/media goes to /sd-ext/media_s

/system/fonts goes to /sd-ext/fonts_s

You can actually check it yourself by opening the rom.zip file.

As the files which are changed by the kitchen mod you have cooked are usually among the ones relocated, the mod has to be a little different from the standard.

There are several ways to do this:

1. When cooking the mod in the kitchen, set the "Kitchen\File Upload\Flashing for Data++ ROM option" to ON.

This worked for most users.

2. [OR] edit cooked file manually, replacing file paths as described below:

Open the theme's zip file (e.g. one from UOT) and edit \META-INF\com\google\android\updater-script file, changing paths of files that had been moved to sd-ext in the data++ rom. After that you can flash it from recovery as usual, having toggled signature verification to Disbled.

For instance:

Original script (for LeeDroid 3.0.6,

could be different

with 3.x.x data++, but

enought to get the picture

, and you can always figure out the paths and which of them to alter from the UOT mod.zip and rom.zip) was like this:

ui_print("Applying UOT framework");

run_program("/sbin/busybox", "mount", "/system");

package_extract_dir("framework", "/system/framework");

package_extract_dir("app", "/system/app");

run_program("/sbin/busybox", "umount", "/system");

With the data++ version of 3.0.6 I used the following lines (

could ALSO be different

with 3.x.x data++):

ui_print("Applying UOT framework");

run_program("/sbin/busybox", "mount", "/sd-ext");

package_extract_dir("framework", "/sd-ext/framework_s");

package_extract_dir("app", "/sd-ext/app_s");

run_program("/sbin/busybox", "umount", "/sd-ext");

So it's the "spot 10 differences" game. Just check the data++ rom.zip for files moved to sd-ext, then check what files are changed in the theme\mod zip, and alter the update script accordingly. Remember not to extract files and recompress them, but rather to open the archive and edit the script from the archive.

Furthermore, the kitchen has the DATA++ option somewhere, and it should work - you can give it a try.

3. [OR] integrate the cooked file into rom.zip. To do this:

1) Browse through your cooked mod and see what modded files are in there. Usually its SystemUI.apk and framework-res.apk.

2) Extract these files to any folder.

3) Now open you rom.zip using WinRAR, 7ZIP, Total Commander with an archive-browsing plugin or any other decent software.

4) Locate the files you found in (1) and replace them by dragging the files extracted in (2) over them. E.g.:

You have extracted from the kitchen mod.zip:

framework-res.apk from the app\ folder

SystemUI.apk from the framework\ folder

to some temporary folder on your pc.

In data++ rom.zip, you'll most likely find

framework-res.apk in rom.zip\sd-ext\framework_s\

SystemUI.apk in rom.zip\sd-ext\app_s\

So, for each instance, you drag the respective file from temporary folder to the archive, and confirm if the program you're using asks if you want to replace the files. In any case, ignore the META-INF\ folder.

The resulting modified rom.zip should be flashed with Signature Verification toggled to Disabled in recovery, as we have modified it.

Troubleshooting

Check if you have selected the right source files in the kitchen. In the UOT kitchen, on the FILE UPLOAD tab, under the heading "Select your rom from kitchen's list, or upload your own files", make sure you use "Kitchen's list", and select "LeeDrOiD HD 3.3.3 R5 Desire ROM" from the dropdown, or whatever version is closer to yours. Alternatively, you can upload the actual files from the rom.zip.

If it still isn't working, then, most likely, you have incorrectly followed the above guide. With all due respect, go to the main thread and bug people there - they will be very amused by yet another repetition of the "how do I flash the UOT kitchen mod on data++" topic... but will help you anyhow, as they are indeed nearly saints.

8.2 Adding notification panel widgets

The question of how to add widgets into the notification panel seems to appear every now and then in the main thread. There are many ways to do that. However, not all of them are easy\are easily customizable as the way I am describing below.

I solved it for myself by using the free Widgetsoid app.

It allows to make any number of highly customizable widgets, and can also place any of them in the notification bar.

The way to setup is first:

1. Install widgetsoid

2. Run it from the apps menu for initial settings:

ADVANCED tab:

- Flash led setting is METHOD 2

- Select desirable Brightness levels if you're going to use it (suggest using Seekbar first to get the hang of which levels are good for you, then using custom levels to set them up)

- I'd suggest setting "Widget focusable" to OFF, haptic feedback to ON

- Service in backgroud ON

NOTIFICATION tab:

- Hide notification icon to ON

- Open popup to OFF

Other settings you can change to your taste.

Then, to create your widget:

- Create a widget on your desktop, i usually use Widgetsoid Switcher 4x1 widget

- On network, Screen, Sound, Other, Shortcut tabs -- select which widgets are needed

- by clicking on a specific widget item in the preview you can move it to any place you want

- Go to theme tab, set it up to look as you want

- go to advanced tab, suggest following settings:

-- Modifiable - YES, you can turn it off later after you're sure you got what you wanted

-- Modifiable icon - up to you, I set it to off. What it does is show a small icon in top right corener which you can click to bring up widget editing screen; it works the same way without the icon, so it looks cleaner. It affects only the widgets placed on desktop, it won't be visible\usable in the notification panel widget

-- Notification - ON if you want to see the widget in the notification bar - so you want it ON

-- Widget invisible - as you want. If you check it, widget won't take place on your desktop, it'll only be visible in Notifications panel. Can't undo that later, so decide on the spot. You can always make another widget, though, if you later want to have one on the desktop and had made the previous one invisible.

-- Click Apply tab

It will ask you if you want to edit global prefs - no need to do that, so answer NO. The widget should appear in notification panel.

Some notes things:

- depending on notification panel style (transparent\white\other) you may want to change the color of your widget's icons so they are clearly visible (Widgetsoid app\Notification tab\Choose icon color). In transparent panel of 3.0.6-r2 it doesn't seem to work; as I remember, it worked with a white panel.

- In some cases, you may get a popup with the widget after you tap a widget item in notification panel after initial setup. If that happens, got to widgetsoid app, go to Notification tab, check state of "Open Popup" checkbox. If ON, set to off. If OFF but you still get the popup, check it to ON, then set it back to OFF, this solves the issue. It appears, you'll have to do that each time you add a widget to notification panel.

- If you made your widget visible only in notification panel and want to edit it, you can go to Widgetsoid app, go to Widgets tab, select widget you want to edit, tap the pencil button, edit as needed, tap apply tab.

- If you choose the widget to be Invisible on your dektop when you set it up initially, there is no way to uncheck this option if later you change your mind and want to see it on you dektop as well as in the notification panel. The only way you can do that is by recreating the widget.

- You can put more than one widget panel in the notification panel.

- If you use task killers (why would you want to?), make sure widgetsoid service is on the exceptions list.

VOILA, LeeDroid GB3.x.x with a notification tab switches in an easily customizable way!

PS you can watch it, if I am not mistaken, starting with 14:00 of the official widgetsoid video guide.

8.3. Sense skins and themes

See this post for a link to an XDA thread dedicated to skins and themes for Sense 2.1 (and yes, it should be 2.1 since Sense 3.0 is not Sense 3.0 per se but only bits and pieces of it).

Can't give any how-tos here as have no experience in skinning\themeing sense and no desire to acquire such.

If anybody can't figure stuff out, ask in relevant threads (and send me a link to answers that worked so I can post them here). Same goes for people who know how-to - PM me and I'll add your walkthroughs to this FAQ.

<back>