5,593,401 Members 36,262 Now Online
XDA Developers Android and Mobile Development Forum

[TouchWiz3][Tutorial] ►Ultimate◄►All In One◄ [Update:8/3/2013]

Tip us?
 
Sniper Killer
Old
(Last edited by Sniper Killer; 19th March 2014 at 01:06 PM.)
#1  
Sniper Killer's Avatar
Recognized Contributor - OP
Thanks Meter 2579
Posts: 1,202
Join Date: Dec 2012
Location: /system/build.prop
Default [TouchWiz3][Tutorial] ►Ultimate◄►All In One◄ [Update:8/3/2013]

ALL IN ONE Guide for all TouchWiz3 Users !

NOTE : Some of the methods are taken on SpaceCaker's touchwiz thread, but, most of them are new.

Quote:
What is Touchwiz3 ?
Touchwiz is more than a simple launcher.
It's a framework , a set of functions, developed by and for Samsung, available only to Samsung developers.
Those functions allow them to create Samsung's own launcher, Touchwiz UI, their unique Camera App, a few more apps as well as a whole bunch of Android customization specifically for the SGS3 or any other Android phone they come up with.
Quote:
Post Navigation :
  • Page Indicators
  • Homescreen
  • App drawer
  • Dock Icons
  • Special modifications
Firstly you need to decompile TouchWiz30Launcher.apk to make all this changes. If you don't know how to decompile simply follow this guide :
http://forum.xda-developers.com/show....php?t=2275713

Quote:
Credits :
- Spacecaker - The best teacher ever had xD
- dali47 for 5 Icon dock , 5x5 Homescreen & Appdrawer
Caution : In case keep a secondary launcher if anything goes wrong !

OK , Now let's go


PAGE INDICATORS :

Quote:
How to place Page indicators at the bottom ( As in TouchWiz4 ) :

1) Go to Res/Values-mdpi/Dimens.xml ( Values-xxxx depend on your resolution )

2) Find :

Code:
<dimen name="menu_top_offset">XXXdip</dimen>
Change XXX to any size you want. ( Normally use 6.0 dip )

3) Find :

Code:
<dimen name="workspace_pageindicator_top">XXXdip</dimen>
Again Change XXX to any size you want ( Normally use 385.0 dip )

4) Find :

Code:
<dimen name="pageindicator_top_offset">XXXdip</dimen>
Again Change XXX to any size you want ( Normally used 375.0 dip )

Recompile TouchWiz30Launcher.apk and test.

Quote:
Disable/Enable Autohide of Page Indicators on Homescreen & App drawer :

- Go to Res/Values/Bools.xml

For homescreen change :
Code:
true
( True = Autohide enabled )
to:
Code:
false
( False = Autodhide disabled )

For AppDrawer change :
Code:
true
( True = Autohide enabled )
to :
Code:
false
( False = Autodhide disabled )
Quote:
Remove number on Page Indicator :

Open /smali/com/sec/android/app/twlauncher/PageIndicator$Page.smali and delete :
Code:
invoke-virtual {v0, v1, v2, v3, v4}, Landroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V
HOMESCREEN :

Quote:
Set default screen counter :

Go to /res/xml-mdpi/launcher_config.xml

Change :
Code:
launcher:defaultScreenCount="3"
Number 3 from "1 to 7"
Quote:
Set default homescreen :

Add this line on build.prop :
Code:
ro.csc.homescreen.defaultscreen=2
Quote:
5x5 Icons Home screen (Widgets will look smaller)

Go to /res/layout-mdpi/workspace_screen.xml
Code:
shortAxisCells="4"
Change to :
Code:
shortAxisCells="5"
Here again find :
Code:
cellWidth="80.0dip"
Change to :
Code:
cellWidth="64.0dip"
Find again :
Code:
longAxisCells="4"
Change to :
Code:
longAxisCells="5"
One last time find :
Code:
cellHeight="100.0dip"
Change to :
Code:
cellHeight="80.0dip"
Go to /res/values-mdpi/styles.xml
Find :
Code:
4.0dip
Change to :
Code:
2.0dip
Quote:
How to delete the black background of shortcuts :

