Included are ODEXED versions (for your stock, rooted razr, if you so desire) of the 1% battery increments and horizontal scrollable quick panel toggles. This will also remove the carrier name from the pulldown menu (you're on your own for getting it back or removing it from the lockscreen if you want - this might help).
NOTE: CDMA ONLY - This was made from and installed on DROID RAZR System version 6.16.211.XT912.Verizon.en.US on ICS 4.0.4 - not sure about cross-system compatibility, but I wouldn't try it without a backup plan..
I am not responsible for your phone.
Download & Install:
(The following is the way I installed it using whirleye's BootMenu app - feel free to unzip and/or use your own method to install)
-Download RAZR_ICS_ODEXED_1perBatt_DropTogs.zip to your sdcard
-Boot into recovery with BootMenu
-Wipe dalvik & cache partition
-Install zip & Reboot
Credits & Thanks:
I ported these both over to ICS from GB for the A2... then moved them over to the RAZR (it involves a lot of edits, additions, deodexing and re-odexing)
-Major credit goes to nitroglycerine33 for the scrollable toggles
-Thanks also to cogeary for bringing nitro's work to the A2
-Thanks to he_stheone64 for the battery icons (except the unknown (?) batt image, that was me)
-Thanks to iwabashu for the use of the RAZR and the screenie
Original post (but, very applicable to the RAZR variants): http://forum.xda-developers.com/show....php?t=1803516
PORTING THE 1% BATTERY INCREMENTS & DROPDOWN (QUICK PANEL) TOGGLES TO YOUR SYSTEM VERSION
This guide is based on moving these mods for ICS to other similar ICS-running devices. The process varies a bit going from GB to ICS. Or ICS to JB..
You will need:
Your deodexed SystemUI.apk
Your deodexed services.jar
Copies of deodexed SystemUI.apk & services.jar with the mods
Apktool /Smali/Baksmali tools
Notepad++ or similar text editor
7-zip or similar archive manager
WinMerge or Meld or similar diff/compare tool (a very useful tool that allows you to compare two folders or files side-by-side, and points out the differences for you)
IMPORTANT: This guide is to help you get these mods to your system, for your personal use. If you take the toggles from above and decide to use them in a ROM, be certain to credit nitroglycerine33 for his work.
apktool if framework-res.apk
-decompile your deodexed SystemUI.apk
-rename the one with the mods to something else like SystemUI2.apk, and decompile also
For the dropdown toggles:
-add quickpanel smali
Copy the “quickpanel” folder from the modded com\android\systemui\statusbar folder to the same location in your stock
-add quickpanel_quick_settings.xml to layout folder
Open the modded SystemUI.apk\res\layout folder and copy the quickpanel_quick_settings.xml to your stock layout folder
NOTE: Some older toggle mods may not have this xml, all of the code was included in the status_bar_expanded.xml (Big thanks to nitroglycerine33 for the new xml code that is so much easier to work with)
-edit status_bar_expanded.xml or status_bar_tracking.xml for new qp xml (see below for options - some don't have the _tracking.xml - it's all in expanded, I think)
Open the modded SystemUI.apk\res\layout\status_bar_expanded.xml and add this line:
<include layout="@layout/quickpanel_quick_settings" />
(this will put the toggles above the date, directly under the status bar)
delete the "include layout" line entirely from status_bar_expanded and open status_bar_tracking.xml
(this will put the toggles at the very bottom, attached to the close bar)
-add 33 quickpanel images
Add or copy the 33 .png images associated with the quickpanel toggles from the modded SystemUI.apk\res\drawable-hdpi to your stock /drawable-hdpi folder
-add qp lines to ids.xml
Open the modded SystemUI.apk\res\values\ids.xml and copy all of the quickpanel ids to your stock ids.xml (there should be 41 lines at the bottom of the xml – selected in the screenshot below)
-add qp lines to strings.xml
Open the modded SystemUI.apk\res\values\strings.xml and copy all of the quickpanel strings to your stock strings.xml (there should be 15 lines at the bottom of the xml – selected in the screenshot below)
-add qp to public.xml
(NOTE: The resource ID’s in the public.xml need to be unique – meaning that no two alpha-numeric IDs can be the same. If you are lucky, you can just use the trick below and copy the resource IDs entirely from the modded xml. So, before you copy and paste, check a few of the modded resource ID’s against your stock. If you need to assign new ID’s, just stop here, compile your SystemUI.apk, then decompile it again and look for the new IDs created in the public.xml – you will then need to copy those resource IDs over to the quickpanel smali files - with a lot of cross-referenceing.)
Open the modded SystemUI.apk\res\values\public.xml and copy the quickpanel lines from the public type = “drawable” (33 lines), “string” (15 lines), and “id” (41 lines) to your stock public.xml (do not worry about the drawables for the battery images)
For the 1% Battery:
-add stat_sys battery xmls
Open the modded SystemUI.apk\res\drawable folder and copy stat_sys_battery.xml and stat_sys_battery_charge.xml to your stock drawable folder and overwrite the existing
-204 battery images
Add or copy the 204 .png images associated with the 1% battery increments from the modded SystemUI.apk\res\drawable-hdpi to your stock drawable-hdpi folder
-compile the SystemUI.apk (make sure that you saved your original signatures (META-INF folder), and do not compress the resources.arsc - meaning, take it out of the apk and re-add it to the apk in "store" mode with 7-zip)
-it is suggested to decompile the newly modded apk, and check that all of your new edits are still there
For 1% battery mod only (toggles are done):
-baksmali the classes.dex from your services.jar, and rename the folder to my_classout, or something
-baksmali the classes.dex from the modded services.jar, and rename the folder to mod_classout, or whatever
Open the modded com\android\server\BatteryService.smali and your stock BatteryService.smali with WinMerge or Meld and compare the two files.
Update: See HERE
-reassemble (smali) into a new classes.dex and copy to and overwrite the existing one in your services.jar with an archive manager
***ATTACHED ARE THE DEODEXED STOCK & MODDED XT912 FILES FOR YOUR REFERENCE AND TO COMPARE***
If this is for an ODEXED system, you must then re-odex the SystemUI.apk and services.jar. See HERE for how to do that
These were originally ported using a similar process from GB to ICS for the Atrix 2 (except I ended up re-doing all of the resource ID's in the quickpanel smali). Since then, I have used the above method to move both mods over to the RAZR. --- UPDATE 9/13/12: I also used this method to move the 1% battery increments over to CM10/JB for the A2... watch the v3, v4, etc, notation in the BatteryService.smali... pay attention to detail.
Please post questions or PM with complaints.
Big thanks to nitroglycerine33, cogeary, and whoever else first did the smali/xml coding, and all the devs/modders who came before..
EDIT (2012.12.25): Attached a zip below to restore stock odexed xt912 ICS files and remove this mod. Wipe dalvik cache and flash in custom recovery.