[DEV][HOW TO]Enable S5 Grid/List View in S4 SecSettings

Search This thread

IganKuhz

Senior Member
Mar 11, 2012
211
294
Mexico City
Hello to all Developers and XDA members!!

I have come here to give you a couple of guides on how to enable some S5 Features and other good stuff so here is how you can do it! This guide is only for I9505, I do not know if it can be apply in other variants.
Some mods are based on other dev mods. It took me a lot of time to understand how they did it because they did not share any guide.

What Is Required:
★ Willing of learning and some patience and cold nerves!
★ Yoy need to have experience and know how to decompile/recompile apks with Apktools, apkmanager, smali, and baksmali
★ Have 7-zip installed onto your computer/laptop
★ Make sure you have Notepad++ also installed!

• I am not going to teach you how to use these programs because I am assuming that you already know how to use them!
• You must deodex your app before proceeding.
• A lot of works are done by various xda members, some are from other sites, some are mine. If you found the guide of your mod here and you haven't been credited, please PM.

HOW TO ENABLE S5 GRID/LIST VIEW
WHAT DOES THIS MOD DO: This mod will let you enable grid/list view in the SecSettings.

★ Go into your system/priv-app folder and take out your "SecSettings.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecSettings.apk, go to:

SecSettings\smali\com\android\settings\GridSettings.smali

Now open up "GridSettings.smali" with your notepad++ for editing.

Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:

SEARCH FOR:

Code:
[COLOR="Green"].method public onCreateOptionsMenu(Landroid/view/Menu;)Z[/COLOR]

Now ADD

Code:
    const v3, 0x7f020013

    invoke-interface {v2, v3}, Landroid/view/MenuItem;->setIcon(I)Landroid/view/MenuItem;

    const/4 v3, 0x5

    invoke-interface {v2, v3}, Landroid/view/MenuItem;->setShowAsActionFlags(I)Landroid/view/MenuItem;

    :cond_0
[COLOR="Blue"]    const/16 v0, 0xc9

    const v1, 0x7f090027

    invoke-interface {p1, v3, v0, v3, v1}, Landroid/view/Menu;->add(IIII)Landroid/view/MenuItem;

    move-result-object v0

    new-instance v1, Landroid/content/Intent;

    const-class v2, Lcom/android/settings/GridSettings;

    invoke-direct {v1, p0, v2}, Landroid/content/Intent;-><init>(Landroid/content/Context;Ljava/lang/Class;)V

    invoke-interface {v0, v1}, Landroid/view/MenuItem;->setIntent(Landroid/content/Intent;)Landroid/view/MenuItem;[/COLOR]

    const/16 v3, 0xca

    const v4, 0x7f09002b

    invoke-interface {p1, v5, v3, v5, v4}, Landroid/view/Menu;->add(IIII)Landroid/view/MenuItem;

    move-result-object v1

    invoke-direct {p0}, Lcom/android/settings/GridSettings;->makeFavoriteIntent()Landroid/content/Intent;

    move-result-object v0

    invoke-interface {v1, v0}, Landroid/view/MenuItem;->setIntent(Landroid/content/Intent;)Landroid/view/MenuItem;

    :cond_1
    invoke-super {p0, p1}, Landroid/app/Activity;->onCreateOptionsMenu(Landroid/view/Menu;)Z

    move-result v3

    return v3
.end method

Once done save your changes. now go to:

SecSettings\res\values\bools.xml

Now CHANGE THIS LINES TO:

Code:
<bool name="settings_list">[COLOR="Red"]true[/COLOR]</bool>
Code:
<bool name="settings_list">[COLOR="Blue"]false[/COLOR]</bool>

and

Code:
<bool name="settings_grid">[COLOR="Red"]false[/COLOR]</bool>
Code:
<bool name="settings_grid">[COLOR="Blue"]true[/COLOR]</bool>

This will remove second SecSetting icon in draw menu.

Once done now save changes, Recompile your SecSettings.apk and that's it your DONE!!!

If this help you give me credits, I have spend many hours doing this.

