Skip to content

Releases: 1372Slash/Zenith

v1.5.3

04 Jun 11:52

Choose a tag to compare

patchedGraphic

Changelog v1.5.3

Patch 3

What's New :

System Initialization and Features :

  • Automate core system and non-launcher apps white-listing during preference initialization.
  • Add automatic streak recovery using system stats, extend data retention to 180 days, and implement a developer database editor.
  • Optimize landscape layouts for WindDown and Bedtime overlays with side-by-side content. #20
  • Introduce selectable data repair modes and enhance the DataRepairmentScreen interface.

Bug Fixes :

Tracking and Bedtime Logic :

  • Integrate ScreenUsageHelper for unified tracking, adjust goal remaining times, and deploy midnight resets for shield timers.
  • Add bedtime progress animations and fix streak calculations to persist reset dates accurately.
  • Cap global and app usage times at logical daily limits to maximize data accuracy. #13

Architecture and Stability Refinements :

  • Upgrade ShieldRepository with DAO injection, non-nullable flows, and an efficient in-memory cache. #14, #17
  • Secure background processes by ensuring shield existence before repository updates and preventing concurrent database access during restores. #14, #17
  • Enforce explicit overlay cleanups on destruction and block usage overlays while accessibility services are active. #15
  • Migrate global maps to StateFlow and optimize Room type converters for cleaner UI state updates.

Other Improvement :

Codebase Maintenance :

  • Streamline threading, data flow, and error handling inside FocusViewModel and ShieldRepository.
  • Bump versionCode to 7, update versionName to 1.5.3, and expand the repository's bug report template.

Full Changelog: v1.5.2...v1.5.3

v1.5.2

02 Jun 16:56

Choose a tag to compare

patchedGraphic  CD3ABF8

Changelog v1.5.2

Patch 2 - Emergency Update

Bug Fixes :

Core Service and Overlay Stability :

  • Centralize allowed apps and mindful state in ShieldRepository and add synchronization to InterceptOverlayManager to prevent race conditions #10
  • Trigger service refresh when shields are modified and ensure shield existence before background repository updates in monitor services #14

Database and Cache Reliability :

  • Update shield retrieval to query DB on cache miss and synchronize cache during deletion with background database operations and error handling

Homescreen and UI Logic :

  • Update fresh install detection logic to ignore live records when checking for existing database history
  • Simplify trend percentage animation by replacing character-level AnimatedContent logic with a single transition for the entire text string

Full Changelog: v1.5.1...v1.5.2

v1.5.1

02 Jun 10:17

Choose a tag to compare

patchedGraphic  73D4AA4

Known Issue :

There was an issue in this version where you couldn't add/remove shield (or maybe goal) apps, this issue has been fixed in the next update (v1.5.3)

Changelog v1.5.1

Patch 1

What's New :

Bedtime and Streak Features :

  • Track bedtime streaks with best/current streaks via BedtimeStreakCard and enable 21-day usage history tracking with time-remaining status

Core UI and Onboarding Experience :

  • Add animated transitions for streaks, screen time tickers, and percentage trends alongside an onboarding update bottom sheet with a manual update trigger
  • Gate update onboarding components and developer reset actions behind the SHOW_UPDATES build flag
  • Widgets and System Component Highlights
  • Implement a FeaturedCarousel for dynamic highlights, update app streak widget theme configurations, and introduce switch components with animated icon transitions
  • Add manual backup triggers with directory validation while preserving settings during restoration
  • Introduce a system usage fetch screen for raw event processing and updated navigation options

Bug Fixes :

Bedtime and Streak Core Logic :

  • Enhance schedule logic for day-specific or overnight intervals, adjust overlay priorities, and extend streak calculation lookbacks to 60 days
  • Simplify app blocking logic to enforce bedtime restrictions on system apps and fix inaccurate time-left displays on the bedtime overlay

