[Module][3.3.1] QuickSwitch - Quickstep enabler for supported launchers

Search This thread

Skittles9823

Recognized Contributor
Jan 9, 2015
1,821
2,115
24
Sydney
Google Pixel 3a XL
QuickSwitch - Quickstep enabler for supported launchers

QuickSwitch is a Magisk module which systemlessly allows supported launchers to access the recents (QuickStep) APIs. It's future proof, detects which launchers are capable of being a recents provider, and is fairly simple to use.

Requirements:
- Android Pie+
- The latest version of Magisk
- A launcher which can be used as a recents provider on your specific android version.

Installation:
To use the module, simply follow the instructions:

1. Install the latest QuickSwitch apk from the Telegram channel or GitHub releases.
2. Open the QuickSwitch app that was installed.
3. Select a different launcher as your recents provider.
4. Reboot.
5. Verify your new recents provider is correct.
6. Set the new recents provider as the default launcher.
7. Profit.

After switching providers and rebooting, make sure the current provider is the default home app.

To switch providers after the initial install just open the app, select a new provider and reboot.

Updating:
To update, just update the app when a new release is published, or check the Magisk app as it should fetch updates too.

Uninstallation:
To uninstall the module, use the bin icon in magisk manager. Your recents provider will go back to default and your launcher will return to being a user app, after that, just uninstall the quickswitch app

Logging:
QuickSwitch saves all its logs to /data/adb/modules/quickswitch/logs/ and /sdcard/Documents/quickswitch/ all logs belonging to QuickSwitch begin with quickswitch. If you have any issues with the module send all log files in a compressed archive.

Compatibility:
As stated earlier, the QuickSwitch app auto-detects which launchers are compatible so it's going to be difficult to say a definitive list. But for an easy explanation, I'll just say that almost all stock Pie+ launchers will work as long as they are either ported to other devices or are installed by default on your device.
As for custom launchers, you'll have to install them and see if they appear in the QuickSwitch app.

Notes:
- QuickSwitch doesn't add support for launchers, launchers need to support QuickSwitch. Because of this, a full list of compatible launchers will not be provided as the app autodetects which launchers are compatible.
- Nova Launcher is NOT compatible with QuickSwitch and never will be unless they decide to add support for the Razer Phone natively.

Misc:
- You can grab the source for the module here

The SystemUI option (removed in Android 10+) will grant you Oreo style recents.

Credits:
- @paphonb for the QuickSwitch app and the initial concept and idea of a universal Quickstep enabler.

- @osm0sis for assistance with getting 3.x.x to work without having to go permissive, and for his and @topjohnwu's zipsigner

- The Lawnchair and Hyperion team's for initial testing of the module.

Download:
Download the latest version here.

Donations:
- If you wish to donate to @paphonb for creating the QuickSwitch app you can do so here.
- Or if you wish to sponsor me on GitHub for making the module, scripts, and handling support you can do so here.

Release details:
Current version: 3.3.1
Last updated: 19-06-2022

Created: 28-12-2018
 
Last edited:

Skittles9823

Recognized Contributor
Jan 9, 2015
1,821
2,115
24
Sydney
Google Pixel 3a XL
FAQ

What does this module do?
The only thing this module does is changes which launcher controls your recents

Can I get app actions, or recents text/picture selection with this module?
This module doesn't control what features a launcher has. All it does is grant the launcher more permissions and enable a launchers access to recents.

How to get Oreo/Oreo Grid recents?
For Oreo recents simply set your recents provider to SystemUI and reboot.
If the SystemUI option doesn't show up it's because you're on Android 10 and the Oreo recents fallback has been removed from AOSP.

For grid recents follow these instructions:
1. Set the recents provider to SystemUI
2. Tap the three dot menu and toggle "Enable grid recents" to on
3. Reboot.

The FAQ will grow as more questions come to mind.
 
Last edited:

Skittles9823

Recognized Contributor
Jan 9, 2015
1,821
2,115
24
Sydney
Google Pixel 3a XL
Common Issues & How To Fix

Launcher is constantly crashing
This generally means you are using a launcher port and didn't follow the instructions correctly. Here is a refresher:
1. Install QuickSwitch.
2. Install the launcher, don't set it as your default launcher.
3. With any other launcher, open QuickSwitch.
4. Set your desired launcher as your recents provider.
5. Reboot.
6. Verify the new launcher is now your recents provider in QuickSwitch.
7. Set the selected as your default launcher.
8. Profit.

