[Guides] JB 4.1.2 Basic Mod and Links

Search This thread

bombaybadboy

Senior Member
Apr 22, 2012
7,782
16,693
Wherever
When i first started to decompile apks From I9100 4.1.2 Jellybean deodexed Roms for Mods + Basic themes i found Threads Scattered All over XDA and thought someone should put them together or at least add links. Im Sure there are better ways with some of these mods but the ones i will post work and have used them all myself. This is my First Thread Attempt and i will make it as noob friendly as i can. Also any suggestions how to improve this guide or any other the Mods I post would be welcome because i only no what i have read from other threads. Im Not a developer im a Noob just like most of us here but with the great guides on XDA i Have learned a lot

First I want to Thank the Members that have Posted these Guides And have Helped me

wanam
lidroid
Mirko ddd
majdinj
shoman94
Goldieking
salesale
engloa
Spannaa
Churapa
Didact74
mythtrandyr

Please dont PM the devs with Questions as there busy with there own Mods. Just POST on there thread or this thread if you like

Please as my First thread im trying to do things right and give credit where it is due so if i have missed anyone please Pm me and i will correctly add,
Thankyou
Also im not doing this for Thanks or Donations, so Please Thank the members above who made this guide possible

Ok Lets Start

Im Not here to teach you how to decompile there are threads for that which i will link Here

First you will need your basic tools

These you can choose from and find what suits you ApkMultitool Dont forget to add your SystemUI.apk+framework-res.apk+twframework-res.apk to others file
Before you run setup

or you may want to use Apktool And here is a Guide you will also need SDK And Very Important Java

Editing Tools

Notepad++
I use Paint.Net But you can also use Gimp For Image Editing

If you need More Information on decompiling and editing look at this Ultimate Guide[Decompiling][9 pngs][Theming] By iamareebjamal
Please remember to thank iamareebjamal for his work

Click here for How To Make a Log of your Error Guide
Please remember to thank Stryke_the_Orc for his work


Ok finally you are ready to start, i will start with simple Mods

Wallpaper Scroll

Decompile SecLauncher2.apk
Go to \res\values folder and open bools.xml file with Notepad++.
Then change code indicated in Red To Blue
Code:
<bool name="config_fixedWallpaperOffset">[COLOR="Red"]true[/COLOR]</bool>
To:
Code:
<bool name="config_fixedWallpaperOffset">[COLOR="Blue"]false[/COLOR]</bool>
Save the file, recompile and push the apk to your phone.
See Easy:fingers-crossed:



4 Lockscreen Shortcuts

Decompile SecSettings.apk and go to smali/com/android/settings/lockscreenshortcut/LockScreenShortcutSettings.smali
Open this file with notpad++ and change the followingRedLines to Blue

Code:
# direct methods
.method static constructor ()V
    .locals 2

    .prologue
    const/4 v1, 0x0

    .line 79
    [COLOR="Red"][B]const/4 v0, 0x3[/B][/COLOR]

    sput v0, Lcom/android/settings/lockscreenshortcut/LockScreenShortcutSettings;->MAX_SHORTCUT_ICON:I
To:
Code:
# direct methods
.method static constructor ()V
    .locals 2

    .prologue
    const/4 v1, 0x0

    .line 79
    [B][COLOR="Blue"]const/4 v0, 0x4[/COLOR][/B]

    sput v0, Lcom/android/settings/lockscreenshortcut/LockScreenShortcutSettings;->MAX_SHORTCUT_ICON:I

Recompile and Done:)
There is also a guide for 5 Lockscreen shortcuts by Mirko dddHere



Water Ripple Effect+Toggle


android.policy.jar
com/android/internal/policy/impl/sec/CircleLockScreen.smali
Code:
    .line 543
    .local v20, isRippleEffect:Z
    :goto_306
    if-nez v18, :cond_61f

    if-eqz v22, :cond_61f

    if-eqz v20, :cond_61f

    const/4 v3, 0x1

    :goto_30d

After

Code:
    .line 543
    .local v20, isRippleEffect:Z
    :goto_306
    if-nez v18, :cond_61f

    [COLOR="Red"]# if-eqz v22, :cond_61f[/COLOR]

    if-eqz v20, :cond_61f

    const/4 v3, 0x1

    :goto_30d

Now for the Toggle
Secsettings.apk
com/android/settings/LockScreenSettings.smali

Code:
    .line 253
    :cond_28b
    invoke-virtual {p0}, Lcom/android/settings/LockScreenSettings;->getPreferenceScreen()Landroid/preference/PreferenceScreen;

    move-result-object v9

    iget-object v10, p0, Lcom/android/settings/LockScreenSettings;->mRippleEffect:Landroid/preference/CheckBoxPreference;

    invoke-virtual {v9, v10}, Landroid/preference/PreferenceScreen;->removePreference(Landroid/preference/Preference;)Z

After:

Code:
    .line 253
    :cond_28b
    invoke-virtual {p0}, Lcom/android/settings/LockScreenSettings;->getPreferenceScreen()Landroid/preference/PreferenceScreen;

    move-result-object v9

    iget-object v10, p0, Lcom/android/settings/LockScreenSettings;->mRippleEffect:Landroid/preference/CheckBoxPreference;

    [COLOR="Red"]#  invoke-virtual {v9, v10}, Landroid/preference/PreferenceScreen;->removePreference(Landroid/preference/Preference;)Z
[/COLOR]

Recompile and done:)


Aosp Lockscreen+Toggle


There is already a great Guide for this by Mirko ddd Here Please dont forget to thank Him for his work

Aosp Lockscreen Guide

Works Great


EdgeZoom



Thanks to Shoman94

Decompileframework.jar
\framework\smali\android\view\ScaleGestureDetector .smali

Find
Code:
[B].method public onTouchEvent(Landroid/view/MotionEvent;)Z[/B]

Replace that entire method with this:

Code:
.method public onTouchEvent(Landroid/view/MotionEvent;)Z
    .locals 26
    .parameter "event"

    .prologue
    .line 207
    move-object/from16 v0, p0

    iget-object v0, v0, Landroid/view/ScaleGestureDetector;->mInputEventConsistencyVerifier:Landroid/view/InputEventConsistencyVerifier;

    move-object/from16 v24, v0

    if-eqz v24, :cond_0

    .line 208
    move-object/from16 v0, p0

    iget-object v0, v0, Landroid/view/ScaleGestureDetector;->mInputEventConsistencyVerifier:Landroid/view/InputEventConsistencyVerifier;

    move-object/from16 v24, v0

    const/16 v25, 0x0

    move-object/from16 v0, v24

    move-object/from16 v1, p1

    move/from16 v2, v25

    invoke-virtual {v0, v1, v2}, Landroid/view/InputEventConsistencyVerifier;->onTouchEvent(Landroid/view/MotionEvent;I)V

    .line 213
    :cond_0
    move-object/from16 v0, p0

    iget-boolean v0, v0, Landroid/view/ScaleGestureDetector;->mValidPackage:Z

    move/from16 v24, v0

    if-eqz v24, :cond_1

    invoke-direct/range {p0 .. p1}, Landroid/view/ScaleGestureDetector;->onEdgeTouchEvent(Landroid/view/MotionEvent;)Z

    move-result v24

    if-eqz v24, :cond_1

    const/16 v24, 0x1

    .line 310
    :goto_0
    return v24

    .line 213
    :cond_1
    invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getActionMasked()I

    move-result v3

    .line 215
    .local v3, action:I
    const/16 v24, 0x1

    move/from16 v0, v24

    if-eq v3, v0, :cond_2

    const/16 v24, 0x3

    move/from16 v0, v24

    if-ne v3, v0, :cond_5

    :cond_2
    const/16 v19, 0x1

    .line 217
    .local v19, streamComplete:Z
    :goto_1
    if-eqz v3, :cond_3

    if-eqz v19, :cond_6

    .line 221
    :cond_3
    move-object/from16 v0, p0

    iget-boolean v0, v0, Landroid/view/ScaleGestureDetector;->mInProgress:Z

    move/from16 v24, v0

    if-eqz v24, :cond_4

    .line 222
    move-object/from16 v0, p0

    iget-object v0, v0, Landroid/view/ScaleGestureDetector;->mListener:Landroid/view/ScaleGestureDetector$OnScaleGestureListener;

    move-object/from16 v24, v0

    move-object/from16 v0, v24

    move-object/from16 v1, p0

    invoke-interface {v0, v1}, Landroid/view/ScaleGestureDetector$OnScaleGestureListener;->onScaleEnd(Landroid/view/ScaleGestureDetector;)V

    .line 223
    const/16 v24, 0x0

    move/from16 v0, v24

    move-object/from16 v1, p0

    iput-boolean v0, v1, Landroid/view/ScaleGestureDetector;->mInProgress:Z

    .line 224
    const/16 v24, 0x0

    move/from16 v0, v24

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mInitialSpan:F

    .line 227
    :cond_4
    if-eqz v19, :cond_6

    .line 228
    const/16 v24, 0x1

    goto :goto_0

    .line 215
    .end local v19           #streamComplete:Z
    :cond_5
    const/16 v19, 0x0

    goto :goto_1

    .line 232
    .restart local v19       #streamComplete:Z
    :cond_6
    const/16 v24, 0x6

    move/from16 v0, v24

    if-eq v3, v0, :cond_7

    const/16 v24, 0x5

    move/from16 v0, v24

    if-ne v3, v0, :cond_8

    :cond_7
    const/4 v4, 0x1

    .line 235
    .local v4, configChanged:Z
    :goto_2
    const/16 v24, 0x6

    move/from16 v0, v24

    if-ne v3, v0, :cond_9

    const/4 v14, 0x1

    .line 236
    .local v14, pointerUp:Z
    :goto_3
    if-eqz v14, :cond_a

    invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getActionIndex()I

    move-result v15

    .line 239
    .local v15, skipIndex:I
    :goto_4
    const/16 v20, 0x0

    .local v20, sumX:F
    const/16 v21, 0x0

    .line 240
    .local v21, sumY:F
    invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getPointerCount()I

    move-result v5

    .line 241
    .local v5, count:I
    const/4 v13, 0x0

    .local v13, i:I
    :goto_5
    if-ge v13, v5, :cond_c

    .line 242
    if-ne v15, v13, :cond_b

    .line 241
    :goto_6
    add-int/lit8 v13, v13, 0x1

    goto :goto_5

    .line 232
    .end local v4           #configChanged:Z
    .end local v5           #count:I
    .end local v13           #i:I
    .end local v14           #pointerUp:Z
    .end local v15           #skipIndex:I
    .end local v20           #sumX:F
    .end local v21           #sumY:F
    :cond_8
    const/4 v4, 0x0

    goto :goto_2

    .line 235
    .restart local v4       #configChanged:Z
    :cond_9
    const/4 v14, 0x0

    goto :goto_3

    .line 236
    .restart local v14       #pointerUp:Z
    :cond_a
    const/4 v15, -0x1

    goto :goto_4

    .line 243
    .restart local v5       #count:I
    .restart local v13       #i:I
    .restart local v15       #skipIndex:I
    .restart local v20       #sumX:F
    .restart local v21       #sumY:F
    :cond_b
    move-object/from16 v0, p1

    invoke-virtual {v0, v13}, Landroid/view/MotionEvent;->getX(I)F

    move-result v24

    add-float v20, v20, v24

    .line 244
    move-object/from16 v0, p1

    invoke-virtual {v0, v13}, Landroid/view/MotionEvent;->getY(I)F

    move-result v24

    add-float v21, v21, v24

    goto :goto_6

    .line 246
    :cond_c
    if-eqz v14, :cond_d

    add-int/lit8 v10, v5, -0x1

    .line 247
    .local v10, div:I
    :goto_7
    int-to-float v0, v10

    move/from16 v24, v0

    div-float v11, v20, v24

    .line 248
    .local v11, focusX:F
    int-to-float v0, v10

    move/from16 v24, v0

    div-float v12, v21, v24

    .line 251
    .local v12, focusY:F
    const/4 v6, 0x0

    .local v6, devSumX:F
    const/4 v7, 0x0

    .line 252
    .local v7, devSumY:F
    const/4 v13, 0x0

    :goto_8
    if-ge v13, v5, :cond_f

    .line 253
    if-ne v15, v13, :cond_e

    .line 252
    :goto_9
    add-int/lit8 v13, v13, 0x1

    goto :goto_8

    .end local v6           #devSumX:F
    .end local v7           #devSumY:F
    .end local v10           #div:I
    .end local v11           #focusX:F
    .end local v12           #focusY:F
    :cond_d
    move v10, v5

    .line 246
    goto :goto_7

    .line 254
    .restart local v6       #devSumX:F
    .restart local v7       #devSumY:F
    .restart local v10       #div:I
    .restart local v11       #focusX:F
    .restart local v12       #focusY:F
    :cond_e
    move-object/from16 v0, p1

    invoke-virtual {v0, v13}, Landroid/view/MotionEvent;->getX(I)F

    move-result v24

    sub-float v24, v24, v11

    invoke-static/range {v24 .. v24}, Ljava/lang/Math;->abs(F)F

    move-result v24

    add-float v6, v6, v24

    .line 255
    move-object/from16 v0, p1

    invoke-virtual {v0, v13}, Landroid/view/MotionEvent;->getY(I)F

    move-result v24

    sub-float v24, v24, v12

    invoke-static/range {v24 .. v24}, Ljava/lang/Math;->abs(F)F

    move-result v24

    add-float v7, v7, v24

    goto :goto_9

    .line 257
    :cond_f
    int-to-float v0, v10

    move/from16 v24, v0

    div-float v8, v6, v24

    .line 258
    .local v8, devX:F
    int-to-float v0, v10

    move/from16 v24, v0

    div-float v9, v7, v24

    .line 263
    .local v9, devY:F
    const/high16 v24, 0x4000

    mul-float v17, v8, v24

    .line 264
    .local v17, spanX:F
    const/high16 v24, 0x4000

    mul-float v18, v9, v24

    .line 265
    .local v18, spanY:F
    mul-float v24, v17, v17

    mul-float v25, v18, v18

    add-float v24, v24, v25

    invoke-static/range {v24 .. v24}, Landroid/util/FloatMath;->sqrt(F)F

    move-result v16

    .line 270
    .local v16, span:F
    move-object/from16 v0, p0

    iget-boolean v0, v0, Landroid/view/ScaleGestureDetector;->mInProgress:Z

    move/from16 v23, v0

    .line 271
    .local v23, wasInProgress:Z
    move-object/from16 v0, p0

    iput v11, v0, Landroid/view/ScaleGestureDetector;->mFocusX:F

    .line 272
    move-object/from16 v0, p0

    iput v12, v0, Landroid/view/ScaleGestureDetector;->mFocusY:F

    .line 273
    move-object/from16 v0, p0

    iget-boolean v0, v0, Landroid/view/ScaleGestureDetector;->mInProgress:Z

    move/from16 v24, v0

    if-eqz v24, :cond_11

    const/16 v24, 0x0

    cmpl-float v24, v16, v24

    if-eqz v24, :cond_10

    if-eqz v4, :cond_11

    .line 274
    :cond_10
    move-object/from16 v0, p0

    iget-object v0, v0, Landroid/view/ScaleGestureDetector;->mListener:Landroid/view/ScaleGestureDetector$OnScaleGestureListener;

    move-object/from16 v24, v0

    move-object/from16 v0, v24

    move-object/from16 v1, p0

    invoke-interface {v0, v1}, Landroid/view/ScaleGestureDetector$OnScaleGestureListener;->onScaleEnd(Landroid/view/ScaleGestureDetector;)V

    .line 275
    const/16 v24, 0x0

    move/from16 v0, v24

    move-object/from16 v1, p0

    iput-boolean v0, v1, Landroid/view/ScaleGestureDetector;->mInProgress:Z

    .line 276
    move/from16 v0, v16

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mInitialSpan:F

    .line 278
    :cond_11
    if-eqz v4, :cond_12

    .line 279
    move/from16 v0, v17

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpanX:F

    move/from16 v0, v17

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpanX:F

    .line 280
    move/from16 v0, v18

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpanY:F

    move/from16 v0, v18

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpanY:F

    .line 281
    move/from16 v0, v16

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpan:F

    move/from16 v0, v16

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpan:F

    move/from16 v0, v16

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mInitialSpan:F

    .line 283
    :cond_12
    move-object/from16 v0, p0

    iget-boolean v0, v0, Landroid/view/ScaleGestureDetector;->mInProgress:Z

    move/from16 v24, v0

    if-nez v24, :cond_14

    const/16 v24, 0x0

    cmpl-float v24, v16, v24

    if-eqz v24, :cond_14

    if-nez v23, :cond_13

    move-object/from16 v0, p0

    iget v0, v0, Landroid/view/ScaleGestureDetector;->mInitialSpan:F

    move/from16 v24, v0

    sub-float v24, v16, v24

    invoke-static/range {v24 .. v24}, Ljava/lang/Math;->abs(F)F

    move-result v24

    move-object/from16 v0, p0

    iget v0, v0, Landroid/view/ScaleGestureDetector;->mSpanSlop:I

    move/from16 v25, v0

    move/from16 v0, v25

    int-to-float v0, v0

    move/from16 v25, v0

    cmpl-float v24, v24, v25

    if-lez v24, :cond_14

    .line 285
    :cond_13
    move/from16 v0, v17

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpanX:F

    move/from16 v0, v17

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpanX:F

    .line 286
    move/from16 v0, v18

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpanY:F

    move/from16 v0, v18

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpanY:F

    .line 287
    move/from16 v0, v16

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpan:F

    move/from16 v0, v16

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpan:F

    .line 288
    move-object/from16 v0, p0

    iget-object v0, v0, Landroid/view/ScaleGestureDetector;->mListener:Landroid/view/ScaleGestureDetector$OnScaleGestureListener;

    move-object/from16 v24, v0

    move-object/from16 v0, v24

    move-object/from16 v1, p0

    invoke-interface {v0, v1}, Landroid/view/ScaleGestureDetector$OnScaleGestureListener;->onScaleBegin(Landroid/view/ScaleGestureDetector;)Z

    move-result v24

    move/from16 v0, v24

    move-object/from16 v1, p0

    iput-boolean v0, v1, Landroid/view/ScaleGestureDetector;->mInProgress:Z

    .line 289
    const-string v24, "ScaleGestureDetector"

    const-string v25, "SGD"

    invoke-static/range {v24 .. v25}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I

    .line 293
    :cond_14
    const/16 v24, 0x2

    move/from16 v0, v24

    if-ne v3, v0, :cond_16

    .line 294
    move/from16 v0, v17

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpanX:F

    .line 295
    move/from16 v0, v18

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpanY:F

    .line 296
    move/from16 v0, v16

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpan:F

    .line 298
    const/16 v22, 0x1

    .line 299
    .local v22, updatePrev:Z
    move-object/from16 v0, p0

    iget-boolean v0, v0, Landroid/view/ScaleGestureDetector;->mInProgress:Z

    move/from16 v24, v0

    if-eqz v24, :cond_15

    .line 300
    move-object/from16 v0, p0

    iget-object v0, v0, Landroid/view/ScaleGestureDetector;->mListener:Landroid/view/ScaleGestureDetector$OnScaleGestureListener;

    move-object/from16 v24, v0

    move-object/from16 v0, v24

    move-object/from16 v1, p0

    invoke-interface {v0, v1}, Landroid/view/ScaleGestureDetector$OnScaleGestureListener;->onScale(Landroid/view/ScaleGestureDetector;)Z

    move-result v22

    .line 303
    :cond_15
    if-eqz v22, :cond_16

    .line 304
    move-object/from16 v0, p0

    iget v0, v0, Landroid/view/ScaleGestureDetector;->mCurrSpanX:F

    move/from16 v24, v0

    move/from16 v0, v24

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpanX:F

    .line 305
    move-object/from16 v0, p0

    iget v0, v0, Landroid/view/ScaleGestureDetector;->mCurrSpanY:F

    move/from16 v24, v0

    move/from16 v0, v24

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpanY:F

    .line 306
    move-object/from16 v0, p0

    iget v0, v0, Landroid/view/ScaleGestureDetector;->mCurrSpan:F

    move/from16 v24, v0

    move/from16 v0, v24

    move-object/from16 v1, p0

    iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpan:F

    .line 310
    .end local v22           #updatePrev:Z
    :cond_16
    const/16 v24, 0x1

    goto/16 :goto_0