OK. This is for you my friends, As you ask me. Many more HOW TO are coming.
@XxeAgLeAnGeLxX @oracle01642 @karkasss @citymen34 @Chaos ^_^
 
Last edited:

IganKuhz

Senior Member
Mar 11, 2012
211
294
Mexico City
HOW TO REMOVE USELESS ENTRIE IN GRID/LIST VIEW
WHAT DOES THIS MOD DO: This mod will let you remove useless entries like, Glance View, Fingerprint, and S Planner in grid/list view.

★ Go into your system/priv-app folder and take out your "SecSettings.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecSettings.apk, go to:

SecSettings\res\xml\grid_settings_headers.xml

Now open up "grid_settings_headers.xml" with your notepad++ for editing.

Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:

SEARCH and REMOVE THIS ENTRIES:

Code:
    <header android:icon="@drawable/grid_ic_settings_multi_window" android:id="@id/header_display_multi_window" android:title="@string/multi_window_title" android:summary="@string/menu_summary_multi_window" android:fragment="com.android.settings.MultiWindowSettings" />
    <header android:icon="@drawable/grid_ic_settings_notification_panel" android:id="@id/header_display_notification_panel" android:title="@string/notification_panel_title" android:fragment="com.android.settings.NotificationPanelMenu" />
[COLOR="Red"]    <header android:icon="@drawable/grid_ic_settings_glance" android:id="@id/glance_settings" android:title="@string/glance_settings" android:fragment="com.android.settings.glance.GlanceSettings" />[/COLOR]
    <header android:icon="@drawable/grid_ic_settings_one_handed_operation" android:id="@id/onehand_settings" android:title="@string/onehand_settings_title" android:fragment="com.android.settings.OneHandSettings" />
    <header android:id="@id/application_section" android:title="@string/app_name_label" />
    <header android:icon="@drawable/grid_ic_settings_applications" android:id="@id/application_settings" android:title="@string/applications_settings" android:fragment="com.android.settings.applications.ManageApplications" />
    <header android:icon="@drawable/grid_ic_setting_launch_apps" android:id="@id/launch_application_settings" android:title="@string/launch_application_settings" android:fragment="com.android.settings.LaunchApplication" />
    <header android:icon="@drawable/grid_ic_settings_call" android:id="@id/call_settings" android:title="@string/call_settings">
        <intent android:targetPackage="com.android.phone" android:action="android.intent.action.MAIN" android:targetClass="com.android.phone.CallFeaturesSetting" />
    </header>
    <header android:icon="@drawable/grid_ic_settings_contacts" android:id="@id/contact_settings" android:title="@string/easy_mode_contacts">
        <intent android:targetPackage="com.android.contacts" android:action="android.intent.action.MAIN" android:targetClass="com.android.contacts.preference.ContactsPreferenceActivity" />
    </header>
    <header android:icon="@drawable/grid_ic_settings_internet" android:id="@id/browser_settings" android:title="@string/smart_scroll_app_web">
        <intent android:targetPackage="com.sec.android.app.sbrowser" android:action="android.intent.action.MAIN" android:targetClass="com.sec.android.app.sbrowser.preferences.Settings" />
    </header>
[COLOR="Red"]    <header android:icon="@drawable/grid_ic_settings_splanner" android:id="@id/splanner_settings" android:title="@string/finger_air_view_help_information_priview_splanner_title">
        <intent android:action="com.sec.android.intent.calendar.setting" />
    </header>[/COLOR]
    <header android:id="@id/user_and_backup_section" android:title="@string/users_and_backup_category" />
    <header android:icon="@drawable/grid_ic_settings_account" android:id="@id/header_general_account_and_backup" android:title="@string/account_settings" android:fragment="com.android.settings.AccountMenu" />
    <header android:icon="@drawable/grid_ic_settings_backup" android:id="@id/privacy_settings" android:title="@string/privacy_settings" android:fragment="com.android.settings.PrivacySettings" />