Tracking Stability and Data Integrity :

  • Resolve auto-kick and early-kick bugs across core services by resetting counters at session starts and implementing foreground app validation #10
  • Improve data integrity by synchronizing live system records with existing databases, enforcing limits since midnight, and optimizing shield lookups via Map-based caching
  • Prevent race conditions in ShieldRepository by implementing loading states and application-scoped repository instances #11

UI, Layout, and Overlay Stability :

  • Fix chart layouts by updating grid lines, label formatting for decimal hours, Y-axis scaling, and side padding
  • Resolve overlay landscape layout issues by adding size parameters to CloseAppTextButton and shrinking buttons across all overlay types
  • Ensure robust resource management by enforcing explicit overlay cleanups in onDestroy #10 #11
  • Allowing vertical resizing for the app streak widget

Other Improvement :

UI and Visualization Polishing :

  • Enhance data visualization with hourly activity charts, dynamic bedtime statuses via CircularWavyProgressIndicator, and improved date indicators
  • Update structural layout padding, unify drag handles across overlay types, and migrate counters to ZenithButton with visual progress indicators
  • Set smoother loading states for app details on fresh installs and cap percentage change displays at 100%+
  • Modernize default typography to Google Sans Flex across repositories and theme composables

Performance Optimization :

  • Maximize UI responsiveness by decomposing recomposition parameters, marking UI state classes as immutable, and utilizing remember blocks
  • Streamline data processing by implementing batch database insertions, throttling updates, and expanding event query buffers to 30 minutes
  • Refactor codebase by migrating all date handling across widgets to the java.time API and offloading processing tasks to IO dispatchers

Repository and Project Maintenance :

  • Bump version name to 1.5.1, set full store distribution flavors, and add toggleable automatic update checks
  • Add official repository issue templates for bug reports and integrate Ko-fi funding support within the project README
  • Refactor package structure by moving overlay content to the UI package and cleaning up redundant project imports

Full Changelog: v1.5...v1.5.1

Full: with update checker feature and internet permission
Store: 100% offline, without update checker

v1.5

21 May 15:49

Choose a tag to compare

featureGraphic for each Update  385B824

Known Issue

This update is safe and reliable to use with minimal bugs, but please be careful with the “Sync on Entry” option in Settings > Data Management, as it will affect the calculation of today's total usage. Only enable it if you're experiencing logging errors for hourly usage.

Changelog v1.5

The Full Picture Update

What's New :

Stats & Usage Insights :

  • Added hourly distribution chart, session counts, and peak usage insights to app detail screen
  • Added weekly average and top activity cards with history pager integration
  • Added focus efficiency, chronotype profiles, and session tracking insights
  • Added status badges for goals and shields in app usage list
  • Visualized bedtime hours in hourly usage chart
  • Replaced 7-day stamps with paged snapshots, enhanced usage tracking, and reusable animations
  • Added date-specific usage history and interactive hourly app details
  • Added onboarding for usage history preference and support for fresh starts
  • Added snapshot insights, pending state progress, and hourly usage UI refinements
  • Added Zenith dashboard with animated stats and category highlighting
  • Persisted hourly usage data and added source indicators to chart
  • Added focus efficiency, chronotype profiles, and session tracking insights

Overlay & Goal System :

  • Added full-screen "Goal Caller" UI for app goals and settings toggle
  • Added per-app goal caller overlay with custom sound selection and UI updates
  • Added double-tap to hide HUD temporarily and show educational tooltip
  • Added wake screen on goal trigger and ensure screen remains on
  • Added auto-snooze timeout and button progress visualization
  • Added state persistence for configuration changes and pulsing icon animation
  • Added periodic background refresh for app and global usage statistics
  • Suppressed goal overlays during night hours and bedtime
  • Implemented Mindful Gateway to intercept non-shielded apps and manage ephemeral sessions

