[Android Themes] TheGrammarFreak:
Other tweaks

Things to write here (in no particular order)

Re-organise status icons in notification bar

Remove blur behind power menu

Enable tablet tweaks

Re-organise lockscreen

Power control widget at bottom

The way Taine0 did it is really messy, so I came up with a new way to move the power control widget. Instead of trying to force it to the bottom of the notification shade (this is done by editing status_bar_expanded.xml) realised I could attach it to the grab handle at the bottom, by editing status_bar_tracking.xml:

To apply the mod yourself decompile SystemUI the usual way, then paste this line:

<com.android.systemui.statusbar.powerwidget.PowerWidget android:id="@id/exp_power_stat" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/title_bar_portrait" />

To just above this line:

<ImageView android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="wrap_content" android:src="@drawable/status_bar_close_on" android:scaleType="fitXY" />

Now recompile and do the usual trick to avoid signing (copy the compile status_bar_tracking/xml into your old SystemUI.apk).

No further edits are required

Re-organising the status icons

So, these icons are things like signal strength, data connection type etc... If you have your status icons on the left you might find the order they're in mildly irritating. Fear not, my padwans! This section will enlighten you with regard to putting them in the order that you desire.

First things first, decompile framework-res if you haven't already:

apktool d framework-res.apk

Output:

sam@Coruscant:~/Android/SGSII/Tweaks/StatusIconTut$ apktool d framework-res.apk I: Loading resource table...
I: Loaded.
I: Decoding file-resources...
I: Decoding values*/* XMLs...
I: Done.
I: Copying assets and libs...

Then navigate to res/values in the newly created framework-res folder and open up "arrays.xml"

Now you'll want to scroll down until you find the following line

<string-array name="config_statusBarIcons">

All the lines that appear underneath that are the status bar icons (unsurprisingly) The section ends with

</string-array>

The order the appear in that list is the order (from left to right) that they appear in the status bar. So to reverse the order of the icons you need to go from this:

<item>ime</item>
<item>sync_failing</item>
<item>sync_active</item>
<item>gps</item>
<item>bluetooth</item>
<item>nfc</item>
<item>tty</item>
<item>speakerphone</item>
<item>mute</item>
<item>volume</item>
<item>headset</item>
<item>wifi</item>
<item>wimax</item>
<item>cdma_eri</item>
<item>data_connection</item>
<item>phone_evdo_signal</item>
<item>phone_signal</item>
<item>battery</item>
<item>alarm_clock</item>
<item>secure</item>
<item>clock</item>

To this:

<item>clock</item>
<item>secure</item>
<item>alarm_clock</item>
<item>battery</item>
<item>phone_signal</item>
<item>phone_evdo_signal</item>
<item>data_connection</item>
<item>cdma_eri</item>
<item>wimax</item>
<item>wifi</item>
<item>headset</item>
<item>volume</item>
<item>mute</item>
<item>speakerphone</item>
<item>tty</item>
<item>nfc</item>
<item>bluetooth</item>
<item>gps</item>
<item>sync_active</item>
<item>sync_failing</item>
<item>ime</item>

Pretty simple, eh? I'll leave you to choose the best order for those. Once you've done that you need to save your work, then recompile framework-res:

apktool b framework-res

Output:

sam@Coruscant:~/Android/SGSII/Tweaks/StatusIconTut$ apktool b framework-res
W: Could not find sources
I: Checking whether resources has changed...
I: Building resources...
I: Building apk file...

Now, the usual trick to avoid signing the file again. Go back to the framework-res folder, navigate to build/apk. In there you'll see a file called "resources.arsc". Copy that into your original framework-res.apk (make a backup first!) then push it back using adb:

Notice that I have opened framework-res using my archiving tool, I've not extracted it

adb push framework-res.apk /system/framework/framework-res.apk

Reboot (and probably re-log into your Google account) and you're done. To avoid being singed out of all your accounts do all the pushing when your phone is in recovery.

Disable power menu blur

As we all know, Android has this nasty habit of putting a live blur behind the power menu, and rendering it with the CPU instead of the GPU. This leads to lags when opening that menu, as well as accessing the more advanced features put in by the CM team. So! To remove it we do the following:

Decompile framework-res.apk:

apktool d framework-res.apk

Output:

sam@Coruscant:~/Android/Legend/StatusBarMod/CM-28-11-11$ apktool d framework-res.apk
I: Loading resource table...
I: Loaded.
I: Decoding file-resources...
I: Decoding values*/* XMLs...
I: Done.
I: Copying assets and libs...

Then navigate to res/values

Open up bools.xml and look (near the top) for this line:

<bool name="config_sf_slowBlur">false</bool>

You need to change the "false" to "true", like this:

<bool name="config_sf_slowBlur">true</bool>

Save and exit.

Go back to your command window, and recompile framework-res:

apktool b framework-res

Output:

sam@Coruscant:~/Android/Legend/StatusBarMod/CM-28-11-11$ apktool b framework-resW: Could not find sources
I: Checking whether resources has changed...
I: Building resources...
I: Building apk file...

Now, to avoid signing issues we do the same trick as before, only this time it's the file "resources.arsc" we're copying across (build/apk/). Copy it across to the root of the original framework-res.apk:

Use adb to push it back:

adb push framework-res.apk /system/framework/framework-res.apk

then reboot

adb reboot

Done!

Requests

Any other popular theming mods? LEt me know, and I'll see if I can write a guide for it