[GUIDE] [TUT] GUIDE Omni Switch

Search This thread

ahmed.nasser.hk

Senior Member
Mar 11, 2014
100
167
Hurghada
www.facebook.com
GUIDE Omni Switch
Work and Tested - CM 12.1 & LP Based

1. Decompile settings.apk
At the files:
Settings\res\xml\Display_Settings.xml
Looking for:
Add this line

<PreferenceScreen android:title="@string/omniswitch_settings_title" android:fragment="com.android.settings.ahmednhk.RecentsPanel.OmniSwitch" />
ADD ALL THIS LINES.
Settings\res\values\strings.xml

<string name="omniswitch_settings_title">OmniSwitch</string>
<string name="recents_use_omniswitch_title">Use for recents</string>
<string name="recents_use_omniswitch_summary">Use OmniSwitch instead of default recents view</string>
<string name="omniswitch_start_settings_title">Settings</string>
<string name="omniswitch_start_settings_summary">Open OmniSwitch settings</string>
<string name="omniswitch_first_time_title">Information</string>
<string name="omniswitch_first_time_message">Make sure you have enabled OmniSwitch. You can do this by using "Settings" below</string>
*compile and decompile again to assign the ID to a file*
PHP:
Settings\smali\com\android\settings\ahmednhk\RecentsPanel\OmniSwitch.smali
    <public type="string" name="omniswitch_first_time_title"
	    LINE 73
	    
	    <public type="string" name="omniswitch_first_time_message"
	    LINE 87
	    
	    0x104000a
	    LINE 97
	    
	    <public type="xml" name="ahmednhk_recents_omniswitch"
	    LINE 126>
*Compile Settings.apk DONE*

2. Decompile framework.jar in files u will download i make misatke and forget this part
framework.jar.out\smali\android\provider\Settings$System.smali

PHP:
Looking for:
.field public static final RECENTS_SHOW_SEARCH_BAR:Ljava/lang/String; = "recents_show_search_bar"
following inserted :
.field public static final RECENTS_USE_OMNISWITCH:Ljava/lang/String; = "recents_use_omniswitch"

** Now proceed to complex of instructions **

3. Decompile SystemUI.apk
SystemUI\smali\com\android\systemui\statusbar\BaseStatusBar.smali


PHP:
Looking for:
.method static sendCloseSystemWindows(Landroid/content/Context;Ljava/lang/String;)V

following inserted :
.method private isOmniSwitchEnabled()Z
    .locals 6

    .prologue
    const/4 v1, 0x1

    const/4 v2, 0x0

    .line 1196
    iget-object v3, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mContext:Landroid/content/Context;

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

    move-result-object v3

    const-string v4, "recents_use_omniswitch"

    const/4 v5, -0x2

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

    move-result v0

    .line 1199
    .local v0, "settingsValue":I
    if-ne v0, v1, :cond_0

    :goto_0
    return v1

    :cond_0
    move v1, v2

    goto :goto_0
.end method
----------------------------------------------------------------
Looking for:
.method protected cancelPreloadingRecents()V