Widgets :

  • Initial implementation of global and app streak widgets with Jetpack Glance and configuration
  • Added deep link from app streak widget to app detail screen via intents
  • Redesigned global streak widget with dynamic scaling and best streak indicator
  • Added preview layouts and descriptions for global and app streak widgets
  • Added streak achievement state, visual feedback, and direct app launch support
  • Refined streak widgets with shape-cropped icons, dynamic font scaling, and updated backgrounds
  • Enabled edge-to-edge support and added surface container for widget configuration activity
  • Added widget click navigation, updated corner radius to 100dp, and used dynamic splash screen
  • Added custom title support to app picker bottom sheet and updated caller labels

UI & Components :

  • Implemented ZenithButton suite with hold actions, loading states, and toggle group components
  • Enhanced ZenithButton with delayed enablement, progress providers, and refactored overlay
  • Added selected state support to ZenithButton and updated animation constants for weighted buttons
  • Added grouped button support with dynamic corner radii and updated target settings layout
  • Added variable font test screen and migrated Google Sans Flex to a local resource with FontVar
  • Implemented Google Sans Flex customizer and integrated dynamic variable font axes
  • Integrated user theme preferences and dynamic color settings into all overlay components
  • Added hourly usage sorting by recency and enhanced ZenithToggleButtonGroup with dynamic behavior
  • Added animated "Today" button to usage history pager
  • Centered daily screen time title and refined header layout alignment
  • Updated "See Full List" text and icon colors to onSurface in HomeScreen
  • Implemented color animations in UpdateBottomSheet and expanded dynamic color scheme surface
  • Added version and release tag badges using tertiary color scheme
  • Implemented changelog history viewer with dynamic color support and updated GitHub integration
  • Implemented in-app update system with GitHub integration and dynamic bottom sheet
  • Updated MarkdownHeader with dynamic text styles and enhanced markdown parser
  • Removed Surface container and added dynamic spacing with spring-based content size animation
  • Added adaptive goal achievement indicator for usage history bars
  • Updated progress indicators to expressive LoadingIndicator and LinearWavyProgressIndicator
  • Added pull-to-refresh support and custom loading indicators with optimized background usage refresh
  • Updated system bar appearance to match dark and light themes
  • Updated usage stats colors for target met and unmet states
  • Added loading state and indicator for home screen usage statistics

Focus & Bedtime :

  • Added notification interception during schedules and restoration logic on transition
  • Added long-press selection mode with haptic feedback and animated UI states
  • Added focus settings editing and bottom sheets integration
  • Modularized feature settings and updated time picker UI styling
  • Allowed overlay to show even in bedtime mode

Backup & Restore :

  • Extracted RestoreConfirmationBottomSheet and implemented rich data visualizations for backups
  • Included SQLite journal files in backups and improved restore preview accuracy
  • Optimized DailyUsageWorker processing logic and added synchronous data retrieval to usage sync

Database & Settings :

  • Updated database schema to version 22 with shields, schedules, and usage tracking
  • Extended hourly usage retention to 21 days and updated debug screen loading UI
  • Added midnight reset mechanism with alarm scheduling and centralized screen usage tracking
  • Added hourly carryover management and implemented granular usage deletion in repository
  • Tracked and persisted aggregated usage for shield, goal, and other categories
  • Added Smart Repair on Refresh option and updated pull-to-refresh behavior
  • Added custom monitoring delay intervals and adjustment sliders
  • Implemented instant blocking checks on app launch and filter notification events

Bug Fixes :

Overlay & HUD :

  • Fixed total pill not using the new setup
  • Fixed overlay intercept sync with repository state and refined usage tracking accuracy
  • Fixed timeout progress using manual timer and system time
  • Refined pulse animation radii and alpha scaling in overlay