[COLOR="Red"]    <header android:icon="@drawable/grid_ic_settings_finger_print" android:id="@id/fingerprint_settings" android:title="@string/fingerprint" android:summary="@string/menu_summary_fingerprints" android:fragment="com.android.settings.fingerprint.FingerprintSettings" />[/COLOR]
    <header android:id="@id/motion_section" android:title="@string/motion_title" />
    <header android:icon="@drawable/grid_ic_settings_motion" android:id="@id/header_input_motion_and_gesture_2014" android:title="@string/s_motion_title" android:fragment="com.android.settings.motion2014.MotionSettings2014" />
    <header android:icon="@drawable/grid_ic_settings_air_view" android:id="@id/finger_air_view_settings" android:title="@string/finger_air_view_title" android:summary="@string/air_view_settings_menu_summary" android:fragment="com.android.settings.FingerAirViewSettings" />
    <header android:id="@id/personalixation_section" android:title="@string/personalization" />

Once done now save changes, Recompile your SecSettings.apk and that's it your DONE!!!
 

Attachments

  • Screenshot_2014-06-15-14-29-47.png
    Screenshot_2014-06-15-14-29-47.png
    202.8 KB · Views: 2,538
  • Screenshot_2014-06-15-14-29-54.png
    Screenshot_2014-06-15-14-29-54.png
    158.5 KB · Views: 2,327
Last edited:

egel1

Senior Member
Jul 8, 2012
799
79
You killed me I do not understand How to do it,Can you help me
Would you like to make one,I appreciate it!
 

ambasadii

Senior Member
May 9, 2011
2,577
8,489
Warsaw
sites.google.com
that's what i need ! big thanks.

i have two question:
-how to add missing icon ?
-for particcle effect only solution is add smali files with black screen bug ?

edit:
build with succes S5 settings
for particcle effect i use your lockscreen files from /smali/com/android/settings
and now everything works
one thing need to be add "missing option" in settings
 
Last edited:

IganKuhz

Senior Member
Mar 11, 2012
211
294
Mexico City

egel1

Senior Member
Jul 8, 2012
799
79
ambasadii My Rom is XXUFNC1 i9500 Can I install your SecSettings without a problem?
 
Last edited:

dajumper

Senior Member
Jun 28, 2008
1,954
311
44
The grid style is not working good an example battery icon gives language etc... when i change to list everything works good

Sent from my GT-I9505 using XDA Premium 4 mobile app
 

vicl89

Senior Member
Well, the results given when you press the icons are common with this mod. There're some bugs anyway. We need someone to fix this problems. In my case, I downloaded the modded SecSettings apk from a post in this thread and I had FC's.

I decompiled both apk's (mine and modded), just replaced three files (smali, bools and grid) and I got FC's after compiling.

I don't understand where should I place the lines in GridSettings.smali

Sent from my SGH-I337M using XDA Premium 4 mobile app
 