Decompile TouchWiz30Launcher.apk

Go to res/values-xdpi/colors.xml

Find this :
Code:
<color name="bubble_dark_background">#b2191919</color>
Change to :
Code:
<color name="bubble_dark_background">#00191919</color>
Recompile and test.
The Following 15 Users Say Thank You to Sniper Killer For This Useful Post: [ Click to Expand ]
 
Sniper Killer
Old
(Last edited by Sniper Killer; 5th June 2013 at 10:22 PM.)
#2  
Sniper Killer's Avatar
Recognized Contributor - OP
Thanks Meter 2579
Posts: 1,202
Join Date: Dec 2012
Location: /system/build.prop
Tutorial Post #2

App Drawer :

Quote:
Transparent app drawer :

Go to /res/values-mdpi/colors.xml
Code:
<color name="menu_background">#FF000000</color>
change FF to 80 (semi-transparent) or 99 (like TouchWiz4)
Quote:
Enable concentration effect in app drawer :

Go to /res/xml-mdpi/launcher_config.xml
Add :
Code:
launcher:usemainmenuconcentrationeffect="true"
above launcher:use16bitwindow="xxx"
Quote:
Enable list view option:

Go to /res/xml-mdpi/launcher_config.xml
add :
Code:
launcher:usemainmenulistmode="true"
Quote:
Adding auto-alphabetical arrangement:

Go to /smali/com/sec/android/app/twlauncher/menumanager.smali

Find :
Code:
invoke-virtual {v0, v6}, lcom/sec/android/app/twlauncher/launchermodel$applicationinfocomparator;->setmode(i)v

.line 1770
iget-object v0, p0, lcom/sec/android/app/twlauncher/menumanager;->mordercomparator:lcom/sec/android/app/twlauncher/launchermodel$applicationinfocomparator;
Change to :

Code:
invoke-virtual {v0, v6}, lcom/sec/android/app/twlauncher/launchermodel$applicationinfocomparator;->setmode(i)v

.line1770
sget-object v0, lcom/sec/android/app/twlauncher/launchermodel;->app_name_comparator:ljava/util/comparator;
Quote:
5 Column App drawer ( 5x4 & 5x5 ) :

 
Go to /res/xml-mdpi/launcher_config.xml
Find:
Code:
menuColumnCount="4"
Change it to 5 ( This is number of Columns )

Find :
Code:
itemNumOfPage="16"
Change 16 to 20 if you want 5x4 app drawer , or 25 if you want 5x5 app drawer ( This is the number of icons per page )

If you're doing 5x5, do the following. if you're doing 5x4 then skip this.

Go to /res/values-mdpi/dimens.xml
Find :
Code:
<dimen name="menu_item_height">92.0dip</dimen>
Change it to 73.6dip (this is the height of the drawer element)

Go to res/layout_mdpi/application_boxed.xml
Find :
Code:
maxLines="2"
Change 2 to 1 (this is the number of lines in the app name in the drawer)
The Following 8 Users Say Thank You to Sniper Killer For This Useful Post: [ Click to Expand ]
 
Sniper Killer
Old
(Last edited by Sniper Killer; 26th June 2013 at 02:44 PM.)
#3  
Sniper Killer's Avatar
Recognized Contributor - OP
Thanks Meter 2579
Posts: 1,202
Join Date: Dec 2012
Location: /system/build.prop
Default Post #3

Dock Icons :

Quote:
How to add title on dock icons :

 
Go to smali/com/sec/android/app/twlauncher/AppShortcutZone.smali

Find method :
Code:
.method public changeApplicationsIcon( )V
Find :
Code:
.locals 4