Usage & Tracking :

  • Fixed hourly usage bug and total screen time, refined usage session tracking logic
  • Fixed carry over not working and intercept overlay wrong read
  • Fixed app stuck in now hour
  • Fixed graph not starting from today bar
  • Capped app usage statistics to elapsed time since midnight to prevent inaccurate reporting
  • Restricted usage synchronization to current or past time slots and refined hourly overflow
  • Refined app usage tracking with single active package state and notification filtering #6
  • Refined tracking logic using screen state events and prioritized event-based tracking #6
  • Refined usage tracking precision using aggregate system stats and improved session separation #6
  • Fixed hourly technique and fixed hourly usage bug

Service & Monitoring :

  • Fixed indicator not real time, and goal caller not showed up
  • Fixed reset, consolidation, monitoring, carry over bug

Stats :

  • Fixed proportional hourly distribution and midnight session handling
  • Used daily history for total and "other" usage calculations in dashboard
  • Prioritized database history for usage records and refined hourly aggregation logic

UI :

  • Fixed text colors for theme consistency and refined settings toggle layout
  • Fixed UI: update window insets and navigation bar padding for app picker bottom sheets
  • Triggered slide-in animation whenever target state is deep
  • Fixed icon visibility animations to ZenithButton and renamed checkmark visibility parameter
  • Ensured streak updates on startup and package replacement, refined shape sizes

Bedtime & Service :

  • Handled overnight schedules and midnight day-of-week transitions
  • Fixed screen state tracking and notification filtering for accurate usage logs
  • Reduced minimum usage duration thresholds and enhanced session tracking for resumed sessions

Other Improvements :

Performance :

  • Optimized overlay performance with derivedStateOf and hoisted user preferences state
  • Removed background usage polling in overlay (fix view tree owners for compose views)
  • Optimized shield overlay performance with debounced usage sampling
  • Optimized shield overlay background rendering and refined usage sampling logic
  • Optimized usage state updates using Compose MutableState and refined monitoring
  • Optimized polling intervals, db updates, and usage tracking with improved efficiency
  • Optimized streak widgets with reactive state tracking and memoized calculations
  • Optimized UI updates with debounce on repository flows and lowered refresh rate
  • Removed flow debounce for immediate UI updates and reordered real-time refresh
  • Optimized snapshot updates by refreshing only the current day's usage
  • Optimized performance by memoizing icon bitmap conversions and usage statistics calculations
  • Optimized usage tracking performance with debounced flow combining and launcher integration
  • Optimized app list loading with job cancellation and whitelist change detection
  • Increased shape bitmap resolutions and enabled bitmap filtering for streak widgets
  • Optimized daily processing via grouping and improved debug loading component
  • Implemented error logging rate-limiting and removed debug logs across monitoring service

Refactoring & Architecture :

  • Centralized event-based tracking in ScreenUsageHelper and unified usage logic across compo...
Read more

v1.4.3

08 May 11:37

Choose a tag to compare

featuredGraphics_BugFixes

Changelog v1.4.3

Bug Fixes

What's New :

Debug & Internal :

  • Developer mode and database source indicators for usage history
  • Differentiate database, system, and live usage data in UI
  • Database record inspector and usage history grouping
  • Extracted debug usage history components and cleaned up debug screen
  • Added database debug route with deep screen animation logic

Overlay :

  • Audio focus in overlay to pause media with settings toggle #2

Bug Fixes :

UI :

  • Vertical scrolling enabled for puzzle screen #1

Other Improvements :

Stats & Data :

  • Extracted usage history card to shared components and cleaned up screens
  • Database schema updated to version 19

Full Changelog: v1.4.1...v1.4.3

v1.4.1

07 May 05:26

Choose a tag to compare

featuredGraphics_BugFixes

Changelog v1.4.1

Bug Fixes

Bug Fixes :

Overlay & Shield :

  • Fixed overlay not showing after duration ends on shielded app without auto-quit enabled
  • Fixed intercept overlay appearing in apps it doesn't belong to

UI & Navigation :

  • Reset header scroll state on navigation and added smooth spring animations