.end method

Recompile and Done

You can thank shoman94 on 3rd post Here


% Battery-icons

Ok i will try and give you the basic idea for status bar theming

Here is a few ready made battery icons with stat_battery.xml and stat_battery_charge.xml Put together by majdinj

First Decompile SystemUI.apk

Choose the battery icons file you would like to use

Then go to /res/drawable and look for stat_sys_battery and stat_sys_battery_charge you will find replacements in the chosen battery folder Now replace them

Next go to /res/drawable-hdpi and copy all png icons into that folder

If you want to change colour of your clock then go to \res\layout\tw_status_bar
Look for hex code in Red and edit
Code:
<com.android.systemui.statusbar.policy.Clock android:textSize="@dimen/status_bar_clock_text_size" android:textColor="[COLOR="Red"]#ff959595[/COLOR]" android:ellipsize="none" android:gravity="left|center" android:id="@id/clock" android:paddingLeft="3.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" android:includeFontPadding="false" />

Change Hex Highlighted in Red to Colour you Like

If you want to edit time and date in Pulldown then go to \res\layout\tw_status_bar_expanded_header
Look for these lines
Code:
Changes clock and
Code:
<com.android.systemui.statusbar.policy.Clock android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Clock" android:textColor="#ffffffff" android:id="@id/clock" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="4.0dip" android:layout_marginTop="-3.0dip" android:singleLine="true" systemui:ampmSmall="true" />
Changes Date
Code:
<com.android.systemui.statusbar.policy.DateView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Date" android:textColor="#ffcbcbcb" android:ellipsize="none" android:id="@id/date" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="8.0dip" android:layout_marginRight="4.0dip"

If you want to change colour of statusbar then you have 2 ways, 1st way go to \res\layout\tw_status_bar
and edit
Code:
<com.android.systemui.statusbar.phone.PhoneStatusBarView android:orientation="vertical" android:id="@id/status_bar" android:background="[COLOR="Red"]@drawable/status_bar_background[/COLOR]" android:focusable="true" android:fitsSystemWindows="true" android:descendantFocusability="afterDescendants"
Add Hex Highlighted in Red

Or go to res/values/drawables.xml and look for
Code:
<item type="drawable" name="status_bar_background">[COLOR="Red"]#ff000000[/COLOR]</item>

edit code in red to whatever colour you like This colour tool will help you or just use png editing tools provided in first post
#FF****** ( Opaque ) #00****** (Transparent )


Proper home button lagfix

Already A Good Guide Here by Mirko ddd
Please Remember To Thanks Mirko ddd For His Guide


Potential Media Scanner Fix
Already a Good Guide Here by shoman94
Please Remember To Thanks shoman94 For His Guide


CRT-OFF
Already A Good Guide Here by Mirko ddd
Please Remember To Thanks Mirko ddd For His Guide


CRT-OFF+ Toggle
Already a Good Guide Here by shoman94
Please Remember To Thanks shoman94 For His Guide


Back to kill
Already A Good Guide Here by Mirko ddd
Please Remember To Thanks Mirko ddd For His Guide



More Info on PNG editing by HighlanderZA
Some Extra Useful Information Guides From HighlanderZA editing by HighlanderZA
Until i can change from PDF Files you will need Adobe Reader XI To Read but worth looking at
 
Last edited:

bombaybadboy

Senior Member
Apr 22, 2012
7,782
16,693
Wherever
23 Toggles Notification Panel

Thanks to Wanam-Lidroid-Goldieking-Majdinj-Engloa

This one is a little Harder so Take your Time

Decompile SystemUI.apk
Go to res\layout folder and open tw_status_bar_expanded.xml Add the Blue Lines and Delete the Redand modify the Green

Code:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:id="@id/notification_panel" android:background="@drawable/notification_panel_bg" android:paddingTop="@dimen/notification_panel_padding_top" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginLeft="@dimen/notification_panel_margin_left"
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
    <FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginBottom="@dimen/tw_close_handle_underlap">
        <include android:layout_width="fill_parent" android:layout_height="@dimen/tw_notification_panel_header_height" layout="@layout/tw_status_bar_expanded_header" />
        <TextView android:gravity="center" android:id="@id/emergency_calls_only" android:paddingBottom="4.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content" />
        <View android:background="#ff091a24" android:layout_width="fill_parent" android:layout_height="1.0dip" android:layout_marginTop="@dimen/tw_notification_panel_header_height" />
        [B][COLOR="Blue"]<HorizontalScrollView android:id="@id/quicksetting_scroller" android:visibility="gone" android:scrollbars="none" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" android:layout_marginTop="@dimen/tw_notification_panel_header_height">
            <com.android.systemui.statusbar.policy.quicksetting.QuickSettingPanel android:orientation="horizontal" android:id="@id/quicksetting_container" android:layout_width="wrap_content" android:layout_height="wrap_content" android:divider="@drawable/tw_black_bg" android:showDividers="middle" />
        </HorizontalScrollView>
        <com.wanam.systemui.quickpanel.PowerWidget android:id="@id/exp_power_stat" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" android:layout_marginTop="@dimen/tw_notification_panel_header_height" />
        <LinearLayout android:orientation="vertical" android:id="@id/brightness_controller" android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="56.0dip" android:layout_marginTop="@dimen/notification_panel_quicksettingbtn_height">
            <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="55.0dip">
                <ImageView android:id="@id/brightness_icon" android:clickable="true" android:layout_width="25.0dip" android:layout_height="fill_parent" android:layout_marginLeft="13.0dip" android:src="@drawable/ic_sysbar_brightness" android:contentDescription="@string/accessibility_brightness_icon" />
                <FrameLayout android:id="@id/brightness_group" android:layout_width="fill_parent" android:layout_height="fill_parent">
                    <com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
                    <com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/auto_brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
                </FrameLayout>
            </LinearLayout>
            <View android:background="#ff091a24" android:layout_width="fill_parent" android:layout_height="1.0dip" />
        </LinearLayout>[/COLOR][/B]
        [B][COLOR="SeaGreen"]<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="@dimen/notification_panel_notification_top_margin" android:overScrollMode="ifContentScrolls">[/COLOR][/B]
            <LinearLayout android:orientation="vertical" android:id="@id/scrollCart" android:layout_width="fill_parent" android:layout_height="wrap_content">
                [B][COLOR="Red"]<HorizontalScrollView android:id="@id/quicksetting_scroller" android:scrollbars="none" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height">
                    <com.android.systemui.statusbar.policy.quicksetting.QuickSettingPanel android:orientation="horizontal" android:id="@id/quicksetting_container" android:layout_width="wrap_content" android:layout_height="wrap_content" android:divider="@drawable/tw_black_bg" android:showDividers="middle" />
                </HorizontalScrollView>
                <LinearLayout android:orientation="vertical" android:id="@id/brightness_controller" android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="56.0dip">
                    <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="55.0dip">
                        <ImageView android:id="@id/brightness_icon" android:clickable="true" android:layout_width="25.0dip" android:layout_height="fill_parent" android:layout_marginLeft="13.0dip" android:src="@drawable/ic_sysbar_brightness" android:contentDescription="@string/accessibility_brightness_icon" />
                        <FrameLayout android:id="@id/brightness_group" android:layout_width="fill_parent" android:layout_height="fill_parent">
                            <com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
                            <com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/auto_brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
                        </FrameLayout>
                    </LinearLayout>
                    <View android:background="#ff091a24" android:layout_width="fill_parent" android:layout_height="1.0dip" />
                </LinearLayout>[/COLOR][/B]
                <LinearLayout android:orientation="vertical" android:id="@id/noNotificationsTitle" android:focusable="true" android:layout_width="fill_parent" android:layout_height="wrap_content">
                    <TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/noNotificationsText" android:paddingLeft="11.0dip" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height" android:text="@string/status_bar_no_notifications_title" />
                </LinearLayout>
                <LinearLayout android:orientation="vertical" android:id="@id/onGoingCart" android:background="#ff293945" android:focusable="true" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height">
                    <TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/onGoingNotificationText" android:paddingLeft="11.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/status_bar_ongoing_events_title" />
                </LinearLayout>
                <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/onGoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
                <LinearLayout android:orientation="vertical" android:id="@id/notificationCart" android:background="#ff293945" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height">
                    <RelativeLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content">
                        <TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/latestNotificationText" android:paddingLeft="11.0dip" android:layout_width="180.0dip" android:layout_height="fill_parent" android:text="@string/status_bar_latest_events_title" android:layout_alignParentLeft="true" />
                        <TextView android:textSize="@dimen/status_bar_expanded_notification_clear_button_text_size" android:textColor="@color/tw_status_bar_clear_btn_text" android:gravity="center" android:id="@id/clear_all_button" android:background="@drawable/tw_btn_default_small" android:padding="0.100000024dip" android:focusable="true" android:clickable="true" android:layout_width="@dimen/status_bar_expanded_clear_button_width" android:layout_height="fill_parent" android:layout_marginRight="4.0dip" android:text="@string/status_bar_clear_all_button" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_clear_all" />
                    </RelativeLayout>
                </LinearLayout>
                <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/notificationItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
                <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
            </LinearLayout>
        </ScrollView>
    </FrameLayout>
    <com.android.systemui.statusbar.phone.CloseDragHandle android:layout_gravity="bottom" android:orientation="vertical" android:id="@id/close" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height">
        <RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent">
            <ImageView android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height" android:src="@drawable/tw_status_bar_close" android:scaleType="fitXY" />
            <TextView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Network" android:gravity="center" android:layout_gravity="bottom" android:id="@id/carrier_label" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height" android:layout_marginBottom="10.0dip" />
        </RelativeLayout>
    </com.android.systemui.statusbar.phone.CloseDragHandle>
