Releases: tavlean/XPlus
Releases · tavlean/XPlus
1.4
New Features
- Explore Redirect: Block distracting /explore pages (trending, sports, etc.) by redirecting to bookmarks
- Same smart snooze options as Home Redirect (15 min, 1 hour, 4 hours, until tomorrow)
- Independent control - enable/disable separately from Home Redirect
- Works on all explore sub-pages to keep you focused
- Better Interface Design: Cleaner, more intuitive popup experience
- Extension icon now appears in popup header
- Focus Features moved to top, Utility Features to bottom for better organization
- Click anywhere on a setting row to toggle it (not just the switch)
- Improved button colors and styling for better consistency
Improvements
- Enhanced Dialogs: More polished confirmation and snooze dialogs
- Dialog titles now show which specific feature you're disabling
- Centered buttons for better visual balance
- Consistent button styling across all dialogs
- Smoother hover effects without unwanted movement
- Visual Polish: Refined color scheme and spacing throughout
- Subtle amber colors for focus features instead of bright yellow
- Better visual hierarchy and improved readability
- More consistent and professional appearance
Full Changelog: 1.3...1.4
1.3
Added
- Intentional Friction for Home Redirect Disable: Added thoughtful barriers to prevent impulsive disabling of the focus-enhancing home redirect feature
- Confirmation dialog with productivity reminder when attempting to disable home redirect
- 3-5 second countdown timer with cancel option before disable takes effect
- Respectful, non-judgmental language in all friction mechanisms
- Smart Snooze System: Temporary disable options that automatically re-enable the feature
- Snooze options: 15 minutes, 1 hour, 4 hours, until tomorrow
- Real-time snooze status indicator in popup showing remaining time
- Automatic re-enable when snooze period expires using chrome.alarms API
- Optional notification when feature automatically re-enables
- Enhanced Popup Interface: Improved visual organization and user experience
- Separated settings into "Utility Features" and "Focus Features" sections
- Added section headers with icons (🔧 Utility, 🎯 Focus) for clear categorization
- Enhanced visual hierarchy with better spacing, typography, and colors
- Improved hover states and smooth transitions for better interaction feedback
- Visual cues to distinguish between standard utility toggles and focus-oriented features
- Enhanced Storage Schema: Extended data model for friction and snooze functionality
- Added snoozeEndTime field for tracking active snooze periods
- Added disableAttempts counter for smart friction reduction
- Added lastAttemptDate for daily attempt tracking
- Maintained full backward compatibility with existing settings
- Robust Error Handling: Comprehensive fallback mechanisms for reliability
- Safe storage operations with try/catch blocks and default fallbacks
- Graceful degradation when friction features fail (allows normal toggle)
- Timestamp validation to prevent invalid snooze states
- Extension remains fully functional even if friction system encounters errors
Changed
- Home Redirect Toggle Behavior: Enhanced with friction mechanisms while preserving user autonomy
- Standard utility features (Posts, Notifications) maintain immediate toggle behavior
- Home Redirect toggle now triggers confirmation flow when disabling
- Multiple disable attempts in same day will reduce friction after 3rd attempt
- Background Script: Extended to handle snooze timer management
- Added alarm listener for reliable snooze expiration handling
- Automatic re-enable functionality when snooze periods end
- Enhanced storage management for friction-related data
Technical Implementation
- Implemented modal overlay system for confirmation dialogs and snooze options
- Enhanced popup.js with friction flow functions while maintaining existing architecture
- Used chrome.alarms API for reliable cross-session snooze timing
- Added visual section dividers and improved CSS styling
- Maintained lightweight extension architecture with minimal code additions
Full Changelog: 1.2...1.3