[HOWTO] Extended Power Menu (EPM): adding Recovery & Download - AT&T Samsung Galaxy S 4 Android Development

{
"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"
}
This thread is a continuation of many previous ones, mainly the one by untermensch (http://forum.xda-developers.com/showthread.php?t=811532). I kept the mod going for ICS (http://forum.xda-developers.com/showpost.php?p=24218275&postcount=217), and figured 4.2.2 is deserving of a new thread.
The good news is the framework actually simplified the mod, requiring only two files to be updated. This tutorial is based on UCUAMDL.
1. framework-res.apk (this 1st part is unchanged from previous thread)
a) In strings.xml, add:
Code:
<string name="epm_recovery">Recovery</string>
<string name="epm_download">Download</string>
b) In public.xml, add (NOTE: these resource IDs will change in the future!!):
Code:
<public type="string" name="epm_recovery" id="0x010408e3" />
<public type="string" name="epm_download" id="0x010408e4" />
<public type="drawable" name="ic_lock_recovery" id="0x01080c9d" />
<public type="drawable" name="ic_lock_download" id="0x01080c9e" />
c) Lastly, add your two icons as ic_lock_recovery.png and ic_lock_download.png in drawable-hdpi.
Compile framework-res.apk, upload and reboot phone.
-----------------------------------------------------------------------------------------------
2. android.policy.jar
a) In GlobalActions.smali, add the following variables around line 150:
Code:
.field private mRecovery:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;
.field private mDownload:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;
b) Same file, find:
.line 566
new-instance v0, Lcom/android/internal/policy/impl/GlobalActions$5;
const v1, 0x108097f
const v2, 0x1040199
invoke-direct {v0, p0, v1, v2}, Lcom/android/internal/policy/impl/GlobalActions$5;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
iput-object v0, p0, Lcom/android/internal/policy/impl/GlobalActions;->mRestart:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;
Add this code directly below it (NOTE: this code references the resource IDs above, be sure to correct if they've changed):
Code:
new-instance v0, Lcom/android/internal/policy/impl/GlobalActions$18;
const v1, [COLOR="Red"]0x1080c9d[/COLOR]
const v2, [COLOR="red"]0x10408e3[/COLOR]
invoke-direct {v0, p0, v1, v2}, Lcom/android/internal/policy/impl/GlobalActions$18;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
iput-object v0, p0, Lcom/android/internal/policy/impl/GlobalActions;->mRecovery:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;
new-instance v0, Lcom/android/internal/policy/impl/GlobalActions$19;
const v1, [COLOR="red"]0x1080c9e[/COLOR]
const v2, [COLOR="red"]0x10408e4[/COLOR]
invoke-direct {v0, p0, v1, v2}, Lcom/android/internal/policy/impl/GlobalActions$19;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
iput-object v0, p0, Lcom/android/internal/policy/impl/GlobalActions;->mDownload:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;
c) About 10 lines below, you will see:
.line 659
const/4 v0, 0x6
Change it to:
Code:
const/16 v0, 0x8
d) About 20 lines below that, you will see:
const/4 v1, 0x5
iget-object v2, p0, Lcom/android/internal/policy/impl/GlobalActions;->mBugReport:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;
aput-object v2, v0, v1
Add this code directly after:
Code:
const/4 v1, 0x6
iget-object v2, p0, Lcom/android/internal/policy/impl/GlobalActions;->mRecovery:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;
aput-object v2, v0, v1
const/4 v1, 0x7
iget-object v2, p0, Lcom/android/internal/policy/impl/GlobalActions;->mDownload:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;
aput-object v2, v0, v1
e) All that's left is to add the 2 smalis to handle when the menu items are selected. This is where the code is now simplified, as we don't need to mess with framework.jar anymore. In short, ShutDownThread.smali in framework has a reboot method that supports a parameter. So we simply call it with the appropriate param (either recovery or download).
Still in policy.jar, copy GlobalActions$5.smali as a template for GlobalActions$18.smali, change all the $5 to $18, and then we are going to replace the onPress method with this:
Code:
.method public onPress()V
.registers 6
.prologue
iget-object v1, p0, Lcom/android/internal/policy/impl/GlobalActions[COLOR="Red"]$18[/COLOR];->this$0:Lcom/android/internal/policy/impl/GlobalActions;
# getter for: Lcom/android/internal/policy/impl/GlobalActions;->mContext:Landroid/content/Context;
invoke-static {v1}, Lcom/android/internal/policy/impl/GlobalActions;->access$000(Lcom/android/internal/policy/impl/GlobalActions;)Landroid/content/Context;
move-result-object v1
const-string v2, [COLOR="red"]"recovery"[/COLOR]
const/4 v3, [COLOR="red"]0x1[/COLOR] # CONFIRMATION FLAG
invoke-static {v1, v2, v3}, Lcom/android/server/power/ShutdownThread;->reboot(Landroid/content/Context;Ljava/lang/String;Z)V
return-void
.end method
Repeat this step for GlobalActions$19.smali but change "recovery" to "download", and $18 to $19, in the code fragment above. Also note, you can decide whether you want a confirmation dialog or not by setting v3 to 0x0 (no) or 0x1 (yes).
Compile android.policy.jar, upload and reboot! If all went well, you will see the EPM with your new options :fingers-crossed:
ADDENDUM:
If you're interested in adding Flashlight to the EPM, this is the onPress method:
Code:
.method public onPress()V
.registers 6
.prologue
sget-boolean v0, Lcom/android/internal/policy/impl/GlobalActions$20;->mFlashlight:Z
if-nez v0, :cond_6
const/4 v2, 0x1
goto :goto_7
:cond_6
const/4 v2, 0x0
:goto_7
sput-boolean v2, Lcom/android/internal/policy/impl/GlobalActions$20;->mFlashlight:Z
invoke-static {v2}, Lcom/sec/android/hardware/SecHardwareInterface;->setTorchLight(I)V
return-void
.end method

Good info. Looks like I have some work to do. Question, would these modifications require deodexed rom?
Tapped from the Shear Galaxy Near You!

htcslic said:
Good info. Looks like I have some work to do. Question, would these modifications require deodexed rom?
Tapped from the Shear Galaxy Near You!
Click to expand...
Click to collapse
I only work with deodexed files.

jeboo said:
I only work with deodexed files.
Click to expand...
Click to collapse
Gonna try with odex'd and see how things go..
Tapped from the Shear Galaxy Near You!

Awesome work jeboo
thanks for your efforts!
Sent from my SHV-E300S using XDA Premium HD app

I've updated the OP onPress() code to make the phone shut down gracefully (animation, etc). It seems rebootOrShutdown was a bit too low level. You can also decide if you want a confirmation box too. Thanks to shoman for pointing this out

Are you thinking of making a flashable zip?
Sent from my SAMSUNG-SGH-I337 using xda premium

goobieracing said:
Are you thinking of making a flashable zip?
Sent from my SAMSUNG-SGH-I337 using xda premium
Click to expand...
Click to collapse
I rarely post .zips, and it would be unwise in this case. Mismatched resource IDs will lead to crash and/or possible bootloop.

I updated the OP with the code needed for adding a Flashlight menu option.

jeboo said:
I updated the OP with the code needed for adding a Flashlight menu option.
Click to expand...
Click to collapse
Really Nice brother! Thanks alot

Can you make toturial for screen short....
Sent from my GT-I9205