Bedtime :

  • Integrated bedtime and wind down schedules into goal app

Full Changelog: v1.4...v1.4.1

v.1.4

06 May 14:24

Choose a tag to compare

featureGraphic for each Update-2

Changelog v1.4

Bedtime and Strict Update

Important !!

This update contains a bug where the overlay will not appear for apps that are shielded without the Auto Quit option enabled. It is not critical. Please update to the next patched version

What's New :

Focus & Session Controls :

  • Selection mode with batch delete and pause support for focus sessions
  • Early kick with optional ejection 5 minutes before the app limit expires
  • Global usage caching and shield sync on app switch with refined early kick logic
  • Auto-kick timer for duration selection and emergency unlock states

Bedtime Mode :

  • Bedtime mode with schedule, wind down, do not disturb integration, and auto-kick on wind down
  • Wind down notifications and preference settings
  • Puzzle completion required to disable bedtime mode

Streaks & Gamification :

  • Global screen time streaks and profile UI updates
  • Animated streak badges and updated layout for app indicators
  • Exhausted use state with reset timers and locked icon visuals
  • Goal completion celebration animation and visual polish

Stats & Usage Tracking :

  • Fallback usage data retrieval and improved history accuracy
  • Adaptive chart scaling with unit support for minutes
  • Visual indicator for screen time target exceedance and progress bar styling
  • Optional total usage pill in mindful pause overlay

App Management :

  • Distinguish preinstalled apps from system core components in whitelist
  • Swipe-to-dismiss for shields and schedules with enhanced item animations
  • Confirmation bottom sheet for shield and schedule deletion

Profile & Settings :

  • Username management and edit bottom sheet
  • Expressive color support for bedtime and top apps sections

Bug Fixes :

Overlay & Shield :

  • Fixed overlay not showing after certain times (still in alpha, might change for better methods)
  • Fixed idle state not showing up in overlay
  • Fixed overlay state synchronization and grace period shield updates
  • Fixed launcher detection, improved shield caching, and added thread safety for calendar
  • Fixed app tracking reliability and shield cache sync

UI & Interaction :

  • Fixed mistake detecting touch from notification
  • Fixed bottom sheet not hiding programmatically when saving app selections
  • Fixed app detail flickering and redundant state resets
  • Fixed header spacing and bedtime switch alignment
  • Fixed background and surface container color tones in expressive color set

Stats & Data :

  • Fixed stats data save reliability with 5-times checker
  • Restructured usage chart and pager logic for performance and code clarity

Background Service :

  • Wrapped monitoring loop in try-catch and improved foreground app detection accuracy
  • Fixed centralized pause timer logic and improved UI state consistency for shield status

Other Improvements :

Performance & Stability :

  • Adaptive polling intervals and performance tuning for HUD and monitoring services
  • Optimized bedtime efficiency, status updates, and calendar object reuse
  • Ignored system UI packages during foreground app tracking
  • Improved concurrency, thread safety, and overlay management
  • Improved slider performance using local state and finished callbacks

UI & Animation :

  • Animated scale and opacity for HUD preview
  • Phased entrance and exit animations for bedtime switch and user profile icon
  • Reordered early kick toggle and simplified layout shapes
  • Updated corner radii consistency and optimized clock refresh interval
  • Redesigned bottom sheet UI and system app categorization for whitelist

Code & Architecture :

  • Replaced main tab pager with direct routing and updated spring animations
  • Moved pause bottom sheet to a separate component with puzzle timeout logic
  • Refactored PauseBottomSheet into ConfirmBottomSheet and updated component references
  • Robust app monitoring and error handling in background service

Build & VCS :

  • Updated Gradle to 9.4.1 and AGP to 9.2.0
  • Prohibited force pushing to main branch

Full Changelog: v1.3...v1.4

v1.3

27 Apr 09:46

Choose a tag to compare

Changelog v1.3

UI Overhaul, Smart Shield, And More

What's New :

  • Custom font selection with animated headers in the app.
  • Expressive color themes and gradient background support with improved title alignment.
  • Background toning logic for a more personalized visual experience.
  • Material 3 expressive floating navigation with preferences toggle.
  • Scrolling top app bars with animated headers for a smoother browsing feel.
  • Quick actions section with animated cards for faster access.
  • Redesigned settings toggles with updated surface color schemes.
  • Redesigned permission bottom sheet with animated states and optional section layout.
  • App info card with repository links for easier access to project resources.
  • Pause shield functionality with security puzzles and customizable duration selection.
  • Reactive app details view with improved shield pause experience.
  • Auto-quit to home screen automatically when a session ends.
  • Restore confirmation screen with backup metadata and content preview before restoring.
  • Automatic database backup with periodic sync and retention logic.

Bug Fixes :

  • Fixed sorting logic and synced usage stats to reflect accurate data.
  • Fixed an issue where the last reset date was not persisted across reboots.
  • Fixed a missing file that caused inconsistencies in the app.
  • Fixed goal HUD display not showing correctly in certain states.

Other Improvements :

  • Adaptive shield monitoring intervals to improve battery and CPU efficiency.
  • Improved HUD lifecycle management and foreground app detection responsiveness.
  • Faster polling with synchronized usage calculation logic for real-time accuracy.
  • Manual usage calculation via queryEvents for better accuracy and stability.
  • Persisted delay timestamps and synchronized shield cache updates.
  • Switched backup format to zip with unified backup logic for consistency.
  • Replaced backup interval chips with theme option buttons in the settings screen.
  • Streak persistence and best streak tracking across sessions.
  • Real-time usage stats and optimized app detail view.
  • Adaptive HUD sync and intelligent overlay lifecycle management.
  • Optimized monitoring performance and overall app usage tracking.
  • Aggregate usage stats with HUD timer performance improvements.
  • Improved session usage overlay performance and battery efficiency.
  • Smooth HUD sync to prevent progress rollback.
  • Smooth navigation transitions and enhanced bottom bar animations.
  • Selected and unselected icon states support for navigation components.
  • Daily reset logic with cross-day usage sync for accurate streaks.
  • Backup sync and data recovery logic for safer data management.
  • HUD goal tracking and interval update improvements.
  • Shield settings locked at 50% usage threshold to prevent bypass.

Full Changelog: v1.2...v1.3

v1.2

22 Apr 12:12

Choose a tag to compare

Changelog v1.2

Better Daily Usage, Notification, And More

What's New :

  • Use static screen time data saved at 11:59 PM instead of using raw AppUsage data.
  • Provide goal notifications for actions the user needs to take at intervals set by the user.
  • Supporting native landscape mode in the app.
  • Adding a dynamic duration button for usage if the remaining limit is less than 20 minutes. (20 minutes for 100% usage, 10 minutes for 50% usage, and 5 minutes for 25% usage limit).
  • Providing an exemption for dynamic duration in emergency situations.

Bug Fixes :

  • Fixed an issue where the HUD did not move in sync with finger gestures when the HUD size was different from the default.
  • Performed various optimizations on the app to ensure minimal resource usage while maintaining stability.
  • Ensured that this new data usage data is included in the backup system and can be restored.

Full Changelog: v1.1...v1.2

v1.1

21 Apr 16:32

Choose a tag to compare

Changelog v1.1

Optimization

What's New :

  • Provides support for SDK 30 (Android 11).
  • Add the PushNotification permission for future updates.
  • Adjusting the app's default color theme without using dynamic colors.
  • Add an automatic function to enable dynamic colors for Android 12 and later.

Bug Fixes :

  • Fixed an issue where the Session HUD would cover part of the screen, making that area unusable outside of App Shield.
  • Fixed excessive CPU usage caused by the Session HUD not being properly destroyed.

Full Changelog: v1.0.1...v1.1