[Sony Cross-Device Development Themes and Apps] serajr:
[Guide] Give your system bars a gradient immersive KK flag

WARNING: just do it if you are using OP 4.4 SystemUI.apk on JB 4.3 firmware (backup your files too)​

Lockscreen Status Bar:

1. Decompile your JB 4.3 android.policy.jar

2. Go to \com\android\internal\policy\impl\keyguard\ folder and open (with Notepad++) KeyguardViewManager.smali file

3. Look for this method:

[B].method public declared-synchronized show(Landroid/os/Bundle;)V[/B]

4. Inside the method look for something like:

.line 126
iget-object v2, p0, Lcom/android/internal/policy/impl/keyguard/KeyguardViewManager;->mKeyguardHost:Landroid/widget/FrameLayout;

invoke-virtual {v2}, Landroid/widget/FrameLayout;->getSystemUiVisibility()I

move-result v2

[COLOR="Red"]const/high16 v3, 0x20

or-int v1, v2, v3[/COLOR]

.line 128
.local v1, visFlags:I
iget-object v2, p0, Lcom/android/internal/policy/impl/keyguard/KeyguardViewManager;->mKeyguardHost:Landroid/widget/FrameLayout;

invoke-virtual {v2, v1}, Landroid/widget/FrameLayout;->setSystemUiVisibility(I)V

5. Found! Now change above red lines to blue ones below:

.line 126
iget-object v2, p0, Lcom/android/internal/policy/impl/keyguard/KeyguardViewManager;->mKeyguardHost:Landroid/widget/FrameLayout;

invoke-virtual {v2}, Landroid/widget/FrameLayout;->getSystemUiVisibility()I

move-result v2

[COLOR="Blue"]const/high16 v3, -0x1000

or-int/2addr v3, v2

move/from16 v1, v3[/COLOR]

.line 128
.local v1, visFlags:I
iget-object v2, p0, Lcom/android/internal/policy/impl/keyguard/KeyguardViewManager;->mKeyguardHost:Landroid/widget/FrameLayout;

invoke-virtual {v2, v1}, Landroid/widget/FrameLayout;->setSystemUiVisibility(I)V

6. Save, compile, replace it and DONE!

Walkman both Bars (I think the same can be applied on more Semc??? and Somc??? apks):

1. Decompile your JB 4.3 SemcMusic.apk

2. If you open smali folder and face folders/files titled like a, b, c... you have a "Proguarded version" (obfuscated code)!!! I've never thought Sony would encrypt its sources.. but It did it!! Mine is!!!!! :mad:

Words from Proguard page:

3. Go to \com\sonymobile\ui\support\ folder and open (with Notepad++) SystemUiVisibilityWrapper.smali file

3 (Prograrded version). Go to \com\sonymobile\c\a\ folder and open (with Notepad++) a.smali file

4. Look for this method:

[B].method public setTranslucentBackground(Z)Lcom/sonymobile/ui/support/SystemUiVisibilityWrapper;[/B]

4 (Prograrded version). Look for this method:

[B].method public a(Z)Lcom/sonymobile/c/a/a;[/B]

5. Found! Now replace whole method from red to blue:

[COLOR="Red"].method public setTranslucentBackground(Z)Lcom/sonymobile/ui/support/SystemUiVisibilityWrapper;
.locals 1
.parameter "value"

.prologue
.line 309
sget v0, Lcom/sonymobile/ui/support/SystemUiVisibilityWrapper;->SYSTEM_UI_FLAG_TRANSPARENT:I

invoke-direct {p0, v0, p1}, Lcom/sonymobile/ui/support/SystemUiVisibilityWrapper;->setFlag(IZ)V

.line 310
return-object p0
.end method[/COLOR]

[COLOR="Blue"].method public setTranslucentBackground(Z)Lcom/sonymobile/ui/support/SystemUiVisibilityWrapper;
.locals 3
.parameter "value"