I have use this info 2 or 3 times now, great work, and works perfect...thanks.
---------- Post added at 09:53 AM ---------- Previous post was at 09:51 AM ----------
jeboo said:
I rarely post .zips, and it would be unwise in this case. Mismatched resource IDs will lead to crash and/or possible bootloop.
Click to expand...
Click to collapse
lol, and trust me, this is exactly what happens, it will not boot. been there done that...
I wish there was one place with info like this for other mods....you know, like a all in one place...would be cool.

I'll post the screenshot code later, it was not a trivial patch
Sent from my SAMSUNG-SGH-I337 using xda app-developers app

jeboo said:
I'll post the screenshot code later, it was not a trivial patch
Sent from my SAMSUNG-SGH-I337 using xda app-developers app
Click to expand...
Click to collapse
@jeboo Hey bro I'm trying to do this setup for the Note 3, can I get the icons for the download and recovery options if you don't mind? Thanks bro!

htcslic said:
Gonna try with odex'd and see how things go..
Tapped from the Shear Galaxy Near You!
Click to expand...
Click to collapse
I posted this in a different thread but this one seems more active.
I am running JB 4.2.2 on a Tmobile Galaxy S4. Here is what I've done thus far:
1) Pulled /system/framework/framework-res.apk
2) Installed framework.
Code:
I: Framework installed to: C:\Users\Syed\apktool\framework\1.apk
3) Decompiled framework-res.apk
Code:
I: Loading resource table...
I: Loaded.
I: Decoding AndroidManifest.xml with resources...
I: Regular manifest package...
I: Decoding file-resources...
I: Decoding values */* XMLs...
I: Done.
I: Copying assets and libs...
4) Added the two drawables in /res/drawable-hdpi
5) Added the two strings in /res/values/strings.xml
Code:
<string name="download">Bootloader</string>
<string name="recovery">Recovery</string>
6) Compiled framework-res.apk
7) Deodexed android.policy.jar with "Universal Deodexer V4"
8) Made my GlobalActions smali changes.
9) Tried to odex android.policy.jar back but got stuck on how to do it. Used Auto Odexer Script by Alkhafaf. If I can get past this part, I'll be able to push both the updated framework-res.apk and the odex'ed android.policy.jar and see the results.
Were you able to succeed with your odex'ed files? Thanks.

i have tried many guides for EPM and got same result my phone dont pass the first screen ie. Galaxy ace gts5830i
Any solution??
Sent from my GT-S5830i using Tapatalk 2

destructo570 said:
i have tried many guides for EPM and got same result my phone dont pass the first screen ie. Galaxy ace gts5830i
Any solution??
Click to expand...
Click to collapse
There are a couple xposed modules that do this. Might be worth the try.

destructo570 said:
i have tried many guides for EPM and got same result my phone dont pass the first screen ie. Galaxy ace gts5830i
Any solution??
Sent from my GT-S5830i using Tapatalk 2
Click to expand...
Click to collapse
I'll post a new diff once 4.4 is out..There may be some subtle changes causing problems.

EPM
I tried this on a Verizon S4 running MK2 4.3 and when I hold down the power button. The phone just hot boots.
Do you have a how to for 4.3? I just figured it out. Got it working on 4.3. See here http://forum.xda-developers.com/showthread.php?t=2623196
Thank You for all your hard work

Hello!
Thank you for your great mod!
I've followed all the instructions and got 2 extra strings in power menu, but there's one issue:
For some reason Recovery id named "Bootloader" and Download is named :Recovery" and also, when i press "Download"("Recovery on the screenshot) phone just reboots as normal, while, when i press "Recovery" ("Bootloader" on the screenshot), phone normally boots to recovery.
So, can anybody help me to correct this?
Thank you!
UPD. Fixed names, but phone still doesnt boot to download mode.

Related

Mms.apk - Skin Active + No MMS Convert + No contact Limit + Sent Time

MMS.apk mod for Samsung Galaxy Gio by greg_h_w (me)
First of all, I have to say Thanks to muveszur for his guide on Galaxy S2 thread
The Mms.apk has the following moddings:
- Message Skin (Default, Edge, Gloss, Sticky Note, Memo)
- Sent Time displayed instead of the Received Time
- No AutoConverting messages to MMS after 4 SMS. In my mod, it will be converted to MMS after 200 SMS.
- Possible to add to the message 200 contacts instead of 10 contacts.
Click to expand...
Click to collapse
{
"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"
}
Click to expand...
Click to collapse
HOW TO - For Developers
Change the AutoConverting:
In /res/xml/mms_config.xml change the following values
Code:
<int name="smsToMmsTextThreshold">4</int>
to:
Code:
<int name="smsToMmsTextThreshold">200</int>
Increase Contacts adding for the message
In /res/xml/mms_config.xml change the following values
Code:
<int name="recipientLimit">10</int>
to:
Code:
<int name="recipientLimit">200</int>
Display Sent Time instead of the Received Time
In /smali/com/android/mms/transaction/SMSReceiverService.smali there are 2 following value like this
Code:
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
change the first one to:
Code:
invoke-virtual {p1}, Landroid/telephony/SmsMessage;->getTimestampMillis()J
then the second one to:
Code:
invoke-virtual {v0}, Landroid/telephony/gsm/CbMessage;->getTimestampMillis()J
Activated Message Skin:
In /res/xml/preferences.xml add the following values
Code:
<ListPreference android:entries="@array/pref_entries_message_skin" android:title="@string/pref_title_message_skin" android:key="pref_key_message_skin" android:defaultValue="Default" android:dialogTitle="@string/pref_dialog_title_message_skin" android:entryValues="@array/pref_entry_values_message_skin" />
after
Code:
<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android">
In /smali/com/android/mms/ui/MessagingPreferenceActivity.smali
Change the following values
Code:
.method public static getMessageSkin(Landroid/content/Context;)I
.locals 1
.parameter "context"
.prologue
.line 631
const/4 v0, 0x0
return v0
.end method
to :
Code:
.method public static getMessageSkin(Landroid/content/Context;)I
.locals 6
.parameter "context"
.prologue
.line 631
const/4 v4, 0x0
const-string v5, "Default"
.line 578
invoke-static {p0}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences;
move-result-object v0
.line 579
.local v0, pref:Landroid/content/SharedPreferences;
const-string v2, "pref_key_message_skin"
const-string v3, "Default"
invoke-interface {v0, v2, v5}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
.line 580
.local v1, skinType:Ljava/lang/String;
const-string v2, "Default"
invoke-virtual {v5, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_0
move v2, v4
.line 591
:goto_0
return v2
.line 582
:cond_0
const-string v2, "Edge"
invoke-virtual {v2, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_1
.line 583
const/4 v2, 0x1
goto :goto_0
.line 584
:cond_1
const-string v2, "Gloss"
invoke-virtual {v2, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_2
.line 585
const/4 v2, 0x2
goto :goto_0
.line 586
:cond_2
const-string v2, "Sticker note"
invoke-virtual {v2, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_3
.line 587
const/4 v2, 0x3
goto :goto_0
.line 588
:cond_3
const-string v2, "Memo"
invoke-virtual {v2, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_4
.line 589
const/4 v2, 0x4
goto :goto_0
:cond_4
move v2, v4
.line 591
goto :goto_0
.end method
Click to expand...
Click to collapse
For Stock Rom
1. Download the modified Mms.apk (Attached file)
2. Backup your Mms.apk and mms.odex in /system/app (Use Root Explorer).
3. Mount /system/app as R/W
3. Copy the modified Mms.apk to /system/app
4. Set the permissions to rw-r--r--
5. Delete mms.odex
6. Reboot
Click to expand...
Click to collapse
For Deodexed Rom
1. Download the modified Mms.apk (Attached file)
2. Backup your Mms.apk in /system/app (Use Root Explorer).
3. Mount /system/app as R/W
3. Copy the modified Mms.apk to /system/app
4. Set the permissions to rw-r--r--
5. Reboot
Click to expand...
Click to collapse
Note :
- Don't forget to Clear Messaging Data on Manage Application
- If you are using TouchWizLauncher, you have to erase the data of the launcher in the Settings
Click to expand...
Click to collapse
This mod working on Stock and Deodexed Rom
I tested on DXKT8 on Galaxy Gio and DXKK2 on Galaxy Y​
If you like my work, give me a beer, or just hit the the Thanks button
DONATE
Thanks for the upload, that works with cm 7.2?
thexavier said:
Thanks for the upload, that works with cm 7.2?
Click to expand...
Click to collapse
I don't know. I don't try it yet. Maybe you can report it to me later.
But don't forget to backup your mms.apk before try it
The thems didnt work in stock... And its only in english?
greg_h_w said:
I don't know. I don't try it yet. Maybe you can report it to me later.
But don't forget to backup your mms.apk before try it
Click to expand...
Click to collapse
I tried, sadly don't works. i hope for an update.
I need to delete all the messages I already received, right?
This mod works on odex rom?
MatZ69 said:
The thems didnt work in stock... And its only in english?
Click to expand...
Click to collapse
I have try it on my stock rom DXKP6 without deodexed. I'm sorry, what do you mean only in english?
thexavier said:
I tried, sadly don't works. i hope for an update.
Click to expand...
Click to collapse
I'm so sorry. Maybe I can give the guide to Mod it.
Josenhans said:
I need to delete all the messages I already received, right?
Click to expand...
Click to collapse
Only need to clear the cache and I think it didn't delete all the message. cmiiw
Rausio said:
This mod works on odex rom?
Click to expand...
Click to collapse
yup..
I have update the first post. I give the tutorial how to mod it.
Ask it if someone have a question.
Hope it helpful
greg_h_w said:
I have try it on my stock rom DXKP6 without deodexed. I'm sorry, what do you mean only in english?
Click to expand...
Click to collapse
The definitions are in english while my room are in portuguese,but i will try to modify my own application
Thanks
MatZ69 said:
The definitions are in english while my room are in portuguese,but i will try to modify my own application
Thanks
Click to expand...
Click to collapse
you're welcome
MatZ69 said:
The definitions are in english while my room are in portuguese,but i will try to modify my own application
Thanks
Click to expand...
Click to collapse
Boas!
Chegaste a modificar o teu mms.apk para Portugues?
Se sim, podes enviar-me?
Obrigado!
Can this modified apk solves this problem;
not work on cyanogen 7.2 rc5.6
DarkShadow69 said:
Can this modified apk solves this problem;
Click to expand...
Click to collapse
according to your screenshot. You using go sms. So it can't solve your problem
iman1396 said:
not work on cyanogen 7.2 rc5.6
Click to expand...
Click to collapse
Have you try to mod it by your self ??
greg_h_w said:
Have you try to mod it by your self ??
Click to expand...
Click to collapse
i'm not, where is problem ?
I tried to change the skin but does not happen.
stock ROM DXKT4.
thank you so much you helped me a lot
thx for your share
thanks
thanks very much

[GUIDE][How-To]Xperia Z Lockscreen for HDPI devices [For Xperia Lovers ! ]

Hi XDA !:silly:
Firstly, big thanks to Arsaw for his awesome mod
This MOD is compatible to any HDPI or XHDPI devices with Stock 4.1.2 ROM but so far only tested on
-Galaxy s2
-Galaxy s3
-Galaxy note
-Galaxy note 2
Requirement :
-android.policy.jar from your rom
-Smalis from the attachment
-Flashable zip that i provided
-At least 60 MB of system memory
-A little knowledge in decompiling using baksmali
So, let's start !
Step 1
1)Extract your phone/rom android.policy.jar and decompile it with baksmali/smali program. From the output, copy and paste the ExtendedKeyguardScreen.smali and the modified ExternalLockScreen.smali to smali/com/android/internal/policy/impl
2)Then open smali/com/android/internal/policy/impl/ LockPatternKeyguardView.smali. Add the codes (highlighted in blue) and replace the codes (highlighted in green) as below
Code:
.field private mHasDialog:Z
.field mInfoCallback:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor$InfoCallbackImpl;
[COLOR=Blue].field private mIsExternallyLoadedLockScreenEnabled:Z[/COLOR]
.field private mIsTalkbackDrvModeOn:Z
Find # virtual methods.method public cleanUp()V
Code:
# virtual methods
.method public cleanUp()V
.locals 2
.prologue
const/4 v1, 0x0
[COLOR=blue]const/4 v0, 0x0
iput-boolean v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mIsExternallyLoadedLockScreenEnabled:Z[/COLOR]
.line 1096
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockScreen:Landroid/view/View;
Find .method createLockScreen()Landroid/view/View;
Code:
.prologue
[COLOR=blue] iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;
invoke-static {v1, v2}, Lcom/android/internal/policy/impl/ExternalLockScreen;->getLockScreen(Landroid/content/Context;Lcom/android/internal/policy/impl/KeyguardScreenCallback;)Landroid/view/View;
move-result-object v0
.local v0, lockView:Landroid/view/View;
if-eqz v0, :cond_1
const/4 v1, 0x1
:goto_0
iput-boolean v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mIsExternallyLoadedLockScreenEnabled:Z
.line 1038
iget-boolean v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mIsExternallyLoadedLockScreenEnabled:Z
if-nez v1, :cond_0[/COLOR]
.line 1268
new-instance v0, Lcom/android/internal/policy/impl/sec/LockScreen;
[COLOR=blue] .end local v0 #lockView:Landroid/view/View;[/COLOR]
iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;>mConfiguration:Landroid/content/res/Configuration;
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;>mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;
iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;>mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;
iget-object v5, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;>mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;
invoke-direct/range {v0 .. v5}, Lcom/android/internal/policy/impl/sec/LockScreen;->(Landroid/content/Context;Landroid/content/res/Configuration;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallback;)V
.line 1274
[COLOR=Lime] .restart local v0 #lockView:Landroid/view/View;[/COLOR]
[COLOR=blue] :cond_0[/COLOR]
invoke-direct {p0, v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->initializeTransportControlView(Landroid/view/View;)V
.line 1275
return-object v0
[COLOR=Blue] :cond_1
const/4 v1, 0x0
goto :goto_0[/COLOR]
.end method
Step 2
- Flash the ZIP provided in the Download link and you are done.
Flashable ZIP : http://www.mediafire.com/?un6239axlgsqys6
HOW TO CHANGE XPERIA Z LOCKSCREEN WALLPAPER :
Thanks to MohamedAzi.
TRICK ON LOCKSCREEN WALLPAPER STAYING FOR 1 SECOND :
Apply this image as Samsung lockscreen wallpaper ( apply from Display > Wallpaper > Lockscreen ), not XPERIA LOCKSCREEN WALLPAPER that the method provided by Mohamed Azi
{
"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"
}
Then go Developer Option in the setting, change the Window Animation scale to 0.5 or Off.
Trick By ME
EnJoY !
Thanks.
Very Nice.
A week ago I have tried to port for GS2, but bootlooped.
I follow guide from GS3 forum by Arsaw.
dr30ma said:
Thanks.
Very Nice.
A week ago I have tried to port for GS2, but bootlooped.
I follow guide from GS3 forum by Arsaw.
Click to expand...
Click to collapse
Try this and giv feedback :laugh:
One word Wooooooooooooooooooooooooooooow
---------- Post added at 09:04 AM ---------- Previous post was at 08:57 AM ----------
How much time left to upload the xperia rom, I need to go to school soon but i want to have the rom on my phone, please be faster thx.
And one more thing in the screenshots I the dots on the xperia z launcher are wrong. You should use the fix fo HDPI 800x480 for galaxy s2
Im still waiting
tested on cm10 and AOKP, they are working too (Both of them 4.1.2)
thanks for your guide =)
skys415 said:
tested on cm10 and AOKP, they are working too (Both of them 4.1.2)
thanks for your guide =)
Click to expand...
Click to collapse
Can you please give me the file for CM10? I don't know how to do all of this ..
does this work with aokp 4.2.2?
Could anybody make a flashable zip for official Sammy roms (JB) ? (with modified files)
Thx
Nice work , thank you.
But I have one question. If i want to add my own wallpaper and use it as lock screen wallpaper, how can I do it ?
is there any incoming notification for xperia z lockscreen ?
Sir help
Sir help because my device is in stock JB 4.1.2 rom. i try to do your tutorials but it seems my android policy jar smali codes is different to the smali codes example given can you help me to change it because i really dont understand smali codes my android.policy.jar is attach to this post thanks this will be really much appreciated
Is int identical to the s3 one ??
Sent from my GT-I9100G using xda premium
ICS_XD said:
Is int identical to the s3 one ??
Sent from my GT-I9100G using xda premium
Click to expand...
Click to collapse
no, it isn't
jaderxiii said:
no, it isn't
Click to expand...
Click to collapse
Goto s3 themes n apps section
Search for it by arsaw
Sent from my GT-I9100G using xda premium
ICS_XD said:
Goto s3 themes n apps section
Search for it by arsaw
Sent from my GT-I9100G using xda premium
Click to expand...
Click to collapse
The tutorial in this thread is the same on that thread
http://forum.xda-developers.com/showthread.php?t=2168411
have a look
jaderxiii said:
The tutorial in this thread is the same on that thread
http://forum.xda-developers.com/showthread.php?t=2168411
have a look
Click to expand...
Click to collapse
I think i said same ?
Sent from my GT-I9100G using xda premium
Hello, this work on S3 mini and a big thanks for this, I love the lockscreen
Envoyé depuis mon GT-I8190 avec Tapatalk
hi!! this work on htc one xl? thanks.. i dont know how to do this on my device
voenta paves
How to get the lockscreen in settings
what to do with this line?
Hello sir,
I have problem to do last line. There are several lines before .end method
It can't be recompiled if i push those line after
.line 938
return-object v0
but if i delete these lines it can't be recompiled too. so please help me what i have to do. Thank you before
here are the last lines/paragraph
.line 938
return-object v0
.line 930
.end local v0 #lockView:Landroid/view/View;
:cond_23
new-instance v0, Lcom/android/internal/policy/impl/LockScreen;
iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mConfiguration:Landroid/content/res/Configuration;
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;
iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;
iget-object v5, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;
invoke-direct/range {v0 .. v5}, Lcom/android/internal/policy/impl/LockScreen;-><init>(Landroid/content/Context;Landroid/content/res/Configuration;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallbackV
.restart local v0 #lockView:Landroid/view/View;
goto :goto_1f
.end method

[MOD][HOW-TO][UPDATE]Multiple Apps in Multiwindow! - SHEALTH APP WORKS!

As title says, this mod brings you the multiple apps in multiple windows or flashbar! Since Shealth doesnt support the multiwindow, this mod makes a dirty trick to bypass the SHEALTH app from the multiwindow and making the rest of the app's to work on flashbar!
What it does?
All the applications which are installed in app drawer are available in flashbar! Even if new apps are installed, then those apps are also available in flashbar...hence you dont need any apk to control or add the applications in flashbar!
Screenshots
{
"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"
}
Must Have
1. Apktool
2. Some knowledge about compiling and decompiling
3. 7zip
4. notepad++
5. backsmali
How to
1. Decompile the flashbarservice.apk which is available in system/app
Go to flashbarservice\smali\com\sec\android\app\FlashBar Service\FlashBarInfo.smali
Open the file FlashBarInfo.smali using notepad++
search for method .method public generateFlashBarList()V
and make the following changes:
PHP:
iget-object v8, v7, Landroid/content/pm/ResolveInfo;->filter:Landroid/content/IntentFilter;
- const-string v9, "android.intent.category.MULTIWINDOW_LAUNCHER"
+ const-string v9, "android.intent.category.LAUNCHER"
invoke-virtual {v8, v9}, Landroid/content/IntentFilter;->hasCategory(Ljava/lang/String;)Z
Now Save and recompile it and the first part is done!
2. Decompile services.jar which is available in system/framework folder
and go to services.jar.out\smali\com\android\server\am\Multi WindowManagerService.smali
Open the file MultiWindowManagerService.smali using notepad++ and make following changes
PHP:
#the value of this static final field might be set in the static constructor
.field static final synthetic $assertionsDisabled:Z = false
+.field private static final CONFIG_FILE:Ljava/lang/String; = "/system/etc/multiwindow_blacklist.txt"
+
.field public static START_ACTIVITY_WITH_LAST_PINUP:Z = false
.field private static final TAG:Ljava/lang/String; = "MultiWindowManagerService"
@@ -52,6 +54,17 @@
.field private mMinimizedSlotManager:Lcom/android/server/am/MultiWindowManagerService$MinimizedSlotManager;
+.field private mMultiWindowBlackList:Ljava/util/List;
+ .annotation system Ldalvik/annotation/Signature;
+ value = {
+ "Ljava/util/List",
+ "<",
+ "Ljava/lang/String;",
+ ">;"
+ }
+ .end annotation
+.end field
+
.field private mSupportAllApps:Z
.field mSupportAppList:Ljava/util/ArrayList;
@@ -6344,39 +6357,104 @@
.end method
.method public isSupportApp(Ljava/lang/String;)Z
- .locals 1
+ .locals 4
.parameter "packageName"
.prologue
- .line 567
- iget-object v0, p0, Lcom/android/server/am/MultiWindowManagerService;->mSupportAppList:Ljava/util/ArrayList;
+ .line 15
+ iget-object v2, p0, Lcom/android/server/am/MultiWindowManagerService;->mMultiWindowBlackList:Ljava/util/List;
- invoke-virtual {v0, p1}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z
+ if-nez v2, :cond_1
- move-result v0
+ .line 16
+ new-instance v2, Ljava/util/ArrayList;
- if-nez v0, :cond_0
+ invoke-direct {v2}, Ljava/util/ArrayList;-><init>()V
- const-string v0, "android"
+ iput-object v2, p0, Lcom/android/server/am/MultiWindowManagerService;->mMultiWindowBlackList:Ljava/util/List;
- invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+ .line 17
+ new-instance v2, Ljava/io/File;
- move-result v0
+ const-string v3, "/system/etc/multiwindow_blacklist.txt"
- if-eqz v0, :cond_1
+ invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
- .line 568
- :cond_0
- const/4 v0, 0x1
+ invoke-virtual {v2}, Ljava/io/File;->exists()Z
+
+ move-result v2
+
+ if-eqz v2, :cond_1
+
+ .line 19
+ :try_start_0
+ new-instance v1, Ljava/io/BufferedReader;
+
+ new-instance v2, Ljava/io/FileReader;
+
+ const-string v3, "/system/etc/multiwindow_blacklist.txt"
+
+ invoke-direct {v2, v3}, Ljava/io/FileReader;-><init>(Ljava/lang/String;)V
- .line 571
+ invoke-direct {v1, v2}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
+
+ .line 22
+ .local v1, reader:Ljava/io/BufferedReader;
+ :cond_0
:goto_0
- return v0
+ invoke-virtual {v1}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
- :cond_1
- const/4 v0, 0x0
+ move-result-object v0
+
+ .local v0, pkgName:Ljava/lang/String;
+ if-eqz v0, :cond_1
+
+ .line 23
+ invoke-virtual {v0}, Ljava/lang/String;->trim()Ljava/lang/String;
+
+ move-result-object v0
+
+ .line 24
+ invoke-virtual {v0}, Ljava/lang/String;->length()I
+
+ move-result v2
+
+ if-lez v2, :cond_0
+
+ .line 25
+ iget-object v2, p0, Lcom/android/server/am/MultiWindowManagerService;->mMultiWindowBlackList:Ljava/util/List;
+
+ invoke-interface {v2, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
+ :try_end_0
+ .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
+
+ .line 28
+ .end local v0 #pkgName:Ljava/lang/String;
+ .end local v1 #reader:Ljava/io/BufferedReader;
+ :catch_0
+ move-exception v2
+
+ .line 33
+ :cond_1
+ iget-object v2, p0, Lcom/android/server/am/MultiWindowManagerService;->mMultiWindowBlackList:Ljava/util/List;
+
+ invoke-interface {v2, p1}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
+
+ move-result v2
+
+ if-nez v2, :cond_2
+
+ const/4 v2, 0x1
+
+ :goto_1
+ return v2
+
+ :cond_2
+ const/4 v2, 0x0
+
+ goto :goto_1
.end method
.method public isSupportControlbar()Z
Make the above said changes and save it. Recompile and flash the same!
Attached multiwindow_blacklist.txt in this post. Download the same and copy to /system/etc adn change the permissions to make SHEALTH works!
After flashing, you will see all apps in app drawer will be listed in multiwindow / flashbar...Search for flashbar in data/data and then delete the folder. Now reboot...You will have all the apps in flashbar in sorted order!
Credits
-------------
Lidroid
Feel Helped, Press Thanks! Any one free to use this with due credits and link to this thread
S4 users are lucky to have developer like you:thumbup::thumbup::thumbup:
You love decoding....
We love to use them on Our device
It's too hard for a mathematic professor like me but thnx for sharing your competences.
People who don't want to go through this process of apktool , can use Samsung multi window manager app from the play store , it has been updated for S4.
Sent from my Octa Core S4
Akhil said:
People who don't want to go through this process of apktool , can use Samsung multi window manager app from the play store , it has been updated for S4.
Sent from my Octa Core S4
Click to expand...
Click to collapse
isin it paid application ? does shealth works after flashing
MWC app
grgsiocl said:
isin it paid application ? does shealth works after flashing
MWC app
Click to expand...
Click to collapse
It has both versions paid as well as free.
But free has all the options you will need to customise.
Sent from my Octa Core S4
Thank you grgsiocl...it works on I9505 too
.malo2000 said:
Thank you grgsiocl...it works on I9505 too
Click to expand...
Click to collapse
it works on every device which has flashbarservice.apk. The one advantage using this mod is , you dont have to reboot when you install new apps in order to show up in flashbar, where as using MWC app from playstore, you need to reboot every time when you install new application.
grgsiocl said:
it works on every device which has flashbarservice.apk. The one advantage using this mod is , you dont have to reboot when you install new apps in order to show up in flashbar, where as using MWC app from playstore, you need to reboot every time when you install new application.
Click to expand...
Click to collapse
Thank you for all your mods :good:
I've done a zip for I9505xxuamdm that delete flashbar folder
good thread, but same code with cybdani's mod
wrong credit :/
Sent from my SHV-E300S using XDA Premium HD app
aslak89 said:
good thread, but same code with cybdani's mod
wrong credit :/
Sent from my SHV-E300S using XDA Premium HD app
Click to expand...
Click to collapse
@aslak89 first you must know who has released this mod first on XDA . When NOTE II launched, i was the first person to provide the guide on this mod. CHeck here Later everyone followed. Go and check cybdanis mod when released. Infact everyone copied my guide without credits. Before you claim have a handful information! and lastly dont spam the thread with your faulty claims!
Go and ask your @cybdani's to give the credits to me or else i will take this up to moderator. Have a look at this thread. when he has released this mod compared to mine!. I have seen th thread earlier but did noot want to make up the issue as i know in XDA all this happens and thats the reason i stopping releasing ROMS!
Hi!
I've published this mod in i9505 section to share it.
I'm including this mod in my roms from S3.
I do not thing that you must give to me any credits for your work.
In my thread I said that if someone uses the mod (files) in his rom must give proper credits.
Best regards.
grgsiocl said:
@aslak89 first you must know who has released this mod first on XDA . When NOTE II launched, i was the first person to provide the guide on this mod. CHeck here Later everyone followed. Go and check cybdanis mod when released. Infact everyone copied my guide without credits. Before you claim have a handful information! and lastly dont spam the thread with your faulty claims!
Go and ask your @cybdani's to give the credits to me or else i will take this up to moderator. Have a look at this thread. when he has released this mod compared to mine!. I have seen th thread earlier but did noot want to make up the issue as i know in XDA all this happens and thats the reason i stopping releasing ROMS!
Click to expand...
Click to collapse
cybdani said:
Hi!
I've published this mod in i9505 section to share it.
I'm including this mod in my roms from S3.
I do not thing that you must give to me any credits for your work.
In my thread I said that if someone uses the mod (files) in his rom must give proper credits.
Best regards.
Click to expand...
Click to collapse
thanks mate! But someone claimed and thats the reason i replied. no worries!
grgsiocl said:
thanks mate! But someone claimed and thats the reason i replied. no worries!
Click to expand...
Click to collapse
No problem :good:
I've edited my thread and deleted asking for credits because I'm just sharing it.
Only a thing:
In i9505 this services.jar modification causes fc to shealth app.
Tested some times. Copying again services.jar deodexed only without this mods makes shealth app working again.
cybdani said:
No problem :good:
I've edited my thread and deleted asking for credits because I'm just sharing it.
Only a thing:
In i9505 this services.jar modification causes fc tuyo shealth app.
Tested some times. Copying again services.jar deodexed only without this mods makes shealth app working again.
Click to expand...
Click to collapse
I will provide the solution tomorrow. I am working on it to fix the bug
I have no experience in compiling and decompiling. It would be nice if someone can give me a CWM Zip of this Mod, hehe.
Paolonicus said:
I have no experience in compiling and decompiling. It would be nice if someone can give me a CWM Zip of this Mod, hehe.
Click to expand...
Click to collapse
http://forum.xda-developers.com/showthread.php?p=41407291
Sent from my GT-I9500 using Tapatalk 2
checked and got it,
I want to apologize for my fault.
I thought to see the dates of thread released, but too impatient conclusion.
thank you for explanations in spite of my rudeness.
I respect your work and contribusion of android devs.
also I've improved smaling for your guides since started.
Thanks
Best regards
Sent from my SHV-E300S using XDA Premium HD app
I cannot find where's the problem to solve shealth FC, but this is the first error when shealth is launched:
AndroidRuntime: java.lang.ClassCastException: android.widget.LinearLayout cannot be cast to android.widget.FrameLayout.
Then we get errors like these:
AndroidRuntime: at com.sec.android.app.shealth.navigation.NavigationBar.initialize(NavigationBar.java:76)
AndroidRuntime: at com.sec.android.app.shealth.navigation.NavigationBar.<init>initialize(NavigationBar.java:71)
etc etc.
Hope this helps.
cybdani said:
I cannot find where's the problem to solve shealth FC, but this is the first error when shealth is launched:
AndroidRuntime: java.lang.ClassCastException: android.widget.LinearLayout cannot be cast to android.widget.FrameLayout.
Then we get errors like these:
AndroidRuntime: at com.sec.android.app.shealth.navigation.NavigationBar.initialize(NavigationBar.java:76)
AndroidRuntime: at com.sec.android.app.shealth.navigation.NavigationBar.<init>initialize(NavigationBar.java:71)
etc etc.
Hope this helps.
Click to expand...
Click to collapse
@cybdani bro if possible, can you send me the full logcat! I have not really gone through the code still, but i feel shealth doesnt like multiwindow support and there should be some check in shealth.apk

[MOD][How to] Extended power menu I9505G MFD - Google Edition

This is just a quick how to. Spend a few hours writing this yesterday (see - post and post.) The GlobalActions$SinglePressAction.smali part is from Cristiano Matos Thanks bro! The rest I put together from trail and error. Feel free to use it, a thanks and some credit would be cool. Enjoy. Also huge shout out to my team mate @Mr Impossible for fixing my error. Thanks Bro!!
Flashable zip - http://d-h.st/Hnt
For developers, if you would like to see the diff you can see them on my github:
https://github.com/Infamous-Project...mmit/aaaf80b286686828dce83a3ad5e636edcaeb6fd3 and https://github.com/Infamous-Project...mmit/dc6612b16319a704e1f858097dcc934c8c647f2f
First you need to decompile the framework-res.apk and navigate and open res/values/layouts.xml and add this to the bottom.
Code:
<item type="layout" name="keyguard_transport_control">false</item>
This will fix the compile error that you get from the stock framework-res.
Now you need to add the strings and the icon for reboot since stock there are none. Navigate to res/values/strings.xml and add
Code:
<string name="reboot">Reboot menu</string>
Now you need to add the icon to res/drawable-xhdpi/ic_lock_reboot.png (I will attach it later). Now compile the framework-res.apk then decompile it again. We do this so the apktool will add these to the public.xml and assign ID's to them that we will need later. You can put the new compiled framework aside to add to your ROM later.​
Now we will move to the android.policy.jar. You will need decompile the classout. Now go to classout/com/android/internal/policy/impl/GlobalActions.smali and find
Code:
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
iget-object v0, p0, Lcom/android/internal/policy/impl/GlobalActions;->mItems:Ljava/util/ArrayList;
iget-object v1, p0, Lcom/android/internal/policy/impl/GlobalActions;->mAirplaneModeOn:Lcom/android/internal/policy/impl/GlobalActions$ToggleAction;
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
Code:
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
[COLOR="Blue"]+
+ new-instance v1, Lcom/android/internal/policy/impl/GlobalActions$99;
+
+ const v2, 0x1080c11 (This is the ID for the Ic_lock_reboot we added to framework-res. add yours)
+
+ const v3, 0x10408eb (this is the String ID for reboot)
+
+ invoke-direct {v1, p0, v2, v3}, Lcom/android/internal/policy/impl/GlobalActions$99;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
+
+ invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
+[/COLOR]
iget-object v0, p0, Lcom/android/internal/policy/impl/GlobalActions;->mItems:Ljava/util/ArrayList;
iget-object v1, p0, Lcom/android/internal/policy/impl/GlobalActions;->mAirplaneModeOn:Lcom/android/internal/policy/impl/GlobalActions$ToggleAction;
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
Also pro tip: ID's for apps will be in this format 0x01080c11 and in the android.policy.jar is 0x1080c11. Notice that in the android.policy.jar the 0 after the x is removed. 0x01080c11. So when you are comparing remove the 0 if pulling from the public.xml or if you if you are taking from the android.policy.jar you will need to add it to match up.
​
This part is from Cristiano Matos Thanks bro!
classout/com/android/internal/policy/impl/GlobalActions$SinglePressAction.smali
Find this
Code:
.end annotation
# instance fields
.field private final mIconResId:I
.field private final mMessage:Ljava/lang/CharSequence;
.field private final mMessageResId:I
And between .end annotation and # instance fields, add this
Code:
[COLOR="Blue"]# static fields
.field protected static rebootMode:I
.field protected static final rebootOptions:[Ljava/lang/String;[/COLOR]
Find this
Code:
# direct methods
.method protected constructor <init>(II)V
.registers 4
.parameter "iconResId"
.parameter "messageResId"
And between # direct methods and .method protected constructor <init>(II)V, add this
Code:
[COLOR="Blue"].method static constructor <clinit>()V
.registers 3
const/4 v0, 0x3
new-array v0, v0, [Ljava/lang/String;
const/4 v1, 0x0
const-string v2, "Reboot"
aput-object v2, v0, v1
const/4 v1, 0x1
const-string v2, "Download"
aput-object v2, v0, v1
const/4 v1, 0x2
const-string v2, "Recovery"
aput-object v2, v0, v1
sput-object v0, Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;->rebootOptions:[Ljava/lang/String;
return-void
.end method[/COLOR]
Last you need to add the files GlobalActions$99.smali, GlobalActions$99$1.smali, and GlobalActions$99$2.smali to Classout/com/android/internal/policy/impl then recomplie the Classout.​
mine
Nice
Sent from my SGH-M919 using xda premium
Thanks bro!
Sent from my dark hole called an office.
Screenshots
Sent from my dark hole called an office.
It works by the way if anyone is wondering
Could someone please make a flashabls zip for the GPe ROM of Jamal? Would be really awesome!
Me Gusta!
Here is a flashable zip
http://d-h.st/Hnt
Sent from my dark hole called an office.
Jamison904 said:
Here is a flashable zip
http://d-h.st/Hnt
Sent from my dark hole called an office.
Click to expand...
Click to collapse
Sweet thx man. ..
Sent from my SGH-M919 using Tapatalk 4 Beta
I flashed the zip and the power menu has not changed. Can anyone confirm that the zip works?
TheAvatar said:
I flashed the zip and the power menu has not changed. Can anyone confirm that the zip works?
Click to expand...
Click to collapse
Works perfectly for me. Are you using deodexed or odexed?
Sent from my GT-I9505 using xda premium
Odexed, might flash a deodexed ROM later today
works perfectly on my De-Oxdexed GE Rom !!!
Since you've already figured this one out.... do you also know where/how to change hardware key configuration to stock TW?
Thanks for the guide & the flashable zip.
Would love to see a write up for center clock, %batterymod.. would be great to have guides in a centralized location.
Thanks... It works perfect
Sent from my GT-I9505G using Tapatalk 2
Thanks
Sent from my GT-I9505 using Tapatalk 4 Beta
Thanks, i think modifying the toggles in notification should be closer now. Or is someone already started on that.
I think someone is already working on that. One of the threads in the app section has a lot of mods running already. Would be nice to have the function toggle like the TW ROMs. That gives me an idea.
Thanks
Sent from my dark hole called an office.
@Jamison904 forgot to hit thanks on OP
you know i've actually seen people using your framework and not give credit for using this mod? rofl the ways of xda baffle me

[APP] [KK PORT] [4.3] Original ZU 4.4.2 SystemUI / Home (Fullscreen) - v1.2, 16/03/14

Here are original apk's from Xperia ZU system dump, ported to work on JB 4.3.
Whole porting process was done on my Xperia ZQ (ZL) running lastest JB 4.3 firmware, but they should work on any JB 4.3 device/firmware (to be confirmed)!
Warning:
As you know (I hope so), every device has its own framework-res.apk with its own resources/ids and the SystemUI.apk inherits a lot of them at run-time, so, if you install on a "non-ZQ" device 4.3 and face some wrong resources (pngs, strings, animations, ...) at your screen, it is a normal behavior, and this means that some SystemUI.apk edits are necessary to match your framework-res.apk resources.
Screenshots:
{
"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"
}
.
Theme accent colored SystemUI
.
.
.
Others...
.
.
.
.
.
.
.
Warning:
- If you have Serajr Xperia Xposed v2 installed, uninstall it and then install module KK version and reboot!
- If you have any other xposed module that hooks SystemUI.apk, disable it!!!
You´re warned - TRY AT YOUR OWN RISK!!
Install instructions:
1. Update Xperia Xposed from above link (if applicable)
2. Backup your files (You´re warned again)
3. Download and put .zip at your sdcard
Download Mirrors:
v1.1 - Dev-Host <<< White SystemUI (original version)
(YOU CAN APPLY ACCENT COLOR UNDER EXPANDED CONTENTS WITH NEW XPERIA XPOSED KK MODULE)
v1.2 - Dev-Host <<< Runtime theme accent colored SystemUI
(DO NOT USE THIS VERSION WITH NEW XPERIA XPOSED KK MODULE !!!)
4. Flash it!
If you have problems with a big "back" key, get fixed version here or here.
Thanks @funky0308 and @Soheil_rf
Known Issues:
- Some minor issues causing fc on some devices!
Special Thanks:
- Sony
- @MN-Ming for Xperia ZU system dump
- @DooMLoRD for Xperia Z2 system dump
If you like it, press thanks... Simple so!!
.
Changelog
v1.2 - 16/03/2014
- Runtime theme accent colored SystemUI version (no reboot or restart required)
- Colored active tab glow
- Colored active tab title
- Colored expanded big clock
- Colored Clear recents button title (white border)
- Colored Edit quick settings button title (white border)
- Colored active quick settings toggles
- Fixed Recents empty background gap
v1.1 - 11/03/2014
- Fixed Wifi Hotspot and Location (GPS) toggles
- Fixed Search Panel at landscape orientation
- Removed vibration by taping near to home soft key
v1 - 10/03/2014
- Initial release
[Guide] Give your system bars a gradient immersive KK flag
WARNING: just do it if you are using OP 4.4 SystemUI.apk on JB 4.3 firmware (backup your files too)​
Lockscreen Status Bar:
1. Decompile your JB 4.3 android.policy.jar
2. Go to \com\android\internal\policy\impl\keyguard\ folder and open (with Notepad++) KeyguardViewManager.smali file
3. Look for this method:
Code:
[B].method public declared-synchronized show(Landroid/os/Bundle;)V[/B]
4. Inside the method look for something like:
Code:
.line 126
iget-object v2, p0, Lcom/android/internal/policy/impl/keyguard/KeyguardViewManager;->mKeyguardHost:Landroid/widget/FrameLayout;
invoke-virtual {v2}, Landroid/widget/FrameLayout;->getSystemUiVisibility()I
move-result v2
[COLOR="Red"]const/high16 v3, 0x20
or-int v1, v2, v3[/COLOR]
.line 128
.local v1, visFlags:I
iget-object v2, p0, Lcom/android/internal/policy/impl/keyguard/KeyguardViewManager;->mKeyguardHost:Landroid/widget/FrameLayout;
invoke-virtual {v2, v1}, Landroid/widget/FrameLayout;->setSystemUiVisibility(I)V
5. Found! Now change above red lines to blue ones below:
Code:
.line 126
iget-object v2, p0, Lcom/android/internal/policy/impl/keyguard/KeyguardViewManager;->mKeyguardHost:Landroid/widget/FrameLayout;
invoke-virtual {v2}, Landroid/widget/FrameLayout;->getSystemUiVisibility()I
move-result v2
[COLOR="Blue"]const/high16 v3, -0x1000
or-int/2addr v3, v2
move/from16 v1, v3[/COLOR]
.line 128
.local v1, visFlags:I
iget-object v2, p0, Lcom/android/internal/policy/impl/keyguard/KeyguardViewManager;->mKeyguardHost:Landroid/widget/FrameLayout;
invoke-virtual {v2, v1}, Landroid/widget/FrameLayout;->setSystemUiVisibility(I)V
6. Save, compile, replace it and DONE!
Walkman both Bars (I think the same can be applied on more Semc??? and Somc??? apks):
1. Decompile your JB 4.3 SemcMusic.apk
2. If you open smali folder and face folders/files titled like a, b, c... you have a "Proguarded version" (obfuscated code)!!! I've never thought Sony would encrypt its sources.. but It did it!! Mine is!!!!!
Words from Proguard page:
ProGuard now has a sibling optimizer and obfuscator for Android: DexGuard. It focuses on code protection, with additional features like string encryption and class encryption. It directly targets Dalvik bytecode and streamlines the Android build process.
Click to expand...
Click to collapse
3. Go to \com\sonymobile\ui\support\ folder and open (with Notepad++) SystemUiVisibilityWrapper.smali file
3 (Prograrded version). Go to \com\sonymobile\c\a\ folder and open (with Notepad++) a.smali file
4. Look for this method:
Code:
[B].method public setTranslucentBackground(Z)Lcom/sonymobile/ui/support/SystemUiVisibilityWrapper;[/B]
4 (Prograrded version). Look for this method:
Code:
[B].method public a(Z)Lcom/sonymobile/c/a/a;[/B]
5. Found! Now replace whole method from red to blue:
Code:
[COLOR="Red"].method public setTranslucentBackground(Z)Lcom/sonymobile/ui/support/SystemUiVisibilityWrapper;
.locals 1
.parameter "value"
.prologue
.line 309
sget v0, Lcom/sonymobile/ui/support/SystemUiVisibilityWrapper;->SYSTEM_UI_FLAG_TRANSPARENT:I
invoke-direct {p0, v0, p1}, Lcom/sonymobile/ui/support/SystemUiVisibilityWrapper;->setFlag(IZ)V
.line 310
return-object p0
.end method[/COLOR]
Code:
[COLOR="Blue"].method public setTranslucentBackground(Z)Lcom/sonymobile/ui/support/SystemUiVisibilityWrapper;
.locals 3
.parameter "value"
.prologue
.line 309
iget-object v0, p0, Lcom/sonymobile/ui/support/SystemUiVisibilityWrapper;->mView:Landroid/view/View;
invoke-virtual {v0}, Landroid/view/View;->getSystemUiVisibility()I
move-result v0
const/high16 v1, -0x1000
or-int/2addr v1, v0
move/from16 v2, v1
invoke-direct {p0, v2, p1}, Lcom/sonymobile/ui/support/SystemUiVisibilityWrapper;->setFlag(IZ)V
.line 310
return-object p0
.end method[/COLOR]
5 (Prograrded version). Found! Now replace whole method from red to blue:
Code:
[COLOR="Red"].method public a(Z)Lcom/sonymobile/c/a/a;
.locals 1
.parameter
.prologue
.line 309
sget v0, Lcom/sonymobile/c/a/a;->b:I
invoke-direct {p0, v0, p1}, Lcom/sonymobile/c/a/a;->b(IZ)V
.line 311
return-object p0
.end method[/COLOR]
Code:
[COLOR="Blue"].method public a(Z)Lcom/sonymobile/c/a/a;
.locals 3
.parameter
.prologue
.line 309
iget-object v0, p0, Lcom/sonymobile/c/a/a;->h:Landroid/view/View;
invoke-virtual {v0}, Landroid/view/View;->getSystemUiVisibility()I
move-result v0
const/high16 v1, -0x1000
or-int/2addr v1, v0
move/from16 v2, v1
invoke-direct {p0, v2, p1}, Lcom/sonymobile/c/a/a;->b(IZ)V
.line 311
return-object p0
.end method[/COLOR]
6. Save, compile, replace it and DONE!
Album both Bars:
1. Decompile your JB 4.3 SemcAlbum.apk
2. Go to \com\sonyericsson\album\util\ folder and open (with Notepad++) BarUtils.smali file
3. Look for this method:
Code:
[B].method public static setDefaultSystemUiVisibility(Landroid/view/Window;)V[/B]
4. Insert blue lines
Code:
.method public static setDefaultSystemUiVisibility(Landroid/view/Window;)V
.locals 2
.parameter "window"
.prologue
.line 306
sget-boolean v1, Lcom/sonyericsson/album/util/BarUtils;->sIsKitKat:Z
if-eqz v1, :cond_0
.line 307
const/16 v0, 0xe00
.line 310
.local v0, flags:I
invoke-virtual {p0}, Landroid/view/Window;->getDecorView()Landroid/view/View;
move-result-object v1
invoke-virtual {v1, v0}, Landroid/view/View;->setSystemUiVisibility(I)V
.line 315
.end local v0 #flags:I
:goto_0
return-void
.line 312
:cond_0
invoke-static {p0}, Lcom/sonyericsson/album/util/BarUtils;->enableStatusBar(Landroid/view/Window;)Z
.line 313
invoke-virtual {p0}, Landroid/view/Window;->getDecorView()Landroid/view/View;
move-result-object v1
invoke-static {v1}, Lcom/sonyericsson/album/util/BarUtils;->showNavigationBar(Landroid/view/View;)V
[COLOR="blue"].line 314
invoke-virtual {p0}, Landroid/view/Window;->getDecorView()Landroid/view/View;
move-result-object v0
invoke-virtual {v0}, Landroid/view/View;->getSystemUiVisibility()I
move-result v0
const/high16 v1, -0x1000
or-int/2addr v1, v0
move/from16 v0, v1
.line 315
invoke-virtual {p0}, Landroid/view/Window;->getDecorView()Landroid/view/View;
move-result-object v1
invoke-virtual {v1, v0}, Landroid/view/View;->setSystemUiVisibility(I)V[/COLOR]
goto :goto_0
.end method
5. Save, compile, replace it and DONE!
Warning: if you are having any problem on compile/fc, try to put -0x100000 value instead of -0x1000 (thanks @niaboc79)
Screenshots:
.
Thumbs
Thumbs...
1st to sayyy woooowwwww great mate !!
Sent from my C6603 using Tapatalk
Awesome....I'm gonna flash it right away.
So, only "bug" you have in released version is that search bar bug?
Great work...!
Nice....mate...absolutely amazing..
Everything is working incredibly well...fast and fluid.
BTW - only "bug" I could found is that I should apply my theme again to get back my navigation bar icons...
I don't know is this is placebo or what but everything seems more fluid and smooth...
Also...do you maybe know how to fix this back icon (it's bigger that rest icons)
That was problem with some 136 firmwares on Z1 but I just used different systemUI - and I don't want to use another one anymore
Sent from my C6903 using Tapatalk
The new home is really great works in all theme ...i gues this is the first fully functional home without problems !! I like the drawer its now full screen
Edit: im still trying to get work the systemui
Sent from my C6603 using Tapatalk
Z1 users - don't enable systemUI customisation in Xperia Xposed - you'll end in systemUI FC.
Everything seems excellent for me.
Sent from my C6903 using Tapatalk
funky0308 said:
Z1 users - don't enable systemUI customisation in Xperia Xposed - you'll end in systemUI FC.
Everything seems excellent for me.
Sent from my C6903 using Tapatalk
Click to expand...
Click to collapse
Mate i also have that hjge back button hene
Sent from my Transformer TF101 using Tapatalk now Free
lyndonguti said:
Mate i also have that hjge back button hene
Sent from my Transformer TF101 using Tapatalk now Free
Click to expand...
Click to collapse
@niaboc79 had solution for that.
Mate, could you help a bit here...
I could resize it but that's not solution...that's improvising
In landscape is O.K but portrait is odd...
Sent from my C6903 using Tapatalk
funky0308 said:
@niaboc79 had solution for that.
Mate, could you help a bit here...
I could resize it but that's not solution...that's improvising
In landscape is O.K but portrait is odd...
Sent from my C6903 using Tapatalk
Click to expand...
Click to collapse
Yeah niaboc fix that....sure sera will know that too...anway yeah its odd but hey the system notification is just out of the box hehe
Sent from my Transformer TF101 using Tapatalk now Free
lyndonguti said:
Yeah niaboc fix that....sure sera will know that too...anway yeah its odd but hey the system notification is just out of the box hehe
Sent from my Transformer TF101 using Tapatalk now Free
Click to expand...
Click to collapse
Absolutely... @serajr knows that I didn't mean nothing bad, just reporting and because he did so much tonight I asked another Android wizard
Sent from my C6903 using Tapatalk
This one works freaking well on XT! Recommended
Sent from my LT30p using Tapatalk
funky0308 said:
Absolutely... @serajr knows that I didn't mean nothing bad, just reporting and because he did so much tonight I asked another Android wizard
Sent from my C6903 using Tapatalk
Click to expand...
Click to collapse
Yeah he know us such a huge supporters of those two gigantic hehe.….anyway i think im gonna enjoy the home for now ..so nice
Sent from my Transformer TF101 using Tapatalk now Free
I know it isn't made for such a different device, but I tried it anyway on my Tablet Z.
It half works. If I slide down the notification side, it doesn't show anything. The toggles side works nicely, except for the Location toggle, which thinks it is off, when everything is on.
Other thing is the bugged navigation bar. It is completely huge and requires a lot of tries to work. The rest seems to work somewhat well.
Once again, I know it isn't meant for such a different device, but it worth a try
Sent from my SGP311 using Tapatalk
@serajr could you port it to 4.1.2 please? it'd be really cool! I like that notification panel I want to make my Ion better until I get my Z2
funky0308 said:
@niaboc79 had solution for that.
Mate, could you help a bit here...
I could resize it but that's not solution...that's improvising
In landscape is O.K but portrait is odd...
Sent from my C6903 using Tapatalk
Click to expand...
Click to collapse
navigation_bar.xml
for all line with:
Code:
android:id="@id/back"
remove
Code:
android:scaleType="center"
niaboc79 said:
navigation_bar.xml
for all line with:
Code:
android:id="@id/back"
remove
Code:
android:scaleType="center"
Click to expand...
Click to collapse
As I said...he knows
Thanks mate - will do that tomorrow.
Tnx for fast answer
Sent from my C6903 using Tapatalk
@serajr
Amazing work my friend
Here's already my little variation with some theme accent color
Edit: GPS and Hotspot toggles are not working proprely
@serajr first thanks for your awesome work
Little bug : useless vibration when touch above navigation keys
Sent from my C6503 using Tapatalk

Categories

Resources