Skip to content

Conversation

@LZhenHong
Copy link
Owner

Implement CLI feature.

  1. Refactor main logic to Core Library.
  2. Adjust main Target.
  3. New CLI Target.

- Split AboutView into smaller private views for better readability and maintainability.
- Removed AppConfiguration class as its functionality is now handled by Core API.
- Introduced AppDelegate for handling application lifecycle and URL schemes.
- Updated ContentView to display auto-lock status when enabled.
- Modified DependencyFactory to remove configuration dependency from KeyboardLockManager.
- Enhanced KeyboardLockManager to utilize Core API for keyboard locking and unlocking.
- Updated SettingsView to reflect changes in configuration management.
- Improved notification handling in NotificationManager.
- Cleaned up unused code and improved overall structure for better clarity and performance.
Copilot AI review requested due to automatic review settings July 28, 2025 08:04

This comment was marked as resolved.

…cking functionality

- Added ContentViewState to manage keyboard lock state and timed lock options.
- Created LockControlView for main lock button and timed lock options.
- Introduced PermissionView to handle accessibility permission requests.
- Updated SettingsView to use new CoreConfiguration.Duration type.
- Added SharedComponents for reusable UI elements like headers and setting rows.
- Implemented StatusView to display current keyboard lock status and auto-lock information.
- Developed TimedLockView for managing timed lock controls and custom durations.
- Enhanced localization strings for new features and improved translations.
- Updated main.swift with a TODO for future CLI implementation of KeyboardLocker.
@LZhenHong LZhenHong requested a review from Copilot August 6, 2025 01:47

This comment was marked as resolved.

…nagement

- Removed initialization code from KeyboardLockerApp for IPC and exception handling.
- Introduced new extensions for CGFloat, Duration, and TimeInterval to manage UI dimensions and duration formatting.
- Consolidated duration management logic into CoreConfiguration.Duration with preset collections for timed and auto-lock durations.
- Deleted redundant CountdownFormatter and LockDurationHelper classes, streamlining duration handling.
- Updated NotificationManager to handle keyboard status notifications more efficiently.
- Simplified UI components in ContentViewState and TimedLockView, removing unnecessary timers and headers.
- Enhanced PermissionView layout and added quit button functionality.
- Improved SettingsView and SharedComponents for better navigation and user experience.
- Removed unused localization keys related to countdown and duration descriptions.
@LZhenHong
Copy link
Owner Author

@copilot review the changes.

Copy link

Copilot AI commented Nov 12, 2025

@LZhenHong I've opened a new pull request, #2, to work on those changes. Once the pull request is ready, I'll request review from you.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Copilot reviewed 41 out of 42 changed files in this pull request and generated 7 comments.

Comments suppressed due to low confidence (1)

KeyboardLocker/Sources/Helpers/URLHandler.swift:1

  • Unused import statement. The AppKit import at line 1 is not used in this file. The file only uses types from Core and SwiftUI.

@LZhenHong LZhenHong closed this Nov 12, 2025
@LZhenHong LZhenHong deleted the feature/cli branch November 12, 2025 13:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants