Skip to content

Releases: Leuconoe/MediaFloat

MediaFloat v0.3.3

Choose a tag to compare

@Leuconoe Leuconoe released this 24 Apr 08:55

MediaFloat v0.3.3

MediaFloat v0.3.3 fixes the drag-handle triple-tap gesture so users can close the floating widget directly from the overlay.

Highlights

  • Triple-tap stop gesture: Triple-tapping the overlay drag handle now stops the widget reliably.
  • Tap vs drag handling: The drag handle now separates taps from real drags using Android touch slop, so normal dragging still persists the widget position.
  • Stop-only behavior: The gesture now maps to the explicit stop path instead of a toggle path, avoiding accidental restarts.
  • API 36 test compatibility: AndroidX test dependencies were updated so instrumented tests run on the Medium_Phone_API_36.0 AVD.

Validation

  • Passed ./gradlew.bat testDebugUnitTest
  • Passed ./gradlew.bat assembleDebug
  • Passed ./gradlew.bat connectedDebugAndroidTest on Medium_Phone_API_36.0
  • Verified on Medium_Phone_API_36.0 with Spotify (com.spotify.music): overlay shown over Spotify, drag-handle triple tap stopped the widget, and logcat reported Received explicit runtime stop and Detached overlay

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 03 Apr 07:07

MediaFloat v0.3.0

MediaFloat v0.3.0 focuses on permission guidance, layout stability, and internal refactoring for better maintainability.

Highlights

  • Permission guidance on launch: When no permissions are granted, the app now automatically navigates to the Support screen where each required permission is listed with a clear explanation of why it is needed and a direct button to open the relevant settings page.
  • MIT License and privacy notice: The Support screen now shows the MIT license and explicitly states that no personal information is collected, stored, or transmitted.
  • Layout boundary refactor: Runtime and media responsibilities have been extracted into focused helpers (MediaControllerSelector, MediaRecoveryPolicy, MediaArtworkCandidateResolver, OverlayLayoutCalculator, OverlayBitmapLoader, OverlayPresentationSpec) to reduce coupling and improve testability.
  • Removed Product Constraints card: The Support screen is now cleaner and more focused on what users actually need.

Notes

  • Edge offset preset controls are temporarily disabled and will return in a future release.
  • Thumbnail helper extraction is complete but the full thumbnail UI integration is still in progress.
  • Existing permission and runtime requirements remain unchanged.

Validation

  • Passed ./gradlew.bat assembleDebug
  • Passed ./gradlew.bat assembleRelease
  • Tested on AVD (Medium_Phone_API_36.0)

v0.2.4

Choose a tag to compare

@github-actions github-actions released this 02 Apr 08:03
39469c5

MediaFloat v0.2.4

MediaFloat v0.2.4 focuses on layout polish and thumbnail support for the floating widget.

Highlights

  • Normalized left drag-handle spacing to match the right side
  • Added media thumbnail support with a fallback placeholder when artwork is unavailable
  • Kept the title strip always visible to prevent layout flicker during track changes
  • Moved sidebar placement and thumbnail toggle controls into Settings for easier access

Notes

  • Edge offset preset controls are temporarily disabled and will return in a future release
  • Thumbnail fallback uses a styled placeholder box when no artwork is available from the media session
  • Existing permission and runtime requirements remain unchanged

Validation

  • Passed ./gradlew.bat testDebugUnitTest
  • Passed ./gradlew.bat compileDebugAndroidTestKotlin
  • Passed ./gradlew.bat assembleDebug
  • Passed ./gradlew.bat connectedDebugAndroidTest
  • Passed ./gradlew.bat installDebug

v0.2.3

Choose a tag to compare

@github-actions github-actions released this 29 Mar 09:07

MediaFloat v0.2.3

MediaFloat v0.2.3 is a small follow-up release focused on stability and launcher convenience.

Highlights

  • Kept the floating title strip visible during temporary metadata gaps between tracks
  • Added a Toggle widget launcher shortcut next to the existing launch and stop shortcuts
  • Deferred thumbnail artwork support for a later release after real-device validation showed inconsistent behavior

Notes

  • The overlay still prefers current media title metadata and keeps the title surface stable even when the next item has not published text yet
  • Thumbnail artwork is intentionally not part of this release
  • Existing permissions and runtime entry requirements remain unchanged

Validation

  • Passed ./gradlew.bat testDebugUnitTest
  • Passed ./gradlew.bat compileDebugAndroidTestKotlin
  • Passed ./gradlew.bat assembleDebug
  • Passed ./gradlew.bat connectedDebugAndroidTest
  • Passed ./gradlew.bat installDebug
  • Passed ./gradlew.bat :app:assembleRelease :app:bundleRelease

v0.2.2

Choose a tag to compare

@github-actions github-actions released this 29 Mar 05:09
c239a4c

MediaFloat v0.2.2

MediaFloat v0.2.2 focuses on making the floating widget easier to read while media is playing.

Highlights

  • Added current-media title rendering to the floating widget overlay
  • Kept the title strip width locked to the full widget width for Compact, Standard, and Large presets
  • Added marquee-style scrolling for long titles without collapsing the title bar when the text is short
  • Kept the runtime overlay and in-app preview aligned on the same title strip layout rules

Notes

  • Title metadata prefers DISPLAY_TITLE and falls back to TITLE when needed
  • This release changes the overlay presentation only; it does not add thumbnail artwork or new transport controls
  • Existing permission and runtime requirements remain unchanged

Validation

  • Passed ./gradlew.bat testDebugUnitTest
  • Passed ./gradlew.bat compileDebugAndroidTestKotlin
  • Passed ./gradlew.bat assembleDebug
  • Passed ./gradlew.bat connectedDebugAndroidTest

Feedback focus

The most useful feedback for v0.2.2 is:

  • title readability across different widget sizes and themes
  • marquee smoothness with long track or video titles
  • media-app compatibility for title updates when playback metadata changes quickly

v0.2.1

Choose a tag to compare

@github-actions github-actions released this 27 Mar 12:10
6f868bf

MediaFloat v0.2.1

MediaFloat v0.2.1 is a focused follow-up release.

Highlights

  • Added a launcher shortcut that stops the widget, paired with the existing launch shortcut
  • Kept shortcut activation on the same runtime contract used by the app itself
  • Renamed the package/application id to sw2.io.mediafloat
  • Hardened runtime entry paths for notification settings, overlay start, and launcher shortcut flows
  • Stabilized overlay drag updates so moving the widget no longer crashes the app
  • Prepared refreshed screenshots and listing metadata for broader distribution
  • Prepared signed Android App Bundle output for Play Store submission

Notes

  • This release does not change the core widget family or permission model
  • Release and distribution assets now align with the verified app behavior and current UI surfaces
  • Google Play should use the signed .aab, while APK assets remain useful for sideloading and other distribution channels

MediaFloat v0.2.0

Choose a tag to compare

@Leuconoe Leuconoe released this 26 Mar 00:49

MediaFloat v0.2.0

MediaFloat v0.2.0 is the first full product-shape release of the current single-module Android app.

This version completes the current cycle around app-language support, runtime recovery, a cleaner in-app information architecture, and release polish.

Highlights

  • App-language support for System default, English, Korean, Chinese, Japanese, Spanish, and French
  • Main, Settings, Advanced, Support, and hidden Debug surfaces with simplified control grouping
  • Real widget controls for size, width, opacity, sidebar side, and theme presets
  • Media-session recovery improvements after temporary interruption paths
  • Safer runtime entry handling for notification settings, overlay start, and launcher shortcut activation
  • Apache-2.0 repository license and refreshed README, changelog, and release notes

Setup notes

Language selection lives in Advanced. System default remains the first option and clears any app-specific override.

The overlay runtime still depends on Android overlay access, notification-listener access, and visible app notifications. If any of those pieces are missing, the app stays in a readable blocked state and exposes shortcuts back to the required system settings.

Known limitations

  • The overlay still supports a single horizontal control family
  • Freeform resizing and freeform button placement are not supported
  • Validation has been strong on emulator-based setup and runtime checks, but target-device testing is still recommended before wider use

Feedback focus

The most useful feedback for v0.2.0 is:

  • translation quality across the shipped app-language set
  • locale switching behavior on Android 13+ and Android 10-12 devices
  • media-app compatibility and overlay recovery behavior across OEM builds
  • drag reliability, sidebar placement, and overall widget readability across theme presets

MediaFloat v0.1.0

Choose a tag to compare

@Leuconoe Leuconoe released this 23 Mar 07:33

MediaFloat v0.1.0

MediaFloat v0.1.0 is the first public release of the project.

This version focuses on a compact Android overlay for core media controls, plus the setup and debugging surfaces needed to make that runtime understandable.

Highlights

  • Floating media controls for Previous, Play / pause, and Next
  • Draggable overlay bar with a fixed right-side handle
  • Settings screen with supported button layouts, size presets, and a live preview
  • Debug console with runtime readiness, media readiness, transport controls, and recent logs
  • Support screen with setup guidance, version details, and current constraints
  • Exported automation action for launching the overlay flow from routines or shortcuts

Setup notes

MediaFloat depends on Android overlay access, notification-listener access, and a visible foreground-service notification posture. If one of those pieces is missing, the app stays in a readable blocked state and points back to the system settings it needs.

Known limitations

  • The overlay supports a single horizontal control family in this release
  • Freeform resizing and freeform button placement are not supported
  • Validation has been strong on emulator-based setup and runtime checks, but target-device testing is still recommended before wider use

Feedback focus

The most useful early feedback for v0.1.0 is:

  • media-app compatibility
  • overlay behavior across OEM builds
  • permission-flow clarity
  • practical issues with positioning, persistence, and recovery