If the launcher still crashes afterward get the module logs and a crash log using https://github.com/tacothedank/scoop

Setting the provider is successful but it still didn't work after a reboot
type this command in a terminal
Code:
su -c cmd overlay dump xyz.paphonb.quickswitch.overlay

If you see this line:
Code:
mState.................: STATE_NO_IDMAP

You need to ask your rom maintainer to add this commit. only for your device, it will cause issues on other devices.

Another fix you can do yourself if that happens is enter this command in a root environment (If stuffs breaks after doing this delete the .replace file through ADB).
Code:
mkdir -p /data/adb/modules/quickswitch/system/vendor/overlay && touch /data/adb/modules/quickswitch/system/vendor/overlay/.replace
 
Last edited:

schwarzerfleck

Senior Member
Aug 20, 2015
287
140
Berlin
OnePlus 8T
OnePlus 9 Pro
Great!

Works well on this setup:
OnePlus 6
Pixel Experience ROM
Lawnchair Alpha 721
Quickstep 1.0.6

Just one issue that I've had before. I use Fluid NG to get access to navigation gestures on Pixel software. It removes the navbar by moving it to the invisible area "under" your display or something. In HTML world, this would have to do with margins and padding.
The result is this:
j837JWc.png


With the navbar on, it looks alright:
OeViWqW.jpg


Is it possible for you to fix this or provide an option to do so? Maybe by doing a reverse-padding for the app previews or something like that? ? I'll be happy to assist further.
 
Last edited:

Skittles9823

Recognized Contributor
Jan 9, 2015
1,821
2,115
24
Sydney
Google Pixel 3a XL
Great!

Works well on this setup:
OnePlus 6
Pixel Experience ROM
Lawnchair Alpha 721
Quickstep 1.0.6

Just one issue that I've had before. I use Fluid NG to get access to navigation gestures on Pixel software. It removes the navbar by moving it to the invisible area "under" your display or something. In HTML world, this would have to do with margins and padding.
The result is this:


With the navbar on, it looks alright:


Is it possible for you to fix this or provide an option to do so? Maybe by doing a reverse-padding for the app previews or something like that? ? I'll be happy to assist further.

Yea that's a lawnchair issue. We are aware of it and it will be worked on in a later update.

Sent from my LGE Nexus 5X using XDA Labs
 

Qutayba Khader

Senior Member
Jun 30, 2015
172
60
Nice:laugh: working great on (oneplus 6t - oos 9.0.10), o used horizontal old style and Lawnchair and booth of them works great,
Thanks a lot..

I hope someone support the (grid recent) soon
 

Skittles9823

Recognized Contributor
Jan 9, 2015
1,821
2,115
24
Sydney
Google Pixel 3a XL
Nice:laugh: working great on (oneplus 6t - oos 9.0.10), o used horizontal old style and Lawnchair and booth of them works great,
Thanks a lot..

I hope someone support the (grid recent) soon

Grid recents might still be able to be enabled via a build.prop value but I'm not sure.

Sent from my LGE Nexus 5X using XDA Labs
 
  • Like
Reactions: Crescendo Xenomorph

stu5797

Senior Member
Aug 4, 2011
2,544
502
Cleveland, Ohio
Love this! Thank you for this awesome mod. Anyway to add a clear all button in the bottom right or bottom center? Thank you so much again for this development
 

