[MOD][GUIDE] Real Time Statusbar Transparency Settings

Didact74

Senior Member
Sep 2, 2010
609
1,877
0
Lake Shore, MD
Happy Easter!

What does this MOD do?
It will allow you to change the status bar transparency settings without the need to reboot.

This will also be included as part of the Multi-Mod update coming shortly.

The attached zip is not flashable, its a file that's needed for the mod. A flashable zip will be added soon in the form of a link, not an attachment.



We will be working with two files:
SecSettings
SystemUI

As usual, I will assume you are using Rom Control for you settings controls. If not, you can port this to whichever settings header you prefer but I will not be going over how to do that here. I created Rom Control to eliminate the time needed to do all that.

There will be a zip included with a file that needs to be added to SystemUI. This is not a flashable zip. The file will need to be dropped in:
smali/com/android/systemui/statusbar/phone

Lets begin with SecSettings....

Navigate to res/xml/rom_settings.xml

Add the following code in RED
Code:
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen android:title="@string/rom_settings"
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:settings="http://schemas.android.com/apk/res/com.android.settings.didact">
    <PreferenceCategory android:title="@string/rom_settings_section_one_title" />
    <ListPreference android:persistent="true" android:entries="@array/lockscreen_entries" android:title="Choose Your LockScreen" android:key="lockscreen_type_key" android:defaultValue="1" android:entryValues="@array/lockscreen_values" />
    <CheckBoxPreference android:title="@string/enable_lockscreen_torch" android:key="enable_lockscreen_torch" android:summary="@string/enable_lockscreen_torch_text" />
	<CheckBoxPreference android:title="@string/enable_aosp_vibrate" android:key="aosp_vibrate" android:summary="@string/enable_aosp_vibrate_text" />
    <PreferenceCategory android:title="@string/rom_settings_section_two_title" />
    <ListPreference android:entries="@array/clock_style_entries" android:title="@string/clock_title_enable" android:key="clock_style" android:entryValues="@array/clock_style_values" />
    <ListPreference android:entries="@array/clock_ampm_entries" android:title="@string/title_clock_ampm_entries" android:key="clock_am_pm_style" android:entryValues="@array/clock_ampm_values" />
    <ListPreference android:entries="@array/clock_weekday_entries" android:title="@string/enable_clock_weekday" android:key="clock_weekday" android:summary="@string/enable_clock_weekday_summary" android:entryValues="@array/clock_weekday_values" />
    <PreferenceCategory android:title="@string/rom_settings_section_three_title" />
    <ListPreference android:entries="@array/battery_icon_entries" android:title="@string/battery_icon" android:key="battery_icon_list" android:entryValues="@array/battery_icon_values" />
    <PreferenceCategory android:title="@string/rom_settings_section_four_title" />
    <CheckBoxPreference android:title="@string/enable_ime_icon" android:key="enable_ime_icon" android:summary="@string/enable_ime_icon_text" />
    <CheckBoxPreference android:persistent="false" android:title="@string/long_press_volume_title" android:key="music_control" android:summary="@string/long_press_volume_summary" />
    <CheckBoxPreference android:title="@string/crtanimation_title" android:key="crtanimation_toggle" android:summary="@string/crtanimation_summary" />
	[COLOR="red"]<ListPreference android:entries="@array/entries_status_bar_transparency" android:title="@string/status_bar_transparency_title" android:key="status_bar_transparency" android:summary="@string/status_bar_transparency_summary" android:defaultValue="0" android:entryValues="@array/values_status_bar_transparency" />
</PreferenceScreen>[/COLOR]
Navigate to res/values/arrays..

Add the following code
Code:
<string-array name="entries_status_bar_transparency">
        <item>0%</item>
        <item>50%</item>
        <item>100%</item>
    </string-array>
    <string-array name="values_status_bar_transparency">
        <item>100</item>
        <item>75</item>
        <item>50</item>
    </string-array>
Navigate to res/values/strings...

Add the following code...
Code:
<string name="status_bar_transparency_title">Statusbar Transparency</string>
    <string name="status_bar_transparency_summary">Adjust statusbar transparency</string>
Navigate to smali/com/android/settings/didact/RomSettings.smali

Add the following code in RED

Code:
# instance fields
.field mBatteryIcon:Landroid/preference/ListPreference;