Top Liked Posts

  • There are no posts matching your filters.
  • 25
    Hello to all Developers and XDA members!!

    I have come here to give you a couple of guides on how to enable some S5 Features and other good stuff so here is how you can do it! This guide is only for I9505, I do not know if it can be apply in other variants.
    Some mods are based on other dev mods. It took me a lot of time to understand how they did it because they did not share any guide.

    What Is Required:
    ★ Willing of learning and some patience and cold nerves!
    ★ Yoy need to have experience and know how to decompile/recompile apks with Apktools, apkmanager, smali, and baksmali
    ★ Have 7-zip installed onto your computer/laptop
    ★ Make sure you have Notepad++ also installed!

    • I am not going to teach you how to use these programs because I am assuming that you already know how to use them!
    • You must deodex your app before proceeding.
    • A lot of works are done by various xda members, some are from other sites, some are mine. If you found the guide of your mod here and you haven't been credited, please PM.

    HOW TO ENABLE S5 GRID/LIST VIEW
    WHAT DOES THIS MOD DO: This mod will let you enable grid/list view in the SecSettings.

    ★ Go into your system/priv-app folder and take out your "SecSettings.apk"
    ★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
    ★ Once you have decompiled the SecSettings.apk, go to:

    SecSettings\smali\com\android\settings\GridSettings.smali

    Now open up "GridSettings.smali" with your notepad++ for editing.

    Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:

    SEARCH FOR:

    Code:
    [COLOR="Green"].method public onCreateOptionsMenu(Landroid/view/Menu;)Z[/COLOR]

    Now ADD

    Code:
        const v3, 0x7f020013
    
        invoke-interface {v2, v3}, Landroid/view/MenuItem;->setIcon(I)Landroid/view/MenuItem;
    
        const/4 v3, 0x5
    
        invoke-interface {v2, v3}, Landroid/view/MenuItem;->setShowAsActionFlags(I)Landroid/view/MenuItem;
    
        :cond_0
    [COLOR="Blue"]    const/16 v0, 0xc9
    
        const v1, 0x7f090027
    
        invoke-interface {p1, v3, v0, v3, v1}, Landroid/view/Menu;->add(IIII)Landroid/view/MenuItem;
    
        move-result-object v0
    
        new-instance v1, Landroid/content/Intent;
    
        const-class v2, Lcom/android/settings/GridSettings;
    
        invoke-direct {v1, p0, v2}, Landroid/content/Intent;-><init>(Landroid/content/Context;Ljava/lang/Class;)V
    
        invoke-interface {v0, v1}, Landroid/view/MenuItem;->setIntent(Landroid/content/Intent;)Landroid/view/MenuItem;[/COLOR]
    
        const/16 v3, 0xca
    
        const v4, 0x7f09002b
    
        invoke-interface {p1, v5, v3, v5, v4}, Landroid/view/Menu;->add(IIII)Landroid/view/MenuItem;
    
        move-result-object v1
    
        invoke-direct {p0}, Lcom/android/settings/GridSettings;->makeFavoriteIntent()Landroid/content/Intent;
    
        move-result-object v0
    
        invoke-interface {v1, v0}, Landroid/view/MenuItem;->setIntent(Landroid/content/Intent;)Landroid/view/MenuItem;
    
        :cond_1
        invoke-super {p0, p1}, Landroid/app/Activity;->onCreateOptionsMenu(Landroid/view/Menu;)Z
    
        move-result v3
    
        return v3
    .end method

    Once done save your changes. now go to:

    SecSettings\res\values\bools.xml

    Now CHANGE THIS LINES TO:

    Code:
    <bool name="settings_list">[COLOR="Red"]true[/COLOR]</bool>
    Code:
    <bool name="settings_list">[COLOR="Blue"]false[/COLOR]</bool>

    and

    Code:
    <bool name="settings_grid">[COLOR="Red"]false[/COLOR]</bool>
    Code:
    <bool name="settings_grid">[COLOR="Blue"]true[/COLOR]</bool>

    This will remove second SecSetting icon in draw menu.

    Once done now save changes, Recompile your SecSettings.apk and that's it your DONE!!!

    If this help you give me credits, I have spend many hours doing this.

    OK. This is for you my friends, As you ask me. Many more HOW TO are coming.
    @XxeAgLeAnGeLxX @oracle01642 @karkasss @citymen34 @Chaos ^_^
    12
    HOW TO REMOVE USELESS ENTRIE IN GRID/LIST VIEW
    WHAT DOES THIS MOD DO: This mod will let you remove useless entries like, Glance View, Fingerprint, and S Planner in grid/list view.

    ★ Go into your system/priv-app folder and take out your "SecSettings.apk"
    ★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
    ★ Once you have decompiled the SecSettings.apk, go to:

    SecSettings\res\xml\grid_settings_headers.xml

    Now open up "grid_settings_headers.xml" with your notepad++ for editing.

    Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:

    SEARCH and REMOVE THIS ENTRIES:

    Code:
        <header android:icon="@drawable/grid_ic_settings_multi_window" android:id="@id/header_display_multi_window" android:title="@string/multi_window_title" android:summary="@string/menu_summary_multi_window" android:fragment="com.android.settings.MultiWindowSettings" />
        <header android:icon="@drawable/grid_ic_settings_notification_panel" android:id="@id/header_display_notification_panel" android:title="@string/notification_panel_title" android:fragment="com.android.settings.NotificationPanelMenu" />
    [COLOR="Red"]    <header android:icon="@drawable/grid_ic_settings_glance" android:id="@id/glance_settings" android:title="@string/glance_settings" android:fragment="com.android.settings.glance.GlanceSettings" />[/COLOR]
        <header android:icon="@drawable/grid_ic_settings_one_handed_operation" android:id="@id/onehand_settings" android:title="@string/onehand_settings_title" android:fragment="com.android.settings.OneHandSettings" />
        <header android:id="@id/application_section" android:title="@string/app_name_label" />
        <header android:icon="@drawable/grid_ic_settings_applications" android:id="@id/application_settings" android:title="@string/applications_settings" android:fragment="com.android.settings.applications.ManageApplications" />
        <header android:icon="@drawable/grid_ic_setting_launch_apps" android:id="@id/launch_application_settings" android:title="@string/launch_application_settings" android:fragment="com.android.settings.LaunchApplication" />
        <header android:icon="@drawable/grid_ic_settings_call" android:id="@id/call_settings" android:title="@string/call_settings">
            <intent android:targetPackage="com.android.phone" android:action="android.intent.action.MAIN" android:targetClass="com.android.phone.CallFeaturesSetting" />
        </header>
        <header android:icon="@drawable/grid_ic_settings_contacts" android:id="@id/contact_settings" android:title="@string/easy_mode_contacts">
            <intent android:targetPackage="com.android.contacts" android:action="android.intent.action.MAIN" android:targetClass="com.android.contacts.preference.ContactsPreferenceActivity" />
        </header>
        <header android:icon="@drawable/grid_ic_settings_internet" android:id="@id/browser_settings" android:title="@string/smart_scroll_app_web">
            <intent android:targetPackage="com.sec.android.app.sbrowser" android:action="android.intent.action.MAIN" android:targetClass="com.sec.android.app.sbrowser.preferences.Settings" />
        </header>
    [COLOR="Red"]    <header android:icon="@drawable/grid_ic_settings_splanner" android:id="@id/splanner_settings" android:title="@string/finger_air_view_help_information_priview_splanner_title">
            <intent android:action="com.sec.android.intent.calendar.setting" />
        </header>[/COLOR]
        <header android:id="@id/user_and_backup_section" android:title="@string/users_and_backup_category" />
        <header android:icon="@drawable/grid_ic_settings_account" android:id="@id/header_general_account_and_backup" android:title="@string/account_settings" android:fragment="com.android.settings.AccountMenu" />
        <header android:icon="@drawable/grid_ic_settings_backup" android:id="@id/privacy_settings" android:title="@string/privacy_settings" android:fragment="com.android.settings.PrivacySettings" />
    [COLOR="Red"]    <header android:icon="@drawable/grid_ic_settings_finger_print" android:id="@id/fingerprint_settings" android:title="@string/fingerprint" android:summary="@string/menu_summary_fingerprints" android:fragment="com.android.settings.fingerprint.FingerprintSettings" />[/COLOR]
        <header android:id="@id/motion_section" android:title="@string/motion_title" />
        <header android:icon="@drawable/grid_ic_settings_motion" android:id="@id/header_input_motion_and_gesture_2014" android:title="@string/s_motion_title" android:fragment="com.android.settings.motion2014.MotionSettings2014" />
        <header android:icon="@drawable/grid_ic_settings_air_view" android:id="@id/finger_air_view_settings" android:title="@string/finger_air_view_title" android:summary="@string/air_view_settings_menu_summary" android:fragment="com.android.settings.FingerAirViewSettings" />
        <header android:id="@id/personalixation_section" android:title="@string/personalization" />

    Once done now save changes, Recompile your SecSettings.apk and that's it your DONE!!!
    4
    this is S5 Settings with List View made by me based on VJUGNE2 (big thanks to IganKuhz for this tutorial)
    flash via cwm and enjoy!
    https://drive.google.com/file/d/0B_rOzCTx6I7jQVVXNmZrX2J2NTA/edit?usp=sharing

    It good to know it's working. This week I will post how to for Particle effect with all sounds. Have a nice day!!

    Enviado desde mi GT-I9505 mediante Tapatalk
    1
    I tried it but i coudnt find some values in my SecSettings. Can u please upload the XML and Smali files with changed values,,