.prologue
Change to :
Code:
.locals 5

    .prologue
    #0x7f0a003d =  change to your string name (homescreenedit_home)
    const v4, 0x7f0a003d
In same method find :
Code:
iget-object v2, p0, Lcom/sec/android/app/twlauncher/AppShortcutZone;->mApplicationsDrawableNormal:Landroid/graphics/drawable/Drawable;

invoke-virtual {v1, v2}, Lcom/sec/android/app/twlauncher/MenuItemView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
Nnder them add these :
Code:
 invoke-virtual {p0}, Lcom/sec/android/app/twlauncher/AppShortcutZone;->getContext()Landroid/content/Context;

    move-result-object v2

    invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2
    #
    const v3, 0x7f0a0012

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v2}, Lcom/sec/android/app/twlauncher/MenuItemView;->setText(Ljava/lang/CharSequence;)V

Now find :
Code:
iget-object v2, p0, Lcom/sec/android/app/twlauncher/AppShortcutZone;->mApplicationsDrawableMenu:Landroid/graphics/drawable/Drawable;

  invoke-virtual {v1, v2}, Lcom/sec/android/app/twlauncher/MenuItemView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
Under them add these lines :
Code:
invoke-virtual {p0}, Lcom/sec/android/app/twlauncher/AppShortcutZone;->getContext()Landroid/content/Context;

    move-result-object v2

    invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    invoke-virtual {v2, v4}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v2}, Lcom/sec/android/app/twlauncher/MenuItemView;->setText(Ljava/lang/CharSequence;)V
Now again find :

Code:
iget-object v2, p0, Lcom/sec/android/app/twlauncher/AppShortcutZone;->mApplicationsDrawableEdit:Landroid/graphics/drawable/Drawable;

invoke-virtual {v1, v2}, Lcom/sec/android/app/twlauncher/MenuItemView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
And under them add :

Code:
 invoke-virtual {p0}, Lcom/sec/android/app/twlauncher/AppShortcutZone;->getContext()Landroid/content/Context;

    move-result-object v2

    invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    invoke-virtual {v2, v4}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v2}, Lcom/sec/android/app/twlauncher/MenuItemView;->setText(Ljava/lang/CharSequence;)V
In method .method public makeItemView
Find :
Code:
invoke-direct {v6, v7}, Lcom/sec/android/app/twlauncher/FastBitmapDrawable;->(Landroid/graphics/Bitmap;)V

invoke-virtual {v5, v6}, Lcom/sec/android/app/twlauncher/MenuItemView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
Under those add :
Code:
 iget-object v6, p1, Lcom/sec/android/app/twlauncher/ApplicationInfo;->title:Ljava/lang/CharSequence;

    invoke-virtual {v5, v6}, Lcom/sec/android/app/twlauncher/MenuItemView;->setText(Ljava/lang/CharSequence;)V
Go to res/values-mdpi/dimens.xml

Find :
Code:
XXXX
( XXXX is a number (dip) but I used this as reference)
Change XXXX to 51.0dip

Now in same file find :

Code:
XXXX
Again change XXXX to
Code:
6.0dip


Quote:
5(6) Icon Dock :

 
Go to /res/layout-mdpi/launcher.xml
Find :
Code:
iconColumnCount="4"
Replace 4 with 5 ( Or 6 if you want 6 Icon Dock )

Go to /smali/com/sec/android/app/twlauncher/AppShortcutZone.smali
Find :
Code:
 const/4 v8, 0x3
Replace 0x3 with 0x4 ( Or 0x5 for 6 Icon Dock )

Find:
Code:
const/4 v6, 0x3
Replace0x3 with 0x4 ( Or 0x5 for 6 Icon Dock )


Special Modifications

Quote:
Enable Auto-Rotation :

 
Go to AndroidManifest.xml
Find :
1. Change
Code:
screenOrentation="nosensor"
To :
Code:
screebOrentation="user"
Recomile launcher and sign it!
Always sign apks if you edit AndroidManifest.xml!