</FrameLayout>

Here is an already modified tw_status_bar_expanded.xml

to res\values\ folder and open ids.xml add the following line at the end before </resources> line:
Code:
<item type="id" name="exp_power_stat">false</item>


Now you need to recompile SystemUI.apk in order to generate new ids in public.xml file for exp_power_stat. Then decompile the new SystemUI.apk and delete the old one so you dont get confused


Go to smali\com\android\systemui\statusbar\phone\PhoneStatusBar.smali

Search for .field mPostCollapseCleanup:Ljava/lang/Runnable;
add this line bellow it (the blue one here):
Code:
.field mPostCollapseCleanup:Ljava/lang/Runnable;

[B][COLOR="Blue"].field mPowerWidget:Lcom/wanam/systemui/quickpanel/PowerWidget;[/COLOR][/B]

.field mQueueLock:Ljava/lang/Object;

Now search for .method public addIcon Still in PhoneStatusBar.smali
Add the lines in Blueat the end of this method before the "return-void" line:
Code:
    invoke-virtual {v1, v0, p3, v2}, Landroid/widget/LinearLayout;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V

    .line 1170
    [B][COLOR="Blue"]iget-object v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPowerWidget:Lcom/wanam/systemui/quickpanel/PowerWidget;

    invoke-virtual {v1}, Lcom/wanam/systemui/quickpanel/PowerWidget;->updateWidget()V[/COLOR][/B]

    return-void
.end method

Now serch for .method protected makeStatusBarViewthen search forLandroid/widget/ScrollView;->setVerticalScrollBarEnabled(Z)Vthen add BlueLines
Code:
    invoke-virtual {v9, v10}, Landroid/widget/ScrollView;->setVerticalScrollBarEnabled(Z)V

    [B][COLOR="Blue"]move-object/from16 v0, p0

    iget-object v9, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarWindow:Lcom/android/systemui/statusbar/phone/StatusBarWindowView;

    const v10, [COLOR="SeaGreen"]0x7fxxxxxx[/COLOR]

    invoke-virtual {v9, v10}, Lcom/android/systemui/statusbar/phone/StatusBarWindowView;->findViewById(I)Landroid/view/View;

    move-result-object v9

    check-cast v9, Lcom/wanam/systemui/quickpanel/PowerWidget;

    move-object/from16 v0, p0

    iput-object v9, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPowerWidget:Lcom/wanam/systemui/quickpanel/PowerWidget;[/COLOR][/B]

    .line 714
    new-instance v9, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$MyTicker;

You should use the newly generated id in public.xml (in res\values folder) for "exp_power_stat" in place of 0x7fxxxxxx

Still in PhoneStatusBar.smali Search for Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent; Adds the lines in Blue

Code:
    invoke-virtual {v1, v9, v2}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;

[B][COLOR="Blue"]    move-object/from16 v0, p0

    iget-object v9, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPowerWidget:Lcom/wanam/systemui/quickpanel/PowerWidget;

    invoke-virtual {v9}, Lcom/wanam/systemui/quickpanel/PowerWidget;->setupWidget()V[/COLOR][/B]

    .line 875
    sget-boolean v9, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->useTouchWizGUI:Z

Now save and close

Now you edit bigginning of AndroidManifest.xmlin SystemUI.apk to make torch+Reboot work

Before:
Code:
<?xml version="1.0" encoding="utf-8"?>
[B][COLOR="Red"]<manifest android:versionCode="16" android:versionName="4.1.2-I9100XXLSS" package="com.android.systemui" coreApp="true"[/COLOR][/B]
  xmlns:android="http://schemas.android.com/apk/res/android">
After:
Code:
<?xml version="1.0" encoding="utf-8"?>
[B][COLOR="Red"]<manifest android:versionCode="16" android:versionName="4.1.2-I9100XXLSS" package="com.android.systemui" coreApp="true" [COLOR="Blue"]android:sharedUserId="android.uid.system" android:process="system"[/COLOR][/COLOR][/B]
  xmlns:android="http://schemas.android.com/apk/res/android">

Now Download the wanam 23 Toggles apks and Folders
Add the the 1st wanam folder in smali and 2nd wanam folder smali/com folder in systemUI.apk
2 apks you need to add Lidroid-res.apk to /system/framework and Lidroid Settings apk to /preload/symlink/system/app

Now we have finished from modifying SystemUI.apk, RecompileAnd Sign SystemUI.apk

Since the systemUI is now signed, we will need to disable signature check on "services.jar

So backsmali services.jar
go to classout\com\android\server\pm folder and find PackageManagerService.smali search for .method static compareSignatures and change the entire method to:
Code:
.method static compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
    .registers 9
    .parameter "s1"
    .parameter "s2"

    .prologue
    const/4 v6, 0x0

    const-string v3, "Wanam: PackageManager"

    const-string v4, "Skip signature check."

    invoke-static {v3, v4}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I

    return v6

.end method

Recompile and push to device, if you did correctly you will now have 23 toggles


Center clock in Statusbar
Thanks To majdinj & raubkatze
Decompile SystemUI.apk
If you want a center clock then go to /res/layout/ and look for tw_status_bar.xml
Look for
Code:
<LinearLayout android:orientation="horizontal" android:id="@id/icons" android:paddingLeft="0.0dip" android:paddingRight="2.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
        <LinearLayout android:orientation="horizontal" android:id="@id/left_icons" android:paddingLeft="4.0dip" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
            <TextView android:textSize="15.0dip" android:gravity="center_vertical" android:id="@id/carrierLabel" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
            <ImageView android:id="@id/operatorLogoIcon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/tw_stat_notify_operator_logo" />
            <ImageView android:id="@id/doNotDisturbIcon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/tw_dnd" android:alpha="0.7" android:scaleX="0.85" android:scaleY="0.85" />
            <com.android.systemui.statusbar.StatusBarIconView android:id="@id/moreIcon" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/stat_notify_more" />
            <com.android.systemui.statusbar.phone.IconMerger android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/notificationIcons" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_alignParentLeft="true" />
        </LinearLayout>
        <LinearLayout android:orientation="horizontal" android:id="@id/right_icons" android:paddingRight="4.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_alignParentRight="true">
            <LinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/statusIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" />
            <LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/signal_battery_cluster" android:paddingLeft="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent">
                <include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/tw_signal_cluster_view" />
                <TextView android:textSize="12.0dip" android:textColor="#ffa6a6a6" android:layout_gravity="center" android:id="@id/battery_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_network_name_separator" />
                <ImageView android:gravity="center" android:id="@id/battery" android:layout_width="wrap_content" android:layout_height="wrap_content" />
            </LinearLayout>
            <com.android.systemui.statusbar.policy.Clock android:textSize="@dimen/status_bar_clock_text_size" android:textColor="#ff959595" android:ellipsize="none" android:gravity="left|center" android:id="@id/clock" android:paddingLeft="3.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" android:includeFontPadding="false" />
        </LinearLayout>
Change to
Code:
<LinearLayout android:orientation="horizontal" android:id="@id/icons" android:paddingLeft="1.0dip" android:paddingRight="1.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
        <LinearLayout android:orientation="horizontal" android:id="@id/left_icons" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
            <TextView android:textSize="15.0dip" android:gravity="center_vertical" android:id="@id/carrierLabel" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
            <ImageView android:id="@id/operatorLogoIcon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/tw_stat_notify_operator_logo" />
            <ImageView android:id="@id/doNotDisturbIcon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/tw_dnd" android:alpha="0.7" android:scaleX="0.85" android:scaleY="0.85" />
            <com.android.systemui.statusbar.StatusBarIconView android:id="@id/moreIcon" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/stat_notify_more" />
            <com.android.systemui.statusbar.phone.IconMerger android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/notificationIcons" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_alignParentLeft="true" />
        </LinearLayout>
        <LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/clock" android:layout_width="wrap_content" android:layout_height="fill_parent">
            <com.android.systemui.statusbar.policy.Clock android:textSize="@dimen/status_bar_clock_text_size" android:textColor="[COLOR="Red"]#ffffffff[/COLOR]" android:gravity="center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
        </LinearLayout>
        <LinearLayout android:gravity="right|center" android:orientation="horizontal" android:id="@id/right_icons" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0" android:layout_alignParentRight="true">
            <LinearLayout android:gravity="right|center" android:orientation="horizontal" android:id="@id/statusIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" />
            <LinearLayout android:gravity="right|center" android:orientation="horizontal" android:id="@id/signal_battery_cluster" android:paddingLeft="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent">
                <include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/tw_signal_cluster_view" />
                <TextView android:textSize="12.0dip" android:textColor="#ffa6a6a6" android:layout_gravity="center" android:id="@id/battery_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_network_name_separator" />
                <ImageView android:gravity="center" android:id="@id/battery" android:layout_width="wrap_content" android:layout_height="wrap_content" />
            </LinearLayout>
        </LinearLayout>
Dont forget to add your colour to Policy clock
Recompile and done


Transparent Statusbar

decompile SystemUI.apk
edit with Notepad++ /res/layout/tw_super_status_bar.xml
Code:
<com.android.systemui.statusbar.phone.StatusBarWindowView android:background="[COLOR="blue"]#00000000[/COLOR]" android:focusable="true" android:fitsSystemWindows="true" android:descendantFocusability="afterDescendants"
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
Then look in \res\layout\tw_status_bar
Code:
<com.android.systemui.statusbar.phone.PhoneStatusBarView android:orientation="vertical" android:id="@id/status_bar" android:background="[COLOR="red"]@drawable/status_bar_background[/COLOR]" android:focusable="true" android:fitsSystemWindows="true" android:descendantFocusability="afterDescendants"

Some people change here to hex
But I Check @drawable/status_bar_background

Is there and Move onto res/values/drawables

Note some members add the hex code here, try and see what you prefer

But I look for \res\values\drawables.xml
Code:
<item type="drawable" name="status_bar_background">[COLOR="red"]#ff1e1e1e[/COLOR]</item>

Or any other transparency value you like
#00000000 - 100% transparency
#3F000000 - 75% transparency
#7F000000 - 50% transparency
#BF000000 - 25% transparency

http://xdaforums.com/showthread.php?t=2384892

Experimental, You dont need to use this
Im still trying to decide if this helps also
SystemUI\smali\com\android\system ui\statusbar\phone PhoneStatusBar$FastColorDrawable.smali

You can edit
Code:
# virtual methods
.method public draw(Landroid/graphics/Canvas;)V
    .locals 2
    .parameter "canvas"

    .prologue
    .line 3824
    [COLOR="Red"]iget v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$FastColorDrawable;->mColor:I[/COLOR]

    sget-object v1, Landroid/graphics/PorterDuff$Mode;->SRC:Landroid/graphics/PorterDuff$Mode;
To
Code:
# virtual methods
.method public draw(Landroid/graphics/Canvas;)V
    .locals 2
    .parameter "canvas"

    .prologue
    .line 3824
    const v0, [COLOR="blue"]0x00000000 [/COLOR]

    sget-object v1, Landroid/graphics/PorterDuff$Mode;->SRC:Landroid/graphics/PorterDuff$Mode;

TRANSPARENCY VALUES
0x00000000 (100%)
0x88000000 (75%)
0x7f000000 (50%)
0xd8000000 (25%)

But thats a WIP
Recompile and your done


MultiWindows

MULTIWINDOWS
Please Thank mythtrandyr For His Guide


Easy Method to Make a Flashable Zip
Already a Good Guide here by majdinj HERE
Please remember to thank him for his work


Transparant status bar background and pull-down menu
Already a Good Guide here by majdinj HERE
Please remember to thank him for his work


More Mods found By Another Member

A few of them i havent tried myself so i put them all together here till i have time to Try
QUAD TARGED AOSP
Please Thank ICS_XD For His Guide
Volume Rocker mod LSJ
Please Thank Mirko ddd For His Guide
Add Another Thread in Settings | About Device
Please Thank Taimur Akmal For his Guide
 
Last edited:

bombaybadboy

Senior Member
Apr 22, 2012
7,782
16,693
Wherever
AOSP STYLE CLEAR-ALL BUTTON
Good Guide By daveyannihilation Here
Please remember to thank him for his work


How To Mod Stock Samsung Apps For Multi DPI
Good Guide By MyLifeRocks10
Please remember to thank him for his work
Questions to MyLifeRocks10 thread please


4-Way Reboot
Good Guide Here By kahvitahra
Please remember to thank him for his work


Bottom Toggles guide for 23 toggle mods
Great Guide By churapa Here
Please remember to thank churapa for his work


Another Thread of Guides
HOW TO THEME SystemUI.apk for TOTALLY newbie
Please remember to thank joehanh88 for his work


Remove Brightness slider on 23 Toggle Mods
First i would like to thank churapa for his Guidence on this mod
So if it works ok Thank churapa if it doesnt work Blame me.

