Skip to content

SnowyProject/android_packages_apps_ElmyraService

Repository files navigation

Active Edge Service

This is an open-source implementation of the Pixel Active Edge gesture, written from scratch for portability and customizability.

Active Edge, codename Elmyra, is a gesture powered by side grip sensors on the Pixel 2/XL, 3/XL, 3a/XL, and 4/XL that is used to activate the Google Assistant on stock. The gesture is handled by a proprietary nanoapp running under CHRE (ContextHub Runtime Environment) on the sensor DSP.

This app is a reverse-engineered Android client that runs as a standalone service and talks to the CHRE nanoapp for gesture functionality. No decompiled code has been used.

Features

  • Seamless integration in Settings → System → Gestures → Active Edge with no extra changes
  • Integration with Settings search
  • Many actions to perform on gesture trigger
    • Take screenshot
    • Open assistant
    • Open camera
    • Toggle flashlight
    • Mute calls & notifications (replicates default power + volume-up "prevent ringing" gesture)
    • Toggle power menu
    • Toggle screen
  • 10 sensitivity levels (more granular than stock)
  • Setting to control whether gesture is enabled when the screen is off
  • Contextually-appropriate haptic feedback with modern effects
    • Heavy click for squeeze
    • Click for release
    • Reject for unavailable action (e.g. if flashlight can't turn on because camera is in use)

Integration

Sync this repo to packages/apps/ElmyraService.

Add the following to your device tree only for devices with this feature:

# Active Edge
PRODUCT_PACKAGES += \
    ElmyraService

While this service is designed to be as portable and self-contained as possible, Android does not provide the necessary APIs to implement all gesture actions out-of-the-box. This means that some commits must be added to frameworks/base to expose the APIs for full functionality:

Default settings can be changed by overlaying res/values/config.xml.

License

All code in this repository is licensed under the Apache 2.0 License.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published