Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,738,303 Members 53,313 Now Online
XDA Developers Android and Mobile Development Forum

[GUIDE][How-to] New Power Menu JB - With Screenshot

Tip us?
 
tdunham
Old
(Last edited by tdunham; 24th March 2014 at 02:00 PM.)
#1  
tdunham's Avatar
Recognized Contributor - OP
Thanks Meter 16100
Posts: 7,716
Join Date: Jun 2008
Location: TampaBay
Cool [GUIDE][How-to] New Power Menu JB - With Screenshot

This is based off of FL16/GB08 JB 4.1.2.

A touchwiz 4.3 guide has been posted here:

[Guide How-to/MOD] New Power Menu with Screenshot TW 4.3

This will allow you to have Recovery and Bootloader (download mode) right in the Power Menu selections. I grew tired of the extended restart menu so I wrote this.

This is not a flashable mod, it is a guide only.
The attached zip file are support files only that are necessary to create this modification.

Power Menu Guide
 

[CODE]Framework-res.apk changes:

Add these lines to res/values/strings.xml

Code:
Select Code
    <string name="download">Bootloader</string>
    <string name="recovery">Recovery</string>
Add the two png files in the attachment to:
res/drawable-hdpi

Recompile framework-res.apk.
Decompile the new framework-res.apk and open res/values/public.xml.
We need to write down these values because we need them later. Yours will probably be different. Leave off the leading zero:

Code:
Select Code
    <public type="drawable" name="tw_ic_download" id="0x01080ad6" />
    <public type="drawable" name="tw_ic_recovery" id="0x01080ad7" />
    <public type="string" name="download" id="0x01040843" />
    <public type="string" name="recovery" id="0x01040844" />
Android.policy.jar changes:
Add the two smali files in the attachment to com\android\internal\policy\impl

Smali edit:
com\android\internal\policy\impl\GlobalActions.sma li

New line before:

Code:
Select Code
.field private mDialog:Landroid/app/AlertDialog;

.field private mHandler:Landroid/os/Handler;
After:

Code:
Select Code
.field private mDialog:Landroid/app/AlertDialog;

.field private mDownload:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

.field private mHandler:Landroid/os/Handler;


New line before:

Code:
Select Code
.field private mPowerOff:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

.field private mRestart:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;
After:

Code:
Select Code
.field private mPowerOff:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

.field private mRecovery:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

.field private mRestart:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;
Find around line 1075:

Code:
Select Code
    .line 372
    new-instance v1, Lcom/android/internal/policy/impl/GlobalActions$4;

    const v2, 0x10808ee

    const v3, 0x1040192

    move-object/from16 v0, p0

    invoke-direct {v1, v0, v2, v3}, Lcom/android/internal/policy/impl/GlobalActions$4;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V

    move-object/from16 v0, p0

    iput-object v1, v0, Lcom/android/internal/policy/impl/GlobalActions;->mPowerOff:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;
    .line 399
Add new lines after this section:
***NOTE THE LINES IN BLUE, THESE MUST MATCH THE VALUES WE GOT FROM FRAMEWORK (without the leading zero)***

Code:
Select Code
    .line 372
    new-instance v1, Lcom/android/internal/policy/impl/GlobalActions$4;

    const v2, 0x10808ee

    const v3, 0x1040192

    move-object/from16 v0, p0

    invoke-direct {v1, v0, v2, v3}, Lcom/android/internal/policy/impl/GlobalActions$4;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V

    move-object/from16 v0, p0

    iput-object v1, v0, Lcom/android/internal/policy/impl/GlobalActions;->mPowerOff:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    .line 399
    new-instance v1, Lcom/android/internal/policy/impl/GlobalActions$Download;

    const v2, 0x1080ad6

    const v3, 0x1040843

    move-object/from16 v0, p0

    invoke-direct {v1, v0, v2, v3}, Lcom/android/internal/policy/impl/GlobalActions$Download;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V

    move-object/from16 v0, p0

    iput-object v1, v0, Lcom/android/internal/policy/impl/GlobalActions;->mDownload:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    .line 400
    new-instance v1, Lcom/android/internal/policy/impl/GlobalActions$Recovery;

    const v2, 0x1080ad7

    const v3, 0x1040844

    move-object/from16 v0, p0

    invoke-direct {v1, v0, v2, v3}, Lcom/android/internal/policy/impl/GlobalActions$Recovery;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V

    move-object/from16 v0, p0

    iput-object v1, v0, Lcom/android/internal/policy/impl/GlobalActions;->mRecovery:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    .line 401
    new-instance v1, Lcom/android/internal/policy/impl/GlobalActions$5;