First decompile SystemUI.apk then go to res/layout/tw_status_bar_expanded and find this line
Code:
<FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginBottom="@dimen/tw_close_handle_underlap">
Then replace from that line everything with this
Code:
<FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginBottom="@dimen/tw_close_handle_underlap">
        <include android:layout_width="fill_parent" android:layout_height="@dimen/tw_notification_panel_header_height" layout="@layout/tw_status_bar_expanded_header" />
        <TextView android:gravity="center" android:id="@id/emergency_calls_only" android:paddingBottom="4.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content" />
        <View android:background="#ff091a24" android:layout_width="fill_parent" android:layout_height="1.0dip" android:layout_marginTop="@dimen/tw_notification_panel_header_height" />
        <ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="@dimen/tw_notification_panel_header_line_height" android:overScrollMode="ifContentScrolls">
            <LinearLayout android:orientation="vertical" android:id="@id/scrollCart" android:layout_width="fill_parent" android:layout_height="wrap_content">
                <HorizontalScrollView android:id="@id/quicksetting_scroller" android:visibility="gone" android:scrollbars="none" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height">
                    <com.android.systemui.statusbar.policy.quicksetting.QuickSettingPanel android:orientation="horizontal" android:id="@id/quicksetting_container" android:layout_width="wrap_content" android:layout_height="wrap_content" android:divider="@drawable/tw_black_bg" android:showDividers="middle" />
                </HorizontalScrollView>
                <com.wanam.systemui.quickpanel.PowerWidget android:id="@id/exp_power_stat" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" />
                <LinearLayout android:orientation="vertical" android:id="@id/brightness_controller" android:background="#ff000000" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="0.0dip">
                    <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="55.0dip">
                        <ImageView android:id="@id/brightness_icon" android:clickable="true" android:layout_width="25.0dip" android:layout_height="fill_parent" android:layout_marginLeft="13.0dip" android:src="@drawable/ic_sysbar_brightness" android:contentDescription="@string/accessibility_brightness_icon" />
                        <FrameLayout android:id="@id/brightness_group" android:layout_width="fill_parent" android:layout_height="fill_parent">
                            <com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
                            <com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/auto_brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
                        </FrameLayout>
                    </LinearLayout>
                    <View android:background="#ff091a24" android:layout_width="fill_parent" android:layout_height="1.0dip" />
                </LinearLayout>
                <LinearLayout android:orientation="vertical" android:id="@id/noNotificationsTitle" android:focusable="true" android:layout_width="fill_parent" android:layout_height="wrap_content">
                    <TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/noNotificationsText" android:paddingLeft="11.0dip" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height" android:text="@string/status_bar_no_notifications_title" />
                </LinearLayout>
                <LinearLayout android:orientation="vertical" android:id="@id/onGoingCart" android:background="#ff293945" android:focusable="true" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="0.0dip">
                    <TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/onGoingNotificationText" android:paddingLeft="11.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/status_bar_ongoing_events_title" />
                </LinearLayout>
                <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/onGoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
                <LinearLayout android:orientation="vertical" android:id="@id/notificationCart" android:background="#ff293945" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="0.0dip">
                    <RelativeLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content">
                        <TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/latestNotificationText" android:paddingLeft="11.0dip" android:layout_width="180.0dip" android:layout_height="fill_parent" android:text="@string/status_bar_latest_events_title" android:layout_alignParentLeft="true" />
                        <TextView android:textSize="@dimen/status_bar_expanded_notification_clear_button_text_size" android:textColor="@color/tw_status_bar_clear_btn_text" android:gravity="center" android:id="@id/clear_all_button" android:background="@drawable/tw_btn_default_small" android:padding="0.100000024dip" android:focusable="true" android:clickable="true" android:layout_width="@dimen/status_bar_expanded_clear_button_width" android:layout_height="fill_parent" android:layout_marginRight="4.0dip" android:text="@string/status_bar_clear_all_button" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_clear_all" />
                    </RelativeLayout>
                </LinearLayout>
                <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/notificationItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
                <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
            </LinearLayout>
        </ScrollView>
    </FrameLayout>
    <com.android.systemui.statusbar.phone.CloseDragHandle android:layout_gravity="bottom" android:orientation="vertical" android:id="@id/close" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height">
        <RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent">
            <ImageView android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height" android:src="@drawable/tw_status_bar_close" android:scaleType="fitXY" />
            <TextView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Network" android:gravity="center" android:layout_gravity="bottom" android:id="@id/carrier_label" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height" android:layout_marginBottom="10.0dip" />
        </RelativeLayout>
    </com.android.systemui.statusbar.phone.CloseDragHandle>
</FrameLayout>

THIS is one i made so you can compare or use
Thats it recompile and you have No Brightness Slider. You May want to all clear all from one of the other guides above


AOSP 5 LOCKSCREEN SHORTCUTS
This Is a guide from Didact74 I only needed to edit a couple of lines and resize the images so PLEASE thank him here HERE

You will need
framework-res.apk
SecSettings.apk
android.policy.jar
framework2.jar

Decompile framework-res.apk

Navigate to res/layout/keyguard_screen_tab_unlock.xml

Locate the following code

add code in Blue

Code:
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:textColor="?textColorSecondary" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/carrier" [COLOR="blue"]android:visibility="gone"[/COLOR] android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="12.0dip" android:singleLine="true" android:layout_alignParentBottom="true" />
        <TextView android:textAppearance="?textAppearanceMedium" android:ellipsize="marquee" android:id="@id/statement" [COLOR="blue"]android:visibility="gone"[/COLOR] android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="12.0dip" android:singleLine="true" android:drawablePadding="4.0dip" android:layout_below="@id/carrier" android:layout_centerHorizontal="true" android:marqueeRepeatLimit="marquee_forever" />

Download new pngs and .xml from HERE


Code:
Using the supplied zip file put the following files in the following locations.
ic_lockscreen_phone_activated.png
ic_lockscreen_phone_normal.png
ic_lockscreen_sms_activated.png
ic_lockscreen_sms_normal.png 
....all go in /res/drawable-hdpi

Using the supplied zip file put the following files in the following locations.
ic_lockscreen_phone.xml
ic_lockscreen_sms.xml
......all go in /res/drawable


Navigate to res/values/arrays

and find line
Code:
<array name="lockscreen_targets_with_camera">

edit to look like this
Code:
<array name="lockscreen_targets_with_camera">
        <item>@drawable/ic_lockscreen_unlock</item>
        <item>@drawable/ic_lockscreen_sms</item>
        <item>@drawable/ic_action_assist_generic</item>
        <item>@drawable/ic_lockscreen_phone</item>
        <item>@drawable/ic_lockscreen_camera</item>
        <item>@null</item>
        <item>@null</item>
        <item>@null</item>
    </array>

Then find
Code:
<string-array name="lockscreen_target_descriptions_with_camera">

edit to look like this
Code:
<string-array name="lockscreen_target_descriptions_with_camera">
        <item>@string/description_target_unlock</item>
        <item>@string/description_target_sms</item>
        <item>@string/description_target_search</item>
        <item>@string/description_target_phone</item>
        <item>@string/description_target_camera</item>
        <item>@null</item>
        <item>@null</item>
        <item>@null</item>
    </string-array>


Then goto res/values/strings and add the following at the end before </resources>
Code:
<string name="description_target_sms">Sms</string>
    <string name="description_target_phone">Phone</string>

then you need to recompile framework-res and then decompile it to generate public IDs

Then go to res/values/public

Find the following lines and write down thier IDs in the order you see them below and set aside for a step later in the tutorial. Make sure you have the correct ID, some will have more than one instance but only one will look EXACTLY like whats below.

Code:
ic_action_assist_generic
ic_lockscreen_camera
ic_lockscreen_silent
ic_lockscreen_unlock
ic_lockscreen_unlock_phantom
ic_lockscreen_phone
ic_lockscreen_sms

Example only
Code:
<public type="drawable" name="ic_action_assist_generic" id="0x010802cd" />
<public type="drawable" name="ic_lockscreen_camera" id="0x01080328" />
<public type="drawable" name="ic_lockscreen_silent" id="0x01080344" />
<public type="drawable" name="ic_lockscreen_unlock" id="0x0108034f" />
<public type="drawable" name="ic_lockscreen_unlock_phantom" id="0x01080352" />
<public type="drawable" name="ic_lockscreen_phone" id="0x01080a4f" />
<public type="drawable" name="ic_lockscreen_sms" id="0x01080a52" />


Recompile framework-res

Now Follow the rest of the Guide by Didact74 For AOSP LockScreen with Toggle and then AOSP Lockscreen shortcuts HERE


Edge Zoom + Toggle
Jeboo's Guide here
Please remember to thank Jeboo for his work

2 edits need to be changed from this guide as found by shoman94 In post 9 = No Need to edit public.xml Other change is Post 23 by shoman94 HERE
Please remember to thank shoman94 for his work

Also remember to add Edge Zoom From shoman94 Guide


Sense Style Recents Apps

Good Guide by Jeetu
Please remember to thank Jeetu for his work


Bottom Recent apps and lockScreen Toggles

Thanks To apurvapatel For Guide You can thank him Here

Decompile SystemUI.apk

Then Download png's Here and drop in \res\drawable-hdpi

Go to res/layout/tw_status_bar_expanded

Look for </RelativeLayout> At the end of the file

Add the following lines right above it
Code:
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:paddingLeft="2.0dip" android:paddingRight="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lock" android:layout_weight="1.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="26" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:paddingLeft="2.0dip" android:paddingRight="1.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_recent" android:layout_weight="1.0" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_recent" systemui:keyCode="187" systemui:glowBackground="@drawable/ic_sysbar_highlight" />

then recompile and your done

If you want toggles reversed from left to right then use these lines instead of above Lines

Code:
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:paddingLeft="2.0dip" android:paddingRight="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_recent" android:layout_weight="1.0" android:contentDescription="@string/accessibility_recent" systemui:keyCode="187" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:paddingLeft="2.0dip" android:paddingRight="1.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lock" android:layout_weight="1.0" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_back" systemui:keyCode="26" systemui:glowBackground="@drawable/ic_sysbar_highlight" />

Enjoy


Single Line Date In Notification Statusbar

Tired Storeman's JB 4.1.2 Tutorials
Please remember to thank Tired Storeman for his work


Remove cloudy overlay and improve ripple on Ripple Lockscreen
Great Guide By Goldieking Here
Please remember to thank Goldieking for his work


Understanding and Creating Smali Mods & General Smali Questions
Great Guide By Goldieking Here
Please remember to thank Goldieking for his work


More Mods found By tdunham

These Guides are For Other Devices but You May find changes are similar

Enable/disable brightness slider with toggle!
Please remember to thank him for his work

ICS+ Tabbed settings(MIUI Like)
Please remember to thank him for his work

New Power Menu JB
Please remember to thank tdunham for his work

Various guides from majdinj
Please remember to thank majdinj for his work
Excellent Guides here Worth Looking at

Guides For i9300
Please remember to thank Didact74 for his work

Lockscreen and Recent app shortcut, Notification text color on drop panel
Please remember to thank kmokhtar79 for his work
 
Last edited:

Vivek_Neel

Inactive Recognized Contributor / Themer
Dec 23, 2012
10,372
23,696
31
Chennai
Mate..much useful for me..
Great work..and thanks BBB my friend..:thumbup:

Subscribed.

Sent from my GT-I9100 using xda app-developers app

---------- Post added at 07:36 AM ---------- Previous post was at 07:28 AM ----------


Bhai legend hai thu..he he:D

Sent from my GT-I9100 using xda app-developers app
 
Last edited:

churapa

Senior Member
Jun 12, 2008
1,897
4,875
51
Finally a very well thought guide, kudos buddy!
 

Attachments

  • 5stars.jpg
    5stars.jpg
    15.5 KB · Views: 2,484
Last edited:

bombaybadboy

Senior Member
Apr 22, 2012
7,782
16,693
Wherever
Finally a very well thought guide, kudos buddy!

Thanks m8 I was just worried that some great guides would get lost or buried. This was my attempt at getting new members to try themselves. Its a good feeling to succeed at building something yourself and find it works. Well it is for a noob like me :)

Sent from my GT-I9100 using xda premium
 

bombaybadboy

Senior Member
Apr 22, 2012
7,782
16,693
Wherever
Great idea and thread:thumbup:
But trying yo scroll through it is crazy
GT-I9100 powered by
NeatRom Lite 4.7
Apollo 4.5 v1
JB Reloaded + MYLR blue theme

It has a lot of info in it already m8 and is more for the web than a device. Try looking at it through browser and you will find its not to bad :) its browser friendly

Sent from my GT-I9100 using xda premium
 
Last edited:

alen1901

Senior Member
Jan 29, 2011
5,800
7,215
Hey, bbb, awesome idea to put up a thread like that so everything is on its place, good work. ;) :thumbup:

Also, i want to ask, do you maybe know if its possible to flash .smali files with vrtheme? I guess not but, just to check.

Sent from SpeedMachine i9100
 
  • Like
Reactions: bombaybadboy

bombaybadboy

Senior Member
Apr 22, 2012
7,782
16,693
Wherever
Hey, bbb, awesome idea to put up a thread like that so everything is on its place, good work. ;) :thumbup:

Also, i want to ask, do you maybe know if its possible to flash .smali files with vrtheme? I guess not but, just to check.

Sent from SpeedMachine i9100

Thankyou m8, afaik you cant use vrtheme for a single smali but I think you can use to replace classes.dex. Spannaa is really good with vrtheme, I only have used 1 once

Sent from my GT-I9100 using xda premium
 

Spannaa

Recognized Contributor / Themer
Sep 13, 2010
7,431
16,793
Cardiff
Huawei Nexus 6P
Google Pixel 6
afaik you cant use vrtheme for a single smali but I think you can use to replace classes.dex

Correct ;)

If you're using VRThemes, the whole classes.dex has to be replaced if you change even a single character in a single smali file.

Similarly, the whole resources.arsc has to be replaced if you change anything in the \res\values folder.
 

alen1901

Senior Member
Jan 29, 2011
5,800
7,215
Correct ;)

If you're using VRThemes, the whole classes.dex has to be replaced if you change even a single character in a single smali file.

Similarly, the whole resources.arsc has to be replaced if you change anything in the \res\values folder.

So i cant extract only .smali files and put them in vrtheme like i do xmls. I need to place whole apk and classes.dex?

Sent from SpeedMachine i9100
 

Spannaa

Recognized Contributor / Themer
Sep 13, 2010
7,431
16,793
Cardiff
Huawei Nexus 6P
Google Pixel 6
So i cant extract only .smali files and put them in vrtheme like i do xmls. I need to place whole apk and classes.dex?
Just classes.dex

Say you mod a smali in SystemUI.apk, you just add classes.dex from the recompiled apk to the vrtheme\preload\symlink\system\app\SystemUI.apk\ folder

Sent from my Nexus 7 using Tapatalk 4 Beta
 