Top Liked Posts

  • There are no posts matching your filters.
  • 151
    QuickSwitch - Quickstep enabler for supported launchers

    QuickSwitch is a Magisk module which systemlessly allows supported launchers to access the recents (QuickStep) APIs. It's future proof, detects which launchers are capable of being a recents provider, and is fairly simple to use.

    Requirements:
    - Android Pie+
    - The latest version of Magisk
    - A launcher which can be used as a recents provider on your specific android version.

    Installation:
    To use the module, simply follow the instructions:

    1. Install the latest QuickSwitch apk from the Telegram channel or GitHub releases.
    2. Open the QuickSwitch app that was installed.
    3. Select a different launcher as your recents provider.
    4. Reboot.
    5. Verify your new recents provider is correct.
    6. Set the new recents provider as the default launcher.
    7. Profit.

    After switching providers and rebooting, make sure the current provider is the default home app.

    To switch providers after the initial install just open the app, select a new provider and reboot.

    Updating:
    To update, just update the app when a new release is published, or check the Magisk app as it should fetch updates too.

    Uninstallation:
    To uninstall the module, use the bin icon in magisk manager. Your recents provider will go back to default and your launcher will return to being a user app, after that, just uninstall the quickswitch app

    Logging:
    QuickSwitch saves all its logs to /data/adb/modules/quickswitch/logs/ and /sdcard/Documents/quickswitch/ all logs belonging to QuickSwitch begin with quickswitch. If you have any issues with the module send all log files in a compressed archive.

    Compatibility:
    As stated earlier, the QuickSwitch app auto-detects which launchers are compatible so it's going to be difficult to say a definitive list. But for an easy explanation, I'll just say that almost all stock Pie+ launchers will work as long as they are either ported to other devices or are installed by default on your device.
    As for custom launchers, you'll have to install them and see if they appear in the QuickSwitch app.

    Notes:
    - QuickSwitch doesn't add support for launchers, launchers need to support QuickSwitch. Because of this, a full list of compatible launchers will not be provided as the app autodetects which launchers are compatible.
    - Nova Launcher is NOT compatible with QuickSwitch and never will be unless they decide to add support for the Razer Phone natively.

    Misc:
    - You can grab the source for the module here

    The SystemUI option (removed in Android 10+) will grant you Oreo style recents.

    Credits:
    - @paphonb for the QuickSwitch app and the initial concept and idea of a universal Quickstep enabler.

    - @osm0sis for assistance with getting 3.x.x to work without having to go permissive, and for his and @topjohnwu's zipsigner

    - The Lawnchair and Hyperion team's for initial testing of the module.

    Download:
    Download the latest version here.

    Donations:
    - If you wish to donate to @paphonb for creating the QuickSwitch app you can do so here.
    - Or if you wish to sponsor me on GitHub for making the module, scripts, and handling support you can do so here.

    Release details:
    Current version: 3.3.1
    Last updated: 19-06-2022

    Created: 28-12-2018
    41
    FAQ

    What does this module do?
    The only thing this module does is changes which launcher controls your recents

    Can I get app actions, or recents text/picture selection with this module?
    This module doesn't control what features a launcher has. All it does is grant the launcher more permissions and enable a launchers access to recents.

    How to get Oreo/Oreo Grid recents?
    For Oreo recents simply set your recents provider to SystemUI and reboot.
    If the SystemUI option doesn't show up it's because you're on Android 10 and the Oreo recents fallback has been removed from AOSP.

    For grid recents follow these instructions:
    1. Set the recents provider to SystemUI
    2. Tap the three dot menu and toggle "Enable grid recents" to on
    3. Reboot.

    The FAQ will grow as more questions come to mind.
    24
    QuickSwitch 3.0.0 released

    Changelog:
    - completely rewrite the app and the module backend. Now the app uses a shell binary as the backend to
    remove the need for bootscripts
    - re-add the $MODDIR/product/overlay install path as the Magisk issue has been fixed
    - added a check for MIUI which will abort the installation of the module


    Been a while since an update, but a few days short of the 1 year anniversary of when QuickSwitch was first released, we finally release 3.0.0

    Sent from my Google Pixel 3a XL using XDA Labs
    18
    QuickSwitch 3.0.4 released

    Samsung users rejoice. With the help of @osm0sis I've removed the need for permissive selinux while the backend script ran, so there are no longer any dependencies on that.

    I'm now also signing the overlay using zipsigner compiled by osm0sis so if there were any issues I wasn't aware of since the release of 3.x.x and they were caused by an unsigned overlay, they're now fixed. As far as I know however it shouldn't have been an issue.

    Another thing to take note of is that I've talked to an omni rom developer and they're doing something similar to what certain pixel experience device trees have done and the overlay won't work on it. I've had a tester try omni and I've given them a few test builds in an attempt to work around it but from what I can tell it's just not possible to fix it on my side. (Said attempted fixes aren't in QuickSwitch, and won't be added btw)

    I've not blocked omni, just incase it works on some devices but don't get your hopes up if it hasn't worked in the past.

    Changelog:
    - remove selinux dependant commands in favour of grepping packages.xml and listing the contents of /data/app to find launcher dirs
    - sign the overlay again
    - I'd like to thank @osm0sis for helping with this update

    Sent from my Google Pixel 3a XL using XDA Labs
    17
    QuickSwitch 3.0.5 released

    Changelog:
    - fix for the launcher not getting copied over and aborting recents provider change
    - fix dalvikvm invokation for Android 10 (-Xnodex2oat is removed upstream)

    The last change is just an update to zipsigner

    Sent from my Google Pixel 3a XL using XDA Labs