THANKS WOULD BE APPRECIATED
The Following 14 Users Say Thank You to Sniper Killer For This Useful Post: [ Click to Expand ]
 
mathm2013
Old
#4  
mathm2013's Avatar
Recognized Contributor
Thanks Meter 847
Posts: 917
Join Date: Jan 2013
Location: Rio de Janeiro
Quote:
Originally Posted by Sniper Killer View Post
Another
Nice! Will test as soon as i have the time.
 

 
Quote:
Moto G XT1032: Running Mokee OS.
Quote:
Ace-i: Running Touchwiz Ressurection V9.5

My work:
The Following User Says Thank You to mathm2013 For This Useful Post: [ Click to Expand ]
 
srt99
Old
(Last edited by srt99; 5th June 2013 at 08:48 PM.)
#5  
srt99's Avatar
Senior Member
Thanks Meter 569
Posts: 946
Join Date: Dec 2012
Location: Ahmedabad
awesome..
much needed guide..!!
will surely give it a try after my exams..!
:thumbup:

edit: @ op can u please add the 'click to show conent' or 'spoiler' where possible ??
on mobile takes a bit long to scroll down..
just my opinion..!


Sent from my GT-S5830i using xda app-developers app
The Following User Says Thank You to srt99 For This Useful Post: [ Click to Expand ]
 
Sniper Killer
Old
#6  
Sniper Killer's Avatar
Recognized Contributor - OP
Thanks Meter 2579
Posts: 1,202
Join Date: Dec 2012
Location: /system/build.prop
Quote:
Originally Posted by srt99 View Post
awesome..
much needed guide..!!
will surely give it a try after my exams..!
:thumbup:

edit: @ op can u please add the 'click to show conent' or 'spoiler' where possible ??
on mobile takes a bit long to scroll down..
just my opinion..!


Sent from my GT-S5830i using xda app-developers app
Thanks

If i place hide tags it will be a bit trolling for users because it is hard to follow all steps , especially the last guide ( Adding title to dock ) If you forget to make one of that steps touchwiz will FC. Sorry
The Following 3 Users Say Thank You to Sniper Killer For This Useful Post: [ Click to Expand ]
 
SpaceCaker
Old
#7  
SpaceCaker's Avatar
Recognized Themer / Contributor
Thanks Meter 9933
Posts: 12,833
Join Date: Mar 2011
Location: netherlands
Quote:
Originally Posted by Sniper Killer View Post
Thanks

If i place hide tags it will be a bit trolling for users because it is hard to follow all steps , especially the last guide ( Adding title to dock ) If you forget to make one of that steps touchwiz will FC. Sorry
use one hide tag for all stuff under each guide


Sent from my S500 using xda app-developers app
 

My Github Click Here
Github BroadcomCM Click Here
Github CyanoSpaceMod Click Here
Github MSR-Roms Click Here
Linux HP-Pavilion-G7 3.11.0-14-generic #21-Ubuntu SMP Tue Nov 12 17:04:55 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
The Following 4 Users Say Thank You to SpaceCaker For This Useful Post: [ Click to Expand ]
 
Flamestorm
Old
#8  
Flamestorm's Avatar
Senior Member
Thanks Meter 80
Posts: 366
Join Date: Jun 2012
Location: Veles
So this modified Touchwiz will be in SGS3 v4?
 
Falcon_X5
Old
#9  
Falcon_X5's Avatar
Member
Thanks Meter 10
Posts: 47
Join Date: Apr 2013
Awesome, been looking for a guide like this for ages. Thanks. :thumbup:

Sent from my GT-S5830i using xda app-developers app
Press Thanks if i helped!
 
Slayer321
Old
#10  
Slayer321's Avatar
Senior Member
Thanks Meter 232
Posts: 244
Join Date: Mar 2013
Location: Valley of the Death!
Nice work bro.

The Following User Says Thank You to Slayer321 For This Useful Post: [ Click to Expand ]
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes