Commit Graph
136 Commits
Author SHA1 Message Date
Benjamin Wiegand 6a62f1b798 feat: privileged audio capture via REMOTE_SUBMIX
allows navigation instructions to be captured
2026-06-20 15:28:44 -07:00
Benjamin Wiegand b6974a05f2 fix: clear calling identity on binder transaction
fixes some issues with daemon running as root for REMOTE_SUBMIX audio capture
2026-06-20 13:39:52 -07:00
Benjamin Wiegand 31806a0c8f fix: open audio channel immediately but wait for audio capture before starting 2026-06-20 13:35:59 -07:00
Benjamin Wiegand 34e081aeb7 refactor: move AudioCapture to libprivd
part of allowing privd to implement an audio capture
2026-06-20 12:54:41 -07:00
Benjamin Wiegand e064683d6a feat: add permission check when switching operational mode 2026-06-18 15:12:03 -07:00
Benjamin Wiegand a733b03d03 refactor: allow parsing preference enums based on the preference value instead of reading them 2026-06-18 15:11:37 -07:00
Benjamin Wiegand 41e23697e2 fix: move root permission error dialog to request 2026-06-18 15:09:49 -07:00
Benjamin Wiegand afdf23caf8 feat: permission check in main activity 2026-06-18 14:47:26 -07:00
Benjamin Wiegand 089bc6910b feat: activity for permission checking and requesting 2026-06-18 14:33:43 -07:00
Benjamin Wiegand 116f61d734 fix: declare legacy bluetooth permission 2026-06-18 13:04:37 -07:00
Benjamin Wiegand 95210ba0e5 feat: save pinned dock items 2026-06-15 16:12:17 -07:00
Benjamin Wiegand 5690f14fb3 feat: automatically show/hide dock divider visibility 2026-06-15 11:55:14 -07:00
Benjamin Wiegand 9baf233644 fix: don't animate icon load in app drawer
fixes an issue where some app icons would be invisible after scrolling with keyboard/rotary

the animation doesn't add much anyway
2026-06-15 11:54:13 -07:00
Benjamin Wiegand 5951c45ffd fix: don't focus dock divider with rotary/dpad 2026-06-15 11:52:04 -07:00
Benjamin Wiegand d48a58b018 release: v0.0.2 v0.0.2 2026-06-14 13:37:05 -07:00
Benjamin Wiegand a107cf7849 feat: automatic wireless connection upon bluetooth connection 2026-06-14 13:13:47 -07:00
Benjamin Wiegand 7748e8e5a6 fix: ensure connection service notification doesn't re-appear after death 2026-06-11 16:09:57 -07:00
Benjamin Wiegand d2834e385e fix: connector log tags 2026-06-11 16:09:10 -07:00
Benjamin Wiegand 4489c32807 feat: allow disabling frame rate optimization
headunit revived appears to interpret the missing frames as decoder stall and tries to restart the video decoding session, which doesn't work and causes it to break.

I believe android auto does the same optimization, but the UI forces constant updates which nullify it. not sure if that's intentional?
2026-06-11 13:04:20 -07:00
Benjamin Wiegand e6564aaca6 feat: support 2k and 4k resolutions 2026-06-10 18:00:59 -07:00
Benjamin Wiegand fe3454a1da fix: change dark mode app modal color
on lineage os with the pitch black theme it was removing the dynamic color from the modal without removing it from the background, which looked awful.
2026-06-10 18:00:16 -07:00
Benjamin Wiegand b68fef519a fix: check thread interrupt status in connection loop
makes stopping the connection via the notification button more reliable
2026-06-10 17:58:14 -07:00
Benjamin Wiegand 39ab7c964e feat: experimental wireless connection
no auto connect yet, might try using the companion API if possible
2026-06-10 17:56:13 -07:00
Benjamin Wiegand e7299b2de7 fix: initialize channels in order
this appears to match how android auto initializes channels, but I haven't seen any headunits have issues with this yet