.prologue
.line 309
iget-object v0, p0, Lcom/sonymobile/ui/support/SystemUiVisibilityWrapper;->mView:Landroid/view/View;

invoke-virtual {v0}, Landroid/view/View;->getSystemUiVisibility()I

move-result v0

const/high16 v1, -0x1000

or-int/2addr v1, v0

move/from16 v2, v1

invoke-direct {p0, v2, p1}, Lcom/sonymobile/ui/support/SystemUiVisibilityWrapper;->setFlag(IZ)V

.line 310
return-object p0
.end method[/COLOR]

5 (Prograrded version). Found! Now replace whole method from red to blue:

[COLOR="Red"].method public a(Z)Lcom/sonymobile/c/a/a;
.locals 1
.parameter

.prologue
.line 309
sget v0, Lcom/sonymobile/c/a/a;->b:I

invoke-direct {p0, v0, p1}, Lcom/sonymobile/c/a/a;->b(IZ)V

.line 311
return-object p0
.end method[/COLOR]

[COLOR="Blue"].method public a(Z)Lcom/sonymobile/c/a/a;
.locals 3
.parameter

.prologue
.line 309
iget-object v0, p0, Lcom/sonymobile/c/a/a;->h:Landroid/view/View;

invoke-virtual {v0}, Landroid/view/View;->getSystemUiVisibility()I

move-result v0

const/high16 v1, -0x1000

or-int/2addr v1, v0

move/from16 v2, v1

invoke-direct {p0, v2, p1}, Lcom/sonymobile/c/a/a;->b(IZ)V

.line 311
return-object p0
.end method[/COLOR]

6. Save, compile, replace it and DONE!

Album both Bars:

1. Decompile your JB 4.3 SemcAlbum.apk

2. Go to \com\sonyericsson\album\util\ folder and open (with Notepad++) BarUtils.smali file

3. Look for this method:

[B].method public static setDefaultSystemUiVisibility(Landroid/view/Window;)V[/B]

4. Insert blue lines

.method public static setDefaultSystemUiVisibility(Landroid/view/Window;)V
.locals 2
.parameter "window"

.prologue
.line 306
sget-boolean v1, Lcom/sonyericsson/album/util/BarUtils;->sIsKitKat:Z

if-eqz v1, :cond_0

.line 307
const/16 v0, 0xe00

.line 310
.local v0, flags:I
invoke-virtual {p0}, Landroid/view/Window;->getDecorView()Landroid/view/View;

move-result-object v1

invoke-virtual {v1, v0}, Landroid/view/View;->setSystemUiVisibility(I)V

.line 315
.end local v0 #flags:I
:goto_0
return-void

.line 312
:cond_0
invoke-static {p0}, Lcom/sonyericsson/album/util/BarUtils;->enableStatusBar(Landroid/view/Window;)Z

.line 313
invoke-virtual {p0}, Landroid/view/Window;->getDecorView()Landroid/view/View;

move-result-object v1

invoke-static {v1}, Lcom/sonyericsson/album/util/BarUtils;->showNavigationBar(Landroid/view/View;)V

[COLOR="blue"].line 314
invoke-virtual {p0}, Landroid/view/Window;->getDecorView()Landroid/view/View;

move-result-object v0

invoke-virtual {v0}, Landroid/view/View;->getSystemUiVisibility()I

move-result v0

const/high16 v1, -0x1000

or-int/2addr v1, v0

move/from16 v0, v1

.line 315
invoke-virtual {p0}, Landroid/view/Window;->getDecorView()Landroid/view/View;

move-result-object v1

invoke-virtual {v1, v0}, Landroid/view/View;->setSystemUiVisibility(I)V[/COLOR]

goto :goto_0
.end method

5. Save, compile, replace it and DONE!

Warning:

if you are having any problem on compile/fc, try to put -0x100000 value instead of -0x1000 (thanks [MENTION=599722]niaboc79[/MENTION])

Screenshots:

.