Hi guys, since many are interested again on adding more icons in nav bar, I just want to give this info on how to make one. It's actually an original guide from rootzwiki page.
http://rootzwiki.com/topic/30278-how-to-step-by-step-guide-to-add-menu-and-search-soft-keys/
I won't rewrite here what has been mentioned there already but I'll try to help you guys in case you encounter any problem doing that mod. I thought of making this thread since we're better off posting here rather than there, coz I think there are more users here and their thread is long-time inactive already.
Many thanks to that guy(Detonation) in rootzwiki, it's the best guide that I came across to. You may also search for chrisjohn95's guide here in xda in nexus forum for other nav bar mod info.
It's in no way my original work, I'm just sharing this mod procedure so others can benefit as well.
EDIT: If there's a need to rewrite here, I'll do, just feedback to me. And to moderators, if this thread is unnecessary(since it's only a linked guide atm), pls feel free to remove the thread.
EDIT2: Sample for adding MENU permanent. - > At post #16
Tapatalked from my bricked TX
Have you tried it?
matt4321 said:
Have you tried it?
Click to expand...
Click to collapse
Yes, been my based mod for sometime.
Tapatalked from my bricked TX
Rycon33 said:
Yes, been my based mod for sometime.
Tapatalked from my bricked TX
Click to expand...
Click to collapse
Nice, does it look decent? May have to give it a try
I can concur this mod is sweet. I used it a while back, xperiment2.6.
I miss the permanent menu button.
matt4321 said:
Nice, does it look decent? May have to give it a try
Click to expand...
Click to collapse
Matt, below is a sample from my previous mod.
Tapatalked from my bricked TX
For TX 9.1.B.67 firmware only.
It's a shared folder for all my mods for 9.1.B.67 firmware, look for "navigation_bar_mods" folder for power-back-HOME-recent-menu nav icons
One thing to note, backup before flashing the zip as I didn't personally tested this particular mod, I have my own unique(or awkward) nav mod for myself.
http://www.mediafire.com/folder/lenfr4p337y6l/9.1.B.1.67_FW
Rycon33 said:
For TX 9.1.B.67 firmware only.
It's a shared folder for all my mods for 9.1.B.67 firmware, look for "navigation_bar_mods" folder for power-back-HOME-recent-menu nav icons
One thing to note, backup before flashing the zip as I didn't personally tested this particular mod, I have my own unique(or awkward) nav mod for myself.
http://www.mediafire.com/folder/lenfr4p337y6l/9.1.B.1.67_FW
Click to expand...
Click to collapse
The rootswiki paper doesn't mention how to add the power button.
May you add it here?
ashinh said:
The rootswiki paper doesn't mention how to add the power button.
May you add it here?
Click to expand...
Click to collapse
just replace the search with power:
.method public getPowerButton()Landroid/view/View;
.locals 2
.prologue
.line 97
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/NavigationBarView;->mCurrentView:Landroid/view/View;
const v1, 0x7f0c00ae
invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View;
move-result-object v0
return-object v0
.end method
and:
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getHomeButton()Landroid/view/View;
move-result-object v6
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getMenuButton()Landroid/view/View;
move-result-object v7
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getPowerButton()Landroid/view/View;
move-result-object v8
if-eqz v1, :cond_6
move v3, v5
:goto_6
invoke-virtual {v6, v3}, Landroid/view/View;->setVisibility(I)V
invoke-virtual {v7, v3}, Landroid/view/View;->setVisibility(I)V
invoke-virtual {v8, v3}, Landroid/view/View;->setVisibility(I)V
The blue lines are the additional code. The id in red is the power I.D.
how can i av permanent menu brov?
whalesplaho said:
how can i av permanent menu brov?
Click to expand...
Click to collapse
same as what I posted above you but remove everything that concerns the "getPowerButton"
like this:
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getHomeButton()Landroid/view/View;
move-result-object v6
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getMenuButton()Landroid/view/View;
move-result-object v7
if-eqz v1, :cond_6
move v3, v5
:goto_6
invoke-virtual {v6, v3}, Landroid/view/View;->setVisibility(I)V
invoke-virtual {v7, v3}, Landroid/view/View;->setVisibility(I)V
Rycon33 said:
just replace the search with power:
.method public getPowerButton()Landroid/view/View;
.locals 2
.prologue
.line 97
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/NavigationBarView;->mCurrentView:Landroid/view/View;
const v1, 0x7f0c00ae
invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View;
move-result-object v0
return-object v0
.end method
and:
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getHomeButton()Landroid/view/View;
move-result-object v6
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getMenuButton()Landroid/view/View;
move-result-object v7
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getPowerButton()Landroid/view/View;
move-result-object v8
if-eqz v1, :cond_6
move v3, v5
:goto_6
invoke-virtual {v6, v3}, Landroid/view/View;->setVisibility(I)V
invoke-virtual {v7, v3}, Landroid/view/View;->setVisibility(I)V
invoke-virtual {v8, v3}, Landroid/view/View;->setVisibility(I)V
The blue lines are the additional code. The id in red is the power I.D.
Click to expand...
Click to collapse
It's hard to combine this with 18 toggles.
Rycon33 said:
same as what I posted above you but remove everything that concerns the "getPowerButton"
like this:
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getHomeButton()Landroid/view/View;
move-result-object v6
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getMenuButton()Landroid/view/View;
move-result-object v7
if-eqz v1, :cond_6
move v3, v5
:goto_6
invoke-virtual {v6, v3}, Landroid/view/View;->setVisibility(I)V
invoke-virtual {v7, v3}, Landroid/view/View;->setVisibility(I)V
Click to expand...
Click to collapse
dnt know how to do it... please can yhu post full tut here & also post tha files dat need to be downloaded?
download link not working on roowiki!
Ok guys, after the F1, I'll also rewrite the guide here in OP.
Tapatalked from my bricked TX
Rycon33 said:
Ok guys, after the F1, I'll also rewrite the guide here in OP.
Tapatalked from my bricked TX
Click to expand...
Click to collapse
hoping to see tha tut soon... thanks brov!
For adding "permanent" menu:
Decompile SystemUI.apk and go to SystemUI\smali\com\android\systemui\statusbar\phone, open the file NavigationBarView.smali and do the edit as below:
Look for .method public setDisabledFlags(IZ)V
Just immediately below that line, add one number to .locals because we're adding one new variable, it will look like below:
Code:
.method public setDisabledFlags(IZ)V
[COLOR="Red"].locals 8[/COLOR]
.parameter "disabledFlags"
.parameter "force"
Originally mine was .locals 7, so I just increase it to .locals 8
Further down below you will see this line:
Code:
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getHomeButton()Landroid/view/View;
move-result-object [COLOR="red"][B]v6[/B][/COLOR]
Insert the below line immediately after the code above.
Code:
[COLOR="Blue"][B]invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getMenuButton()Landroid/view/View;
move-result-object [COLOR="red"][B]v7[/B][/COLOR][/B][/COLOR]
And a little further down, you will see this:
Code:
invoke-virtual {[COLOR="red"][B]v6[/B][/COLOR], v3}, Landroid/view/View;->setVisibility(I)V
Insert the below line immediately after the code above.
Code:
[COLOR="Blue"][B]invoke-virtual {[COLOR="red"][B]v7[/B][/COLOR], v3}, Landroid/view/View;->setVisibility(I)V[/B][/COLOR]
Be mindful of V#, if previous is v6, you make yours to be v7
Next, find these two methods: .method public setMenuVisibility(Z)V and .method public setMenuVisibility(ZZ)V
Delete most of the contents of those two methods leaving it to look just like below:
Code:
.method public setMenuVisibility(Z)V
.locals 1
.parameter "show"
return-void
.end method
.method public setMenuVisibility(ZZ)V
.locals 2
.parameter "show"
.parameter "force"
return-void
.end method
Save your file NavigationBarView.smali, then proceed editing the navigation_bar.xml in SystemUI\res\layout.
Just copy mine replacing your original:
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.NavigationBarView android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="fill_parent" android:directionality="none"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<FrameLayout android:id="@id/rot0" android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout android:orientation="horizontal" android:id="@id/nav_buttons" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:animateLayoutChanges="true">
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_back" android:layout_weight="0.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="4" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/home" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_home" android:layout_weight="0.0" android:contentDescription="@string/accessibility_home" systemui:keyCode="3" systemui:keyRepeat="false" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/menu" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_menu" android:layout_weight="0.0" android:contentDescription="@string/accessibility_menu" systemui:keyCode="82" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_recent" android:layout_weight="0.0" android:contentDescription="@string/accessibility_recent" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
</LinearLayout>
<LinearLayout android:orientation="horizontal" android:id="@id/lights_out" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent">
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
</LinearLayout>
<com.android.systemui.statusbar.policy.DeadZone android:layout_gravity="top" android:id="@id/deadzone" android:layout_width="fill_parent" android:layout_height="@dimen/navigation_bar_deadzone_size" />
</FrameLayout>
<FrameLayout android:id="@id/rot90" android:paddingTop="0.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout android:orientation="vertical" android:id="@id/nav_buttons" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:animateLayoutChanges="true">
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_recent_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_recent" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/menu" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_menu_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_menu" systemui:keyCode="82" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/home" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_home_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_home" systemui:keyCode="3" systemui:keyRepeat="false" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_back_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="4" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:id="@id/lights_out" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" android:directionality="none">
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
</LinearLayout>
<com.android.systemui.statusbar.policy.DeadZone android:layout_gravity="left" android:id="@id/deadzone" android:layout_width="@dimen/navigation_bar_deadzone_size" android:layout_height="fill_parent" />
</FrameLayout>
<View android:id="@id/rot270" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" />
</com.android.systemui.statusbar.phone.NavigationBarView>
Rycon33 said:
For adding "permanent" menu:
Decompile SystemUI.apk and go to SystemUI\smali\com\android\systemui\statusbar\phone, open the file NavigationBarView.smali and do the edit as below:
Look for .method public setDisabledFlags(IZ)V
Just immediately below that line, add one number to .locals because we're adding one new variable, it will look like below:
Code:
.method public setDisabledFlags(IZ)V
[COLOR="Red"].locals 8[/COLOR]
.parameter "disabledFlags"
.parameter "force"
Originally mine was .locals 7, so I just increase it to .locals 8
Further down below you will see this line:
Code:
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getHomeButton()Landroid/view/View;
move-result-object [COLOR="red"][B]v6[/B][/COLOR]
Insert the below line immediately after the code above.
Code:
[COLOR="Blue"][B]invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getMenuButton()Landroid/view/View;
move-result-object [COLOR="red"][B]v7[/B][/COLOR][/B][/COLOR]
And a little further down, you will see this:
Code:
invoke-virtual {[COLOR="red"][B]v6[/B][/COLOR], v3}, Landroid/view/View;->setVisibility(I)V
Insert the below line immediately after the code above.
Code:
[COLOR="Blue"][B]invoke-virtual {[COLOR="red"][B]v7[/B][/COLOR], v3}, Landroid/view/View;->setVisibility(I)V[/B][/COLOR]
Be mindful of V#, if previous is v6, you make yours to be v7
Next, find these two methods: .method public setMenuVisibility(Z)V and .method public setMenuVisibility(ZZ)V
Delete most of the contents of those two methods leaving it to look just like below:
Code:
.method public setMenuVisibility(Z)V
.locals 1
.parameter "show"
return-void
.end method
.method public setMenuVisibility(ZZ)V
.locals 2
.parameter "show"
.parameter "force"
return-void
.end method
Save your file NavigationBarView.smali, then proceed editing the navigation_bar.xml in SystemUI\res\layout.
Just copy mine replacing your original:
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.NavigationBarView android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="fill_parent" android:directionality="none"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<FrameLayout android:id="@id/rot0" android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout android:orientation="horizontal" android:id="@id/nav_buttons" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:animateLayoutChanges="true">
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_back" android:layout_weight="0.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="4" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/home" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_home" android:layout_weight="0.0" android:contentDescription="@string/accessibility_home" systemui:keyCode="3" systemui:keyRepeat="false" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/menu" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_menu" android:layout_weight="0.0" android:contentDescription="@string/accessibility_menu" systemui:keyCode="82" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_recent" android:layout_weight="0.0" android:contentDescription="@string/accessibility_recent" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
</LinearLayout>
<LinearLayout android:orientation="horizontal" android:id="@id/lights_out" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent">
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
</LinearLayout>
<com.android.systemui.statusbar.policy.DeadZone android:layout_gravity="top" android:id="@id/deadzone" android:layout_width="fill_parent" android:layout_height="@dimen/navigation_bar_deadzone_size" />
</FrameLayout>
<FrameLayout android:id="@id/rot90" android:paddingTop="0.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout android:orientation="vertical" android:id="@id/nav_buttons" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:animateLayoutChanges="true">
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_recent_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_recent" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/menu" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_menu_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_menu" systemui:keyCode="82" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/home" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_home_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_home" systemui:keyCode="3" systemui:keyRepeat="false" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_back_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="4" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:id="@id/lights_out" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" android:directionality="none">
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
</LinearLayout>
<com.android.systemui.statusbar.policy.DeadZone android:layout_gravity="left" android:id="@id/deadzone" android:layout_width="@dimen/navigation_bar_deadzone_size" android:layout_height="fill_parent" />
</FrameLayout>
<View android:id="@id/rot270" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" />
</com.android.systemui.statusbar.phone.NavigationBarView>
Click to expand...
Click to collapse
Works like a charm brov.... but tha arrangement is not too good, back home menu recent app, i want it to be back home recent app menu
whalesplaho said:
Works like a charm brov.... but tha arrangement is not too good, back home menu recent app, i want it to be back home recent app menu
Click to expand...
Click to collapse
Re-aarange the icons placement if you want your own arrangement
Code:
<LinearLayout android:orientation="horizontal" android:id="@id/nav_buttons" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:animateLayoutChanges="true">
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_back" android:layout_weight="0.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="4" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/home" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_home" android:layout_weight="0.0" android:contentDescription="@string/accessibility_home" systemui:keyCode="3" systemui:keyRepeat="false" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/menu" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_menu" android:layout_weight="0.0" android:contentDescription="@string/accessibility_menu" systemui:keyCode="82" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_recent" android:layout_weight="0.0" android:contentDescription="@string/accessibility_recent" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
</LinearLayout>
That first linearlayout is for portrait mode, you can see from the code, icons from top-to-bottom, it will show left-to-right on your phone. Cut and paste the whole line in place of the other, swap the menu and recent code lines.
The 3rd linear layout is for landscape, top-to-bottom code is also top-to-bottom in phone landscape. Justa swap menu and recent code lines as well.
And no need to touch the lights-out linear layout, that's the 2nd and 4th linear layout.
Rycon33 said:
Re-aarange the icons placement if you want your own arrangement
Code:
<LinearLayout android:orientation="horizontal" android:id="@id/nav_buttons" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:animateLayoutChanges="true">
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_back" android:layout_weight="0.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="4" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/home" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_home" android:layout_weight="0.0" android:contentDescription="@string/accessibility_home" systemui:keyCode="3" systemui:keyRepeat="false" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/menu" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_menu" android:layout_weight="0.0" android:contentDescription="@string/accessibility_menu" systemui:keyCode="82" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_recent" android:layout_weight="0.0" android:contentDescription="@string/accessibility_recent" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
</LinearLayout>
That first linearlayout is for portrait mode, you can see from the code, icons from top-to-bottom, it will show left-to-right on your phone. Cut and paste the whole line in place of the other, swap the menu and recent code lines.
The 3rd linear layout is for landscape, top-to-bottom code is also top-to-bottom in phone landscape. Justa swap menu and recent code lines as well.
And no need to touch the lights-out linear layout, that's the 2nd and 4th linear layout.
Click to expand...
Click to collapse
i notice dat after flashing tha mod, my nav bar aint transparent anymore cos i mod it for transparency before.... but status bar still transparent!
whalesplaho said:
i notice dat after flashing tha mod, my nav bar aint transparent anymore cos i mod it for transparency before.... but status bar still transparent!
Click to expand...
Click to collapse
i'm not sure this mod can cause conflict to other mods, but if it does, you have to choose which one you intend to keep
Related
What This Mod Does
Softkeys are the bits on the bottom of some phones. They are things like the Menu button, Back button, Home button, etc and usually take the place of the physical buttons.
The handy thing is, because they're just bits of software, they can be moved around.
Don't like the settings button on the right of the screen? Rather have it on the left? Want to put the Home button on the side?
Well, let me tell you how to do it!
How To Do This Mod
The first thing you'll need to do is decompile your SystemUI.apk. There are a lot of different tools out there to help you do this. I would suggest using Tickle My Android but it's up to you.
Once it's done, you'll need to edit layout\navigation_bar.xml. Again, it's up to you how you do this but I always like to use Notepad++.
The stock code looks like this:
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.NavigationBarView android:background="@drawable/status_bar_background" android:layout_width="fill_parent" android:layout_height="fill_parent" android:directionality="none"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<FrameLayout android:id="@id/rot0" android:layout_width="fill_parent" android:layout_height="fill_parent" android:directionality="none">
<LinearLayout android:orientation="horizontal" android:id="@id/nav_buttons" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:animateLayoutChanges="true" android:directionality="none">
<View android:visibility="invisible" android:layout_width="40.0dip" android:layout_height="fill_parent" android:layout_weight="0.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:layout_width="@dimen/navigation_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_back" android:scaleType="center" android:layout_weight="0.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="4" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/home" android:layout_width="@dimen/navigation_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_home" android:layout_weight="0.0" android:contentDescription="@string/accessibility_home" systemui:keyCode="3" systemui:keyRepeat="false" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:layout_width="@dimen/navigation_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_recent" android:layout_weight="0.0" android:contentDescription="@string/accessibility_recent" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/menu" android:visibility="invisible" android:layout_width="@dimen/navigation_menu_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_menu" android:layout_weight="0.0" android:contentDescription="@string/accessibility_menu" systemui:keyCode="82" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
</LinearLayout>
<LinearLayout android:orientation="horizontal" android:id="@id/lights_out" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" android:directionality="none">
<ImageView android:layout_width="80.0dip" android:layout_height="fill_parent" android:layout_marginLeft="40.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="80.0dip" android:layout_height="fill_parent" android:layout_marginRight="40.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
</LinearLayout>
<com.android.systemui.statusbar.policy.DeadZone android:layout_gravity="top" android:id="@id/deadzone" android:layout_width="fill_parent" android:layout_height="@dimen/navigation_bar_deadzone_size" />
</FrameLayout>
<FrameLayout android:id="@id/rot90" android:paddingTop="0.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" android:directionality="none">
<LinearLayout android:orientation="vertical" android:id="@id/nav_buttons" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:animateLayoutChanges="true" android:directionality="none">
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/menu" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="40.0dip" android:src="@drawable/ic_sysbar_menu_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_menu" systemui:keyCode="82" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_recent_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_recent" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/home" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_home_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_home" systemui:keyCode="3" systemui:keyRepeat="false" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_back_land" android:scaleType="center" android:layout_weight="0.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="4" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="40.0dip" android:layout_weight="0.0" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:id="@id/lights_out" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" android:directionality="none">
<ImageView android:layout_width="fill_parent" android:layout_height="80.0dip" android:layout_marginTop="40.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="80.0dip" android:layout_marginBottom="40.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
</LinearLayout>
<com.android.systemui.statusbar.policy.DeadZone android:layout_gravity="left" android:id="@id/deadzone" android:layout_width="@dimen/navigation_bar_deadzone_size" android:layout_height="fill_parent" />
</FrameLayout>
<View android:id="@id/rot270" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" />
</com.android.systemui.statusbar.phone.NavigationBarView>
Looks complicated, doesn't it? Well..it is complicated. But it does make a sort of sense.
This bit is the nav_buttons LinearLayout that defines the arrangement of the softkeys:
Code:
<LinearLayout android:orientation="horizontal" android:id="@id/nav_buttons" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:animateLayoutChanges="true" android:directionality="none">
<View android:visibility="invisible" android:layout_width="40.0dip" android:layout_height="fill_parent" android:layout_weight="0.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:layout_width="@dimen/navigation_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_back" android:scaleType="center" android:layout_weight="0.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="4" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/home" android:layout_width="@dimen/navigation_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_home" android:layout_weight="0.0" android:contentDescription="@string/accessibility_home" systemui:keyCode="3" systemui:keyRepeat="false" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:layout_width="@dimen/navigation_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_recent" android:layout_weight="0.0" android:contentDescription="@string/accessibility_recent" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/menu" android:visibility="invisible" android:layout_width="@dimen/navigation_menu_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_menu" android:layout_weight="0.0" android:contentDescription="@string/accessibility_menu" systemui:keyCode="82" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
</LinearLayout>
The lines that start with "<View" are spacers, the lines that start with "<com.android"[/] are the actual softkeys.
All we need to do is put these in a different order.
Currently, we have SPACER - BACK - SPACER - HOME - SPACER - RECENT APPS - MENU
If we want the MENU button on the left side, we need to edit the code to make it look like this:
Code:
<LinearLayout android:orientation="horizontal" android:id="@id/nav_buttons" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:animateLayoutChanges="true" android:directionality="none">
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/menu" android:visibility="invisible" android:layout_width="@dimen/navigation_menu_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_menu" android:layout_weight="0.0" android:contentDescription="@string/accessibility_menu" systemui:keyCode="82" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:layout_width="@dimen/navigation_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_recent" android:layout_weight="0.0" android:contentDescription="@string/accessibility_recent" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/home" android:layout_width="@dimen/navigation_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_home" android:layout_weight="0.0" android:contentDescription="@string/accessibility_home" systemui:keyCode="3" systemui:keyRepeat="false" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:layout_width="@dimen/navigation_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_back" android:scaleType="center" android:layout_weight="0.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="4" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="40.0dip" android:layout_height="fill_parent" android:layout_weight="0.0" />
</LinearLayout>
But we also need to edit the nav_buttons LinearLayout in the rot90 FrameLayout. Starting to get a headache? Don't worry, all we need to do is just reverse the order of the lines we put in earlier.
In other words, we'll ultimately need to create this code here:
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.NavigationBarView android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="fill_parent" android:directionality="none"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<FrameLayout android:id="@id/rot0" android:layout_width="fill_parent" android:layout_height="fill_parent" android:directionality="none">
<LinearLayout android:orientation="horizontal" android:id="@id/nav_buttons" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:animateLayoutChanges="true" android:directionality="none">
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/menu" android:visibility="invisible" android:layout_width="@dimen/navigation_menu_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_menu" android:layout_weight="0.0" android:contentDescription="@string/accessibility_menu" systemui:keyCode="82" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:layout_width="@dimen/navigation_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_recent" android:layout_weight="0.0" android:contentDescription="@string/accessibility_recent" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/home" android:layout_width="@dimen/navigation_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_home" android:layout_weight="0.0" android:contentDescription="@string/accessibility_home" systemui:keyCode="3" systemui:keyRepeat="false" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:layout_width="@dimen/navigation_key_width" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_back" android:scaleType="center" android:layout_weight="0.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="4" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="40.0dip" android:layout_height="fill_parent" android:layout_weight="0.0" />
</LinearLayout>
<LinearLayout android:orientation="horizontal" android:id="@id/lights_out" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" android:directionality="none">
<ImageView android:layout_width="80.0dip" android:layout_height="fill_parent" android:layout_marginLeft="40.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="80.0dip" android:layout_height="fill_parent" android:layout_marginRight="40.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
</LinearLayout>
<com.android.systemui.statusbar.policy.DeadZone android:layout_gravity="top" android:id="@id/deadzone" android:layout_width="fill_parent" android:layout_height="@dimen/navigation_bar_deadzone_size" />
</FrameLayout>
<FrameLayout android:id="@id/rot90" android:paddingTop="0.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" android:directionality="none">
<LinearLayout android:orientation="vertical" android:id="@id/nav_buttons" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:animateLayoutChanges="true" android:directionality="none">
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="40.0dip" android:layout_weight="0.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_back_land" android:scaleType="center" android:layout_weight="0.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="4" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/home" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_home_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_home" systemui:keyCode="3" systemui:keyRepeat="false" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_recent_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_recent" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/menu" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="40.0dip" android:src="@drawable/ic_sysbar_menu_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_menu" systemui:keyCode="82" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:id="@id/lights_out" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" android:directionality="none">
<ImageView android:layout_width="fill_parent" android:layout_height="80.0dip" android:layout_marginTop="40.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="80.0dip" android:layout_marginBottom="40.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
</LinearLayout>
<com.android.systemui.statusbar.policy.DeadZone android:layout_gravity="left" android:id="@id/deadzone" android:layout_width="@dimen/navigation_bar_deadzone_size" android:layout_height="fill_parent" />
</FrameLayout>
<View android:id="@id/rot270" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" />
</com.android.systemui.statusbar.phone.NavigationBarView>
Save it, recompile it, ensure the compression and signing's right (check your decompiling tool's instructions for this), put it back on your phone and..it ought to look something like this:
What This Mod Should Look Like
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
It may seem a little intimidating but take your time with it, it does all make sense and I'm always happy to help out when I can. Have fun!
--reserved--
Re: [MOD] Reversed Softkeys w/ Black Bars
--also reserved--
Re: [MOD] Reversed Softkeys w/ Black Bars
--I have a cunning plan, you see..--
great great mate ..i also made a folder for all your mods in my phone lolXD
could you make it samller the navbar?:fingers-crossed: ?
menu button
wow, you added the 3dot menu button like on picture ? :good:
Re: [MOD] Reversed Softkeys w/ Black Bars
BoneMo said:
wow, you added the 3dot menu button like on picture ? :good:
Click to expand...
Click to collapse
Ahm it just appear when its needed..atleast in my case
sent from my XPERIA Z using tapatalk
Re: [MOD] Reversed Softkeys w/ Black Bars
lyndonguti said:
great great mate ..i also made a folder for all your mods in my phone lolXD
could you make it samller the navbar?:fingers-crossed: ?
Click to expand...
Click to collapse
I'm sure I can sort something out. I'll look at doing this next time I can play on the computer.
BoneMo said:
wow, you added the 3dot menu button like on picture ? :good:
Click to expand...
Click to collapse
Not really. It just turns up when needed. To keep it permanently on probably needs a smali edit.
Sent from my Xperia Z using XDA Premium
..Have you tried Tickle My Android yet?
Ticklefish said:
I'm sure I can sort something out. I'll look at doing this next time I can play on the computer.
Not really. It just turns up when needed. To keep it permanently on probably needs a smali edit.
Sent from my Xperia Z using XDA Premium
..Have you tried Tickle My Android yet?
Click to expand...
Click to collapse
well its a sure thing then
tbh i dont want it permanently...i want it jus right mow apeeras when needed
maybe put the menu setting to the right instead to the left? that s more comfortble in my case.
youll gonna make me happy with that smaller navbar icons and the menu in right hehe....ofcourse only if you have time...appreciate all your work tnx
nice work, seems you have done with the odexed/deodexed problem.
but why switch the 'recent apps' and 'back' button? i've just get used to the arrangement...
ngelee said:
nice work, seems you have done with the odexed/deodexed problem.
but why switch the 'recent apps' and 'back' button? i've just get used to the arrangement...
Click to expand...
Click to collapse
I honestly think its better like this, recent - home - back, much easier to navigate like that and there was some people asking for this mod few days back so nicely done
Re: [MOD] Reversed Softkeys w/ Black Bars
lyndonguti said:
well its a sure thing then
tbh i dont want it permanently...i want it jus right mow apeeras when needed
maybe put the menu setting to the right instead to the left? that s more comfortble in my case.
youll gonna make me happy with that smaller navbar icons and the menu in right hehe....ofcourse only if you have time...appreciate all your work tnx
Click to expand...
Click to collapse
ngelee said:
nice work, seems you have done with the odexed/deodexed problem.
but why switch the 'recent apps' and 'back' button? i've just get used to the arrangement...
Click to expand...
Click to collapse
Paddiis said:
I honestly think its better like this, recent - home - back, much easier to navigate like that and there was some people asking for this mod few days back so nicely done
Click to expand...
Click to collapse
I'm always happy to take requests! There's a reason why I reserved a few posts, after all!
So I've got to make:
recent-home-back-settings
and
settings-back-home-recent
Anything else?
Sent from my Xperia Z using XDA Premium
..Have you tried Tickle My Android yet?
Re: [MOD] Reversed Softkeys w/ Black Bars
Ticklefish said:
I'm always happy to take requests! There's a reason why I reserved a few posts, after all!
So I've got to make:
recent-home-back-settings
and
settings-back-home-recent
Anything else?
Sent from my Xperia Z using XDA Premium
..Have you tried Tickle My Android yet?
Click to expand...
Click to collapse
You are awsome..and yeah the first thing you did which is reverthing back and recent is just givng me a lot faster navigation of my phone..i used to have a samsung phone which has that reverse style ..so happy that you make a same thing here..
And +1 cause your answering kindly in our request ..
sent from my XPERIA Z using tapatalk
Is it possible to move the 3dot menu button to the right and also auto hide all the soft keys when playing games and apps
Btw I have root my sony xperia z but still on the stock rom so will it work? So which one should I download then?
Re: [MOD] Reversed Softkeys w/ Black Bars
lyndonguti said:
You are awsome..and yeah the first thing you did which is reverthing back and recent is just givng me a lot faster navigation of my phone..i used to have a samsung phone which has that reverse style ..so happy that you make a same thing here..
And +1 cause your answering kindly in our request ..
sent from my XPERIA Z using tapatalk
Click to expand...
Click to collapse
Hey, it's what I'm here for!
eddietah said:
Is it possible to move the 3dot menu button to the right and also auto hide all the soft keys when playing games and apps
Btw I have root my sony xperia z but still on the stock rom so will it work? So which one should I download then?
Click to expand...
Click to collapse
Auto-hiding is a bit tricky for me right now. I can change xml to do all sorts of different layouts but anything involving smali is currently beyond me.
It sounds like you need to download the odexed version. But check to see if you have SystemUI.odex in system/app. If you don't, you need the deodexed version.
Sent from my Xperia Z using XDA Premium
..Have you tried Tickle My Android yet?
Ticklefish said:
Hey, it's what I'm here for!
Auto-hiding is a bit tricky for me right now. I can change xml to do all sorts of different layouts but anything involving smali is currently beyond me.
It sounds like you need to download the odexed version. But check to see if you have SystemUI.odex in system/app. If you don't, you need the deodexed version.
Sent from my Xperia Z using XDA Premium
..Have you tried Tickle My Android yet?
Click to expand...
Click to collapse
I want the 3dot to be on the right cos I'm using a theme that had the 3dot on the right.
I just want to swipe the back button to the right dude
Re: [MOD] Reversed Softkeys w/ Black Bars
eddietah said:
I want the 3dot to be on the right cos I'm using a theme that had the 3dot on the right.
I just want to swipe the back button to the right dude
Click to expand...
Click to collapse
Thats what i requested see his answer 4 post above its for sure gonna be availble soon
We need to just wait
sent from my XPERIA Z using tapatalk
This mod won't work for me. It says after trying to flash the CWM deodex zip that [Error] This requires one sdcard, check your mod.config!
So I put my external sd card out en reboot and still didn't work. I even tried copying it manually but then it wasn't activated after reboot.
The normal black and nav bar worked for me without problems but this reversed one won't install and I am using RomAur's latest rom.
Quintz said:
This mod won't work for me. It says after trying to flash the CWM deodex zip that [Error] This requires one sdcard, check your mod.config!
So I put my external sd card out en reboot and still didn't work. I even tried copying it manually but then it wasn't activated after reboot.
The normal black and nav bar worked for me without problems but this reversed one won't install and I am using RomAur's latest rom.
Click to expand...
Click to collapse
What kernel/recovery are you using?
I know I had the same problem on Doomkernel (CWM recovery) then I changed to TWRP recovery and it works fine, dunno why.
Quintz said:
This mod won't work for me. It says after trying to flash the CWM deodex zip that [Error] This requires one sdcard, check your mod.config!
So I put my external sd card out en reboot and still didn't work. I even tried copying it manually but then it wasn't activated after reboot.
The normal black and nav bar worked for me without problems but this reversed one won't install and I am using RomAur's latest rom.
Click to expand...
Click to collapse
Paddiis said:
What kernel/recovery are you using?
I know I had the same problem on Doomkernel (CWM recovery) then I changed to TWRP recovery and it works fine, dunno why.
Click to expand...
Click to collapse
same here, on stock rom, black & nav bar work for me too but not this...same error report...(This requires one sdcard, check your mod.config)
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Hey everyone this is Sky_Walker from the galaxy ace development forum !!! After successfully launching many roms for my device i thought of porting lockscreens. All credits to Adi Aisiteru Reborn for his guides on BB10 and S3 lockscreens for xhdpi and hdpi devices using which i made it for cm9 mdpi devices. I have used his smali files and images and resized them to fit into our mdpi screens.
Original threads from where i have ported :
BB10 lockscreen
S3 lockscreen
ScreenShots : Taken on galaxy ace
Guide for S3 Lockscreen :
Step1. Decompile your framework-res.apk:
\res\layout\keyguard_screen_tab_unlock.xml
Delete all the lines and replace with this :
Code:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<com.android.internal.widget.WaveView android:id="@id/unlock_widget" android:layout_width="fill_parent" android:layout_height="fill_parent" />
<GridLayout android:gravity="center_horizontal" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.internal.widget.DigitalClock android:id="@id/time" android:paddingTop="@dimen/keyguard_lockscreen_status_line_clockfont_top_margin" android:layout_marginBottom="8.0dip">
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_clock_font_size" android:textColor="@color/lockscreen_clock_background" android:ellipsize="none" android:gravity="center_horizontal" android:id="@id/timeDisplayBackground" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="5.0dip" android:singleLine="true" />
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_clock_font_size" android:textColor="@color/lockscreen_clock_foreground" android:ellipsize="none" android:gravity="center_horizontal" android:id="@id/timeDisplayForeground" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="5.0dip" android:singleLine="true" android:layout_alignLeft="@id/timeDisplayBackground" android:layout_alignTop="@id/timeDisplayBackground" />
</com.android.internal.widget.DigitalClock>
<LinearLayout android:orientation="horizontal" android:layout_width="fill_parent">
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/date" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/alarm_status" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="16.0dip" android:singleLine="true" android:drawablePadding="4.0dip" />
</LinearLayout>
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/status1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" android:drawablePadding="4.0dip" />
<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" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="3.0dip" android:singleLine="true" />
<RelativeLayout android:orientation="horizontal" android:id="@id/weather_panel" android:paddingTop="4.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content">
<ImageView android:id="@id/weather_image" android:paddingLeft="8.0dip" android:paddingRight="8.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_dialog_alert" android:layout_centerHorizontal="true" android:layout_centerVertical="true" />
<RelativeLayout android:orientation="horizontal" android:padding="4.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toLeftOf="@id/weather_image" android:layout_centerVertical="true">
<TextView android:textSize="14.0sp" android:textStyle="bold" android:textColor="?textColorPrimary" android:ellipsize="marquee" android:gravity="right" android:id="@id/weather_city" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" android:layout_alignParentRight="true" />
<TextView android:textSize="12.0sp" android:textColor="?textColorPrimary" android:ellipsize="marquee" android:gravity="right" android:id="@id/weather_condition" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" android:layout_below="@id/weather_city" android:layout_alignParentRight="true" />
<TextView android:textSize="6.0sp" android:textColor="?textColorSecondary" android:gravity="right" android:id="@id/update_time" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/weather_condition" android:layout_alignParentRight="true" />
</RelativeLayout>
<RelativeLayout android:orientation="horizontal" android:id="@id/weather_temps_panel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/weather_image" android:layout_centerVertical="true">
<TextView android:textSize="20.0sp" android:textColor="?textColorPrimary" android:id="@id/weather_temp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" />
<View android:id="@id/weather_divider" android:background="@drawable/divider_horizontal_dark" android:layout_width="44.0dip" android:layout_height="1.0dip" android:layout_below="@id/weather_temp" />
<TextView android:textSize="12.0sp" android:textColor="?textColorPrimary" android:id="@id/weather_low_high" android:paddingTop="2.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/weather_divider" android:layout_centerHorizontal="true" />
</RelativeLayout>
</RelativeLayout>
<Button android:layout_gravity="right" android:id="@id/emergencyCallButton" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="4.0dip" android:layout_marginRight="16.0dip" android:text="@string/lockscreen_emergency_call" android:drawableLeft="@drawable/lockscreen_emergency_button" android:drawablePadding="4.0dip" style="?android:attr/buttonBarButtonStyle" />
<RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content">
<LinearLayout android:gravity="center_vertical" android:id="@id/calendar_panel" android:paddingLeft="12.0dip" android:paddingRight="12.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:minHeight="28.0dip">
<ImageView android:gravity="center" android:layout_gravity="center_vertical" android:layout_width="36.0dip" android:layout_height="wrap_content" android:src="@drawable/ic_lock_idle_calendar" />
<View android:background="@drawable/divider_horizontal_dark" android:paddingTop="6.0dip" android:paddingBottom="6.0dip" android:layout_width="1.0dip" android:layout_height="fill_parent" />
<RelativeLayout android:paddingLeft="4.0dip" android:paddingTop="6.0dip" android:paddingBottom="6.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="1.0">
<TextView android:textSize="14.0sp" android:textColor="?textColorPrimary" android:ellipsize="marquee" android:id="@id/calendar_event_title" android:fadingEdge="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" />
<TextView android:textSize="12.0sp" android:textColor="?textColorSecondary" android:ellipsize="marquee" android:id="@id/calendar_event_details" android:focusable="true" android:focusableInTouchMode="true" android:fadingEdge="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/calendar_event_title" android:layout_alignLeft="@id/calendar_event_title" android:marqueeRepeatLimit="marquee_forever" />
</RelativeLayout>
</LinearLayout>
</RelativeLayout>
<LinearLayout android:gravity="center" android:orientation="horizontal" android:layout_width="fill_parent" android:weightSum="2.0" style="?android:attr/buttonBarStyle">
<Button android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:layout_gravity="center_horizontal" android:id="@id/emergencyCallButton" android:visibility="gone" android:layout_width="0.0dip" android:layout_height="wrap_content" android:text="@string/lockscreen_emergency_call" android:drawableLeft="@drawable/lockscreen_emergency_button" android:drawablePadding="0.0dip" android:layout_weight="1.0" style="?android:attr/buttonBarButtonStyle" />
</LinearLayout>
<include android:layout_gravity="fill" android:id="@id/transport" android:layout_width="0.0dip" android:layout_height="0.0dip" android:layout_column="0" android:layout_row="0" android:layout_rowSpan="8" android:layout_columnSpan="1" layout="@layout/keyguard_transport_control" />
</GridLayout>
</RelativeLayout>
Step 2. Copy the images to \res\drawable-mdpi\
Done recompile your framework-res.apk
Step 3. >Decompile the newly compiled framework-res.apk
>Go to \res\values\public.xml
>Open it on notepad++ and keep it open.
Step 4. >Decompile your framework.jar
>Go to \com\android\internal\widget
>Delete the WaveView.SMALI and replace it with this one
Step 5. Open in notepad++ the new WaveView.smali and look into your new public.xml that you kept open.Make sure the ID in WaveView.smali is same like your new ID in new public.xml but without 0 number in the public.xml
Code:
New WaveView.smali New Public.xml
-line 306 -> 0x10805fc <public type="drawable" name="unlock_ring" id="0x[COLOR="Red"]0[/COLOR]10805fc" />
-line 355 -> 0x10805fa <public type="drawable" name="unlock_default" id="0x[COLOR="red"]0[/COLOR]10805fa" />
-line 404 -> 0x10805fb <public type="drawable" name="unlock_halo" id="0x[COLOR="red"]0[/COLOR]10805fb" />
-line453 -> 0x10805fd <public type="drawable" name="unlock_wave" id="0x[COLOR="red"]0[/COLOR]10805fd" />
if the ID in new public.xml is different, you must change the ID in new WaveView.smali with your new ID in public.xml that is without the number 0 in the public.xml
Thats it and Compile your framework-res.apk and your framework.jar.
Guide for BB10 lockscreen :
Step1. Decompile your framework-res.apk:
\res\layout\keyguard_screen_tab_unlock.xml
Delete all the lines and replace with this :
Code:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<com.android.internal.widget.WaveView android:id="@id/unlock_widget" android:layout_width="fill_parent" android:layout_height="fill_parent" />
<GridLayout android:gravity="center_horizontal" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.internal.widget.DigitalClock android:id="@id/time" android:paddingTop="36.0dip" android:layout_marginBottom="8.0dip">
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_clock_font_size" android:textColor="@color/lockscreen_clock_background" android:ellipsize="none" android:gravity="center_horizontal" android:id="@id/timeDisplayBackground" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="5.0dip" android:singleLine="true" />
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_clock_font_size" android:textColor="@color/lockscreen_clock_foreground" android:ellipsize="none" android:gravity="center_horizontal" android:id="@id/timeDisplayForeground" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="5.0dip" android:singleLine="true" android:layout_alignLeft="@id/timeDisplayBackground" android:layout_alignTop="@id/timeDisplayBackground" />
</com.android.internal.widget.DigitalClock>
<LinearLayout android:orientation="horizontal" android:id="@id/date_line" android:layout_width="fill_parent">
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/date" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/alarm_status" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="16.0dip" android:singleLine="true" android:drawablePadding="4.0dip" />
</LinearLayout>
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/status1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" android:drawablePadding="4.0dip" />
<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" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="3.0dip" android:singleLine="true" />
<RelativeLayout android:orientation="horizontal" android:id="@id/weather_panel" android:paddingTop="4.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content">
<ImageView android:id="@id/weather_image" android:paddingLeft="8.0dip" android:paddingRight="8.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_dialog_alert" android:layout_centerHorizontal="true" android:layout_centerVertical="true" />
<RelativeLayout android:orientation="horizontal" android:padding="4.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toLeftOf="@id/weather_image" android:layout_centerVertical="true">
<TextView android:textSize="14.0sp" android:textStyle="bold" android:textColor="?textColorPrimary" android:ellipsize="marquee" android:gravity="right" android:id="@id/weather_city" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" android:layout_alignParentRight="true" />
<TextView android:textSize="12.0sp" android:textColor="?textColorPrimary" android:ellipsize="marquee" android:gravity="right" android:id="@id/weather_condition" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" android:layout_below="@id/weather_city" android:layout_alignParentRight="true" />
<TextView android:textSize="6.0sp" android:textColor="?textColorSecondary" android:gravity="right" android:id="@id/update_time" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/weather_condition" android:layout_alignParentRight="true" />
</RelativeLayout>
<RelativeLayout android:orientation="horizontal" android:id="@id/weather_temps_panel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/weather_image" android:layout_centerVertical="true">
<TextView android:textSize="20.0sp" android:textColor="?textColorPrimary" android:id="@id/weather_temp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" />
<View android:id="@id/weather_divider" android:background="@drawable/divider_horizontal_dark" android:layout_width="44.0dip" android:layout_height="1.0dip" android:layout_below="@id/weather_temp" />
<TextView android:textSize="12.0sp" android:textColor="?textColorPrimary" android:id="@id/weather_low_high" android:paddingTop="2.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/weather_divider" android:layout_centerHorizontal="true" />
</RelativeLayout>
</RelativeLayout>
<Button android:layout_gravity="right" android:id="@id/emergencyCallButton" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="4.0dip" android:layout_marginRight="16.0dip" android:text="@string/lockscreen_emergency_call" android:drawableLeft="@drawable/lockscreen_emergency_button" android:drawablePadding="4.0dip" style="?android:attr/buttonBarButtonStyle" />
<RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content">
<LinearLayout android:gravity="center_vertical" android:id="@id/calendar_panel" android:paddingLeft="12.0dip" android:paddingRight="12.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:minHeight="28.0dip">
<ImageView android:gravity="center" android:layout_gravity="center_vertical" android:layout_width="36.0dip" android:layout_height="wrap_content" android:src="@drawable/ic_lock_idle_calendar" />
<View android:background="@drawable/divider_horizontal_dark" android:paddingTop="6.0dip" android:paddingBottom="6.0dip" android:layout_width="1.0dip" android:layout_height="fill_parent" />
<RelativeLayout android:paddingLeft="4.0dip" android:paddingTop="6.0dip" android:paddingBottom="6.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="1.0">
<TextView android:textSize="14.0sp" android:textColor="?textColorPrimary" android:ellipsize="marquee" android:id="@id/calendar_event_title" android:fadingEdge="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" />
<TextView android:textSize="12.0sp" android:textColor="?textColorSecondary" android:ellipsize="marquee" android:id="@id/calendar_event_details" android:focusable="true" android:focusableInTouchMode="true" android:fadingEdge="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/calendar_event_title" android:layout_alignLeft="@id/calendar_event_title" android:marqueeRepeatLimit="marquee_forever" />
</RelativeLayout>
</LinearLayout>
</RelativeLayout>
<LinearLayout android:gravity="center" android:orientation="horizontal" android:layout_width="fill_parent" android:weightSum="2.0" style="?android:attr/buttonBarStyle">
<Button android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:layout_gravity="center_horizontal" android:id="@id/emergencyCallButton" android:visibility="gone" android:layout_width="0.0dip" android:layout_height="wrap_content" android:text="@string/lockscreen_emergency_call" android:drawableLeft="@drawable/lockscreen_emergency_button" android:drawablePadding="0.0dip" android:layout_weight="1.0" style="?android:attr/buttonBarButtonStyle" />
</LinearLayout>
<include android:layout_gravity="fill" android:id="@id/transport" android:layout_width="0.0dip" android:layout_height="0.0dip" android:layout_column="0" android:layout_row="0" android:layout_rowSpan="8" android:layout_columnSpan="1" layout="@layout/keyguard_transport_control" />
</GridLayout>
</RelativeLayout>
Step 2.
>Copy theimagesto \res\drawable-mdpi\
>Add this line to the end of \res\values\ids.xml
Code:
<item type="id" name="date_line">false</item>
Done recompile your framework-res.apk
Step 3. >Decompile the newly compiled framework-res.apk
>Go to \res\values\public.xml
>Open it on notepad++ and keep it open.
Step 4. >Decompile your framework.jar
>Go to \com\android\internal\widget
>Delete the WaveView.SMALI and replace it with this one
Step 5. Open in notepad++ the new WaveView.smali and look into your new public.xml that you kept open.Make sure the ID in WaveView.smali is same like your new ID in new public.xml but without 0 number in the public.xml
Code:
New WaveView.smali New Public.xml
-line 198 -> 0x10404bd <public type="string" name="description_target_camera" id="0x010404bd" />
-line 306 -> 0x10805fc <public type="drawable" name="unlock_ring" id="0x[COLOR="Red"]0[/COLOR]10805fc" />
-line355 -> 0x10805fd <public type="drawable" name="unlock_wave" id="0x[COLOR="red"]0[/COLOR]10805fd" />
-line 404 -> 0x10805fa <public type="drawable" name="unlock_default" id="0x[COLOR="red"]0[/COLOR]10805fa" />
-line 453 -> 0x10805fb <public type="drawable" name="unlock_halo" id="0x[COLOR="red"]0[/COLOR]10805fb" />
if the ID in new public.xml is different, you must change the ID in new WaveView.smali with your new ID in public.xml that is without the number 0 in the public.xml
Thats it and Compile your framework-res.apk and your framework.jar and enjoy.
Hit a thanks if this guide helped you !!!!
Reserved !!
Sent from my GT-I9300 using xda premium
could you make a flashable zip for making things easier?
hien98 said:
could you make a flashable zip for making things easier?
Click to expand...
Click to collapse
Yeah sure will make it !!
Sent from my GT-I9300 using xda premium
Hey nice guide. Is there a guide like this for CM10/ 4.1.2 AOSP's?
Sent from my SGH-T999 using xda premium
hien98 said:
could you make a flashable zip for making things easier?
Click to expand...
Click to collapse
+1
Rittik said:
Hey nice guide. Is there a guide like this for CM10/ 4.1.2 AOSP's?
Sent from my SGH-T999 using xda premium
Click to expand...
Click to collapse
Here you go
http://forum.xda-developers.com/showthread.php?t=2236926
Sent from my GT-I9300 using xda premium
nice works
Looks good! Thanks! FYI, it's the Galaxy S2 lock screen, but who cares
Me Gusta!
You did it man, .THANKS by the way,. I'll put this link to my fisrt post
Adi Aisiteru Reborn said:
You did it man, .THANKS by the way,. I'll put this link to my fisrt post
Click to expand...
Click to collapse
Yeah !!
Sent from my GT-I9300 using xda premium
can for cm10 too ?
i love bb10 lockscreen :fingers-crossed:
hey men could u share with us the already flashable zip s3 lockscreen and bb lockscreen...
since I'm still a newbie with this one i dont how to use apk multi tools i try another tools like apk tools but when i try to recompile it, it gives an error hope u give us the mdpi lockscreen modded...
Thanks,,
Toink29
Sky_Walker said:
Yeah !!
Sent from my GT-I9300 using xda premium
Click to expand...
Click to collapse
i've been following this guide, but i make it for LDPI screen
and i put images source in res/drawable-ldpi
But, i cant unlock it
Can you help me?
*sorry for my english
RATnt said:
i've been following this guide, but i make it for LDPI screen
and i put images source in res/drawable-ldpi
But, i cant unlock it
Can you help me?
*sorry for my english
Click to expand...
Click to collapse
like as mine.. hey op any solution for this??????
RATnt said:
i've been following this guide, but i make it for LDPI screen
and i put images source in res/drawable-ldpi
But, i cant unlock it
Can you help me?
*sorry for my english
Click to expand...
Click to collapse
Did you resize the images to ldpi ?
Sent from my GT-I9300 using xda premium
Sky_Walker said:
Did you resize the images to ldpi ?
Sent from my GT-I9300 using xda premium
Click to expand...
Click to collapse
yes, i only resize unlock_default.png [240×400]
@Sky_Walker Can you help me in making this??
I'm using miniCM9
Regards, MR.
Please help!
Everytime I try to recompile it, it says "an error occured" I don't know why is this happening because yesterday it just works -_- I'm using APK multi tool, latest version. Need your help ASAP, I really want to have this BB10 lockscreen for my Xperia Mini!
hey, could you tell how to get rid of the white shadow behind the clock? ?
Hi,
I was quite annoyed by the fact that noone made a Navbar with 4 softkeys instead of the default 3 (at least I couldn´t find any - specially not for 4.2.2).
I do use the menu key quite often and it is quite a hassle for me using menu keys on the top (with such a huge device).
Anyway, here you go: 4 Button Navigation Bar, Black (no idea how to get transparent - tell me if you know how and I will add it). Please note that I am using a 32dpi Navbar, so its smaller (using this MOD should not affect you Navigation Bar size - if it should download another dpi size http://forum.xda-developers.com/showthread.php?t=2171768&page=22 )
If you are using stock 4.2.2 Launcher with the semi-transparent Navbar....those will stay transparent. The screenshots posted use another launcher with black Top and Navbars.
Installation via CWM or TWRP!
DOWNLOAD files below!
Guide:
It is actually quite easy to change this, only 2 Files need to be modded:
1st decompile SystemUI.apk (using Tickle my Adroid is probably the easiest Tool to de- and recompile apps).
2. Now navigate to SystemUI\smali\com\android\systemui\statusbar\phone\NavigationBarView.smali
Find the followin method: .method public setDisabledFlags(IZ)V
Now, right below tthis line should be something like
Code:
.locals 10
As we add a variable we need to raise that number by 1, so change
Code:
.locals x
to
Code:
.locals x+1
in my case I had to change it to
Code:
.locals 11
Still within this .method, find the line
Code:
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getHomeButton()Landroid/view/View;
below that line should be
Code:
move-result-object v9
Now add
Code:
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getMenuButton()Landroid/view/View;
move-result-object v10
The result should look something like this - once again, the
Code:
move-result-object [B]v10[/B]
results from us addind a new var, so if that line before had v7 you would have to add v8, in my case it was v9, so I added v10.
A few lines below you will find
Code:
invoke-virtual {v9, v6}, Landroid/view/View;->setVisibility(I)V
right below add the same content and change v9 (or whatever number it is for you) and increment it by 1, so v9 would be v10, resulting in this:
Code:
invoke-virtual {v9, v6}, Landroid/view/View;->setVisibility(I)V
[B] invoke-virtual {v10, v6}, Landroid/view/View;->setVisibility(I)V[/B]
(Bold = New line added)
Thats more or less how this should look afterwards (numbers asides)
Code:
.line 261
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getHomeButton()Landroid/view/View;
move-result-object v9
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getMenuButton()Landroid/view/View;
move-result-object v10
if-eqz v1, :cond_9
move v6, v8
:goto_8
invoke-virtual {v9, v6}, Landroid/view/View;->setVisibility(I)V
invoke-virtual {v10, v6}, Landroid/view/View;->setVisibility(I)V
.line 262
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getRecentsButton()Landroid/view/View;
3. Now find .method public setMenuVisibility(Z)V and .method public setMenuVisibility(ZZ)V
Pretty much delete everything, the result should look like this.
Code:
.method public setMenuVisibility(Z)V
.locals 1
.parameter "show"
return-void
.end method
.method public setMenuVisibility(ZZ)V
.locals 2
.parameter "show"
.parameter "force"
return-void
.end method
Save and close the file.
4. Open SystemUI/res/layout/navigation_bar.xml to add the button to the xml
I will just paste the conent of this file right below, you will notice the changes. What I basically did was to reformat the buttons and add menu buttons.
The lines startin with
Code:
<view ....
are only there for formatting reasons....you can change the value within
Code:
android:layout_width= and android:layout_height=
to dip values instead (0.0 meaning no gap). Just experiment with those....the worst that will happen is, that you have no navbar at all....so nothing to worry.
This is how the result of mine looks:
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.NavigationBarView android:background="@color/system_ui_opaque_background" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layoutDirection="ltr"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<FrameLayout android:id="@id/rot0" android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout android:orientation="horizontal" android:id="@id/nav_buttons" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:animateLayoutChanges="true">
<View android:visibility="invisible" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="0.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:layout_width="70.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_back" android:layout_weight="0.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="4" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/home" android:layout_width="70.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_home" android:layout_weight="0.0" android:contentDescription="@string/accessibility_home" systemui:keyCode="3" systemui:keyRepeat="false" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:layout_width="70.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_recent" android:layout_weight="0.0" android:contentDescription="@string/accessibility_recent" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/menu" android:layout_width="70.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_menu" android:layout_weight="0.0" android:contentDescription="@string/accessibility_menu" systemui:keyCode="82" systemui:glowBackground="@drawable/ic_sysbar_highlight" />
</LinearLayout>
<LinearLayout android:orientation="horizontal" android:id="@id/lights_out" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent">
<View android:visibility="invisible" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="70.0dip" android:layout_height="fill_parent" android:layout_marginLeft="0.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="70.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="70.0dip" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="70.0dip" android:layout_height="fill_parent" android:layout_marginRight="0.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
</LinearLayout>
<com.android.systemui.statusbar.policy.KeyButtonView android:layout_gravity="center_horizontal" android:id="@id/search_light" android:visibility="gone" android:layout_width="80.0dip" android:layout_height="fill_parent" android:src="@drawable/search_light" android:scaleType="center" />
<com.android.systemui.statusbar.policy.DeadZone android:layout_gravity="top" android:id="@id/deadzone" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:minSize="@dimen/navigation_bar_deadzone_size" systemui:maxSize="@dimen/navigation_bar_deadzone_size_max" systemui:holdTime="@integer/navigation_bar_deadzone_hold" systemui:decayTime="@integer/navigation_bar_deadzone_decay" systemui:orientation="horizontal" />
</FrameLayout>
<FrameLayout android:id="@id/rot90" android:paddingTop="0.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout android:orientation="vertical" android:id="@id/nav_buttons" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:animateLayoutChanges="true">
<View android:visibility="invisible" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/menu" android:layout_width="fill_parent" android:layout_height="70.0dip" android:src="@drawable/ic_sysbar_menu_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_menu" systemui:keyCode="82" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/recent_apps" android:layout_width="fill_parent" android:layout_height="70.0dip" android:src="@drawable/ic_sysbar_recent_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_recent" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/home" android:layout_width="fill_parent" android:layout_height="70.0dip" android:src="@drawable/ic_sysbar_home_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_home" systemui:keyCode="3" systemui:keyRepeat="false" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<com.android.systemui.statusbar.policy.KeyButtonView android:id="@id/back" android:layout_width="fill_parent" android:layout_height="70.0dip" android:src="@drawable/ic_sysbar_back_land" android:layout_weight="0.0" android:contentDescription="@string/accessibility_back" systemui:keyCode="4" systemui:glowBackground="@drawable/ic_sysbar_highlight_land" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:id="@id/lights_out" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent">
<ImageView android:layout_width="fill_parent" android:layout_height="70.0dip" android:layout_marginTop="0.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="70.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="70.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_large" android:scaleType="center" android:layout_weight="0.0" />
<View android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" />
<ImageView android:layout_width="fill_parent" android:layout_height="70.0dip" android:layout_marginBottom="0.0dip" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:layout_weight="0.0" />
</LinearLayout>
<com.android.systemui.statusbar.policy.KeyButtonView android:layout_gravity="center_vertical" android:id="@id/search_light" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="80.0dip" android:src="@drawable/search_light" android:scaleType="center" />
<com.android.systemui.statusbar.policy.DeadZone android:layout_gravity="top" android:id="@id/deadzone" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:minSize="@dimen/navigation_bar_deadzone_size" systemui:maxSize="@dimen/navigation_bar_deadzone_size_max" systemui:holdTime="@integer/navigation_bar_deadzone_hold" systemui:decayTime="@integer/navigation_bar_deadzone_decay" systemui:orientation="vertical" />
</FrameLayout>
<View android:id="@id/rot270" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" />
</com.android.systemui.statusbar.phone.NavigationBarView>
You´re done, recompile SystemUI.apk, prepare it, add it to zip and flash it via CWM/TWRP
Special Thanks to XperienceD for the .244 Version
Props for doing it but kinda looks awkward to me. Maybe because I'm used to the of now
Xperia Z Vanilla
Sweet, Thanks.
dreamville said:
Props for doing it but kinda looks awkward to me. Maybe because I'm used to the of now
Click to expand...
Click to collapse
Yeah, would look better keeping the main 3 buttons central, but should be easy enough to sort.
Good point, i did it this way for symmetry reasons....by default it would have been they way you prefer it. If there is interest in a Version that has the dfeault 3 Buttons and a off-centric Menü Button, I will compile a new Version.
thanks bro looks great. i was wondering why sony decided to leave out the menu button. now i just have to figure out how to make it open settings from home screen and ill be set
flintston314 said:
If there is interest in a Version that has the dfeault 3 Buttons and a off-centric Menü Button, I will compile a new Version.
Click to expand...
Click to collapse
You could also add a "How To".
thanx mate , good to see new navbar...could you make an option for closing active app by long press of back button? transparency would be nice as well
thanx a lot for your work
glukasil said:
thanx mate , good to see new navbar...could you make an option for closing active app by long press of back button? transparency would be nice as well
thanx a lot for your work
Click to expand...
Click to collapse
Ok, I tried changing the Navbar to transparent...this obviously wont work on 4.2.2 or at least I do not know how to. All the guides for changing it are 2-3 months old and those hacks wont´t work anymore. The transparency seems to be part of the system, because the launcher will show things semi-transparent by default, but if you install another launcher, that will be gone.
So, if anyone can link me a guide or a mod with transparent Nav/Statusbars that still works under 4.2.2 .423 I will gladly include it.
Kill on back seems to have the same problem....couldn´t find a working version for .423.
there is a chinese guy who is developing an app called FullNexus4 ..... it is a navbar which replaces original with a lot of options.....it works on 4.2.2 with transparency and app killing....check it out on xda talk to the guy , he may help you to get some ideas good luck , will be watching for new soft from you.
Hi. This is a great mod :highfive: Has anyone tried this on .244? And is it possible to add stock grey colour?
quantumtraveler said:
Hi. This is a great mod :highfive: Has anyone tried this on .244? And is it possible to add stock grey colour?
Click to expand...
Click to collapse
I tried with no success.
Sent from my C6603 using xda premium
glukasil said:
there is a chinese guy who is developing an app called FullNexus4 ..... it is a navbar which replaces original with a lot of options.....it works on 4.2.2 with transparency and app killing....check it out on xda talk to the guy , he may help you to get some ideas good luck , will be watching for new soft from you.
Click to expand...
Click to collapse
Sorry, this is way out of my league. There is also an App called Ultimate Dynamic Navbar, this is awesome and does way more than this little hack. I just wanted to have a Menu button, no more. Installing an APP was nothing I wanted.....
Concerning chaning colors: I did not manage to change those....might have something to do with 4.2.2. In 4.1.x you could just change the color of the menu or navbar within the XML (more or less), doing so now will not have any effect.
I am sure someone knowing how to de- and recompile a file can easily change the files to easily work in any other build. It´s really quite easy actually.
Thanks for the guide, works perfect on .244 and now I'm using it I actually prefer it as you've done it with the home button off center.
XperienceD said:
Thanks for the guide, works perfect on .244 and now I'm using it I actually prefer it as you've done it with the home button off center.
Click to expand...
Click to collapse
Would u mind to share it mate??
Blacklistest said:
Would u mind to share it mate??
Click to expand...
Click to collapse
Sure, see attachment for a deodexed SystemUi.apk ...
XperienceD said:
Sure, see attachment ...
Click to expand...
Click to collapse
thanks so much :highfive:
XperienceD said:
Sure, see attachment ...
Click to expand...
Click to collapse
Its workin on the latest Romaur 8.0 ...thanx fr the work:thumbup:
Dhruv'z xz
XperienceD said:
Sure, see attachment ...
Click to expand...
Click to collapse
try this one on .244 but only three buttons appeared.
i'm flash it via CWM, anything goes wrong ?
jimfactory said:
i'm flash it via CWM, anything goes wrong ?
Click to expand...
Click to collapse
Is your ROM deodexed?
XperienceD said:
Is your ROM deodexed?
Click to expand...
Click to collapse
No, stock rom.
Work on deodexed rom only ?
Galaxy SIII Lockscreen for CM10
for HDPI device only
This guide is based on Adi Aisiteru Reborn's guide, you can see his guide here. Basically, what I do is fix layout in his XML file.
Screenshot from my device :
See attachment
Okay, let's start the guide !
Click to expand...
Click to collapse
What will you need for the guide :
Code:
- Experience with using APK and JAR decompiling / recompiling
- Text editing program, Notepad++ (Windows) / Gedit (Ubuntu) will do
- APK and JAR reverse engineering program (APKTool recommended)
Warning, read before starting !
Always set background on lockscreen as default wallpaper ! Don't set wallpaper to custom or color fill, or you'll get bootloop !
Click to expand...
Click to collapse
------------------------
GUIDE STARTED !
------------------------
Step 1
Decompile framework-res.apk, make sure you do this right.
Open /res/layout
Open keyguard_screen_tab_unlock.xml, replace all lines in your file with this line :
Code:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<com.android.internal.widget.WaveView android:id="@id/unlock_widget" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="150.0dip" />
<GridLayout android:gravity="center_horizontal" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.internal.widget.DigitalClock android:id="@id/time" android:paddingTop="@dimen/keyguard_lockscreen_status_line_clockfont_top_margin" android:layout_marginBottom="@dimen/keyguard_lockscreen_status_line_clockfont_bottom_margin">
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_clock_font_size" android:textColor="@color/lockscreen_clock_background" android:ellipsize="none" android:gravity="center_horizontal" android:id="@id/timeDisplayBackground" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="2.0dip" android:singleLine="true" />
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_clock_font_size" android:textColor="@color/lockscreen_clock_foreground" android:ellipsize="none" android:gravity="center_horizontal" android:id="@id/timeDisplayForeground" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="2.0dip" android:singleLine="true" android:shadowColor="@color/black_50_trans" android:shadowDx="1.0" android:shadowDy="2.0" android:shadowRadius="5.0" android:layout_alignLeft="@id/timeDisplayBackground" android:layout_alignTop="@id/timeDisplayBackground" />
</com.android.internal.widget.DigitalClock>
<LinearLayout android:orientation="horizontal" android:layout_width="fill_parent">
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_date_font_size" android:textStyle="bold" android:textColor="@color/lockscreen_date" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/date" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" android:shadowColor="@color/black_25_trans" android:shadowDx="0.0" android:shadowDy="2.0" android:shadowRadius="1.0" />
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/alarm_status" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="16.0dip" android:singleLine="true" android:shadowColor="@color/black_50_trans" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="0.5" android:drawablePadding="4.0dip" />
</LinearLayout>
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/status1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" android:shadowColor="@color/black_50_trans" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="0.5" android:drawablePadding="4.0dip" />
<RelativeLayout android:orientation="horizontal" android:id="@id/weather_panel" android:paddingTop="4.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content">
<ImageView android:id="@id/weather_image" android:paddingLeft="8.0dip" android:paddingRight="8.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_dialog_alert" android:layout_centerHorizontal="true" android:layout_centerVertical="true" />
<RelativeLayout android:orientation="horizontal" android:padding="4.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toLeftOf="@id/weather_image" android:layout_centerVertical="true">
<TextView android:textSize="14.0sp" android:textStyle="bold" android:textColor="?textColorPrimary" android:ellipsize="marquee" android:gravity="right" android:id="@id/weather_city" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" android:layout_alignParentRight="true" />
<TextView android:textSize="12.0sp" android:textColor="?textColorPrimary" android:ellipsize="marquee" android:gravity="right" android:id="@id/weather_condition" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" android:layout_below="@id/weather_city" android:layout_alignParentRight="true" />
<TextView android:textSize="6.0sp" android:textColor="?textColorSecondary" android:gravity="right" android:id="@id/update_time" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/weather_condition" android:layout_alignParentRight="true" />
</RelativeLayout>
<RelativeLayout android:orientation="horizontal" android:id="@id/weather_temps_panel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/weather_image" android:layout_centerVertical="true">
<TextView android:textSize="20.0sp" android:textColor="?textColorPrimary" android:id="@id/weather_temp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" />
<View android:id="@id/weather_divider" android:background="@drawable/divider_horizontal_dark" android:layout_width="44.0dip" android:layout_height="1.0dip" android:layout_below="@id/weather_temp" />
<TextView android:textSize="12.0sp" android:textColor="?textColorPrimary" android:id="@id/weather_low_high" android:paddingTop="2.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/weather_divider" android:layout_centerHorizontal="true" />
</RelativeLayout>
</RelativeLayout>
<Button android:layout_gravity="right" android:id="@id/emergencyCallButton" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="4.0dip" android:layout_marginRight="16.0dip" android:text="@string/lockscreen_emergency_call" android:drawableLeft="@drawable/lockscreen_emergency_button" android:drawablePadding="4.0dip" style="?android:attr/buttonBarButtonStyle" />
<RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content">
<LinearLayout android:gravity="center_vertical" android:id="@id/calendar_panel" android:paddingLeft="12.0dip" android:paddingRight="12.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:minHeight="28.0dip">
<ImageView android:gravity="center" android:layout_gravity="center_vertical" android:layout_width="36.0dip" android:layout_height="wrap_content" android:src="@drawable/ic_lock_idle_calendar" />
<View android:background="@drawable/divider_horizontal_dark" android:paddingTop="6.0dip" android:paddingBottom="6.0dip" android:layout_width="1.0dip" android:layout_height="fill_parent" />
<RelativeLayout android:paddingLeft="4.0dip" android:paddingTop="6.0dip" android:paddingBottom="6.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="1.0">
<TextView android:textSize="14.0sp" android:textColor="?textColorPrimary" android:ellipsize="marquee" android:id="@id/calendar_event_title" android:fadingEdge="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" />
<TextView android:textSize="12.0sp" android:textColor="?textColorSecondary" android:ellipsize="marquee" android:id="@id/calendar_event_details" android:focusable="true" android:focusableInTouchMode="true" android:fadingEdge="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/calendar_event_title" android:layout_alignLeft="@id/calendar_event_title" android:marqueeRepeatLimit="marquee_forever" />
</RelativeLayout>
</LinearLayout>
</RelativeLayout>
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_swipe_font_size" android:textColor="@color/lockscreen_carrier_swipe" android:ellipsize="marquee" android:gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="295.0dip" android:text="@string/lockscreen_title" android:singleLine="true" android:shadowColor="@color/black_25_trans" android:shadowDx="2.0" android:shadowDy="2.0" android:shadowRadius="1.0" android:layout_alignParentBottom="true" />
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_carrier_font_size" android:textColor="@color/lockscreen_carrier_swipe" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/carrier" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="2.0dip" android:singleLine="true" android:shadowColor="@color/black_25_trans" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="0.5" android:layout_alignParentBottom="true" />
<LinearLayout android:gravity="center" android:orientation="horizontal" android:layout_width="fill_parent" android:weightSum="2.0" style="?android:attr/buttonBarStyle">
<Button android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:layout_gravity="center_horizontal" android:id="@id/emergencyCallButton" android:visibility="gone" android:layout_width="0.0dip" android:layout_height="wrap_content" android:text="@string/lockscreen_emergency_call" android:drawableLeft="@drawable/lockscreen_emergency_button" android:drawablePadding="0.0dip" android:layout_weight="1.0" style="?android:attr/buttonBarButtonStyle" />
</LinearLayout>
<include android:layout_gravity="fill" android:id="@id/transport" android:layout_width="0.0dip" android:layout_height="0.0dip" android:layout_column="0" android:layout_row="0" android:layout_rowSpan="8" android:layout_columnSpan="1" layout="@layout/keyguard_transport_control" />
</GridLayout>
</RelativeLayout>
Save your file, navigate to /res/values
Open dimens.xml
Add / edit following lines :
Code:
<dimen name="keyguard_lockscreen_clock_font_size">[COLOR="Red"]91.0dip[/COLOR]</dimen>
<dimen name="keyguard_lockscreen_status_line_font_size">[COLOR="Red"]17.0dip[/COLOR]</dimen>
<dimen name="keyguard_lockscreen_status_line_font_right_margin">[COLOR="Red"]32.0dip[/COLOR]</dimen>
<dimen name="keyguard_lockscreen_status_line_clockfont_top_margin">[COLOR="Red"]27.0dip[/COLOR]</dimen>
<dimen name="keyguard_lockscreen_status_line_clockfont_bottom_margin">[COLOR="Red"]8.0dip[/COLOR]</dimen>
[COLOR="Blue"] <dimen name="keyguard_lockscreen_date_font_size">20.0dip</dimen>
<dimen name="keyguard_lockscreen_swipe_font_size">19.0dip</dimen>
<dimen name="keyguard_lockscreen_carrier_font_size">18.0dip</dimen>[/COLOR]
Red means edit the value to the provided value above.
Blue means add lines above.
If the line doesn't exist, add it !
Save your file
Next, open colors.xml
Add following lines :
Code:
[COLOR="Blue"] <color name="transparent_white">#66ffffff</color>
<color name="black_50_trans">#80000000</color>
<color name="black_25_trans">#bf000000</color>
<color name="lockscreen_date">#fff6f7c9</color>
<color name="lockscreen_carrier_swipe">#ffebebeb</color>[/COLOR]
Save your file.
Extract downloaded drawables.zip to drawable-hdpi folder
Compile your framework-res.
Step 2
Decompile your framework-res.apk again
Open /res/values/public.xml, but don't do anything. Leave the text editor.
Decompile framework.jar
Extract the smali in S3_WaveView.zip to /com/android/internal/widget, replace every existing file with the one on S3_WaveView.zip
Compile your framework.jar
Step 3
Decompile again framework.jar
Go to /com/android/internal/widget and edit WaveView.smali
Now, open back the public.xml you've opened.
Compare the IDs in WaveView with the one on public.xml
Make sure the IDs in WaveView is same like on public.xml
Code:
[B]new WaveView.smali[/B] [B] new public.xml[/B]
line 198. const v1, 0x10404f5 -> <public type="string" name="description_direction_left" id="0x[COLOR="Red"]0[/COLOR]10404f5" />
line. 306 const v1, 0x1080622 -> <public type="drawable" name="unlock_ring" id="0x[COLOR="Red"]0[/COLOR]1080622" />
line. 355 const v1, 0x1080620 -> <public type="drawable" name="unlock_default" id="0x[COLOR="Red"]0[/COLOR]1080620" />
line.404 const v1, 0x1080621 -> <public type="drawable" name="unlock_halo" id="0x[COLOR="Red"]0[/COLOR]1080621" />
line.453 const v1, 0x1080623 -> <public type="drawable" name="unlock_wave" id="0x[COLOR="Red"]0[/COLOR]1080623" />
If WaveView IDs are not same, change it but without the red parts (the red zero).
Done, compile framework.jar
Delete the framework-res folder.
Extras for S3 like clock-font :
Download the clock-fonts.zip, extract the content /system/fonts/
Done, enjoy modding !
Why is there no ripple in the lock screen like on the GS3?
Sent from my Amazon Tate using XDA Premium 4 mobile app
AwesomeSMS said:
Why is there no ripple in the lock screen like on the GS3?
Sent from my Amazon Tate using XDA Premium 4 mobile app
Click to expand...
Click to collapse
Well, that's hard to simulate.
#F4UZAN
Galaxy SIII Lockscreen for CM10
for HDPI device only
This guide is based on Adi Aisiteru Reborn's guide, you can see his guide here. Basically, what I do is fix layout in his XML file.
Screenshot from my device :
See attachment
Okay, let's start the guide !
Click to expand...
Click to collapse
What will you need for the guide :
Code:
- Experience with using APK and JAR decompiling / recompiling
- Text editing program, Notepad++ (Windows) / Gedit (Ubuntu) will do
- APK and JAR reverse engineering program (APKTool recommended)
Warning, read before starting !
Always set background on lockscreen as default wallpaper ! Don't set wallpaper to custom or color fill, or you'll get bootloop !
Click to expand...
Click to collapse
------------------------
GUIDE STARTED !
------------------------
Step 1
Decompile framework-res.apk, make sure you do this right.
Open /res/layout
Open keyguard_screen_tab_unlock.xml, replace all lines in your file with this line :
Code:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<com.android.internal.widget.WaveView android:id="@id/unlock_widget" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="150.0dip" />
<GridLayout android:gravity="center_horizontal" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.internal.widget.DigitalClock android:id="@id/time" android:paddingTop="@dimen/keyguard_lockscreen_status_line_clockfont_top_margin" android:layout_marginBottom="@dimen/keyguard_lockscreen_status_line_clockfont_bottom_margin">
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_clock_font_size" android:textColor="@color/lockscreen_clock_background" android:ellipsize="none" android:gravity="center_horizontal" android:id="@id/timeDisplayBackground" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="2.0dip" android:singleLine="true" />
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_clock_font_size" android:textColor="@color/lockscreen_clock_foreground" android:ellipsize="none" android:gravity="center_horizontal" android:id="@id/timeDisplayForeground" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="2.0dip" android:singleLine="true" android:shadowColor="@color/black_50_trans" android:shadowDx="1.0" android:shadowDy="2.0" android:shadowRadius="5.0" android:layout_alignLeft="@id/timeDisplayBackground" android:layout_alignTop="@id/timeDisplayBackground" />
</com.android.internal.widget.DigitalClock>
<LinearLayout android:orientation="horizontal" android:layout_width="fill_parent">
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_date_font_size" android:textStyle="bold" android:textColor="@color/lockscreen_date" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/date" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" android:shadowColor="@color/black_25_trans" android:shadowDx="0.0" android:shadowDy="2.0" android:shadowRadius="1.0" />
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/alarm_status" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="16.0dip" android:singleLine="true" android:shadowColor="@color/black_50_trans" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="0.5" android:drawablePadding="4.0dip" />
</LinearLayout>
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/status1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" android:shadowColor="@color/black_50_trans" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="0.5" android:drawablePadding="4.0dip" />
<RelativeLayout android:orientation="horizontal" android:id="@id/weather_panel" android:paddingTop="4.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content">
<ImageView android:id="@id/weather_image" android:paddingLeft="8.0dip" android:paddingRight="8.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_dialog_alert" android:layout_centerHorizontal="true" android:layout_centerVertical="true" />
<RelativeLayout android:orientation="horizontal" android:padding="4.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toLeftOf="@id/weather_image" android:layout_centerVertical="true">
<TextView android:textSize="14.0sp" android:textStyle="bold" android:textColor="?textColorPrimary" android:ellipsize="marquee" android:gravity="right" android:id="@id/weather_city" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" android:layout_alignParentRight="true" />
<TextView android:textSize="12.0sp" android:textColor="?textColorPrimary" android:ellipsize="marquee" android:gravity="right" android:id="@id/weather_condition" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" android:layout_below="@id/weather_city" android:layout_alignParentRight="true" />
<TextView android:textSize="6.0sp" android:textColor="?textColorSecondary" android:gravity="right" android:id="@id/update_time" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/weather_condition" android:layout_alignParentRight="true" />
</RelativeLayout>
<RelativeLayout android:orientation="horizontal" android:id="@id/weather_temps_panel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/weather_image" android:layout_centerVertical="true">
<TextView android:textSize="20.0sp" android:textColor="?textColorPrimary" android:id="@id/weather_temp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" />
<View android:id="@id/weather_divider" android:background="@drawable/divider_horizontal_dark" android:layout_width="44.0dip" android:layout_height="1.0dip" android:layout_below="@id/weather_temp" />
<TextView android:textSize="12.0sp" android:textColor="?textColorPrimary" android:id="@id/weather_low_high" android:paddingTop="2.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/weather_divider" android:layout_centerHorizontal="true" />
</RelativeLayout>
</RelativeLayout>
<Button android:layout_gravity="right" android:id="@id/emergencyCallButton" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="4.0dip" android:layout_marginRight="16.0dip" android:text="@string/lockscreen_emergency_call" android:drawableLeft="@drawable/lockscreen_emergency_button" android:drawablePadding="4.0dip" style="?android:attr/buttonBarButtonStyle" />
<RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content">
<LinearLayout android:gravity="center_vertical" android:id="@id/calendar_panel" android:paddingLeft="12.0dip" android:paddingRight="12.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:minHeight="28.0dip">
<ImageView android:gravity="center" android:layout_gravity="center_vertical" android:layout_width="36.0dip" android:layout_height="wrap_content" android:src="@drawable/ic_lock_idle_calendar" />
<View android:background="@drawable/divider_horizontal_dark" android:paddingTop="6.0dip" android:paddingBottom="6.0dip" android:layout_width="1.0dip" android:layout_height="fill_parent" />
<RelativeLayout android:paddingLeft="4.0dip" android:paddingTop="6.0dip" android:paddingBottom="6.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="1.0">
<TextView android:textSize="14.0sp" android:textColor="?textColorPrimary" android:ellipsize="marquee" android:id="@id/calendar_event_title" android:fadingEdge="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" />
<TextView android:textSize="12.0sp" android:textColor="?textColorSecondary" android:ellipsize="marquee" android:id="@id/calendar_event_details" android:focusable="true" android:focusableInTouchMode="true" android:fadingEdge="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/calendar_event_title" android:layout_alignLeft="@id/calendar_event_title" android:marqueeRepeatLimit="marquee_forever" />
</RelativeLayout>
</LinearLayout>
</RelativeLayout>
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_swipe_font_size" android:textColor="@color/lockscreen_carrier_swipe" android:ellipsize="marquee" android:gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="295.0dip" android:text="@string/lockscreen_title" android:singleLine="true" android:shadowColor="@color/black_25_trans" android:shadowDx="2.0" android:shadowDy="2.0" android:shadowRadius="1.0" android:layout_alignParentBottom="true" />
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_carrier_font_size" android:textColor="@color/lockscreen_carrier_swipe" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/carrier" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="2.0dip" android:singleLine="true" android:shadowColor="@color/black_25_trans" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="0.5" android:layout_alignParentBottom="true" />
<LinearLayout android:gravity="center" android:orientation="horizontal" android:layout_width="fill_parent" android:weightSum="2.0" style="?android:attr/buttonBarStyle">
<Button android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:layout_gravity="center_horizontal" android:id="@id/emergencyCallButton" android:visibility="gone" android:layout_width="0.0dip" android:layout_height="wrap_content" android:text="@string/lockscreen_emergency_call" android:drawableLeft="@drawable/lockscreen_emergency_button" android:drawablePadding="0.0dip" android:layout_weight="1.0" style="?android:attr/buttonBarButtonStyle" />
</LinearLayout>
<include android:layout_gravity="fill" android:id="@id/transport" android:layout_width="0.0dip" android:layout_height="0.0dip" android:layout_column="0" android:layout_row="0" android:layout_rowSpan="8" android:layout_columnSpan="1" layout="@layout/keyguard_transport_control" />
</GridLayout>
</RelativeLayout>
Save your file, navigate to /res/values
Open dimens.xml
Add / edit following lines :
Code:
<dimen name="keyguard_lockscreen_clock_font_size">[COLOR="Red"]91.0dip[/COLOR]</dimen>
<dimen name="keyguard_lockscreen_status_line_font_size">[COLOR="Red"]17.0dip[/COLOR]</dimen>
<dimen name="keyguard_lockscreen_status_line_font_right_margin">[COLOR="Red"]32.0dip[/COLOR]</dimen>
<dimen name="keyguard_lockscreen_status_line_clockfont_top_margin">[COLOR="Red"]27.0dip[/COLOR]</dimen>
<dimen name="keyguard_lockscreen_status_line_clockfont_bottom_margin">[COLOR="Red"]8.0dip[/COLOR]</dimen>
[COLOR="Blue"] <dimen name="keyguard_lockscreen_date_font_size">20.0dip</dimen>
<dimen name="keyguard_lockscreen_swipe_font_size">19.0dip</dimen>
<dimen name="keyguard_lockscreen_carrier_font_size">18.0dip</dimen>[/COLOR]
Red means edit the value to the provided value above.
Blue means add lines above.
If the line doesn't exist, add it !
Save your file
Next, open colors.xml
Add following lines :
Code:
[COLOR="Blue"] <color name="transparent_white">#66ffffff</color>
<color name="black_50_trans">#80000000</color>
<color name="black_25_trans">#bf000000</color>
<color name="lockscreen_date">#fff6f7c9</color>
<color name="lockscreen_carrier_swipe">#ffebebeb</color>[/COLOR]
Save your file.
Extract downloaded drawables.zip to drawable-hdpi folder
Compile your framework-res.
Step 2
Decompile your framework-res.apk again
Open /res/values/public.xml, but don't do anything. Leave the text editor.
Decompile framework.jar
Extract the smali in S3_WaveView.zip to /com/android/internal/widget, replace every existing file with the one on S3_WaveView.zip
Compile your framework.jar
Step 3
Decompile again framework.jar
Go to /com/android/internal/widget and edit WaveView.smali
Now, open back the public.xml you've opened.
Compare the IDs in WaveView with the one on public.xml
Make sure the IDs in WaveView is same like on public.xml
Code:
[B]new WaveView.smali[/B] [B] new public.xml[/B]
line 198. const v1, 0x10404f5 -> <public type="string" name="description_direction_left" id="0x[COLOR="Red"]0[/COLOR]10404f5" />
line. 306 const v1, 0x1080622 -> <public type="drawable" name="unlock_ring" id="0x[COLOR="Red"]0[/COLOR]1080622" />
line. 355 const v1, 0x1080620 -> <public type="drawable" name="unlock_default" id="0x[COLOR="Red"]0[/COLOR]1080620" />
line.404 const v1, 0x1080621 -> <public type="drawable" name="unlock_halo" id="0x[COLOR="Red"]0[/COLOR]1080621" />
line.453 const v1, 0x1080623 -> <public type="drawable" name="unlock_wave" id="0x[COLOR="Red"]0[/COLOR]1080623" />
If WaveView IDs are not same, change it but without the red parts (the red zero).
Done, compile framework.jar
Delete the framework-res folder.
Extras for S3 like clock-font :
Download the clock-fonts.zip, extract the content /system/fonts/
Done, enjoy modding !
looks good, but the work is not tested, waiting for reviews
ezio68 said:
looks good, but the work is not tested, waiting for reviews
Click to expand...
Click to collapse
Tested on my device (CM10).
#F4UZAN