An open-source implementation of the Pixel Active Edge gesture

Overview

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.

You might also like...
Here you can try out Kotlin Multiplatform and Jetpack Compose with some other cutting-edge technologies.
Here you can try out Kotlin Multiplatform and Jetpack Compose with some other cutting-edge technologies.

wire The Wire is a Kotlin Multiplatform sample project, currently supporting Android and Windows. Tools And Technolagies Architecture: MVVM MultiThrea

Plugin for the JetBrains Platform, that makes it easier to work while many splits are open by resizing the active editor to be larger
Plugin for the JetBrains Platform, that makes it easier to work while many splits are open by resizing the active editor to be larger

Plugin for the JetBrains Platform, that makes it easier to work while many splits are open by resizing the active editor to be larger. Golden Ratio is inspired by the Emacs and Vim plugins of the same name by Roman Gonzalez.

XliteKt is an open-source, and forever open-source Kotlin based OSRS Emulator for educational purposes.

xlitekt Introduction XliteKt is an open-source, and forever open-source Kotlin based OSRS Emulator for educational purposes. Currently built around th

BaseAnimation network Android animation set, custom controls, nearly 200 kinds of source code! BaseAnimation, if a new version is updated automatically to remind everyone, I hope everyone will contribute their animated XML files or other source, together to create this open source app!
Active record style SQLite persistence for Android

ActiveAndroid ActiveAndroid is an active record style ORM (object relational mapper). What does that mean exactly? Well, ActiveAndroid allows you to s

Compile-time active record ORM for Android

Ollie Compile-time active record ORM for Android. Multiple mapping methods. SQLiteDatabase-like interface (QueryUtils.java). Lightweight query builder

Active record style SQLite persistence for Android

ActiveAndroid ActiveAndroid is an active record style ORM (object relational mapper). What does that mean exactly? Well, ActiveAndroid allows you to s

Progress Button is a android library for hanling different types state like active, finished, enabled, disabled and reset with a single line of code.
Progress Button is a android library for hanling different types state like active, finished, enabled, disabled and reset with a single line of code.

Progress Button is a android library for hanling different types state like active, finished, enabled, disabled and reset with a single line of code.

[ACTIVE] Simple Stack, a backstack library / navigation framework for simpler navigation and state management (for fragments, views, or whatevers).
[ACTIVE] Simple Stack, a backstack library / navigation framework for simpler navigation and state management (for fragments, views, or whatevers).

Simple Stack Why do I want this? To make navigation to another screen as simple as backstack.goTo(SomeScreen()), and going back as simple as backstack

Cookie-finder - Most Active cookie finder

Most Active Cookie Given a cookie log file in the following format: cookie,times

Improve automated and semi-automated active scanning in Burp Pro

PentagridScanController Improve automated and semi-automated active scanning for BurpSuite Author: Tobias "floyd" Ospelt, @floyd_ch, http://www.floyd.

An Android library that help you to build app with swipe back gesture.
An Android library that help you to build app with swipe back gesture.

SwipeBackLayout An Android library that help you to build app with swipe back gesture. Demo Apk GooglePlay Requirement The latest android-support-v4.j

SwipeBack is an android library that can finish a activity by using gesture.
SwipeBack is an android library that can finish a activity by using gesture.

SwipeBack SwipeBack is a android library that can finish a activity by using gesture. You can set the swipe direction,such as left,top,right and botto

A sleek, out of the box, easy to understand and use, swipe gesture based Navigational Library for android.
A sleek, out of the box, easy to understand and use, swipe gesture based Navigational Library for android.

Facilis Swipe gesture based navigational library for Android. Watch Demo Video: Getting Started To get this project into your build: Gradle Add it in

SwipeBack for Android Activities to do pretty the same as the android
SwipeBack for Android Activities to do pretty the same as the android "back-button" will do, but in a really intuitive way by using a swipe gesture

SwipeBack SwipeBack is for Android Activities to do pretty the same as the android "back-button" will do, but in a really intuitive way by using a swi

A TextView library that allows the user to increase/decrease font size with a two finger gesture by the user.
A TextView library that allows the user to increase/decrease font size with a two finger gesture by the user.

PinchZoomTextView Library This library allows you to have a TextView that will grow/shrink the font size using gestures from the user. Usage To have a

Gesture detector framework for multitouch handling on Android, based on Android's ScaleGestureDetector

Android Gesture Detectors Framework Introduction Since I was amazed Android has a ScaleGestureDetector since API level 8 but (still) no such thing as

An Android library that help you to build app with swipe back gesture.
An Android library that help you to build app with swipe back gesture.

SwipeBackLayout An Android library that help you to build app with swipe back gesture. Demo Apk GooglePlay Requirement The latest android-support-v4.j

Owner
hlcynprjct!
Force Push is a must
hlcynprjct!
LSPosed module to add Google Pixel features on Google Photos for any device.

Pixelify-Google-Photos LSPosed module to add Google Pixel features on Google Photos for any device. LSPosed module repo Development repo Steps to use:

null 502 Jan 9, 2023
Pixel Boom is a Java-based Android software, featuring image super-resolution and colorization

Pixel Boom is a Java-based Android software, featuring image super-resolution and colorization.

Zaitian 1 Jul 3, 2022
Stingle Photos is a secure, open-source photo, video cloud storage and backup application

Stingle Photos Stingle Photos is a secure, open-source photo, video cloud storage and backup application that is safe, ad-free and easy to use. It pro

Stingle 242 Dec 14, 2022
DroidRec is an open-source Android screen recorder

English | עברית About DroidRec is an open-source Android screen recorder. It can not record your system sounds, because Android doesn't have such func

Egor Yakovlev 71 Jan 6, 2023
An implementation of a gif decoder written 100% in Kotlin, plus an associated Drawable for Android

An implementation of a gif decoder written 100% in Kotlin, plus an associated Drawable for Android

Benoît Vermont 41 Nov 19, 2022
A simple implementation of rectangle detector on Android using OpenCV.

A simple implementation of rectangle detector on Android using OpenCV.

SmartBank, Inc. 4 Oct 7, 2022
Software blur implementation for Blur, blur, and one more time blur article

Software Blur Software blur implementation for Blur, blur, and one more time blu

Algo Club 0 Jan 20, 2022
Library to save image locally and shows options to open and share !

Image Save and Share Library to save image locally and shows options to open and share ! Download Demo APK from HERE Kindly use the following links to

Prabhakar Thota 27 Apr 18, 2022
Pixel Launcher Mods a root app for Android 12+ that enables you to add a number of features to the stock Pixel Launcher

A root app that enables you to add a number of features to the stock Pixel Launcher, without needing Xposed

Kieron Quinn 430 Jan 2, 2023
An open source Android library that allows the visualization of large images with gesture capabilities

ByakuGallery ByakuGallery is an open source Android library that allows the visualization of large images with gesture capabilities. This lib is based

Diego Lima 311 Dec 4, 2022