.field mBatteryStyle:Landroid/preference/ListPreference;

.field mClockAmPmstyle:Landroid/preference/ListPreference;

.field mClockStyle:Landroid/preference/ListPreference;

.field mClockWeekday:Landroid/preference/ListPreference;

.field mCrtAnimationPreference:Landroid/preference/CheckBoxPreference;

.field mImeIcon:Landroid/preference/CheckBoxPreference;

.field mLockScreenStylePref:Landroid/preference/ListPreference;

.field mLockScreenTorch:Landroid/preference/CheckBoxPreference;

.field mMusicControl:Landroid/preference/CheckBoxPreference;

.field mAospLockVibration:Landroid/preference/CheckBoxPreference;

[COLOR="red"].field mStatusbarTransparency:Landroid/preference/ListPreference;
[/COLOR]
Find method "onCreate(Landroid/os/Bundle;)V"

Add the following code in RED
Code:
const-string v5, "lockscreen_type_key"

    invoke-static {v4, v5, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I

    move-result v4

    invoke-static {v4}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v1, v4}, Landroid/preference/ListPreference;->setValue(Ljava/lang/String;)V
	
    [COLOR="red"]const-string v1, "status_bar_transparency"

    invoke-virtual {p0, v1}, Lcom/android/settings/didact/RomSettings;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;

    move-result-object v1

    check-cast v1, Landroid/preference/ListPreference;

    iput-object v1, p0, Lcom/android/settings/didact/RomSettings;->mStatusbarTransparency:Landroid/preference/ListPreference;

    iget-object v1, p0, Lcom/android/settings/didact/RomSettings;->mStatusbarTransparency:Landroid/preference/ListPreference;

    invoke-virtual {v1, p0}, Landroid/preference/ListPreference;->setOnPreferenceChangeListener(Landroid/preference/Preference$OnPreferenceChangeListener;)V

    iget-object v1, p0, Lcom/android/settings/didact/RomSettings;->mStatusbarTransparency:Landroid/preference/ListPreference;

    invoke-virtual {p0}, Lcom/android/settings/didact/RomSettings;->getActivity()Landroid/app/Activity;

    move-result-object v4

    invoke-virtual {v4}, Landroid/app/Activity;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object v4

    const-string v5, "status_bar_transparency"

    invoke-static {v4, v5, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I

    move-result v4

    invoke-static {v4}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v1, v4}, Landroid/preference/ListPreference;->setValue(Ljava/lang/String;)V
[/COLOR]
    const-string v1, "enable_lockscreen_torch"

    invoke-virtual {p0, v1}, Lcom/android/settings/didact/RomSettings;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;

    move-result-object v1

    check-cast v1, Landroid/preference/CheckBoxPreference;
Find method "onPreferenceChange(Landroid/preference/Preference;Ljava/lang/Object;)Z"

