Skip to content

3.2.0

Choose a tag to compare

@facundopignanelli facundopignanelli released this 29 May 18:23
· 39 commits to main since this release
c37feed

[3.2.0] - 2026-05-29

Added

  • Added PWA Web Push Notifications support allowing users to subscribe their devices to notifications when new Bit or ReBit posts are published. Includes a dedicated Settings panel tab for managing VAPID keys, settings, and subscribing devices.
  • Added an explicit Notification.requestPermission() call in the push-subscribe flow so the OS-level notification prompt is correctly surfaced on Android (and other platforms where it is blocked by default). The subscribe button now immediately reflects a "blocked" state with a tooltip when notifications are hard-denied in browser/OS settings, instead of silently failing.
  • Supported attaching up to 10 images or videos to a single Bit post, displayed in a modern asymmetrical or symmetrical grid layout.
  • Integrated a responsive fullscreen media lightbox overlay allowing users to browse through multiple attachments with keyboard navigation and mouse controls.
  • New "Composer" inline posting box for logged-in users. Features all options of the old Quick Bit and Poster shortcode.

Changed

  • Optimized mobile quick actions performance by caching draft/scheduled counts in user metadata and caching feed page URL resolution in options.

  • Replaced browser-native confirm dialogs with a premium custom modal confirmation flow when deleting bits, drafts, or scheduled posts.

  • Renamed "Quick Bit" to Composer.

  • Rewired the quick actions "New Bit" and "New Rebit" options to be hidden on desktop (where the inline composer is already shown) and open the composer in a modal on mobile, with auto-opening of the Rebit editor if clicking "New Rebit".

  • Moved the "Drafts" and "Scheduled" Quick Actions buttons to open in dedicated modals directly on the feed page instead of redirecting to the composer shortcode, and enabled full draft management and scheduled post editing directly within the Composer.

  • Changed the generic ReBit icon from the retweet icon to a standard link/URL icon across the whole project (including tabs, action buttons, and preview badges).

  • Condensed the timeline Rebit edit modal so the main panel only keeps the Link URL, commentary, and media controls, with title/description/image editing moved into a nested link-preview submodal. The URL fetch button is now styled as a full accent-green action.

  • Changed timeline Bit edit and Quote actions to open the unified modal editor instead of redirecting to the composer shortcode, while keeping the same submit flow, schedule controls, media attachment support, and quote preview behavior.

  • Moved the desktop side rail widgets so the right rail now shows Content Filter, Archive, RSS Feeds, and the Version box in that order.

  • Let the Hashtags sidebar grow naturally as new tags are added instead of forcing an internal scroll container.

  • Removed title headings from all siderail widgets (Quick Actions, Search, RSS Feeds, Archive, Content, Hashtags, and Version), keeping only the main title for the Welcome/Intro widget.

Deprecated

  • Deprecated and removed the [bitstream_poster] shortcode. All posting capabilities (composing bits/rebits, managing drafts, and scheduling) have been completely migrated into the inline Composer and unified Composer modals on the main timeline feed ([bitstream] shortcode).
  • Removed support for audio files across the plugin (including backend AJAX handlers, database checks, frontend media dropzones, metadata fields, and custom audio player styling). Enforced strict image and video MIME-type validations on both client-side and server-side uploaders, as well as the Media Library selection dialog.

Fixed

  • Standardized image and video dimensions to span the full width of the timeline cards and composer previews, except for portrait/narrow images which are constrained and centered.
  • Fixed YouTube shared links rendering as "shared a link" instead of "shared a video" (specifically when using short youtu.be URLs or when mappings are uninitialized).
  • Added rounded corners to the YouTube video embed player and its container in feed cards to align with images and native video.
  • Fixed nested quoted bit timestamp tooltip getting clipped by the quote preview container's overflow settings.
  • Hid the WordPress admin bar on mobile BitStream frontend screens so page and modal titles are not covered.
  • Reduced mobile image upload failures by resizing oversized images, sending larger files in chunks, and improving interrupted-upload messaging.
  • Fixed bug that caused the edit page Block Editor not work.
  • Fixed timeline ReBit edit metadata saving issues where custom descriptions entered in the nested metadata edit modal were not correctly synchronized to the hidden form field and saved to the database.
  • Fixed media upload preview issue where video thumbnails in the composer and media upload modals were not scaled and centered to cover the 1:1 preview grid boxes due to global video aspect ratio rules.
  • Removed the default black shadow/gradient overlay from the native HTML5 video player controls panel when hovering or interacting with video elements in the timeline, composer, and lightbox.
  • Fixed lightbox video player aspect-ratio alignment issue where the native player control bar was wider than the actual video content. The video container element's box is now dynamically scaled based on the video's intrinsic dimensions to fit perfectly on the stage.
  • Fixed sub-modals inside the Composer (media upload, rebit, schedule, drafts, etc.) displaying as full-screen sheets on mobile. They now open as centered popup overlays with a backdrop and rounded corners, matching the desktop experience. Only the main Composer window remains full-screen on mobile.
  • Fixed missing square video thumbnail in the media upload dropzone preview grid on mobile — video items now display a play-icon overlay so they are clearly recognisable even when the browser doesn't pre-render a video frame.
  • Fixed a UX bug where clicking an already-uploaded image or video in the media dropzone preview grid simultaneously opened the lightbox and triggered the file-picker to select a new file.