Now we are going to expand the existing array to include 2 more entries.

Around line 1138:

Before:

Code:
Select Code
    .line 428
    const/4 v1, 0x5
After:

Code:
Select Code
    .line 428
    const/4 v1, 0x7
Find around line 1137:

Code:
Select Code
    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mAirplaneModeOn:Lcom/android/internal/policy/impl/GlobalActions$ToggleAction;

    aput-object v3, v1, v2

    const/4 v2, 0x4

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mRestart:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    invoke-static {v1}, Lcom/google/android/collect/Lists;->newArrayList([Ljava/lang/Object;)Ljava/util/ArrayList;
Replace with:

Code:
Select Code
    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mAirplaneModeOn:Lcom/android/internal/policy/impl/GlobalActions$ToggleAction;

    aput-object v3, v1, v2

    const/4 v2, 0x4

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mDownload:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    const/4 v2, 0x5

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mRecovery:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    const/4 v2, 0x6

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mRestart:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    invoke-static {v1}, Lcom/google/android/collect/Lists;->newArrayList([Ljava/lang/Object;)Ljava/util/ArrayList;



How to remove menu items:
 

Smali edit:
com\android\internal\policy\impl\GlobalActions.sma li


We need to reconfigure the array that displays the options.

Before:

Code:
Select Code
.line 428
    const/4 v1, 0x7

    new-array v1, v1, [Lcom/android/internal/policy/impl/GlobalActions$Action;

    const/4 v2, 0x0

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mAccessiblityShortcut:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    const/4 v2, 0x1

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mPowerOff:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    const/4 v2, 0x2

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mDataModeToggle:Lcom/android/internal/policy/impl/GlobalActions$ToggleAction;

    aput-object v3, v1, v2

    const/4 v2, 0x3

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mAirplaneModeOn:Lcom/android/internal/policy/impl/GlobalActions$ToggleAction;

    aput-object v3, v1, v2

    const/4 v2, 0x4

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mDownload:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    const/4 v2, 0x5

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mRecovery:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    const/4 v2, 0x6

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mRestart:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    invoke-static {v1}, Lcom/google/android/collect/Lists;->newArrayList([Ljava/lang/Object;)Ljava/util/ArrayList;

    move-result-object v1

    move-object/from16 v0, p0

    iput-object v1, v0, Lcom/android/internal/policy/impl/GlobalActions;->mItems:Ljava/util/ArrayList;
We need to split up the array so that we can easily see the different sections.
It will make it easier to modify the line you want to remove.

Code:
Select Code
    .line 428
    const/4 v1, 0x7

    new-array v1, v1, [Lcom/android/internal/policy/impl/GlobalActions$Action;

    #	

    const/4 v2, 0x0

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mAccessiblityShortcut:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    #

    const/4 v2, 0x1

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mPowerOff:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    #

    const/4 v2, 0x2

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mDataModeToggle:Lcom/android/internal/policy/impl/GlobalActions$ToggleAction;

    aput-object v3, v1, v2

    #

    const/4 v2, 0x3

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mAirplaneModeOn:Lcom/android/internal/policy/impl/GlobalActions$ToggleAction;

    aput-object v3, v1, v2

    #

    const/4 v2, 0x4

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mDownload:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    #

    const/4 v2, 0x5

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mRecovery:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    #

    const/4 v2, 0x6

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mRestart:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    #

    invoke-static {v1}, Lcom/google/android/collect/Lists;->newArrayList([Ljava/lang/Object;)Ljava/util/ArrayList;

    move-result-object v1

    move-object/from16 v0, p0

    iput-object v1, v0, Lcom/android/internal/policy/impl/GlobalActions;->mItems:Ljava/util/ArrayList;

Now we will remove the Data Network Mode and Airplane Mode choices from the menu. We need to shrink the array by 2 and also renumber the remaining options. Please note the changes in red.

Code:
Select Code
    .line 428
    const/4 v1, 0x5

    new-array v1, v1, [Lcom/android/internal/policy/impl/GlobalActions$Action;

    #	

    const/4 v2, 0x0

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mAccessiblityShortcut:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    #

    const/4 v2, 0x1

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mPowerOff:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    #

    # const/4 v2, 0x2

    # move-object/from16 v0, p0

    # iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mDataModeToggle:Lcom/android/internal/policy/impl/GlobalActions$ToggleAction;

    # aput-object v3, v1, v2

    #

    # const/4 v2, 0x3

    # move-object/from16 v0, p0

    # iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mAirplaneModeOn:Lcom/android/internal/policy/impl/GlobalActions$ToggleAction;

    # aput-object v3, v1, v2

    #

    const/4 v2, 0x2

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mDownload:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    #

    const/4 v2, 0x3

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mRecovery:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    #

    const/4 v2, 0x4

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mRestart:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    #

    invoke-static {v1}, Lcom/google/android/collect/Lists;->newArrayList([Ljava/lang/Object;)Ljava/util/ArrayList;

    move-result-object v1

    move-object/from16 v0, p0

    iput-object v1, v0, Lcom/android/internal/policy/impl/GlobalActions;->mItems:Ljava/util/ArrayList;
Note: Use of the # symbol is not necessary. I use it simply for clarification and to separate out the sections for easier viewing while editing. Additionally, any lines edited with the # symbol will be ignored when recompiling.


Addendum - Adding Screenshot to Power Menu
(This is an addon to the original Power Menu Guide posted above).
 
Framework-res.apk changes:

Add these lines to res/values/strings.xml

Code:
Select Code
    <string name="global_action_screenshot_txt">Screenshot</string>
Add png file in the screenshot attachment to:
res/drawable-hdpi

Recompile framework-res.apk.
Decompile the new framework-res.apk and open res/values/public.xml.
We need to write down these values because we need them later. Yours will probably be different. Leave off the leading zero:

Code:
Select Code
<public type="string" name="global_action_screenshot_txt" id="0x01040845" />
<public type="drawable" name="tw_ic_screenshot" id="0x01080ad8" />
Android.policy.jar changes:
Add the two smali files in the attachment to com\android\internal\policy\impl

Smali edit:
com\android\internal\policy\impl\GlobalActions.sma li

New line before:
Code:
Select Code
.field private mRingerModeReceiver:Landroid/content/BroadcastReceiver;

.field private mSilentModeAction:Lcom/android/internal/policy/impl/GlobalActions$SilentModeAction;
After:
Code:
Select Code
.field private mRingerModeReceiver:Landroid/content/BroadcastReceiver;

.field private mScreenCapture:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

.field private mSilentModeAction:Lcom/android/internal/policy/impl/GlobalActions$SilentModeAction;
New Section Before:
Code:
Select Code
    .line 372
    new-instance v1, Lcom/android/internal/policy/impl/GlobalActions$4;

    const v2, 0x10808ee

    const v3, 0x1040192

    move-object/from16 v0, p0

    invoke-direct {v1, v0, v2, v3}, Lcom/android/internal/policy/impl/GlobalActions$4;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V

    move-object/from16 v0, p0

    iput-object v1, v0, Lcom/android/internal/policy/impl/GlobalActions;->mPowerOff:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;
    .line 399
    new-instance v1, Lcom/android/internal/policy/impl/GlobalActions$Download;

    const v2, 0x1080ad6

    const v3, 0x1040843

    move-object/from16 v0, p0

    invoke-direct {v1, v0, v2, v3}, Lcom/android/internal/policy/impl/GlobalActions$Download;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V

    move-object/from16 v0, p0

    iput-object v1, v0, Lcom/android/internal/policy/impl/GlobalActions;->mDownload:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;
After:
***NOTE THE LINES IN BLUE, THESE MUST MATCH THE VALUES WE GOT FROM FRAMEWORK (without the leading zero)***
Code:
Select Code
    .line 372
    new-instance v1, Lcom/android/internal/policy/impl/GlobalActions$4;

    const v2, 0x10808ee

    const v3, 0x1040192

    move-object/from16 v0, p0

    invoke-direct {v1, v0, v2, v3}, Lcom/android/internal/policy/impl/GlobalActions$4;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V

    move-object/from16 v0, p0

    iput-object v1, v0, Lcom/android/internal/policy/impl/GlobalActions;->mPowerOff:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    .line 388
    new-instance v1, Lcom/android/internal/policy/impl/GlobalActions$16;

    const v2, 0x1080ad8

    const v3, 0x1040845

    move-object/from16 v0, p0

    invoke-direct {v1, v0, v2, v3}, Lcom/android/internal/policy/impl/GlobalActions$16;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V

    move-object/from16 v0, p0

    iput-object v1, v0, Lcom/android/internal/policy/impl/GlobalActions;->mScreenCapture:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    .line 399
    new-instance v1, Lcom/android/internal/policy/impl/GlobalActions$Download;

    const v2, 0x1080ad6

    const v3, 0x1040843

    move-object/from16 v0, p0

    invoke-direct {v1, v0, v2, v3}, Lcom/android/internal/policy/impl/GlobalActions$Download;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V

    move-object/from16 v0, p0

    iput-object v1, v0, Lcom/android/internal/policy/impl/GlobalActions;->mDownload:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

Now to edit the array and add ScreenShot
NOTE: FYI, here we are removing replacing DataToggle with Airplane Mode to keep menu from overlapping the screen.
Find around line 1180:
Code:
Select Code
    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mDataModeToggle:Lcom/android/internal/policy/impl/GlobalActions$ToggleAction;

    aput-object v3, v1, v2

    const/4 v2, 0x3

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mAirplaneModeOn:Lcom/android/internal/policy/impl/GlobalActions$ToggleAction;

    aput-object v3, v1, v2

    const/4 v2, 0x4

    move-object/from16 v0, p0
Replace with:
Code:
Select Code
    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mAirplaneModeOn:Lcom/android/internal/policy/impl/GlobalActions$ToggleAction;    
    aput-object v3, v1, v2

    const/4 v2, 0x3

    move-object/from16 v0, p0

    iget-object v3, v0, Lcom/android/internal/policy/impl/GlobalActions;->mScreenCapture:Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;

    aput-object v3, v1, v2

    const/4 v2, 0x4

    move-object/from16 v0, p0


If porting this to another phone
Important update info for Screenshot mod
:
 

You may have to possibly change this value in GlobalActions$16$1.smali which is one of the addon files to match your code.
Code:
Select Code
invoke-static {v2}, Lcom/android/internal/policy/impl/GlobalActions;->access$200(Lcom/android/internal/policy/impl/GlobalActions;)Landroid/content/Context;
Here is my access$200 in GlobalActions.smali, just search for the line in red. If it is different access$xxx in your smali, also change access$xxx to match in GlobalActions$16$1.smali:
Code:
Select Code
.method static synthetic access$200(Lcom/android/internal/policy/impl/GlobalActions;)Landroid/content/Context;
    .registers 2
    .parameter "x0"

    .prologue
    .line 88
    iget-object v0, p0, Lcom/android/internal/policy/impl/GlobalActions;->mContext:Landroid/content/Context;

    return-object v0
.end method


Credits to Mirko DDD for the ScreenShot method!!!
Attached Thumbnails
Click image for larger version

Name:	2013-01-07 06.42.09.jpg
Views:	5300
Size:	27.4 KB
ID:	1689056   Click image for larger version

Name:	2013-01-31 07.43.31.jpg
Views:	4134
Size:	24.4 KB
ID:	1691847   Click image for larger version

Name:	2013-06-21 15.31.19.jpg
Views:	2294
Size:	25.8 KB
ID:	2060034  
Attached Files
File Type: zip New Power Menu.zip - [Click for QR Code] (12.9 KB, 1910 views)
File Type: zip ScreenShot_Files.zip - [Click for QR Code] (7.0 KB, 859 views)
The Following 56 Users Say Thank You to tdunham For This Useful Post: [ Click to Expand ]
 
tdunham
Old
#2  
tdunham's Avatar
Recognized Contributor - OP
Thanks Meter 16100
Posts: 7,716
Join Date: Jun 2008
Location: TampaBay
OP updated with new section.
How to remove options from Power Menu. Screenshot attached with modification.
The Following 8 Users Say Thank You to tdunham For This Useful Post: [ Click to Expand ]
 
Mirko ddd
Old
#3  
Mirko ddd's Avatar
Recognized Contributor / Recognized Developer
Thanks Meter 4721
Posts: 1,450
Join Date: Nov 2010
Location: Piazza Armerina

 
DONATE TO ME
thx buddy, i will look into asap.
NICOLA SAVED ME!

If I helped you and/or you like my rom consider a small donation and/or join Disaster Family on Facebook
I DON'T ANSWER ON PM ABOUT ROM/MODDING STUFFS

 
Zero Night
Old
#4  
Zero Night's Avatar
Senior Member
Thanks Meter 195
Posts: 326
Join Date: May 2012
Location: Under Your Bed
Looks Nice
 
PanchoPlanet
Old
#5  
PanchoPlanet's Avatar
Senior Member
Thanks Meter 626
Posts: 2,358
Join Date: Oct 2011
Location: Crooklyn

 
DONATE TO ME
Default Re: [GUIDE][How-to] New Power Menu JB

So those the zip replace all the script changes in the op?

Not sure, changes to script+zip - or just zip to get new power menu?

Pp.:beer:

sent from a jellybean filled epic touch.
Sent from my Ginger infused Asus G73.
 
tdunham
Old
#6  
tdunham's Avatar
Recognized Contributor - OP
Thanks Meter 16100
Posts: 7,716
Join Date: Jun 2008
Location: TampaBay
Default Re: [GUIDE][How-to] New Power Menu JB

Quote:
Originally Posted by PanchoPlanet View Post
So those the zip replace all the script changes in the op?

Not sure, changes to script+zip - or just zip to get new power menu?

Pp.:beer:

sent from a jellybean filled epic touch.
The zip contains extra support files that need to be added to the classes.dex file before it gets recompiled. So yes, the last part of what you said.
And also a couple files for the framework edit are in the zip too.
Sent from my SPH-D710 using xda premium
The Following 3 Users Say Thank You to tdunham For This Useful Post: [ Click to Expand ]
 
Samsung Fanboy
Old
#7  
Samsung Fanboy's Avatar
Senior Member
Thanks Meter 43
Posts: 126
Join Date: Dec 2012
Default Re: [GUIDE][How-to] New Power Menu JB

This thread got mentioned on Google+, keep up the good work!



Sent from my SPH-D710 using Xparent Skyblue Tapatalk 2
The Following 3 Users Say Thank You to Samsung Fanboy For This Useful Post: [ Click to Expand ]
 
Dzol Cp
Old
#8  
Dzol Cp's Avatar
Recognized Contributor / Themer
Thanks Meter 3907
Posts: 1,461
Join Date: Jan 2012
Location: TB/BF Penang
Great Job!!
Gonna try this awesomenesssss..
 
tdunham
Old
#9  
tdunham's Avatar
Recognized Contributor - OP
Thanks Meter 16100
Posts: 7,716
Join Date: Jun 2008
Location: TampaBay
Quote:
Originally Posted by Samsung Fanboy View Post
This thread got mentioned on Google+, keep up the good work!


Thanks for keeping an eye out for me.
Yes, another very well written writeup by Egzthunder1.

http://www.xda-developers.com/androi...epic-4g-touch/
The Following 2 Users Say Thank You to tdunham For This Useful Post: [ Click to Expand ]
 
Benzonat0r
Old
#10  
Benzonat0r's Avatar
Senior Member
Thanks Meter 1247
Posts: 1,297
Join Date: Sep 2009
Very nice, I did that on my Galaxy S3 Mini and works great.
It's harder to understand women than Android and Kernels.

My devices: GT-I9100, GT-I8190, GT-S5570, Nexus 5

Just call me Benz

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes