KeySwipe

Move between apps on your Pixel
without taking your hands off the keyboard.

Android 12+ / Built for Pixel Launcher / MIT licence

What it does

For anyone using a Pixel with a physical keyboard attached, this cuts down how often you reach for the screen.

Ctrl+←/→ jumps to the next app

Triggers the same quick switch you get by swiping along the bottom edge. The motion accelerates and eases off like a real finger, so the transition animation follows naturally.

Ctrl+↑ opens recents and lets you choose

The recents list opens with a blue frame around the current card. Move the frame with the arrow keys and press Enter to launch. The second, third and further apps are all reachable from the keyboard.

Arrow keys work without Ctrl

While the list is open, plain arrow keys move the frame. Positions are tracked as a grid of rows and columns, so presses land on the card you aimed at even mid-animation.

Ctrl+↓ opens the app drawer

The full app list opens with the same blue frame for picking icons. Reaching the bottom row scrolls automatically to bring in the next ones.

Option + trackball scrolls

Hold the modifier and roll the ball to scroll the screen. The cursor disappears while held, so you never lose your place, and it comes straight back when you let go.

Tune speed, acceleration and direction

Scroll speed (0.2×–5.0×), acceleration and direction inversion are all adjustable in settings, and you can pick Option, Ctrl or Cmd as the scroll modifier.

Follows folding and rotation

Screen geometry is measured on every action. The same shortcuts work folded or unfolded, portrait or landscape, with no reconfiguration.

One switch to stand down

The master switch at the top of the settings screen passes every key straight through to your apps. You can stop it on the spot without digging into system accessibility settings.

Key bindings

Arrow keys outside the list, and anything without Ctrl, reach your apps exactly as usual.

KeyAction
Ctrl + ← / →Switch to the adjacent app (same as the bottom-edge swipe)
Ctrl + ↑Open recents and enter selection mode
Ctrl + ↓Open the app drawer
↑ ↓ ← →Move the selection frame in recents or the drawer (no Ctrl)
EnterLaunch the selected app
EscLeave selection mode
Modifier + trackballScroll the screen (cursor hidden while held)

Getting started

Not on the Play Store. Grab the APK from GitHub and install it yourself.

1. Install

Download the APK from the releases page and open it on the device. Allow installing from unknown sources if prompted.

2. Enable the accessibility service

Open the app, tap “Open accessibility settings”, find KeySwipe in the list and turn it on. This is what lets it receive key presses.

3. Try it

Press Ctrl+↑ on your keyboard. When the blue frame appears in the recents list you are set — move with the arrows, launch with Enter.

Android 12+ / Physical keyboard required (trackball or mouse for scrolling) / MIT licence

Things worth knowing first

Recents and drawer selection only work on Pixel Launcher

Selection reads the launcher's on-screen structure directly to know where each card sits. On devices running a different launcher those two features will not work. The Ctrl+←/→ app switch and trackball scrolling do not depend on the launcher and still work. Development and testing were done on a Pixel 10 Pro Fold.

It runs as an accessibility service

On Android, an accessibility service is the only thing that can receive physical keyboard input. The app also reads the launcher's screen content to locate cards and icons. What it reads is used on the spot — nothing is stored and nothing is sent anywhere.

It conflicts with apps that use Ctrl+arrow

While enabled, Ctrl+arrow belongs to this app, so apps that use it for things like word-by-word cursor movement will not see those presses. The switch in settings turns it off temporarily.

A personal side project

Built to make one particular combination — a Pixel Fold and a custom keyboard — pleasant to use. No warranty, no support. The source is MIT licensed, so adapt it freely.

Download

Free. No ads, no in-app purchases.

Android 12+ / Built for Pixel Launcher / MIT licence