Top Liked Posts

  • There are no posts matching your filters.
  • 90
    When i first started to decompile apks From I9100 4.1.2 Jellybean deodexed Roms for Mods + Basic themes i found Threads Scattered All over XDA and thought someone should put them together or at least add links. Im Sure there are better ways with some of these mods but the ones i will post work and have used them all myself. This is my First Thread Attempt and i will make it as noob friendly as i can. Also any suggestions how to improve this guide or any other the Mods I post would be welcome because i only no what i have read from other threads. Im Not a developer im a Noob just like most of us here but with the great guides on XDA i Have learned a lot

    First I want to Thank the Members that have Posted these Guides And have Helped me

    wanam
    lidroid
    Mirko ddd
    majdinj
    shoman94
    Goldieking
    salesale
    engloa
    Spannaa
    Churapa
    Didact74
    mythtrandyr

    Please dont PM the devs with Questions as there busy with there own Mods. Just POST on there thread or this thread if you like

    Please as my First thread im trying to do things right and give credit where it is due so if i have missed anyone please Pm me and i will correctly add,
    Thankyou
    Also im not doing this for Thanks or Donations, so Please Thank the members above who made this guide possible

    Ok Lets Start

    Im Not here to teach you how to decompile there are threads for that which i will link Here

    First you will need your basic tools

    These you can choose from and find what suits you ApkMultitool Dont forget to add your SystemUI.apk+framework-res.apk+twframework-res.apk to others file
    Before you run setup

    or you may want to use Apktool And here is a Guide you will also need SDK And Very Important Java

    Editing Tools

    Notepad++
    I use Paint.Net But you can also use Gimp For Image Editing

    If you need More Information on decompiling and editing look at this Ultimate Guide[Decompiling][9 pngs][Theming] By iamareebjamal
    Please remember to thank iamareebjamal for his work

    Click here for How To Make a Log of your Error Guide
    Please remember to thank Stryke_the_Orc for his work


    Ok finally you are ready to start, i will start with simple Mods

    Wallpaper Scroll

    Decompile SecLauncher2.apk
    Go to \res\values folder and open bools.xml file with Notepad++.
    Then change code indicated in Red To Blue
    Code:
    <bool name="config_fixedWallpaperOffset">[COLOR="Red"]true[/COLOR]</bool>
    To:
    Code:
    <bool name="config_fixedWallpaperOffset">[COLOR="Blue"]false[/COLOR]</bool>
    Save the file, recompile and push the apk to your phone.
    See Easy:fingers-crossed:



    4 Lockscreen Shortcuts

    Decompile SecSettings.apk and go to smali/com/android/settings/lockscreenshortcut/LockScreenShortcutSettings.smali
    Open this file with notpad++ and change the followingRedLines to Blue

    Code:
    # direct methods
    .method static constructor ()V
        .locals 2
    
        .prologue
        const/4 v1, 0x0
    
        .line 79
        [COLOR="Red"][B]const/4 v0, 0x3[/B][/COLOR]
    
        sput v0, Lcom/android/settings/lockscreenshortcut/LockScreenShortcutSettings;->MAX_SHORTCUT_ICON:I
    To:
    Code:
    # direct methods
    .method static constructor ()V
        .locals 2
    
        .prologue
        const/4 v1, 0x0
    
        .line 79
        [B][COLOR="Blue"]const/4 v0, 0x4[/COLOR][/B]
    
        sput v0, Lcom/android/settings/lockscreenshortcut/LockScreenShortcutSettings;->MAX_SHORTCUT_ICON:I

    Recompile and Done:)
    There is also a guide for 5 Lockscreen shortcuts by Mirko dddHere



    Water Ripple Effect+Toggle


    android.policy.jar
    com/android/internal/policy/impl/sec/CircleLockScreen.smali
    Code:
        .line 543
        .local v20, isRippleEffect:Z
        :goto_306
        if-nez v18, :cond_61f
    
        if-eqz v22, :cond_61f
    
        if-eqz v20, :cond_61f
    
        const/4 v3, 0x1
    
        :goto_30d

    After

    Code:
        .line 543
        .local v20, isRippleEffect:Z
        :goto_306
        if-nez v18, :cond_61f
    
        [COLOR="Red"]# if-eqz v22, :cond_61f[/COLOR]
    
        if-eqz v20, :cond_61f
    
        const/4 v3, 0x1
    
        :goto_30d

    Now for the Toggle
    Secsettings.apk
    com/android/settings/LockScreenSettings.smali

    Code:
        .line 253
        :cond_28b
        invoke-virtual {p0}, Lcom/android/settings/LockScreenSettings;->getPreferenceScreen()Landroid/preference/PreferenceScreen;
    
        move-result-object v9
    
        iget-object v10, p0, Lcom/android/settings/LockScreenSettings;->mRippleEffect:Landroid/preference/CheckBoxPreference;
    
        invoke-virtual {v9, v10}, Landroid/preference/PreferenceScreen;->removePreference(Landroid/preference/Preference;)Z

    After:

    Code:
        .line 253
        :cond_28b
        invoke-virtual {p0}, Lcom/android/settings/LockScreenSettings;->getPreferenceScreen()Landroid/preference/PreferenceScreen;
    
        move-result-object v9
    
        iget-object v10, p0, Lcom/android/settings/LockScreenSettings;->mRippleEffect:Landroid/preference/CheckBoxPreference;
    
        [COLOR="Red"]#  invoke-virtual {v9, v10}, Landroid/preference/PreferenceScreen;->removePreference(Landroid/preference/Preference;)Z
    [/COLOR]

    Recompile and done:)


    Aosp Lockscreen+Toggle


    There is already a great Guide for this by Mirko ddd Here Please dont forget to thank Him for his work

    Aosp Lockscreen Guide

    Works Great


    EdgeZoom



    Thanks to Shoman94

    Decompileframework.jar
    \framework\smali\android\view\ScaleGestureDetector .smali

    Find
    Code:
    [B].method public onTouchEvent(Landroid/view/MotionEvent;)Z[/B]

    Replace that entire method with this:

    Code:
    .method public onTouchEvent(Landroid/view/MotionEvent;)Z
        .locals 26
        .parameter "event"
    
        .prologue
        .line 207
        move-object/from16 v0, p0
    
        iget-object v0, v0, Landroid/view/ScaleGestureDetector;->mInputEventConsistencyVerifier:Landroid/view/InputEventConsistencyVerifier;
    
        move-object/from16 v24, v0
    
        if-eqz v24, :cond_0
    
        .line 208
        move-object/from16 v0, p0
    
        iget-object v0, v0, Landroid/view/ScaleGestureDetector;->mInputEventConsistencyVerifier:Landroid/view/InputEventConsistencyVerifier;
    
        move-object/from16 v24, v0
    
        const/16 v25, 0x0
    
        move-object/from16 v0, v24
    
        move-object/from16 v1, p1
    
        move/from16 v2, v25
    
        invoke-virtual {v0, v1, v2}, Landroid/view/InputEventConsistencyVerifier;->onTouchEvent(Landroid/view/MotionEvent;I)V
    
        .line 213
        :cond_0
        move-object/from16 v0, p0
    
        iget-boolean v0, v0, Landroid/view/ScaleGestureDetector;->mValidPackage:Z
    
        move/from16 v24, v0
    
        if-eqz v24, :cond_1
    
        invoke-direct/range {p0 .. p1}, Landroid/view/ScaleGestureDetector;->onEdgeTouchEvent(Landroid/view/MotionEvent;)Z
    
        move-result v24
    
        if-eqz v24, :cond_1
    
        const/16 v24, 0x1
    
        .line 310
        :goto_0
        return v24
    
        .line 213
        :cond_1
        invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getActionMasked()I
    
        move-result v3
    
        .line 215
        .local v3, action:I
        const/16 v24, 0x1
    
        move/from16 v0, v24
    
        if-eq v3, v0, :cond_2
    
        const/16 v24, 0x3
    
        move/from16 v0, v24
    
        if-ne v3, v0, :cond_5
    
        :cond_2
        const/16 v19, 0x1
    
        .line 217
        .local v19, streamComplete:Z
        :goto_1
        if-eqz v3, :cond_3
    
        if-eqz v19, :cond_6
    
        .line 221
        :cond_3
        move-object/from16 v0, p0
    
        iget-boolean v0, v0, Landroid/view/ScaleGestureDetector;->mInProgress:Z
    
        move/from16 v24, v0
    
        if-eqz v24, :cond_4
    
        .line 222
        move-object/from16 v0, p0
    
        iget-object v0, v0, Landroid/view/ScaleGestureDetector;->mListener:Landroid/view/ScaleGestureDetector$OnScaleGestureListener;
    
        move-object/from16 v24, v0
    
        move-object/from16 v0, v24
    
        move-object/from16 v1, p0
    
        invoke-interface {v0, v1}, Landroid/view/ScaleGestureDetector$OnScaleGestureListener;->onScaleEnd(Landroid/view/ScaleGestureDetector;)V
    
        .line 223
        const/16 v24, 0x0
    
        move/from16 v0, v24
    
        move-object/from16 v1, p0
    
        iput-boolean v0, v1, Landroid/view/ScaleGestureDetector;->mInProgress:Z
    
        .line 224
        const/16 v24, 0x0
    
        move/from16 v0, v24
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mInitialSpan:F
    
        .line 227
        :cond_4
        if-eqz v19, :cond_6
    
        .line 228
        const/16 v24, 0x1
    
        goto :goto_0
    
        .line 215
        .end local v19           #streamComplete:Z
        :cond_5
        const/16 v19, 0x0
    
        goto :goto_1
    
        .line 232
        .restart local v19       #streamComplete:Z
        :cond_6
        const/16 v24, 0x6
    
        move/from16 v0, v24
    
        if-eq v3, v0, :cond_7
    
        const/16 v24, 0x5
    
        move/from16 v0, v24
    
        if-ne v3, v0, :cond_8
    
        :cond_7
        const/4 v4, 0x1
    
        .line 235
        .local v4, configChanged:Z
        :goto_2
        const/16 v24, 0x6
    
        move/from16 v0, v24
    
        if-ne v3, v0, :cond_9
    
        const/4 v14, 0x1
    
        .line 236
        .local v14, pointerUp:Z
        :goto_3
        if-eqz v14, :cond_a
    
        invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getActionIndex()I
    
        move-result v15
    
        .line 239
        .local v15, skipIndex:I
        :goto_4
        const/16 v20, 0x0
    
        .local v20, sumX:F
        const/16 v21, 0x0
    
        .line 240
        .local v21, sumY:F
        invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getPointerCount()I
    
        move-result v5
    
        .line 241
        .local v5, count:I
        const/4 v13, 0x0
    
        .local v13, i:I
        :goto_5
        if-ge v13, v5, :cond_c
    
        .line 242
        if-ne v15, v13, :cond_b
    
        .line 241
        :goto_6
        add-int/lit8 v13, v13, 0x1
    
        goto :goto_5
    
        .line 232
        .end local v4           #configChanged:Z
        .end local v5           #count:I
        .end local v13           #i:I
        .end local v14           #pointerUp:Z
        .end local v15           #skipIndex:I
        .end local v20           #sumX:F
        .end local v21           #sumY:F
        :cond_8
        const/4 v4, 0x0
    
        goto :goto_2
    
        .line 235
        .restart local v4       #configChanged:Z
        :cond_9
        const/4 v14, 0x0
    
        goto :goto_3
    
        .line 236
        .restart local v14       #pointerUp:Z
        :cond_a
        const/4 v15, -0x1
    
        goto :goto_4
    
        .line 243
        .restart local v5       #count:I
        .restart local v13       #i:I
        .restart local v15       #skipIndex:I
        .restart local v20       #sumX:F
        .restart local v21       #sumY:F
        :cond_b
        move-object/from16 v0, p1
    
        invoke-virtual {v0, v13}, Landroid/view/MotionEvent;->getX(I)F
    
        move-result v24
    
        add-float v20, v20, v24
    
        .line 244
        move-object/from16 v0, p1
    
        invoke-virtual {v0, v13}, Landroid/view/MotionEvent;->getY(I)F
    
        move-result v24
    
        add-float v21, v21, v24
    
        goto :goto_6
    
        .line 246
        :cond_c
        if-eqz v14, :cond_d
    
        add-int/lit8 v10, v5, -0x1
    
        .line 247
        .local v10, div:I
        :goto_7
        int-to-float v0, v10
    
        move/from16 v24, v0
    
        div-float v11, v20, v24
    
        .line 248
        .local v11, focusX:F
        int-to-float v0, v10
    
        move/from16 v24, v0
    
        div-float v12, v21, v24
    
        .line 251
        .local v12, focusY:F
        const/4 v6, 0x0
    
        .local v6, devSumX:F
        const/4 v7, 0x0
    
        .line 252
        .local v7, devSumY:F
        const/4 v13, 0x0
    
        :goto_8
        if-ge v13, v5, :cond_f
    
        .line 253
        if-ne v15, v13, :cond_e
    
        .line 252
        :goto_9
        add-int/lit8 v13, v13, 0x1
    
        goto :goto_8
    
        .end local v6           #devSumX:F
        .end local v7           #devSumY:F
        .end local v10           #div:I
        .end local v11           #focusX:F
        .end local v12           #focusY:F
        :cond_d
        move v10, v5
    
        .line 246
        goto :goto_7
    
        .line 254
        .restart local v6       #devSumX:F
        .restart local v7       #devSumY:F
        .restart local v10       #div:I
        .restart local v11       #focusX:F
        .restart local v12       #focusY:F
        :cond_e
        move-object/from16 v0, p1
    
        invoke-virtual {v0, v13}, Landroid/view/MotionEvent;->getX(I)F
    
        move-result v24
    
        sub-float v24, v24, v11
    
        invoke-static/range {v24 .. v24}, Ljava/lang/Math;->abs(F)F
    
        move-result v24
    
        add-float v6, v6, v24
    
        .line 255
        move-object/from16 v0, p1
    
        invoke-virtual {v0, v13}, Landroid/view/MotionEvent;->getY(I)F
    
        move-result v24
    
        sub-float v24, v24, v12
    
        invoke-static/range {v24 .. v24}, Ljava/lang/Math;->abs(F)F
    
        move-result v24
    
        add-float v7, v7, v24
    
        goto :goto_9
    
        .line 257
        :cond_f
        int-to-float v0, v10
    
        move/from16 v24, v0
    
        div-float v8, v6, v24
    
        .line 258
        .local v8, devX:F
        int-to-float v0, v10
    
        move/from16 v24, v0
    
        div-float v9, v7, v24
    
        .line 263
        .local v9, devY:F
        const/high16 v24, 0x4000
    
        mul-float v17, v8, v24
    
        .line 264
        .local v17, spanX:F
        const/high16 v24, 0x4000
    
        mul-float v18, v9, v24
    
        .line 265
        .local v18, spanY:F
        mul-float v24, v17, v17
    
        mul-float v25, v18, v18
    
        add-float v24, v24, v25
    
        invoke-static/range {v24 .. v24}, Landroid/util/FloatMath;->sqrt(F)F
    
        move-result v16
    
        .line 270
        .local v16, span:F
        move-object/from16 v0, p0
    
        iget-boolean v0, v0, Landroid/view/ScaleGestureDetector;->mInProgress:Z
    
        move/from16 v23, v0
    
        .line 271
        .local v23, wasInProgress:Z
        move-object/from16 v0, p0
    
        iput v11, v0, Landroid/view/ScaleGestureDetector;->mFocusX:F
    
        .line 272
        move-object/from16 v0, p0
    
        iput v12, v0, Landroid/view/ScaleGestureDetector;->mFocusY:F
    
        .line 273
        move-object/from16 v0, p0
    
        iget-boolean v0, v0, Landroid/view/ScaleGestureDetector;->mInProgress:Z
    
        move/from16 v24, v0
    
        if-eqz v24, :cond_11
    
        const/16 v24, 0x0
    
        cmpl-float v24, v16, v24
    
        if-eqz v24, :cond_10
    
        if-eqz v4, :cond_11
    
        .line 274
        :cond_10
        move-object/from16 v0, p0
    
        iget-object v0, v0, Landroid/view/ScaleGestureDetector;->mListener:Landroid/view/ScaleGestureDetector$OnScaleGestureListener;
    
        move-object/from16 v24, v0
    
        move-object/from16 v0, v24
    
        move-object/from16 v1, p0
    
        invoke-interface {v0, v1}, Landroid/view/ScaleGestureDetector$OnScaleGestureListener;->onScaleEnd(Landroid/view/ScaleGestureDetector;)V
    
        .line 275
        const/16 v24, 0x0
    
        move/from16 v0, v24
    
        move-object/from16 v1, p0
    
        iput-boolean v0, v1, Landroid/view/ScaleGestureDetector;->mInProgress:Z
    
        .line 276
        move/from16 v0, v16
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mInitialSpan:F
    
        .line 278
        :cond_11
        if-eqz v4, :cond_12
    
        .line 279
        move/from16 v0, v17
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpanX:F
    
        move/from16 v0, v17
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpanX:F
    
        .line 280
        move/from16 v0, v18
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpanY:F
    
        move/from16 v0, v18
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpanY:F
    
        .line 281
        move/from16 v0, v16
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpan:F
    
        move/from16 v0, v16
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpan:F
    
        move/from16 v0, v16
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mInitialSpan:F
    
        .line 283
        :cond_12
        move-object/from16 v0, p0
    
        iget-boolean v0, v0, Landroid/view/ScaleGestureDetector;->mInProgress:Z
    
        move/from16 v24, v0
    
        if-nez v24, :cond_14
    
        const/16 v24, 0x0
    
        cmpl-float v24, v16, v24
    
        if-eqz v24, :cond_14
    
        if-nez v23, :cond_13
    
        move-object/from16 v0, p0
    
        iget v0, v0, Landroid/view/ScaleGestureDetector;->mInitialSpan:F
    
        move/from16 v24, v0
    
        sub-float v24, v16, v24
    
        invoke-static/range {v24 .. v24}, Ljava/lang/Math;->abs(F)F
    
        move-result v24
    
        move-object/from16 v0, p0
    
        iget v0, v0, Landroid/view/ScaleGestureDetector;->mSpanSlop:I
    
        move/from16 v25, v0
    
        move/from16 v0, v25
    
        int-to-float v0, v0
    
        move/from16 v25, v0
    
        cmpl-float v24, v24, v25
    
        if-lez v24, :cond_14
    
        .line 285
        :cond_13
        move/from16 v0, v17
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpanX:F
    
        move/from16 v0, v17
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpanX:F
    
        .line 286
        move/from16 v0, v18
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpanY:F
    
        move/from16 v0, v18
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpanY:F
    
        .line 287
        move/from16 v0, v16
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpan:F
    
        move/from16 v0, v16
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpan:F
    
        .line 288
        move-object/from16 v0, p0
    
        iget-object v0, v0, Landroid/view/ScaleGestureDetector;->mListener:Landroid/view/ScaleGestureDetector$OnScaleGestureListener;
    
        move-object/from16 v24, v0
    
        move-object/from16 v0, v24
    
        move-object/from16 v1, p0
    
        invoke-interface {v0, v1}, Landroid/view/ScaleGestureDetector$OnScaleGestureListener;->onScaleBegin(Landroid/view/ScaleGestureDetector;)Z
    
        move-result v24
    
        move/from16 v0, v24
    
        move-object/from16 v1, p0
    
        iput-boolean v0, v1, Landroid/view/ScaleGestureDetector;->mInProgress:Z
    
        .line 289
        const-string v24, "ScaleGestureDetector"
    
        const-string v25, "SGD"
    
        invoke-static/range {v24 .. v25}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
    
        .line 293
        :cond_14
        const/16 v24, 0x2
    
        move/from16 v0, v24
    
        if-ne v3, v0, :cond_16
    
        .line 294
        move/from16 v0, v17
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpanX:F
    
        .line 295
        move/from16 v0, v18
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpanY:F
    
        .line 296
        move/from16 v0, v16
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mCurrSpan:F
    
        .line 298
        const/16 v22, 0x1
    
        .line 299
        .local v22, updatePrev:Z
        move-object/from16 v0, p0
    
        iget-boolean v0, v0, Landroid/view/ScaleGestureDetector;->mInProgress:Z
    
        move/from16 v24, v0
    
        if-eqz v24, :cond_15
    
        .line 300
        move-object/from16 v0, p0
    
        iget-object v0, v0, Landroid/view/ScaleGestureDetector;->mListener:Landroid/view/ScaleGestureDetector$OnScaleGestureListener;
    
        move-object/from16 v24, v0
    
        move-object/from16 v0, v24
    
        move-object/from16 v1, p0
    
        invoke-interface {v0, v1}, Landroid/view/ScaleGestureDetector$OnScaleGestureListener;->onScale(Landroid/view/ScaleGestureDetector;)Z
    
        move-result v22
    
        .line 303
        :cond_15
        if-eqz v22, :cond_16
    
        .line 304
        move-object/from16 v0, p0
    
        iget v0, v0, Landroid/view/ScaleGestureDetector;->mCurrSpanX:F
    
        move/from16 v24, v0
    
        move/from16 v0, v24
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpanX:F
    
        .line 305
        move-object/from16 v0, p0
    
        iget v0, v0, Landroid/view/ScaleGestureDetector;->mCurrSpanY:F
    
        move/from16 v24, v0
    
        move/from16 v0, v24
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpanY:F
    
        .line 306
        move-object/from16 v0, p0
    
        iget v0, v0, Landroid/view/ScaleGestureDetector;->mCurrSpan:F
    
        move/from16 v24, v0
    
        move/from16 v0, v24
    
        move-object/from16 v1, p0
    
        iput v0, v1, Landroid/view/ScaleGestureDetector;->mPrevSpan:F
    
        .line 310
        .end local v22           #updatePrev:Z
        :cond_16
        const/16 v24, 0x1
    
        goto/16 :goto_0
    .end method

    Recompile and Done

    You can thank shoman94 on 3rd post Here


    % Battery-icons

    Ok i will try and give you the basic idea for status bar theming

    Here is a few ready made battery icons with stat_battery.xml and stat_battery_charge.xml Put together by majdinj

    First Decompile SystemUI.apk

    Choose the battery icons file you would like to use

    Then go to /res/drawable and look for stat_sys_battery and stat_sys_battery_charge you will find replacements in the chosen battery folder Now replace them

    Next go to /res/drawable-hdpi and copy all png icons into that folder

    If you want to change colour of your clock then go to \res\layout\tw_status_bar
    Look for hex code in Red and edit
    Code:
    <com.android.systemui.statusbar.policy.Clock android:textSize="@dimen/status_bar_clock_text_size" android:textColor="[COLOR="Red"]#ff959595[/COLOR]" android:ellipsize="none" android:gravity="left|center" android:id="@id/clock" android:paddingLeft="3.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" android:includeFontPadding="false" />

    Change Hex Highlighted in Red to Colour you Like

    If you want to edit time and date in Pulldown then go to \res\layout\tw_status_bar_expanded_header
    Look for these lines
    Code:
    Changes clock and
    Code:
    <com.android.systemui.statusbar.policy.Clock android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Clock" android:textColor="#ffffffff" android:id="@id/clock" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="4.0dip" android:layout_marginTop="-3.0dip" android:singleLine="true" systemui:ampmSmall="true" />
    Changes Date
    Code:
    <com.android.systemui.statusbar.policy.DateView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Date" android:textColor="#ffcbcbcb" android:ellipsize="none" android:id="@id/date" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="8.0dip" android:layout_marginRight="4.0dip"

    If you want to change colour of statusbar then you have 2 ways, 1st way go to \res\layout\tw_status_bar
    and edit
    Code:
    <com.android.systemui.statusbar.phone.PhoneStatusBarView android:orientation="vertical" android:id="@id/status_bar" android:background="[COLOR="Red"]@drawable/status_bar_background[/COLOR]" android:focusable="true" android:fitsSystemWindows="true" android:descendantFocusability="afterDescendants"
    Add Hex Highlighted in Red

    Or go to res/values/drawables.xml and look for
    Code:
    <item type="drawable" name="status_bar_background">[COLOR="Red"]#ff000000[/COLOR]</item>

    edit code in red to whatever colour you like This colour tool will help you or just use png editing tools provided in first post
    #FF****** ( Opaque ) #00****** (Transparent )


    Proper home button lagfix

    Already A Good Guide Here by Mirko ddd
    Please Remember To Thanks Mirko ddd For His Guide


    Potential Media Scanner Fix
    Already a Good Guide Here by shoman94
    Please Remember To Thanks shoman94 For His Guide


    CRT-OFF
    Already A Good Guide Here by Mirko ddd
    Please Remember To Thanks Mirko ddd For His Guide


    CRT-OFF+ Toggle
    Already a Good Guide Here by shoman94
    Please Remember To Thanks shoman94 For His Guide


    Back to kill
    Already A Good Guide Here by Mirko ddd
    Please Remember To Thanks Mirko ddd For His Guide



    More Info on PNG editing by HighlanderZA
    Some Extra Useful Information Guides From HighlanderZA editing by HighlanderZA
    Until i can change from PDF Files you will need Adobe Reader XI To Read but worth looking at
    45
    23 Toggles Notification Panel

    Thanks to Wanam-Lidroid-Goldieking-Majdinj-Engloa

    This one is a little Harder so Take your Time

    Decompile SystemUI.apk
    Go to res\layout folder and open tw_status_bar_expanded.xml Add the Blue Lines and Delete the Redand modify the Green

    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <FrameLayout android:id="@id/notification_panel" android:background="@drawable/notification_panel_bg" android:paddingTop="@dimen/notification_panel_padding_top" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginLeft="@dimen/notification_panel_margin_left"
      xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
        <FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginBottom="@dimen/tw_close_handle_underlap">
            <include android:layout_width="fill_parent" android:layout_height="@dimen/tw_notification_panel_header_height" layout="@layout/tw_status_bar_expanded_header" />
            <TextView android:gravity="center" android:id="@id/emergency_calls_only" android:paddingBottom="4.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content" />
            <View android:background="#ff091a24" android:layout_width="fill_parent" android:layout_height="1.0dip" android:layout_marginTop="@dimen/tw_notification_panel_header_height" />
            [B][COLOR="Blue"]<HorizontalScrollView android:id="@id/quicksetting_scroller" android:visibility="gone" android:scrollbars="none" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" android:layout_marginTop="@dimen/tw_notification_panel_header_height">
                <com.android.systemui.statusbar.policy.quicksetting.QuickSettingPanel android:orientation="horizontal" android:id="@id/quicksetting_container" android:layout_width="wrap_content" android:layout_height="wrap_content" android:divider="@drawable/tw_black_bg" android:showDividers="middle" />
            </HorizontalScrollView>
            <com.wanam.systemui.quickpanel.PowerWidget android:id="@id/exp_power_stat" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" android:layout_marginTop="@dimen/tw_notification_panel_header_height" />
            <LinearLayout android:orientation="vertical" android:id="@id/brightness_controller" android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="56.0dip" android:layout_marginTop="@dimen/notification_panel_quicksettingbtn_height">
                <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="55.0dip">
                    <ImageView android:id="@id/brightness_icon" android:clickable="true" android:layout_width="25.0dip" android:layout_height="fill_parent" android:layout_marginLeft="13.0dip" android:src="@drawable/ic_sysbar_brightness" android:contentDescription="@string/accessibility_brightness_icon" />
                    <FrameLayout android:id="@id/brightness_group" android:layout_width="fill_parent" android:layout_height="fill_parent">
                        <com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
                        <com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/auto_brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
                    </FrameLayout>
                </LinearLayout>
                <View android:background="#ff091a24" android:layout_width="fill_parent" android:layout_height="1.0dip" />
            </LinearLayout>[/COLOR][/B]
            [B][COLOR="SeaGreen"]<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="@dimen/notification_panel_notification_top_margin" android:overScrollMode="ifContentScrolls">[/COLOR][/B]
                <LinearLayout android:orientation="vertical" android:id="@id/scrollCart" android:layout_width="fill_parent" android:layout_height="wrap_content">
                    [B][COLOR="Red"]<HorizontalScrollView android:id="@id/quicksetting_scroller" android:scrollbars="none" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height">
                        <com.android.systemui.statusbar.policy.quicksetting.QuickSettingPanel android:orientation="horizontal" android:id="@id/quicksetting_container" android:layout_width="wrap_content" android:layout_height="wrap_content" android:divider="@drawable/tw_black_bg" android:showDividers="middle" />
                    </HorizontalScrollView>
                    <LinearLayout android:orientation="vertical" android:id="@id/brightness_controller" android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="56.0dip">
                        <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="55.0dip">
                            <ImageView android:id="@id/brightness_icon" android:clickable="true" android:layout_width="25.0dip" android:layout_height="fill_parent" android:layout_marginLeft="13.0dip" android:src="@drawable/ic_sysbar_brightness" android:contentDescription="@string/accessibility_brightness_icon" />
                            <FrameLayout android:id="@id/brightness_group" android:layout_width="fill_parent" android:layout_height="fill_parent">
                                <com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
                                <com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/auto_brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
                            </FrameLayout>
                        </LinearLayout>
                        <View android:background="#ff091a24" android:layout_width="fill_parent" android:layout_height="1.0dip" />
                    </LinearLayout>[/COLOR][/B]
                    <LinearLayout android:orientation="vertical" android:id="@id/noNotificationsTitle" android:focusable="true" android:layout_width="fill_parent" android:layout_height="wrap_content">
                        <TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/noNotificationsText" android:paddingLeft="11.0dip" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height" android:text="@string/status_bar_no_notifications_title" />
                    </LinearLayout>
                    <LinearLayout android:orientation="vertical" android:id="@id/onGoingCart" android:background="#ff293945" android:focusable="true" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height">
                        <TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/onGoingNotificationText" android:paddingLeft="11.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/status_bar_ongoing_events_title" />
                    </LinearLayout>
                    <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/onGoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
                    <LinearLayout android:orientation="vertical" android:id="@id/notificationCart" android:background="#ff293945" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height">
                        <RelativeLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content">
                            <TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/latestNotificationText" android:paddingLeft="11.0dip" android:layout_width="180.0dip" android:layout_height="fill_parent" android:text="@string/status_bar_latest_events_title" android:layout_alignParentLeft="true" />
                            <TextView android:textSize="@dimen/status_bar_expanded_notification_clear_button_text_size" android:textColor="@color/tw_status_bar_clear_btn_text" android:gravity="center" android:id="@id/clear_all_button" android:background="@drawable/tw_btn_default_small" android:padding="0.100000024dip" android:focusable="true" android:clickable="true" android:layout_width="@dimen/status_bar_expanded_clear_button_width" android:layout_height="fill_parent" android:layout_marginRight="4.0dip" android:text="@string/status_bar_clear_all_button" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_clear_all" />
                        </RelativeLayout>
                    </LinearLayout>
                    <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/notificationItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
                    <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
                </LinearLayout>
            </ScrollView>
        </FrameLayout>
        <com.android.systemui.statusbar.phone.CloseDragHandle android:layout_gravity="bottom" android:orientation="vertical" android:id="@id/close" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height">
            <RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent">
                <ImageView android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height" android:src="@drawable/tw_status_bar_close" android:scaleType="fitXY" />
                <TextView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Network" android:gravity="center" android:layout_gravity="bottom" android:id="@id/carrier_label" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height" android:layout_marginBottom="10.0dip" />
            </RelativeLayout>
        </com.android.systemui.statusbar.phone.CloseDragHandle>
    </FrameLayout>

    Here is an already modified tw_status_bar_expanded.xml

    to res\values\ folder and open ids.xml add the following line at the end before </resources> line:
    Code:
    <item type="id" name="exp_power_stat">false</item>


    Now you need to recompile SystemUI.apk in order to generate new ids in public.xml file for exp_power_stat. Then decompile the new SystemUI.apk and delete the old one so you dont get confused


    Go to smali\com\android\systemui\statusbar\phone\PhoneStatusBar.smali

    Search for .field mPostCollapseCleanup:Ljava/lang/Runnable;
    add this line bellow it (the blue one here):
    Code:
    .field mPostCollapseCleanup:Ljava/lang/Runnable;
    
    [B][COLOR="Blue"].field mPowerWidget:Lcom/wanam/systemui/quickpanel/PowerWidget;[/COLOR][/B]
    
    .field mQueueLock:Ljava/lang/Object;

    Now search for .method public addIcon Still in PhoneStatusBar.smali
    Add the lines in Blueat the end of this method before the "return-void" line:
    Code:
        invoke-virtual {v1, v0, p3, v2}, Landroid/widget/LinearLayout;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V
    
        .line 1170
        [B][COLOR="Blue"]iget-object v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPowerWidget:Lcom/wanam/systemui/quickpanel/PowerWidget;
    
        invoke-virtual {v1}, Lcom/wanam/systemui/quickpanel/PowerWidget;->updateWidget()V[/COLOR][/B]
    
        return-void
    .end method

    Now serch for .method protected makeStatusBarViewthen search forLandroid/widget/ScrollView;->setVerticalScrollBarEnabled(Z)Vthen add BlueLines
    Code:
        invoke-virtual {v9, v10}, Landroid/widget/ScrollView;->setVerticalScrollBarEnabled(Z)V
    
        [B][COLOR="Blue"]move-object/from16 v0, p0
    
        iget-object v9, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarWindow:Lcom/android/systemui/statusbar/phone/StatusBarWindowView;
    
        const v10, [COLOR="SeaGreen"]0x7fxxxxxx[/COLOR]
    
        invoke-virtual {v9, v10}, Lcom/android/systemui/statusbar/phone/StatusBarWindowView;->findViewById(I)Landroid/view/View;
    
        move-result-object v9
    
        check-cast v9, Lcom/wanam/systemui/quickpanel/PowerWidget;
    
        move-object/from16 v0, p0
    
        iput-object v9, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPowerWidget:Lcom/wanam/systemui/quickpanel/PowerWidget;[/COLOR][/B]
    
        .line 714
        new-instance v9, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$MyTicker;

    You should use the newly generated id in public.xml (in res\values folder) for "exp_power_stat" in place of 0x7fxxxxxx

    Still in PhoneStatusBar.smali Search for Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent; Adds the lines in Blue

    Code:
        invoke-virtual {v1, v9, v2}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
    
    [B][COLOR="Blue"]    move-object/from16 v0, p0
    
        iget-object v9, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPowerWidget:Lcom/wanam/systemui/quickpanel/PowerWidget;
    
        invoke-virtual {v9}, Lcom/wanam/systemui/quickpanel/PowerWidget;->setupWidget()V[/COLOR][/B]
    
        .line 875
        sget-boolean v9, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->useTouchWizGUI:Z

    Now save and close

    Now you edit bigginning of AndroidManifest.xmlin SystemUI.apk to make torch+Reboot work

    Before:
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    [B][COLOR="Red"]<manifest android:versionCode="16" android:versionName="4.1.2-I9100XXLSS" package="com.android.systemui" coreApp="true"[/COLOR][/B]
      xmlns:android="http://schemas.android.com/apk/res/android">
    After:
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    [B][COLOR="Red"]<manifest android:versionCode="16" android:versionName="4.1.2-I9100XXLSS" package="com.android.systemui" coreApp="true" [COLOR="Blue"]android:sharedUserId="android.uid.system" android:process="system"[/COLOR][/COLOR][/B]
      xmlns:android="http://schemas.android.com/apk/res/android">

    Now Download the wanam 23 Toggles apks and Folders
    Add the the 1st wanam folder in smali and 2nd wanam folder smali/com folder in systemUI.apk
    2 apks you need to add Lidroid-res.apk to /system/framework and Lidroid Settings apk to /preload/symlink/system/app

    Now we have finished from modifying SystemUI.apk, RecompileAnd Sign SystemUI.apk

    Since the systemUI is now signed, we will need to disable signature check on "services.jar

    So backsmali services.jar
    go to classout\com\android\server\pm folder and find PackageManagerService.smali search for .method static compareSignatures and change the entire method to:
    Code:
    .method static compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
        .registers 9
        .parameter "s1"
        .parameter "s2"
    
        .prologue
        const/4 v6, 0x0
    
        const-string v3, "Wanam: PackageManager"
    
        const-string v4, "Skip signature check."
    
        invoke-static {v3, v4}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I
    
        return v6
    
    .end method

    Recompile and push to device, if you did correctly you will now have 23 toggles


    Center clock in Statusbar
    Thanks To majdinj & raubkatze
    Decompile SystemUI.apk
    If you want a center clock then go to /res/layout/ and look for tw_status_bar.xml
    Look for
    Code:
    <LinearLayout android:orientation="horizontal" android:id="@id/icons" android:paddingLeft="0.0dip" android:paddingRight="2.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
            <LinearLayout android:orientation="horizontal" android:id="@id/left_icons" android:paddingLeft="4.0dip" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
                <TextView android:textSize="15.0dip" android:gravity="center_vertical" android:id="@id/carrierLabel" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
                <ImageView android:id="@id/operatorLogoIcon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/tw_stat_notify_operator_logo" />
                <ImageView android:id="@id/doNotDisturbIcon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/tw_dnd" android:alpha="0.7" android:scaleX="0.85" android:scaleY="0.85" />
                <com.android.systemui.statusbar.StatusBarIconView android:id="@id/moreIcon" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/stat_notify_more" />
                <com.android.systemui.statusbar.phone.IconMerger android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/notificationIcons" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_alignParentLeft="true" />
            </LinearLayout>
            <LinearLayout android:orientation="horizontal" android:id="@id/right_icons" android:paddingRight="4.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_alignParentRight="true">
                <LinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/statusIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" />
                <LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/signal_battery_cluster" android:paddingLeft="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent">
                    <include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/tw_signal_cluster_view" />
                    <TextView android:textSize="12.0dip" android:textColor="#ffa6a6a6" android:layout_gravity="center" android:id="@id/battery_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_network_name_separator" />
                    <ImageView android:gravity="center" android:id="@id/battery" android:layout_width="wrap_content" android:layout_height="wrap_content" />
                </LinearLayout>
                <com.android.systemui.statusbar.policy.Clock android:textSize="@dimen/status_bar_clock_text_size" android:textColor="#ff959595" android:ellipsize="none" android:gravity="left|center" android:id="@id/clock" android:paddingLeft="3.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" android:includeFontPadding="false" />
            </LinearLayout>
    Change to
    Code:
    <LinearLayout android:orientation="horizontal" android:id="@id/icons" android:paddingLeft="1.0dip" android:paddingRight="1.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
            <LinearLayout android:orientation="horizontal" android:id="@id/left_icons" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
                <TextView android:textSize="15.0dip" android:gravity="center_vertical" android:id="@id/carrierLabel" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
                <ImageView android:id="@id/operatorLogoIcon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/tw_stat_notify_operator_logo" />
                <ImageView android:id="@id/doNotDisturbIcon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/tw_dnd" android:alpha="0.7" android:scaleX="0.85" android:scaleY="0.85" />
                <com.android.systemui.statusbar.StatusBarIconView android:id="@id/moreIcon" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/stat_notify_more" />
                <com.android.systemui.statusbar.phone.IconMerger android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/notificationIcons" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_alignParentLeft="true" />
            </LinearLayout>
            <LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/clock" android:layout_width="wrap_content" android:layout_height="fill_parent">
                <com.android.systemui.statusbar.policy.Clock android:textSize="@dimen/status_bar_clock_text_size" android:textColor="[COLOR="Red"]#ffffffff[/COLOR]" android:gravity="center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
            </LinearLayout>
            <LinearLayout android:gravity="right|center" android:orientation="horizontal" android:id="@id/right_icons" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0" android:layout_alignParentRight="true">
                <LinearLayout android:gravity="right|center" android:orientation="horizontal" android:id="@id/statusIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" />
                <LinearLayout android:gravity="right|center" android:orientation="horizontal" android:id="@id/signal_battery_cluster" android:paddingLeft="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent">
                    <include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/tw_signal_cluster_view" />
                    <TextView android:textSize="12.0dip" android:textColor="#ffa6a6a6" android:layout_gravity="center" android:id="@id/battery_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_network_name_separator" />
                    <ImageView android:gravity="center" android:id="@id/battery" android:layout_width="wrap_content" android:layout_height="wrap_content" />
                </LinearLayout>
            </LinearLayout>
    Dont forget to add your colour to Policy clock
    Recompile and done


    Transparent Statusbar

    decompile SystemUI.apk
    edit with Notepad++ /res/layout/tw_super_status_bar.xml
    Code:
    <com.android.systemui.statusbar.phone.StatusBarWindowView android:background="[COLOR="blue"]#00000000[/COLOR]" android:focusable="true" android:fitsSystemWindows="true" android:descendantFocusability="afterDescendants"
      xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
    Then look in \res\layout\tw_status_bar
    Code:
    <com.android.systemui.statusbar.phone.PhoneStatusBarView android:orientation="vertical" android:id="@id/status_bar" android:background="[COLOR="red"]@drawable/status_bar_background[/COLOR]" android:focusable="true" android:fitsSystemWindows="true" android:descendantFocusability="afterDescendants"

    Some people change here to hex
    But I Check @drawable/status_bar_background

    Is there and Move onto res/values/drawables

    Note some members add the hex code here, try and see what you prefer

    But I look for \res\values\drawables.xml
    Code:
    <item type="drawable" name="status_bar_background">[COLOR="red"]#ff1e1e1e[/COLOR]</item>

    Or any other transparency value you like
    #00000000 - 100% transparency
    #3F000000 - 75% transparency
    #7F000000 - 50% transparency
    #BF000000 - 25% transparency

    http://xdaforums.com/showthread.php?t=2384892

    Experimental, You dont need to use this
    Im still trying to decide if this helps also
    SystemUI\smali\com\android\system ui\statusbar\phone PhoneStatusBar$FastColorDrawable.smali

    You can edit
    Code:
    # virtual methods
    .method public draw(Landroid/graphics/Canvas;)V
        .locals 2
        .parameter "canvas"
    
        .prologue
        .line 3824
        [COLOR="Red"]iget v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$FastColorDrawable;->mColor:I[/COLOR]
    
        sget-object v1, Landroid/graphics/PorterDuff$Mode;->SRC:Landroid/graphics/PorterDuff$Mode;
    To
    Code:
    # virtual methods
    .method public draw(Landroid/graphics/Canvas;)V
        .locals 2
        .parameter "canvas"
    
        .prologue
        .line 3824
        const v0, [COLOR="blue"]0x00000000 [/COLOR]
    
        sget-object v1, Landroid/graphics/PorterDuff$Mode;->SRC:Landroid/graphics/PorterDuff$Mode;

    TRANSPARENCY VALUES
    0x00000000 (100%)
    0x88000000 (75%)
    0x7f000000 (50%)
    0xd8000000 (25%)

    But thats a WIP
    Recompile and your done


    MultiWindows

    MULTIWINDOWS
    Please Thank mythtrandyr For His Guide


    Easy Method to Make a Flashable Zip
    Already a Good Guide here by majdinj HERE
    Please remember to thank him for his work


    Transparant status bar background and pull-down menu
    Already a Good Guide here by majdinj HERE
    Please remember to thank him for his work


    More Mods found By Another Member

    A few of them i havent tried myself so i put them all together here till i have time to Try
    QUAD TARGED AOSP
    Please Thank ICS_XD For His Guide
    Volume Rocker mod LSJ
    Please Thank Mirko ddd For His Guide
    Add Another Thread in Settings | About Device
    Please Thank Taimur Akmal For his Guide
    25
    AOSP STYLE CLEAR-ALL BUTTON
    Good Guide By daveyannihilation Here
    Please remember to thank him for his work


    How To Mod Stock Samsung Apps For Multi DPI
    Good Guide By MyLifeRocks10
    Please remember to thank him for his work
    Questions to MyLifeRocks10 thread please


    4-Way Reboot
    Good Guide Here By kahvitahra
    Please remember to thank him for his work


    Bottom Toggles guide for 23 toggle mods
    Great Guide By churapa Here
    Please remember to thank churapa for his work


    Another Thread of Guides
    HOW TO THEME SystemUI.apk for TOTALLY newbie
    Please remember to thank joehanh88 for his work


    Remove Brightness slider on 23 Toggle Mods
    First i would like to thank churapa for his Guidence on this mod
    So if it works ok Thank churapa if it doesnt work Blame me.

    First decompile SystemUI.apk then go to res/layout/tw_status_bar_expanded and find this line
    Code:
    <FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginBottom="@dimen/tw_close_handle_underlap">
    Then replace from that line everything with this
    Code:
    <FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginBottom="@dimen/tw_close_handle_underlap">
            <include android:layout_width="fill_parent" android:layout_height="@dimen/tw_notification_panel_header_height" layout="@layout/tw_status_bar_expanded_header" />
            <TextView android:gravity="center" android:id="@id/emergency_calls_only" android:paddingBottom="4.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content" />
            <View android:background="#ff091a24" android:layout_width="fill_parent" android:layout_height="1.0dip" android:layout_marginTop="@dimen/tw_notification_panel_header_height" />
            <ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="@dimen/tw_notification_panel_header_line_height" android:overScrollMode="ifContentScrolls">
                <LinearLayout android:orientation="vertical" android:id="@id/scrollCart" android:layout_width="fill_parent" android:layout_height="wrap_content">
                    <HorizontalScrollView android:id="@id/quicksetting_scroller" android:visibility="gone" android:scrollbars="none" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height">
                        <com.android.systemui.statusbar.policy.quicksetting.QuickSettingPanel android:orientation="horizontal" android:id="@id/quicksetting_container" android:layout_width="wrap_content" android:layout_height="wrap_content" android:divider="@drawable/tw_black_bg" android:showDividers="middle" />
                    </HorizontalScrollView>
                    <com.wanam.systemui.quickpanel.PowerWidget android:id="@id/exp_power_stat" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" />
                    <LinearLayout android:orientation="vertical" android:id="@id/brightness_controller" android:background="#ff000000" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="0.0dip">
                        <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="55.0dip">
                            <ImageView android:id="@id/brightness_icon" android:clickable="true" android:layout_width="25.0dip" android:layout_height="fill_parent" android:layout_marginLeft="13.0dip" android:src="@drawable/ic_sysbar_brightness" android:contentDescription="@string/accessibility_brightness_icon" />
                            <FrameLayout android:id="@id/brightness_group" android:layout_width="fill_parent" android:layout_height="fill_parent">
                                <com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
                                <com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/auto_brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
                            </FrameLayout>
                        </LinearLayout>
                        <View android:background="#ff091a24" android:layout_width="fill_parent" android:layout_height="1.0dip" />
                    </LinearLayout>
                    <LinearLayout android:orientation="vertical" android:id="@id/noNotificationsTitle" android:focusable="true" android:layout_width="fill_parent" android:layout_height="wrap_content">
                        <TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/noNotificationsText" android:paddingLeft="11.0dip" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height" android:text="@string/status_bar_no_notifications_title" />
                    </LinearLayout>
                    <LinearLayout android:orientation="vertical" android:id="@id/onGoingCart" android:background="#ff293945" android:focusable="true" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="0.0dip">
                        <TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/onGoingNotificationText" android:paddingLeft="11.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/status_bar_ongoing_events_title" />
                    </LinearLayout>
                    <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/onGoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
                    <LinearLayout android:orientation="vertical" android:id="@id/notificationCart" android:background="#ff293945" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="0.0dip">
                        <RelativeLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content">
                            <TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/latestNotificationText" android:paddingLeft="11.0dip" android:layout_width="180.0dip" android:layout_height="fill_parent" android:text="@string/status_bar_latest_events_title" android:layout_alignParentLeft="true" />
                            <TextView android:textSize="@dimen/status_bar_expanded_notification_clear_button_text_size" android:textColor="@color/tw_status_bar_clear_btn_text" android:gravity="center" android:id="@id/clear_all_button" android:background="@drawable/tw_btn_default_small" android:padding="0.100000024dip" android:focusable="true" android:clickable="true" android:layout_width="@dimen/status_bar_expanded_clear_button_width" android:layout_height="fill_parent" android:layout_marginRight="4.0dip" android:text="@string/status_bar_clear_all_button" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_clear_all" />
                        </RelativeLayout>
                    </LinearLayout>
                    <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/notificationItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
                    <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
                </LinearLayout>
            </ScrollView>
        </FrameLayout>
        <com.android.systemui.statusbar.phone.CloseDragHandle android:layout_gravity="bottom" android:orientation="vertical" android:id="@id/close" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height">
            <RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent">
                <ImageView android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height" android:src="@drawable/tw_status_bar_close" android:scaleType="fitXY" />
                <TextView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Network" android:gravity="center" android:layout_gravity="bottom" android:id="@id/carrier_label" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height" android:layout_marginBottom="10.0dip" />
            </RelativeLayout>
        </com.android.systemui.statusbar.phone.CloseDragHandle>
    </FrameLayout>

    THIS is one i made so you can compare or use
    Thats it recompile and you have No Brightness Slider. You May want to all clear all from one of the other guides above


    AOSP 5 LOCKSCREEN SHORTCUTS
    This Is a guide from Didact74 I only needed to edit a couple of lines and resize the images so PLEASE thank him here HERE

    You will need
    framework-res.apk
    SecSettings.apk
    android.policy.jar
    framework2.jar

    Decompile framework-res.apk

    Navigate to res/layout/keyguard_screen_tab_unlock.xml

    Locate the following code

    add code in Blue

    Code:
    <TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:textColor="?textColorSecondary" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/carrier" [COLOR="blue"]android:visibility="gone"[/COLOR] android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="12.0dip" android:singleLine="true" android:layout_alignParentBottom="true" />
            <TextView android:textAppearance="?textAppearanceMedium" android:ellipsize="marquee" android:id="@id/statement" [COLOR="blue"]android:visibility="gone"[/COLOR] android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="12.0dip" android:singleLine="true" android:drawablePadding="4.0dip" android:layout_below="@id/carrier" android:layout_centerHorizontal="true" android:marqueeRepeatLimit="marquee_forever" />

    Download new pngs and .xml from HERE


    Code:
    Using the supplied zip file put the following files in the following locations.
    ic_lockscreen_phone_activated.png
    ic_lockscreen_phone_normal.png
    ic_lockscreen_sms_activated.png
    ic_lockscreen_sms_normal.png 
    ....all go in /res/drawable-hdpi
    
    Using the supplied zip file put the following files in the following locations.
    ic_lockscreen_phone.xml
    ic_lockscreen_sms.xml
    ......all go in /res/drawable


    Navigate to res/values/arrays

    and find line
    Code:
    <array name="lockscreen_targets_with_camera">

    edit to look like this
    Code:
    <array name="lockscreen_targets_with_camera">
            <item>@drawable/ic_lockscreen_unlock</item>
            <item>@drawable/ic_lockscreen_sms</item>
            <item>@drawable/ic_action_assist_generic</item>
            <item>@drawable/ic_lockscreen_phone</item>
            <item>@drawable/ic_lockscreen_camera</item>
            <item>@null</item>
            <item>@null</item>
            <item>@null</item>
        </array>

    Then find
    Code:
    <string-array name="lockscreen_target_descriptions_with_camera">

    edit to look like this
    Code:
    <string-array name="lockscreen_target_descriptions_with_camera">
            <item>@string/description_target_unlock</item>
            <item>@string/description_target_sms</item>
            <item>@string/description_target_search</item>
            <item>@string/description_target_phone</item>
            <item>@string/description_target_camera</item>
            <item>@null</item>
            <item>@null</item>
            <item>@null</item>
        </string-array>


    Then goto res/values/strings and add the following at the end before </resources>
    Code:
    <string name="description_target_sms">Sms</string>
        <string name="description_target_phone">Phone</string>

    then you need to recompile framework-res and then decompile it to generate public IDs

    Then go to res/values/public

    Find the following lines and write down thier IDs in the order you see them below and set aside for a step later in the tutorial. Make sure you have the correct ID, some will have more than one instance but only one will look EXACTLY like whats below.

    Code:
    ic_action_assist_generic
    ic_lockscreen_camera
    ic_lockscreen_silent
    ic_lockscreen_unlock
    ic_lockscreen_unlock_phantom
    ic_lockscreen_phone
    ic_lockscreen_sms

    Example only
    Code:
    <public type="drawable" name="ic_action_assist_generic" id="0x010802cd" />
    <public type="drawable" name="ic_lockscreen_camera" id="0x01080328" />
    <public type="drawable" name="ic_lockscreen_silent" id="0x01080344" />
    <public type="drawable" name="ic_lockscreen_unlock" id="0x0108034f" />
    <public type="drawable" name="ic_lockscreen_unlock_phantom" id="0x01080352" />
    <public type="drawable" name="ic_lockscreen_phone" id="0x01080a4f" />
    <public type="drawable" name="ic_lockscreen_sms" id="0x01080a52" />


    Recompile framework-res

    Now Follow the rest of the Guide by Didact74 For AOSP LockScreen with Toggle and then AOSP Lockscreen shortcuts HERE


    Edge Zoom + Toggle
    Jeboo's Guide here
    Please remember to thank Jeboo for his work

    2 edits need to be changed from this guide as found by shoman94 In post 9 = No Need to edit public.xml Other change is Post 23 by shoman94 HERE
    Please remember to thank shoman94 for his work

    Also remember to add Edge Zoom From shoman94 Guide


    Sense Style Recents Apps

    Good Guide by Jeetu
    Please remember to thank Jeetu for his work


    Bottom Recent apps and lockScreen Toggles

    Thanks To apurvapatel For Guide You can thank him Here

    Decompile SystemUI.apk

    Then Download png's Here and drop in \res\drawable-hdpi

    Go to res/layout/tw_status_bar_expanded

    Look for </RelativeLayout> At the end of the file

    Add the following lines right above it
    Code:
    <com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:paddingLeft="2.0dip" android:paddingRight="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lock" android:layout_weight="1.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="26" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
    <com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:paddingLeft="2.0dip" android:paddingRight="1.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_recent" android:layout_weight="1.0" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_recent" systemui:keyCode="187" systemui:glowBackground="@drawable/ic_sysbar_highlight" />

    then recompile and your done

    If you want toggles reversed from left to right then use these lines instead of above Lines

    Code:
    <com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:paddingLeft="2.0dip" android:paddingRight="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_recent" android:layout_weight="1.0" android:contentDescription="@string/accessibility_recent" systemui:keyCode="187" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
    <com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:paddingLeft="2.0dip" android:paddingRight="1.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lock" android:layout_weight="1.0" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_back" systemui:keyCode="26" systemui:glowBackground="@drawable/ic_sysbar_highlight" />

    Enjoy


    Single Line Date In Notification Statusbar

    Tired Storeman's JB 4.1.2 Tutorials
    Please remember to thank Tired Storeman for his work


    Remove cloudy overlay and improve ripple on Ripple Lockscreen
    Great Guide By Goldieking Here
    Please remember to thank Goldieking for his work


    Understanding and Creating Smali Mods & General Smali Questions
    Great Guide By Goldieking Here
    Please remember to thank Goldieking for his work


    More Mods found By tdunham

    These Guides are For Other Devices but You May find changes are similar

    Enable/disable brightness slider with toggle!
    Please remember to thank him for his work

    ICS+ Tabbed settings(MIUI Like)
    Please remember to thank him for his work

    New Power Menu JB
    Please remember to thank tdunham for his work

    Various guides from majdinj
    Please remember to thank majdinj for his work
    Excellent Guides here Worth Looking at

    Guides For i9300
    Please remember to thank Didact74 for his work

    Lockscreen and Recent app shortcut, Notification text color on drop panel
    Please remember to thank kmokhtar79 for his work
    13
    Hi to all i'm trying to add the screenshot capture button in the status bar
    View attachment 2526148
    to do this i added in tw_status_bar this line
    Code:
    [    <com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/global_screenshot" android:paddingLeft="2.0dip" android:paddingRight="2.0dip" android:focusable="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/tw_ic_sysbar_capture_normal" android:layout_toRightOf="@id/back" android:contentDescription="@string/accessibility_capture" />
    			/CODE][/HIDE]
    but it not work,I suppose that keycode for screenshot is missing ,I tried to search for it but I have not found anywhere.
    can someone helpe?[/QUOTE]
    
    Solved
    [B][SIZE="4"]How to add ScreenShot button in Statubar[/SIZE][/B]
    [ATTACH]2547766._xfImport[/ATTACH]
    work perfectly in my rom 4.1.2 xwlsd based
    [B][SIZE="5"]DO A NANDROID BACKUP BEFORE MODDING[/SIZE][/B]
    requires:
    SystemUI.apk;
    tool for decompile and compile like apktool 1.5.2;
    tool for text edit like notepad++:
    
    Download the attached image
    Decompile SystemUI.apk and copy image in res/drawable-hdpi
    Go in res/layout ,open with edit text tool tw_status_bar.xml and add the red line
    [HIDE][CODE]<LinearLayout android:orientation="horizontal" android:id="@id/right_icons" android:paddingRight="4.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_alignParentRight="true">
                <LinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/statusIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" />
                <LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/signal_battery_cluster" android:paddingLeft="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent">
                    <include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/tw_signal_cluster_view" />
                    <include android:id="@id/battery_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/battery_cluster_view" />
                    <TextView android:textSize="12.0dip" android:textColor="#ff33b5e5" android:layout_gravity="center" android:id="@id/battery_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_network_name_separator" />
                    <ImageView android:gravity="center" android:id="@id/battery" android:layout_width="wrap_content" android:layout_height="wrap_content" />
                </LinearLayout>
                <com.android.systemui.statusbar.policy.Clock android:textSize="@dimen/status_bar_clock_text_size" android:textColor="#ffffffff" android:ellipsize="none" android:gravity="left|center" android:id="@id/clock" android:paddingLeft="3.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" android:includeFontPadding="false" />
              [COLOR="Red"] <com.android.systemui.statusbar.policy.QuickLaunchKeyButtonView android:id="@id/quick_launch" android:visibility="visible" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/tw_ic_sysbar_capture" android:contentDescription="@string/accessibility_capture" android:onClick="ScreenShot" />[/COLOR] 
    	   </LinearLayout>
    save the file .
    Go in smali/com/android/systemui ,open SystemUIService.smali and add at the and of the file this entire method
    Code:
    .method public ScreenShot(Landroid/view/View;)V
        .locals 3
        .parameter "v"
    
        .prologue
        .line 2431
        new-instance v0, Landroid/content/Intent;
    
        invoke-direct {v0}, Landroid/content/Intent;-><init>()V
    
        .line 2432
        const-string v1, "StatusBar.QuickLaunchKeyButtonView"
    
        const-string v2, "android.intent.action.TOUCH_CAPTURE_BTN"
    
        invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->setClassName(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
    
        const/high16 v2, 0x1000
    
        invoke-virtual {v0, v2}, Landroid/content/Intent;->setFlags(I)Landroid/content/Intent;
    
        move-result-object v0
    
        .line 2433
        invoke-virtual {p0, v0}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V
    
        const-string v1, "statusbar"
    
        invoke-virtual {p0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
    
        move-result-object v0
    
        check-cast v0, Landroid/app/StatusBarManager;
    
        invoke-virtual {v0}, Landroid/app/StatusBarManager;->collapse()V
    
        .line 1720
        return-void
    .end method
    save the file and exit.
    compile and put in your device.

    Thanks and credit to gerryS2 for is QuickLaunchKeyButtonView implementation http://xdaforums.com/showthread.php?t=2538435
    Thanks and credit to BOOTMGR for the .method in SystemUIService http://xdaforums.com/showthread.php?t=2567736

    image to download
    tw_ic_sysbar_capture.png
    12
    Dedicated To all the modders :p:p:p

    y5ynujav.jpg


    Sent from my GT-I9100 using Tapatalk 2