many thanks to @rithvikvibhu for help with the hearing aids feature
adds:
hearing aid
two-device connection
new UI
transparency mode customization
commits:
* android: add accessibility stuff
adds option for customizing transparency mode, amplification, tone, etc.
* docs: update transparency mode format
* android: don't 'start' service every time MainActivity is launched
* android: add basic multidevice capabilities
use at your own risk, may or may not work
* android: clean up a bit of AI gen'd code
* android: clean up main service and remove minimum API on head gestures
* android: clean up a lot of stuff
* android: implement the accessiblity settings page
* android: add EQ settings for phone and media
* android: add toggle for DID hook
* docs: add 'has ownership' control cmd
* android: fix balance NaN error when amplification L/R is both zero
* android: bring back some accessiblity settings and add listeners for all config
* android: add header to ATTManager
* android: use device name sent by the connected device in island
* android: fix track color in tone volume
* android: remove unused composable
* android: update eq sliders style
* android: fix text color in selectors
* android: add delay before starting head tracking again
* android: add a few options
ik not the right branch/pr but, eh, i am not merging this hook until i test further, and if i don't merge, conflicts, a lot of 'em
* android: a small ui fix
* docs: a few more control cmds
* android: add microphone setting
also, un-hardcoded strings, and updated text sizes
* android: improve dropdowns
ai generated
* android: move attmanager to service to avoid trying to connect multiple times
* android: add ui for hearing stuff
mostly copied from the transparency settings, which are now updated to match ios <26 ui
* android: add media assist options in hearing aid
ui only
* android: add hearing aid adjustments
* android: liquidglass sliders
* android: improve liquid glass sliders
* android: little more liquid glass
* android: fix hearing aid parsing
* android: remove customdeviceactivity from manifest
* android: remove unused strings
* android: small ui tweaks
* android: a very big commit
refactoring ui, mostly
* android: move padding to StyledScaffold's content
because haze needs it
* android: revert accidental capitalization on toggle label
* android: update usages for toggle
* android: liquidglass, maybe?
the switch and icon button took quite a while. i forgot the order of modifiers matters!
* remove bleonly mode, use CAPod instead
* remove bleonly mode, use CAPod instead
* android: fix switch styling
* android: remove fade from transition
* android: add A16's new bluetooth identifier for log collection
just why...
* android: fix crash in head gestures screen
* android: show head gestures status in the navigation button
* android: don't crash if att not available
* android: use lazycolumn in airpods settings for better performance and navigation transitions
* android: fix text color in troubshooting button and pressandhold settings
* android: bring back original confirmation dialog
too lazy to fix/implement properly the glassy one
* android: prevent hearing aid turning off itself
* android: hide media assist, not implemented
* docs: update README with new features
* docs: add demo video
* docs: add new screenshots for android
* docs: update demo video position
* docs: app3 compatibility
* docs: new control cmds '25 (again)
* docs: change section title in control cmd doc
Updated section title from 'Control Commands' to 'Identifiers and details'.
* android: ui tweaks
* android: update styled slider thumb
* android: add accessiblity service for camera control
* android: add camera control, finally
i got too lazy to find out how to listen to app openings earlier, wasn't too hard
* android: add option to change camera app id
* android: not use relative paths for executing commands
i hope it's the same across all skins
* android: fix transparency and noise cancellation flags
huh... was it always like this?
* android: revert to using relative paths for su
compatibility issues with magisk
* android: bump version
* android: don't crash if self MAC is not available
* android: remove unused LOCAL_ADDRESS permission
* android: add opensource licenses
should've done this a long time ago!
* android: move navigation button to activity level
* android: update animation time on switch tap
* android: implement setting hearing test results
* android: update title in hearing test screen
* docs: add screenshot for hearing test
* android: fix haze for dialog when enabling hearing aid
* android: parse device info
* android: add support for various models
still need to update images or find a way to fetch from apple's cdn
* android: fix a2dp connection
* android: remove stray eq config in accessibility settings
* android: improve connection handling
* android: add a (very important) support dialog
to not be invasive, this only shows up once, and never again.
* docs: add note for DID hook on android
* linux: add hearing aid
it's just a simple python script, with a toggle in the main app. i dont want to mess with the main app because it uses ATT instead of the AACP protocol which is implemented in the app.
* linux: implement adding hearing aid test results
* docs: add linux screenshot
* docs: add linux hearing aid script
* linux: add reset button for hearing aid adjustments
* linux: remove MAC address logging for security
Fix: Activate A2DP audio profile for AirPods after system reboot
- Add A2DP profile activation on system wake-up
- Add A2DP profile activation when BlueZ detects connection
- Add A2DP profile activation for already connected devices on startup
Fixes issue where AirPods microphone works but audio output is unavailable after reboot
* Add qt development header list for Fedora
* Add openssl development header dependency to Linux readme
* PHONE_MAC_ADDRESS is now an environment variable, not a main.h constant
* The build target is librepods, not applinux