Add the following code in RED
Code:
:cond_4
    iget-object v5, p0, Lcom/android/settings/didact/RomSettings;->mLockScreenStylePref:Landroid/preference/ListPreference;

    if-ne p1, v5, [COLOR="red"]:cond_6[/COLOR]

    check-cast p2, Ljava/lang/String;

    invoke-static {p2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v4

    invoke-virtual {p0}, Lcom/android/settings/didact/RomSettings;->getActivity()Landroid/app/Activity;

    move-result-object v5

    invoke-virtual {v5}, Landroid/app/Activity;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object v5

    if-eqz v5, :cond_5

    const-string v6, "lockscreen_ripple_effect"

    const/4 v2, 0x0

    invoke-static {v5, v6, v2}, Landroid/provider/Settings$System;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z

    const-string v6, "lockscreen_type_key"

    invoke-static {v5, v6, v4}, Landroid/provider/Settings$System;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z

    goto :goto_0

    :cond_5
    const-string v6, "lockscreen_type_key"

    invoke-static {v5, v6, v4}, Landroid/provider/Settings$System;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z

    const/4 v2, 0x1

    const-string v6, "lockscreen_ripple_effect"

    invoke-static {v5, v6, v2}, Landroid/provider/Settings$System;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z

    goto :goto_0
	
    [COLOR="red"]:cond_6
    iget-object v5, p0, Lcom/android/settings/didact/RomSettings;->mStatusbarTransparency:Landroid/preference/ListPreference;

    if-ne p1, v5, :cond_0

    check-cast p2, Ljava/lang/String;

    invoke-static {p2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v4

    invoke-virtual {p0}, Lcom/android/settings/didact/RomSettings;->getActivity()Landroid/app/Activity;

    move-result-object v5

    invoke-virtual {v5}, Landroid/app/Activity;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object v5

    const-string v6, "status_bar_transparency"

    invoke-static {v5, v6, v4}, Landroid/provider/Settings$System;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z

    move-result v2

    goto :goto_0
[/COLOR].end method
That's it for SecSettings. Compile and push to /system/app. Test out your new options, they wont work yet but they should be selectable.

Lets move on to SystemUI...

Open the attached zip and drop the observer file in smali/com/android/systemui/statusbar/phone if you have not already done so.

Navigate to smali/com/android/systemui/statusbar/BaseStatusbar.smali

Find the following method "setAreThereNotifications()V"

Add the following complete method directly after...
Code:
.method protected setStatusBarParams(Landroid/view/View;)V
    .locals 4

    iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mContext:Landroid/content/Context;

    invoke-virtual {v1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object v1

    const-string v2, "status_bar_transparency"

    const/16 v3, 0x64

    invoke-static {v1, v2, v3}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I

    move-result v0

    invoke-virtual {p1}, Landroid/view/View;->getBackground()Landroid/graphics/drawable/Drawable;

    move-result-object v1

    mul-int/lit16 v2, v0, 0xff

    div-int/lit8 v2, v2, 0x64

    int-to-float v2, v2

    invoke-static {v2}, Ljava/lang/Math;->round(F)I

    move-result v2

    invoke-virtual {v1, v2}, Landroid/graphics/drawable/Drawable;->setAlpha(I)V

    return-void
.end method
Navigate to smali/com/android/systemui/statusbar/phone/PhoneStatusbar.smali

Add the following code in RED
Code:
        Lcom/android/systemui/statusbar/phone/PhoneStatusBar$BrightnessEnableObserver;,
        Lcom/android/systemui/statusbar/phone/PhoneStatusBar$BatteryTextObserver;,
        Lcom/android/systemui/statusbar/phone/PhoneStatusBar$FastColorDrawable;,
        Lcom/android/systemui/statusbar/phone/PhoneStatusBar$MyTicker;,
        [COLOR="red"]Lcom/android/systemui/statusbar/phone/PhoneStatusBar$SettingsObserver;,[/COLOR]
        Lcom/android/systemui/statusbar/phone/PhoneStatusBar$NotificationClicker;,
        Lcom/android/systemui/statusbar/phone/PhoneStatusBar$H;,
        Lcom/android/systemui/statusbar/phone/PhoneStatusBar$ExpandedDialog;
Find method "makeStatusBarView()Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;"

Towards the end of this method, add the following code in RED
Code:
invoke-virtual {v9, v10}, Lcom/android/systemui/statusbar/policy/NotificationRowLayout;->setLongPressListener(Landroid/view/View$OnLongClickListener;)V

    iget-object v9, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mPile:Lcom/android/systemui/statusbar/policy/NotificationRowLayout;

    iput-object v9, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedContents:Landroid/view/View;
	
    [COLOR="red"]new-instance v9, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$SettingsObserver;

    new-instance v10, Landroid/os/Handler;

    invoke-direct {v10}, Landroid/os/Handler;-><init>()V

    invoke-direct {v9, p0, v10}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$SettingsObserver;-><init>(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;Landroid/os/Handler;)V

    invoke-virtual {v9}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$SettingsObserver;->observe()V
[/COLOR]
    goto/16 :goto_5

    :cond_f
    const/16 v9, 0x8

    goto/16 :goto_6
Find method "public start()V"

Towards the end of that method add the following code in RED
Code:
iput-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mWindowManager:Landroid/view/IWindowManager;

    invoke-super {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->start()V

    invoke-direct {p0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->addNavigationBar()V
	
    [COLOR="red"]new-instance v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$SettingsObserver;

    iget-object v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mHandler:Lcom/android/systemui/statusbar/BaseStatusBar$H;

    invoke-direct {v0, p0, v1}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$SettingsObserver;-><init>(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;Landroid/os/Handler;)V

    invoke-virtual {v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$SettingsObserver;->observe()V
[/COLOR]
    new-instance v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBarPolicy;

    iget-object v1, p0, Lcom/android/systemui/SystemUI;->mContext:Landroid/content/Context;

    invoke-direct {v0, v1}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarPolicy;-><init>(Landroid/content/Context;)V

    iput-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mIconPolicy:Lcom/android/systemui/statusbar/phone/PhoneStatusBarPolicy;

    return-void
.end method
That's it! Compile and push to /system/app and enjoy your new MOD!


Multi-Mod Flashable Add-On


I will be adding this MOD to the new Multi-Mod update shortly.

I will add a flashable zip to this thread that will allow you to add this to my Multi-Mod if you are currently running it.

Hit the thanks....buy me a coke!
 

Attachments

Last edited:

MattBooth

Senior Member
Jan 4, 2011
8,403
13,710
0
33
Bradford
mattbooth.dev
Find method "makeStatusBarView()Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;"

Towards the end of this method, add the following code in RED
Code:
invoke-virtual/range {p0 .. p0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->getNotificationLongClicker()Landroid/view/View$OnLongClickListener;

    move-result-object v14

    invoke-virtual {v13, v14}, Lcom/android/systemui/statusbar/policy/NotificationRowLayout;->setLongPressListener(Landroid/view/View$OnLongClickListener;)V

    [COLOR="red"]move-object/from16 v0, p0[/COLOR]

    iget-object v[COLOR="red"]13[/COLOR], v0, Lcom/android/systemui/statusbar/BaseStatusBar;->mPile:Lcom/android/systemui/statusbar/policy/NotificationRowLayout;

    move-object/from16 v0, p0

    iput-object v[COLOR="red"]13[/COLOR], v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedContents:Landroid/view/View;
	
	new-instance v[COLOR="red"]13[/COLOR], Lcom/android/systemui/statusbar/phone/PhoneStatusBar$SettingsObserver;

	new-instance v[COLOR="red"]14[/COLOR], Landroid/os/Handler;

	invoke-direct {v[COLOR="red"]14[/COLOR]}, Landroid/os/Handler;-><init>()V

    [COLOR="Red"]invoke-direct {v13, [COLOR="Blue"]v0[/COLOR], v14}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$SettingsObserver;-><init>(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;Landroid/os/Handler;)V[/COLOR]

    invoke-virtual {v[COLOR="Red"]13[/COLOR]}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$SettingsObserver;->observe()V
	
    goto/16 :goto_5

    :cond_e
    const/16 v13, 0x8

    goto/16 :goto_6
On the SGS3 International GT-i9300 it becomes the above :)


Thanks Didact74 :)

EDIT:

You're missing:

Code:
.method static synthetic access$3400(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;ILandroid/view/animation/Animation$AnimationListener;)Landroid/view/animation/Animation;
    .locals 1

    invoke-direct {p0, p1, p2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->loadAnim(ILandroid/view/animation/Animation$AnimationListener;)Landroid/view/animation/Animation;

    move-result-object v0

    return-object v0
.end method

[COLOR="Red"].method static synthetic access$3401(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;Landroid/view/View;)V
    .locals 0

    invoke-virtual {p0, p1}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->setStatusBarParams(Landroid/view/View;)V

    return-void
.end method[/COLOR]

.method static synthetic access$3500(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;)V
    .locals 0

    invoke-direct {p0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->playTraySound()V

    return-void
.end method
and

Code:
    invoke-virtual {v0, v3}, Landroid/content/Context;->getText(I)Ljava/lang/CharSequence;

    move-result-object v3

    invoke-virtual {v2, v3}, Landroid/view/View;->setContentDescription(Ljava/lang/CharSequence;)V

    invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->loadDimens()V
	
	[COLOR="red"]iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarView:Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;

    invoke-virtual {p0, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->setStatusBarParams(Landroid/view/View;)V[/COLOR]

    return-void
.end method

.method protected updateSearchPanel()V
    .locals 2
Adding to PhoneStatusBar.smali

And

Code:
.method public setMaxBrightness(I)V
    .locals 0

    return-void
.end method

[COLOR="red"].method protected setStatusBarParams(Landroid/view/View;)V
    .locals 4

    iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mContext:Landroid/content/Context;

    invoke-virtual {v1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object v1

    const-string v2, "status_bar_transparency"

    const/16 v3, 0x64

    invoke-static {v1, v2, v3}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I

    move-result v0

    invoke-virtual {p1}, Landroid/view/View;->getBackground()Landroid/graphics/drawable/Drawable;

    move-result-object v1

    mul-int/lit16 v2, v0, 0xff

    div-int/lit8 v2, v2, 0x64

    int-to-float v2, v2

    invoke-static {v2}, Ljava/lang/Math;->round(F)I

    move-result v2

    invoke-virtual {v1, v2}, Landroid/graphics/drawable/Drawable;->setAlpha(I)V

    return-void
.end method[/COLOR]
to BaseStatusBar.smali

Or maybe those things are missing on the GT-i9300. I dunno :)


EDIT 2:

And, just in case:

Code:
<string-array name="entries_status_bar_transparency">
        <item>0%</item>
		<item>10%</item>
		<item>20%</item>
		<item>30%</item>
		<item>40%</item>
        <item>50%</item>
        <item>60%</item>
        <item>70%</item>
        <item>80%</item>
        <item>90%</item>
        <item>100%</item>
    </string-array>
    <string-array name="values_status_bar_transparency">
        <item>100</item>
        <item>95</item>
        <item>90</item>
        <item>85</item>
        <item>80</item>
        <item>75</item>
        <item>70</item>
        <item>65</item>
        <item>60</item>
        <item>55</item>
        <item>50</item>
    </string-array>
For 0 to 100% :)

Though, I'm not sure I understand... why is 50 "0% "transparency and 100% is "100%"?

For the colour codes edits in drawables, you change the first colour code number hex value base don 0 to 255... so 255 = ff, 0 = 00... 50% therefore being 127 (255/2), or 7F in hexadecimal.
 
Last edited:

upndwn4par

Inactive Recognized Developer
Jan 22, 2012
3,640
10,375
0
New Jersey
EDIT 2:

Though, I'm not sure I understand... why is 50 "0% "transparency and 100% is "100%"?

For the colour codes edits in drawables, you change the first colour code number hex value base don 0 to 255... so 255 = ff, 0 = 00... 50% therefore being 127 (255/2), or 7F in hexadecimal.
The transparency values don't make sense because the ones in the OP are actually for 0%, 25%, and 50%.

Change this...
Code:
<string-array name="entries_status_bar_transparency">
        <item>0%</item>
        <item>50%</item>
        <item>100%</item>
    </string-array>
    <string-array name="values_status_bar_transparency">
        <item>[COLOR="Red"]100[/COLOR]</item>
        <item>[COLOR="Red"]75[/COLOR]</item>
        <item>[COLOR="Red"]50[/COLOR]</item>
    </string-array>
...to this for 0%, 50%, and 100% transparency.
Code:
<string-array name="entries_status_bar_transparency">
        <item>0%</item>
        <item>50%</item>
        <item>100%</item>
    </string-array>
    <string-array name="values_status_bar_transparency">
        <item>[COLOR="Red"]100[/COLOR]</item>
        <item>[COLOR="Red"]50[/COLOR]</item>
        <item>[COLOR="Red"]0[/COLOR]</item>
    </string-array>
 

Attachments

mikeman45

Senior Member
Oct 15, 2012
1,506
2,215
0
Im running stock 4.1.2 with your multi mod and when i get to the last 2 sets of smali code where it says
Find method "makeStatusBarView()Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;" and
Find method "public start()V" I can't find any of that code at all. Im still searching in smali/com/android/systemui/statusbar/phone/PhoneStatusbar.smal am I in the wrong spot :confused: Everything else was fine no problems finding or adding just those last 2.
 

andybones

Recognized Contributor / Inactive Recognized Devel
May 18, 2010
14,448
14,653
263
Upstate NY
Im running stock 4.1.2 with your multi mod and when i get to the last 2 sets of smali code where it says
Find method "makeStatusBarView()Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;" and
Find method "public start()V" I can't find any of that code at all. Im still searching in smali/com/android/systemui/statusbar/phone/PhoneStatusbar.smal am I in the wrong spot :confused: Everything else was fine no problems finding or adding just those last 2.

Find method "makeStatusBarView()Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;"

PhoneStatusBarView.smali ..
not PhoneStatusbar.smali
 
Last edited:
  • Like
Reactions: rompnit

mikeman45

Senior Member
Oct 15, 2012
1,506
2,215
0

Find method "makeStatusBarView()Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;"

PhoneStatusBarView.smali ..
not PhoneStatusbar.smali
Thank you i was in the wrong smali but even going to the right one i get no occurence found when i search those 2 methods:(
 

AskinSavascisi

Senior Member
Nov 1, 2012
907
525
0
Antwerp
www.droidturk.tk
great mod, thanks!!

i want this to try out on my note2 (N7100)

could someone explain this to me?
@SecSettings

since we dont have didacts multi mod on N7100 :( im planning to make the changes at display_settings.xml file and DisplaySettings.smali



Code:
onst-string v1, "status_bar_transparency"

    invoke-virtual {p0, v1}, Lcom/android[COLOR="red"]/settings/didact/RomSettings;-[/COLOR]>findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;

    move-result-object v1

    check-cast v1, Landroid/preference/ListPreference;

    iput-object v1, p0, Lcom/android[COLOR="red"]/settings/didact/RomSettings;-[/COLOR]>mStatusbarTransparency:Landroid/preference/ListPreference;

    iget-object v1, p0, Lcom/android/[COLOR="red"]settings/didact/RomSettings;-[/COLOR]>mStatusbarTransparency:Landroid/preference/ListPreference;

    invoke-virtual {v1, p0}, Landroid/preference/ListPreference;->setOnPreferenceChangeListener(Landroid/preference/Preference$OnPreferenceChangeListener;)V

    iget-object v1, p0, Lcom/android[COLOR="Red"]/settings/didact/RomSettings;[/COLOR]->mStatusbarTransparency:Landroid/preference/ListPreference;

    invoke-virtual {p0}, Lcom/android/settings/[COLOR="red"]didact/RomSettings[/COLOR];->getActivity()Landroid/app/Activity;

    move-result-object v4

    invoke-virtual {v4}, Landroid/app/Activity;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object v4

    const-string v5, "status_bar_transparency"

    invoke-static {v4, v5, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I

    move-result v4

    invoke-static {v4}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v1, v4}, Landroid/preference/ListPreference;->setValue(Ljava/lang/String;)V
 

rompnit

Senior Member
Aug 24, 2008
3,249
20,624
0
Granger, IN
great mod, thanks!!

i want this to try out on my note2 (N7100)

could someone explain this to me?

@SecSettings

since we dont have didacts multi mod on N7100 :( im planning to make the changes at display_settings.xml file and DisplaySettings.smali



Code:
onst-string v1, "status_bar_transparency"

    invoke-virtual {p0, v1}, Lcom/android[COLOR="red"]/settings/didact/RomSettings;-[/COLOR]>findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;

    move-result-object v1

    check-cast v1, Landroid/preference/ListPreference;

    iput-object v1, p0, Lcom/android[COLOR="red"]/settings/didact/RomSettings;-[/COLOR]>mStatusbarTransparency:Landroid/preference/ListPreference;

    iget-object v1, p0, Lcom/android/[COLOR="red"]settings/didact/RomSettings;-[/COLOR]>mStatusbarTransparency:Landroid/preference/ListPreference;

    invoke-virtual {v1, p0}, Landroid/preference/ListPreference;->setOnPreferenceChangeListener(Landroid/preference/Preference$OnPreferenceChangeListener;)V

    iget-object v1, p0, Lcom/android[COLOR="Red"]/settings/didact/RomSettings;[/COLOR]->mStatusbarTransparency:Landroid/preference/ListPreference;

    invoke-virtual {p0}, Lcom/android/settings/[COLOR="red"]didact/RomSettings[/COLOR];->getActivity()Landroid/app/Activity;

    move-result-object v4

    invoke-virtual {v4}, Landroid/app/Activity;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object v4

    const-string v5, "status_bar_transparency"

    invoke-static {v4, v5, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I

    move-result v4

    invoke-static {v4}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v1, v4}, Landroid/preference/ListPreference;->setValue(Ljava/lang/String;)V
You could always port his multimod over ;)
 
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone