Warning
This nightly build is intended for testing only and may be unstable. Regular users should use the latest non-prerelease.
Automated development build from commit 3d9e6de.
Changelog since the latest stable release (v0.35.2-beta)
Highlights
- Refreshed switches, sliders, selects, inputs, buttons, and checkboxes with Material 3 styling, keeping desktop controls compact and touch controls larger on mobile. (#1761, #1773)
More improvements
- Mobile apps now show the themed startup splash, with an option to hide it. (#1707, #1710)
- Redesigned the phone header with search in the header, an option to keep search visible, and tab history in the tab overview. (#1714, #1719)
- Keep the mobile navigation bar visible while scrolling or use a compact 48 px icon-only bar with two new options in Customize navigation. (#1693, #1704)
- Fullscreen-on-rotate is now enabled by default, with a separate Android option to enter fullscreen even when system rotation is locked. (#1718, #1723)
- UI Roundness now also shapes watched video cards, tab underlines, switches, progress tracks, badges, and additional controls. (#1727, #1729)
- Open video tabs on another device from desktop and mobile tab context menus. (#1748)
- Open videos in a background tab from the mobile context menu using the shortcut that replaces the extra thumbnail action. (#1753)
- iOS nightly builds now install alongside stable as OpenTubeX Nightly, with separate settings and libraries. (#1755)
- Choose from 12 built-in profile icons; All Channels now uses a person icon by default. (#1757)
- Manage profiles using separate Customization and Manage profile subscriptions tabs. (#1778)
- Mobile playlists now open beside the video with compact landscape rows, and playlist, history, transcript, and header controls have clearer placement and spacing. (#1759, #1762, #1766)
- Tap or swipe upward anywhere on the mobile mini-player, except its close button, to reopen the video. The expand arrow is removed to leave more room for the title. (#1763, #1765)
- The mobile mini-player now shows playback progress and offers 10-second seeking, play/pause, and available playlist controls. Repeated seek feedback also keeps its running total after buffering. (#1796)
- Reduced unnecessary work during mobile mini-player swipes, color selection, playlist previews, and progress animations. (#1793)
- Add downloaded videos and audio to the watch queue for offline playback. (#1807)
- Channel tabs fit into one row without scrolling and slide the active underline when switching sections. (#1785)
- Switch desktop tabs with less repeated layout work, improving responsiveness on slower or busy systems. (#1837)
- Improved responsiveness for large playlists, history searches and updates, and selected-text context menus, with caching for repeated desktop launches. (#1848)
- Preview the first five comments with commenter avatars and animated position dots below videos on mobile. (#1813)
- Resume videos and audio from external media links where you left off, and view their chapters in the watch sidebar. (#1849)
- Seek by swiping horizontally in fullscreen, with a live seek-bar thumb and frame previews when available. Toggle the gesture in Playback settings. (#1770, #1831)
- Customize left and right swipes on mobile video cards for quick playlist, watch history, queue, bookmark, download, copy, and share actions. (#1758, #1828)
- Player options open faster on slower systems and under heavy load. (#1859)
- Switching subscription feeds is faster, especially with large subscription lists or under heavy system load. (#1860)
- Reduced unnecessary automatic sync requests after channel refreshes and uploads. (#1808)
Fixed bugs
- Player controls now auto-hide after swiping into fullscreen on Android. (#1695, #1703)
- The mobile player now moves captions and Picture-in-Picture into Settings when space is tight, and its quick playback speed bar fills the available width. (#1709)
- Android media notifications now show the OpenTubeX logo instead of a colored rectangle. (#1706)
- Reduce delays when returning to a populated Subscriptions Videos feed. (#1698, #1713)
- Fixed desktop quick playback speed presets leaving unused space, and added mouse-wheel scrolling through clipped presets. (#1726)
- Thumbnails look sharper on high-resolution screens, with a new Data saver thumbnails setting to reduce data usage. (#1720, #1725)
- Fixed the search bar expanding on focus by using its native clear control. (#1721)

- Fixed watch pages getting stuck on the loading skeleton after a connection interruption. (#1737)
- Swiping to refresh a watch page on mobile now refreshes the video page instead of the subscriptions behind it. (#1735)
- Restore seeking during running premieres with built-in extraction and yt-dlp when Always use cookies is enabled. (#1740)
- Make Android Picture-in-Picture playback and resizing smoother, and remove page flashes, scrollbars, and extra player movement when returning to the app. (#1744)
- Smooth mouse-wheel scrolling through clipped quick playback speed presets. (#1747)
- Fixed the Replay icon after pausing a video and seeking to the end with End. (#1733)
- New feed tabs no longer wrap onto extra rows on small screens. (#1722)
- The Playing Interface Hide Delay setting now applies in both portrait and landscape playback. (#1694, #1700)
- The subscriptions header now hides completely when scrolling down on mobile and reappears after a upward scroll. (#1696, #1702)
- Keep seekbar thumbnail previews aligned with the cursor on short videos. (#1743)
- Subscription feeds keep your scroll position when a refresh finishes. (#1754)
- Video controls keep chapter titles visible by narrowing speed presets first, and smoothly transition chapters to an icon when space runs out. (#1768)
- Prevent scrollbar overlap in saved channel playback settings and keep the add-channel search visible while scrolling. (#1767)
- Fixed mini-player return animation, responsive header and quick-settings layouts, and profile customization and subscription-management behavior. (#1772)
- Fixed Always Show Scrollbars on Android so the page scrollbar stays visible while idle when enabled. (#1774, #1776)
- Home opens faster with large subscription feeds or watch history. (#1751)
- Prevent pinch gestures from zooming the Android interface while keeping pinch zoom in the video player. (#1777)
- Player text now respects your app font choice, and the SponsorBlock highlight label matches the timestamps. (#1756)
- Improve card and menu contrast with Android dynamic colors and LineageOS's pure-black dark theme. (#1760)
- Fix hold-to-double playback speed on mobile and mouse-wheel seeking and speed adjustments over the video player. (#1769, #1782)
- Seeking while a video loads now takes priority over saved watch progress. (#1794)
- Smoother fullscreen side-dock animations on desktop and mobile, especially on slower systems. (#1789)
- Replace broken-image indicators with correctly sized avatar and media placeholders while images load or fail. (#1797)
- Respond faster to taps on phones and reduce delays when opening settings categories or Home. (#1801)
- Opening transcript search now focuses the search field and opens the mobile keyboard. (#1791)
- Keep the mobile landscape sidebar below the app header when scrolling. (#1790)
- Reduced interface lag while refreshing large subscription profiles. (#1809)
- Choosing a playback speed before a video starts now updates the selected speed immediately and keeps it when playback begins. (#1815)
- Fixed mobile playback when opening a commenter’s channel from fullscreen comments and prevented the landscape mini-player from overlapping the sidebar. (#1814)
- Fixed mobile mini-player swipes to keep artwork, posters, the close button, and video proportions consistent, allow minimizing ended videos, and show artwork in audio picture-in-picture. (#1818)
- Seeking while a video is starting no longer prevents it from playing automatically. (#1821)
- Improve mobile playlist card spacing and make download dialogs fit their content. (#1826)
- Downloaded files start without online countdown delays, and downloaded audio appears in the mobile mini player when scrolling, navigating away, or swiping down. (#1812)
- Fixed a scrollbar sometimes appearing beside fullscreen videos on Android. (#1830)
- Player controls fade and respond to play/pause more smoothly under high system load. (#1833)
- Fixed playlist reordering on touch devices, including disappearing rows and dragging through long playlists. (#1827)
- Playlist rows now have smaller two-line titles, clearer metadata, and centered thumbnails, numbers, and drag handles. (#1699, #1708)
- Keep the channel Share button at the right edge beside Subscribe/Unsubscribe on narrow screens. (#1784)
- Returning to Home now restores loaded recommendations immediately instead of loading them again. (#1825)
- Fixed black borders and crop changes when minimizing or restoring mobile playback, and mini-player jumps beside the landscape sidebar. (#1839)
- Fix subscription feed tab underlines appearing off-center on mobile screens. (#1838)
- Chapter pills now indicate when chapters are open with an accent highlight and animated chevron. (#1851)
- Tab previews now slide smoothly between hovered tabs without disappearing between them. (#1852)
- Reduced layout work when the video player’s volume slider slides open under system load. (#1854)
- Show age-confirmation messages in search and let desktop users retry with configured yt-dlp cookies. (#1792)
- Fixed sync timing out during finishing when downloading a large account activity feed on desktop and mobile. (#1856)
- Sync now finishes without waiting for account activity, and keyboard shortcut activity shows readable binding changes. (#1858)
- Protected Android app data from WebView storage cleanup and added a retry screen that pauses sync when data cannot be loaded. (#1857)
- Settings performance indicators now wrap on narrow screens and at larger text scales so labels remain readable. (#1697, #1701)
- Restore seekbar thumbnail previews for subscriber-only Twitch VODs. (#1850)
- Shorts top controls keep their frosted blur while fading in and out. (#1802)
- Pressing End in a paused YouTube-style Short now shows replay and restarts from the beginning when played, with Shorts looping disabled. (#1817)
- Show sync controls in the quick settings, navigation, and quick playback speed bar customization breadcrumbs. (#1779)