Changing it completely with:
.method protected cancelPreloadingRecents()V
    .locals 1

    .prologue
    .line 1246
    invoke-direct {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->isOmniSwitchEnabled()Z

    move-result v0

    if-nez v0, :cond_0

    .line 1247
    iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;

    if-eqz v0, :cond_0

    .line 1248
    iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;

    invoke-interface {v0}, Lcom/android/systemui/RecentsComponent;->cancelPreloadingRecents()V

    .line 1251
    :cond_0
    return-void
.end method
----------------------------------------------------------------
Looking for:
.method protected hideRecents(ZZ)V

Changing it completely with:
.method protected hideRecents(ZZ)V
    .locals 3
    .param p1, "triggeredFromAltTab"    # Z
    .param p2, "triggeredFromHomeKey"    # Z

    .prologue
    .line 1215
    invoke-direct {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->isOmniSwitchEnabled()Z

    move-result v1

    if-eqz v1, :cond_1

    .line 1216
    new-instance v0, Landroid/content/Intent;

    const-string v1, "org.omnirom.omniswitch.ACTION_HIDE_OVERLAY"

    invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V

    .line 1217
    .local v0, "showIntent":Landroid/content/Intent;
    iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mContext:Landroid/content/Context;

    sget-object v2, Landroid/os/UserHandle;->CURRENT:Landroid/os/UserHandle;

    invoke-virtual {v1, v0, v2}, Landroid/content/Context;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)V

    .line 1223
    .end local v0    # "showIntent":Landroid/content/Intent;
    :cond_0
    :goto_0
    return-void

    .line 1219
    :cond_1
    iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;

    if-eqz v1, :cond_0

    .line 1220
    iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;

    invoke-interface {v1, p1, p2}, Lcom/android/systemui/RecentsComponent;->hideRecents(ZZ)V

    goto :goto_0
.end method
----------------------------------------------------------------
Looking for:
.method protected preloadRecents()V

Changing it completely with:
.method protected preloadRecents()V
    .locals 1

    .prologue
    .line 1238
    invoke-direct {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->isOmniSwitchEnabled()Z

    move-result v0

    if-nez v0, :cond_0

    .line 1239
    iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;

    if-eqz v0, :cond_0

    .line 1240
    iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;

    invoke-interface {v0}, Lcom/android/systemui/RecentsComponent;->preloadRecents()V

    .line 1243
    :cond_0
    return-void
.end method
----------------------------------------------------------------
Looking for:
.method protected showRecents(Z)V

Changing it completely with:
.method protected showRecents(Z)V
    .locals 3
    .param p1, "triggeredFromAltTab"    # Z

    .prologue
    .line 1203
    invoke-direct {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->isOmniSwitchEnabled()Z

    move-result v1

    if-eqz v1, :cond_1

    .line 1204
    new-instance v0, Landroid/content/Intent;

    const-string v1, "org.omnirom.omniswitch.ACTION_SHOW_OVERLAY"

    invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V

    .line 1205
    .local v0, "showIntent":Landroid/content/Intent;
    iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mContext:Landroid/content/Context;

    sget-object v2, Landroid/os/UserHandle;->CURRENT:Landroid/os/UserHandle;

    invoke-virtual {v1, v0, v2}, Landroid/content/Context;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)V

    .line 1212
    .end local v0    # "showIntent":Landroid/content/Intent;
    :cond_0
    :goto_0
    return-void

    .line 1207
    :cond_1
    iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;

    if-eqz v1, :cond_0

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

    const-string v2, "recentapps"

    invoke-static {v1, v2}, Lcom/android/systemui/statusbar/BaseStatusBar;->sendCloseSystemWindows(Landroid/content/Context;Ljava/lang/String;)V

    .line 1209
    iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;

    invoke-virtual {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->getStatusBarView()Landroid/view/View;

    move-result-object v2

    invoke-interface {v1, p1, v2}, Lcom/android/systemui/RecentsComponent;->showRecents(ZLandroid/view/View;)V

    goto :goto_0
.end method
----------------------------------------------------------------
Looking for:
.method protected showRecentsNextAffiliatedTask()V

Changing it completely with:
.method protected showRecentsNextAffiliatedTask()V
    .locals 1

    .prologue
    .line 1254
    invoke-direct {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->isOmniSwitchEnabled()Z

    move-result v0

    if-nez v0, :cond_0

    .line 1255
    iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;

    if-eqz v0, :cond_0

    .line 1256
    iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;

    invoke-interface {v0}, Lcom/android/systemui/RecentsComponent;->showNextAffiliatedTask()V

    .line 1259
    :cond_0
    return-void
.end method
----------------------------------------------------------------
Looking for:
.method protected showRecentsPreviousAffiliatedTask()V

Changing it completely with:
.method protected showRecentsPreviousAffiliatedTask()V
    .locals 1

    .prologue
    .line 1262
    invoke-direct {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->isOmniSwitchEnabled()Z

    move-result v0

    if-nez v0, :cond_0

    .line 1263
    iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;

    if-eqz v0, :cond_0

    .line 1264
    iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;

    invoke-interface {v0}, Lcom/android/systemui/RecentsComponent;->showPrevAffiliatedTask()V

    .line 1267
    :cond_0
    return-void
.end method
----------------------------------------------------------------
Looking for:
.method protected toggleRecents()V

Changing it completely with:
.method protected toggleRecents()V
    .locals 5

    .prologue
    .line 1226
    invoke-direct {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->isOmniSwitchEnabled()Z

    move-result v1

    if-eqz v1, :cond_1

    .line 1227
    new-instance v0, Landroid/content/Intent;

    const-string v1, "org.omnirom.omniswitch.ACTION_TOGGLE_OVERLAY"

    invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V

    .line 1228
    .local v0, "showIntent":Landroid/content/Intent;
    iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mContext:Landroid/content/Context;

    sget-object v2, Landroid/os/UserHandle;->CURRENT:Landroid/os/UserHandle;

    invoke-virtual {v1, v0, v2}, Landroid/content/Context;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)V

    .line 1235
    .end local v0    # "showIntent":Landroid/content/Intent;
    :cond_0
    :goto_0
    return-void

    .line 1230
    :cond_1
    iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;

    if-eqz v1, :cond_0

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

    const-string v2, "recentapps"

    invoke-static {v1, v2}, Lcom/android/systemui/statusbar/BaseStatusBar;->sendCloseSystemWindows(Landroid/content/Context;Ljava/lang/String;)V

    .line 1232
    iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;

    iget-object v2, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mDisplay:Landroid/view/Display;

    iget v3, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mLayoutDirection:I

    invoke-virtual {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->getStatusBarView()Landroid/view/View;

    move-result-object v4

    invoke-interface {v1, v2, v3, v4}, Lcom/android/systemui/RecentsComponent;->toggleRecents(Landroid/view/Display;ILandroid/view/View;)V

    goto :goto_0
.end method
*Compile framework.jar DONE*
DON'T FORGET TO DRAG THE APK FILE GIVING U IN FOLDER SYSTEM.
DON'T FORGET TO TRANSFER ALL FILES (framework.jar).


Files and Compare Press Me​
 

Attachments

  • Screenshot_2016-12-19-08-27-01.png
    Screenshot_2016-12-19-08-27-01.png
    99.4 KB · Views: 229
  • Screenshot_2016-12-19-08-27-06.png
    Screenshot_2016-12-19-08-27-06.png
    38.7 KB · Views: 218
  • Screenshot_2016-12-19-08-27-12.png
    Screenshot_2016-12-19-08-27-12.png
    91.2 KB · Views: 215
  • Screenshot_2016-12-19-08-27-20.png
    Screenshot_2016-12-19-08-27-20.png
    216.3 KB · Views: 205
  • Screenshot_2016-12-19-08-27-24.png
    Screenshot_2016-12-19-08-27-24.png
    114.5 KB · Views: 217
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    GUIDE Omni Switch
    Work and Tested - CM 12.1 & LP Based

    1. Decompile settings.apk
    At the files:
    Settings\res\xml\Display_Settings.xml
    Looking for:
    Add this line

    <PreferenceScreen android:title="@string/omniswitch_settings_title" android:fragment="com.android.settings.ahmednhk.RecentsPanel.OmniSwitch" />
    ADD ALL THIS LINES.
    Settings\res\values\strings.xml

    <string name="omniswitch_settings_title">OmniSwitch</string>
    <string name="recents_use_omniswitch_title">Use for recents</string>
    <string name="recents_use_omniswitch_summary">Use OmniSwitch instead of default recents view</string>
    <string name="omniswitch_start_settings_title">Settings</string>
    <string name="omniswitch_start_settings_summary">Open OmniSwitch settings</string>
    <string name="omniswitch_first_time_title">Information</string>
    <string name="omniswitch_first_time_message">Make sure you have enabled OmniSwitch. You can do this by using "Settings" below</string>
    *compile and decompile again to assign the ID to a file*
    PHP:
    Settings\smali\com\android\settings\ahmednhk\RecentsPanel\OmniSwitch.smali
        <public type="string" name="omniswitch_first_time_title"
    	    LINE 73
    	    
    	    <public type="string" name="omniswitch_first_time_message"
    	    LINE 87
    	    
    	    0x104000a
    	    LINE 97
    	    
    	    <public type="xml" name="ahmednhk_recents_omniswitch"
    	    LINE 126>
    *Compile Settings.apk DONE*

    2. Decompile framework.jar in files u will download i make misatke and forget this part
    framework.jar.out\smali\android\provider\Settings$System.smali

    PHP:
    Looking for:
    .field public static final RECENTS_SHOW_SEARCH_BAR:Ljava/lang/String; = "recents_show_search_bar"
    following inserted :
    .field public static final RECENTS_USE_OMNISWITCH:Ljava/lang/String; = "recents_use_omniswitch"

    ** Now proceed to complex of instructions **

    3. Decompile SystemUI.apk
    SystemUI\smali\com\android\systemui\statusbar\BaseStatusBar.smali


    PHP:
    Looking for:
    .method static sendCloseSystemWindows(Landroid/content/Context;Ljava/lang/String;)V
    
    following inserted :
    .method private isOmniSwitchEnabled()Z
        .locals 6
    
        .prologue
        const/4 v1, 0x1
    
        const/4 v2, 0x0
    
        .line 1196
        iget-object v3, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mContext:Landroid/content/Context;
    
        invoke-virtual {v3}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
    
        move-result-object v3
    
        const-string v4, "recents_use_omniswitch"
    
        const/4 v5, -0x2
    
        invoke-static {v3, v4, v2, v5}, Landroid/provider/Settings$System;->getIntForUser(Landroid/content/ContentResolver;Ljava/lang/String;II)I
    
        move-result v0
    
        .line 1199
        .local v0, "settingsValue":I
        if-ne v0, v1, :cond_0
    
        :goto_0
        return v1
    
        :cond_0
        move v1, v2
    
        goto :goto_0
    .end method
    ----------------------------------------------------------------
    Looking for:
    .method protected cancelPreloadingRecents()V
    
    Changing it completely with:
    .method protected cancelPreloadingRecents()V
        .locals 1
    
        .prologue
        .line 1246
        invoke-direct {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->isOmniSwitchEnabled()Z
    
        move-result v0
    
        if-nez v0, :cond_0
    
        .line 1247
        iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;
    
        if-eqz v0, :cond_0
    
        .line 1248
        iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;
    
        invoke-interface {v0}, Lcom/android/systemui/RecentsComponent;->cancelPreloadingRecents()V
    
        .line 1251
        :cond_0
        return-void
    .end method
    ----------------------------------------------------------------
    Looking for:
    .method protected hideRecents(ZZ)V
    
    Changing it completely with:
    .method protected hideRecents(ZZ)V
        .locals 3
        .param p1, "triggeredFromAltTab"    # Z
        .param p2, "triggeredFromHomeKey"    # Z
    
        .prologue
        .line 1215
        invoke-direct {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->isOmniSwitchEnabled()Z
    
        move-result v1
    
        if-eqz v1, :cond_1
    
        .line 1216
        new-instance v0, Landroid/content/Intent;
    
        const-string v1, "org.omnirom.omniswitch.ACTION_HIDE_OVERLAY"
    
        invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
    
        .line 1217
        .local v0, "showIntent":Landroid/content/Intent;
        iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mContext:Landroid/content/Context;
    
        sget-object v2, Landroid/os/UserHandle;->CURRENT:Landroid/os/UserHandle;
    
        invoke-virtual {v1, v0, v2}, Landroid/content/Context;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)V
    
        .line 1223
        .end local v0    # "showIntent":Landroid/content/Intent;
        :cond_0
        :goto_0
        return-void
    
        .line 1219
        :cond_1
        iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;
    
        if-eqz v1, :cond_0
    
        .line 1220
        iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;
    
        invoke-interface {v1, p1, p2}, Lcom/android/systemui/RecentsComponent;->hideRecents(ZZ)V
    
        goto :goto_0
    .end method
    ----------------------------------------------------------------
    Looking for:
    .method protected preloadRecents()V
    
    Changing it completely with:
    .method protected preloadRecents()V
        .locals 1
    
        .prologue
        .line 1238
        invoke-direct {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->isOmniSwitchEnabled()Z
    
        move-result v0
    
        if-nez v0, :cond_0
    
        .line 1239
        iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;
    
        if-eqz v0, :cond_0
    
        .line 1240
        iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;
    
        invoke-interface {v0}, Lcom/android/systemui/RecentsComponent;->preloadRecents()V
    
        .line 1243
        :cond_0
        return-void
    .end method
    ----------------------------------------------------------------
    Looking for:
    .method protected showRecents(Z)V
    
    Changing it completely with:
    .method protected showRecents(Z)V
        .locals 3
        .param p1, "triggeredFromAltTab"    # Z
    
        .prologue
        .line 1203
        invoke-direct {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->isOmniSwitchEnabled()Z
    
        move-result v1
    
        if-eqz v1, :cond_1
    
        .line 1204
        new-instance v0, Landroid/content/Intent;
    
        const-string v1, "org.omnirom.omniswitch.ACTION_SHOW_OVERLAY"
    
        invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
    
        .line 1205
        .local v0, "showIntent":Landroid/content/Intent;
        iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mContext:Landroid/content/Context;
    
        sget-object v2, Landroid/os/UserHandle;->CURRENT:Landroid/os/UserHandle;
    
        invoke-virtual {v1, v0, v2}, Landroid/content/Context;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)V
    
        .line 1212
        .end local v0    # "showIntent":Landroid/content/Intent;
        :cond_0
        :goto_0
        return-void
    
        .line 1207
        :cond_1
        iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;
    
        if-eqz v1, :cond_0
    
        .line 1208
        iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mContext:Landroid/content/Context;
    
        const-string v2, "recentapps"
    
        invoke-static {v1, v2}, Lcom/android/systemui/statusbar/BaseStatusBar;->sendCloseSystemWindows(Landroid/content/Context;Ljava/lang/String;)V
    
        .line 1209
        iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;
    
        invoke-virtual {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->getStatusBarView()Landroid/view/View;
    
        move-result-object v2
    
        invoke-interface {v1, p1, v2}, Lcom/android/systemui/RecentsComponent;->showRecents(ZLandroid/view/View;)V
    
        goto :goto_0
    .end method
    ----------------------------------------------------------------
    Looking for:
    .method protected showRecentsNextAffiliatedTask()V
    
    Changing it completely with:
    .method protected showRecentsNextAffiliatedTask()V
        .locals 1
    
        .prologue
        .line 1254
        invoke-direct {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->isOmniSwitchEnabled()Z
    
        move-result v0
    
        if-nez v0, :cond_0
    
        .line 1255
        iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;
    
        if-eqz v0, :cond_0
    
        .line 1256
        iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;
    
        invoke-interface {v0}, Lcom/android/systemui/RecentsComponent;->showNextAffiliatedTask()V
    
        .line 1259
        :cond_0
        return-void
    .end method
    ----------------------------------------------------------------
    Looking for:
    .method protected showRecentsPreviousAffiliatedTask()V
    
    Changing it completely with:
    .method protected showRecentsPreviousAffiliatedTask()V
        .locals 1
    
        .prologue
        .line 1262
        invoke-direct {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->isOmniSwitchEnabled()Z
    
        move-result v0
    
        if-nez v0, :cond_0
    
        .line 1263
        iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;
    
        if-eqz v0, :cond_0
    
        .line 1264
        iget-object v0, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;
    
        invoke-interface {v0}, Lcom/android/systemui/RecentsComponent;->showPrevAffiliatedTask()V
    
        .line 1267
        :cond_0
        return-void
    .end method
    ----------------------------------------------------------------
    Looking for:
    .method protected toggleRecents()V
    
    Changing it completely with:
    .method protected toggleRecents()V
        .locals 5
    
        .prologue
        .line 1226
        invoke-direct {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->isOmniSwitchEnabled()Z
    
        move-result v1
    
        if-eqz v1, :cond_1
    
        .line 1227
        new-instance v0, Landroid/content/Intent;
    
        const-string v1, "org.omnirom.omniswitch.ACTION_TOGGLE_OVERLAY"
    
        invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
    
        .line 1228
        .local v0, "showIntent":Landroid/content/Intent;
        iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mContext:Landroid/content/Context;
    
        sget-object v2, Landroid/os/UserHandle;->CURRENT:Landroid/os/UserHandle;
    
        invoke-virtual {v1, v0, v2}, Landroid/content/Context;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)V
    
        .line 1235
        .end local v0    # "showIntent":Landroid/content/Intent;
        :cond_0
        :goto_0
        return-void
    
        .line 1230
        :cond_1
        iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;
    
        if-eqz v1, :cond_0
    
        .line 1231
        iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mContext:Landroid/content/Context;
    
        const-string v2, "recentapps"
    
        invoke-static {v1, v2}, Lcom/android/systemui/statusbar/BaseStatusBar;->sendCloseSystemWindows(Landroid/content/Context;Ljava/lang/String;)V
    
        .line 1232
        iget-object v1, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mRecents:Lcom/android/systemui/RecentsComponent;
    
        iget-object v2, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mDisplay:Landroid/view/Display;
    
        iget v3, p0, Lcom/android/systemui/statusbar/BaseStatusBar;->mLayoutDirection:I
    
        invoke-virtual {p0}, Lcom/android/systemui/statusbar/BaseStatusBar;->getStatusBarView()Landroid/view/View;
    
        move-result-object v4
    
        invoke-interface {v1, v2, v3, v4}, Lcom/android/systemui/RecentsComponent;->toggleRecents(Landroid/view/Display;ILandroid/view/View;)V
    
        goto :goto_0
    .end method
    *Compile framework.jar DONE*
    DON'T FORGET TO DRAG THE APK FILE GIVING U IN FOLDER SYSTEM.
    DON'T FORGET TO TRANSFER ALL FILES (framework.jar).


    Files and Compare Press Me​