either way this is a bit easier to follow
2026-06-07 17:58:45 -07:00
Benjamin Wiegand 6b203e43a6 fix: support varint encoding for field tags
fixes compatibility with desktop headunit
2026-06-07 17:00:06 -07:00
Benjamin Wiegand bafecbec96 fix: default AV channel type to video
for compatibility with desktop headunit
2026-06-07 16:58:39 -07:00
Benjamin Wiegand 41b15657a8 feat: debug constant for auto-starting TCP server 2026-06-07 16:56:00 -07:00
Benjamin Wiegand 35af57c70a feat: support connection over TCP development server
can be used to do wireless with headunit emulators that support it, but not quite optimal yet
2026-06-07 14:27:14 -07:00
Benjamin Wiegand 5cc03bbef5 fix: don't send audio channel open on main thread
a hack for now, but it works
2026-06-07 14:27:07 -07:00
Benjamin Wiegand b9f745fb01 refactor: move connection logic to AAConnector implementation
makes it more modular so different connection mediums can be supported
2026-06-07 14:26:52 -07:00
Benjamin Wiegand 2f96639eff refactor: remove outdated todo 2026-06-07 14:26:46 -07:00
Benjamin Wiegand 17030292d4 fix: create assets directory in git 2026-06-07 14:26:32 -07:00
Benjamin Wiegand 0ed7ad006e update readme 2026-04-30 11:59:50 -07:00
Benjamin Wiegand cd4b0c5d92 feat: remove video buffer
adds BufferReader which allows multiple pieces of buffers to be supplied as a payload. this eliminates some array copies and removes the need for a video buffer.

also replaces the video buffer size pref with video bitrate controls.
v0.0.1
2026-04-23 14:03:25 -07:00
Benjamin Wiegand 1e19051e07 update readme 2026-04-22 13:02:13 -07:00
Benjamin Wiegand cf7ab2300a add issue templates 2026-04-22 11:06:09 -07:00
Benjamin Wiegand 039f0a652f feat: hide system bars in projection activity
primarily for ease of debugging
2026-04-19 12:29:40 -07:00
Benjamin Wiegand 19d1049568 feat: add software back button 2026-04-19 12:27:59 -07:00
Benjamin Wiegand 97777c650f feat: forward back button to focused app 2026-04-19 11:56:48 -07:00
Benjamin Wiegand 1c053c159a feat: add focus tracking for split-screen
to be used to determine where key events go
2026-04-19 11:19:39 -07:00
Benjamin Wiegand 47e3fb4628 feat: combine navigation and media categories
these categories seem to not have very many apps usually, so probably best to just combine them

focused category is not shown since it's usually identical to navigation and media, but it will be replaced with a favorites category at some point
2026-04-18 21:37:51 -07:00
Benjamin Wiegand 6bf875e195 fix: splash animation on task switch 2026-04-18 19:53:41 -07:00
Benjamin Wiegand e6a5ff5009 feat: force relaunch by destroying virtual display 2026-04-18 19:52:50 -07:00
Benjamin Wiegand f7c642df70 feat: show error dialog for activity relaunch failure 2026-04-18 18:56:08 -07:00
Benjamin Wiegand 9c08e6365a feat: task context buttons overlay
- add explicit listener call for content focus
- tapping the active task opens splash and requests content focus
- add separate splash for ProjectionTask, like VirtualActivity splash but can be modified without modifying virtual activities
- add button preset
- add AppRecord picker dialog
- move virtual activity splash to separate file
- remove split screen launch modal
- add close and re-launch buttons for each activity
- limit VirtualActivity creation and destruction in ProjectionTaskManager to package-private
- add the ability to remove tasks
- some fixes to support switching to null task
2026-04-18 18:05:20 -07:00
Benjamin Wiegand c5945cf26f feat: improve virtual activity splash design 2026-04-15 13:21:56 -07:00
Benjamin Wiegand bdfee1d821 fix: change how virtual activity splash is shown
this isn't a complete fix, I still need to detect activity launch
2026-04-15 13:19:31 -07:00
Benjamin Wiegand 4c0ec9bbfe feat: add ProjectionActivity debug button and move debug buttons to menu 2026-04-15 13:14:13 -07:00
Benjamin Wiegand bfdc55037f feat: change name to Flywheel
after much thinking I have come up with a better name
2026-04-15 07:40:48 -07:00
Benjamin Wiegand 303fe9cbc9 feat: new ui (pt 1)
- removed edit layout button
- dock shows active/open/pinned apps
- workspace-like multi-tasking
- modal supports 3 buttons
- removed virtual activity close button
- reduced virtual activity splash duration
- virtual activity launch failure is soft failure
2026-04-15 07:36:25 -07:00