- Rename chat data type from `chat` to `AIChatData` for clarity and consistency.
- Update `WoxPreviewChatData` to include additional fields such as `id`, `title`, and `model`.
- Refactor `WoxPreviewChatView` to use the updated chat data structure and improve variable naming for better readability.
- Adjust JSON serialization and deserialization methods to align with the new data structure.
- Simplify message handling and UI interactions in the chat view for a more intuitive user experience.
- Implement a delay before hiding the window on Windows to address issues with suppressed keyup events.
- Remove unused timestamp variables for hide and enter actions in WoxQueryBoxView.
- Simplify key event handling by directly invoking hideApp and onEnter methods for escape and enter keys.
- Add FocusToChatInput method to UI interface for focusing on chat input
- Update AIChatPlugin to manage chat data with improved structure
- Refactor WoxPreviewChatData to include Conversations and Model for better data handling
- Enhance Flutter UI components to support chat input focus and improve user experience
- Update query handling to integrate chat functionalities seamlessly
- Move AI-related types such as Conversation, PlainQuery, and WoxImage to the new common package
- Update all references in AI provider implementations and plugin components to utilize common types
- Enhance code maintainability by centralizing shared types and functions in the common package
- Ensure consistency across the codebase by replacing entity references with common types
- Introduce entity.Conversation, entity.PlainQuery, and entity.WoxImage for better organization
- Update AI provider implementations to utilize new entity types for consistency
- Refactor plugin and system components to replace share references with entity types
- Enhance code maintainability by centralizing common types and functions in the entity package
- Replace ai.Model with entity.Model for improved consistency
- Refactor conversation handling to utilize entity.Conversation
- Simplify preview data management by removing unnecessary JSON parsing
- Update preview types to use Markdown format for better display
- Add WoxPreviewTypeChat to support chat previews
- Implement WoxPreviewChatData structure for managing chat messages
- Update AI command handling to utilize chat previews for responses
- Enhance Flutter UI to display chat previews using WoxPreviewChatView
- Ensure proper JSON serialization and deserialization for chat data
- Replace all instances of ShellRunOutput with RunOutput for consistency
- Update OpenAppFolder to utilize the new shell package for improved maintainability
- Update test command in Makefile to skip TestCalculatorTime along with existing tests
- Improve test execution efficiency by reducing unnecessary test runs
- Remove individual platform-specific shell command implementations
- Centralize command execution logic in the new shell package
- Update all references to shell command functions across the codebase for consistency and improved error handling
- Change stream type in GoogleProviderStream from iter.Seq2 to a function returning response, error, and validity
- Simplify response handling in Receive method to directly process the stream function
- Enhance error handling and streamline message retrieval logic
- Implement Ping method in GoogleProvider, GroqProvider, OllamaProvider, and OpenAIProvider to verify connectivity
- Update Provider interface to include Ping method
- Enhance UI to display AI model status based on Ping results
- Add new status column in AI settings view for better user feedback
- Replace deprecated generative-ai-go package with google.golang.org/genai
- Refactor GoogleProvider and GoogleProviderStream for improved stream handling
- Simplify model retrieval and conversation conversion logic
- Enhance error handling and response processing in ChatStream method
- Replace direct exec.Command calls with ShellRun for better error handling
- Improve code readability and maintainability by centralizing command execution logic
- Add goquery v1.10.0 as a new dependency
- Upgrade generative-ai-go from v0.18.0 to v0.19.0
- Refactor GoogleProvider model names for clarity
- Enhance processThinking function to handle leading newlines in input
- Improve AI command tests for better coverage of thinking tag processing
- Add startDragging method to window manager interfaces for Linux, macOS, and Windows
- Integrate drag handling in respective platform-specific window managers
- Update Flutter window to handle dragging via method calls
- Enhance user experience by allowing window movement with mouse events
- Enhance test failure reporting by including expected title in error message
- Provide more context when a specific title format is not found in test results
- Reorder window hide operations to prevent focus restoration issues
- Remove previous active window tracking in native window manager
- Ensure proper query result clearing before hiding the window
- Implement new `/plugin/detail` endpoint to retrieve specific plugin details
- Refactor plugin loading and refresh mechanisms in the settings controller
- Add support for dynamic plugin list updates (add/remove/update)
- Optimize plugin state management and reduce unnecessary API calls
- Remove loading state artifacts and improve plugin list rendering
- Add support for custom OpenAI API host in provider configuration
- Allow overriding default base URL when a custom host is specified
- Enhance OpenAI client initialization flexibility
- Add width configuration for AI command prompt setting column
- Optimize AI model selection in plugin settings table
- Prevent focus loss when in settings view
- Implement preloading of AI model options for better UX
Clean up window management code by removing unnecessary event methods and notifications across multiple platform-specific window manager implementations
- Add comprehensive X11 window focus handling
- Include additional system libraries (GLIB, GIO, X11) in CMake configuration
- Implement robust window focus method with X11-specific techniques
- Add detailed logging for window focus operations
- Link necessary system libraries for improved Linux platform support
- Add explicit window show method for Linux platform
- Implement logging for window positioning and focus events
- Modify application startup to hide window initially
- Ensure proper window management for Linux-specific scenarios
- Add vertical box container to ensure proper window rendering
- Apply CSS to set an opaque background for the window
- Explicitly show container and view widgets
- Modify container hierarchy to improve window layout
- Add ability to open backup and user data folders directly from settings
- Update router to support generic file/folder opening
- Modify backup struct to include full backup path
- Improve backup restore confirmation message in language files
- Add open folder buttons in backup and data location sections
- Remove deprecated proxy settings view
- Add auto backup feature with configurable settings
- Create new backup management UI in Flutter
- Implement backup and restore API endpoints
- Update language files with backup-related translations
- Add support for manual and automatic backups
- Enhance data management settings with backup list and restore options
- Implement new feature to change Wox user data directory location
- Add backend support for copying and updating user data directory
- Create new API endpoints for retrieving and updating data location
- Update localization files with new data configuration translations
- Enhance Flutter UI with data location selection and confirmation dialog
- Refactor setting views and controllers to support new data management feature
- Introduce new "Data" settings pane in the application
- Add localization keys for AI model and data settings
- Update setting view to include data management section
- Refactor setting view classes to use a common base view
- Update pane index references in setting controller
- Update language files with consistent UI-prefixed translation keys
- Modify translation key retrieval to support more flexible localization
- Add new localization entries for plugin, theme, and system settings
- Improve translation key naming for better clarity and organization
- Introduce new setting for Wox window positioning (mouse screen, active screen, last location)
- Update language files with new position-related translations
- Implement cross-platform screen detection for active and mouse screen positions
- Add UI controls for selecting display position in settings
- Update Flutter and Go implementations to support new positioning logic
- Set window title to "Wox"
- Prevent taskbar entry and notifications
- Configure window to stay on top
- Adjust default window size for better launcher experience
- Implement robust IME composition detection using input formatters
- Add detailed logging for IME input state transitions
- Enhance query triggering for both IME and direct text input
- Resolve cross-platform IME input inconsistencies
- Use Future.microtask for more reliable query text updates
- Add trace ID logging for query-related operations
- Improve query box text change handling with selection preservation
- Fix potential IME composition text change issues
- Add detailed logging for query box text selection
- Modify Makefile to use default build configuration instead of release
- Simplify Windows window styling by removing extra window flags
- Update Flutter launcher controller to remove redundant window show method
- Update pnpm-lock.yaml to latest lockfile version
- Remove platform-specific window show workaround on Windows
- Update Makefile to use release build configuration
- Simplify Windows window transparency and acrylic effect implementation
- Remove custom window dragging and hit testing logic
- Improve version detection and SystemBackdrop API usage
- Enhance Windows 11 UI effects with cleaner, more concise code
- Improve acrylic effect implementation with version-specific handling
- Add support for Windows 10 and 11 background blur techniques
- Implement advanced window styling for borderless, resizable windows
- Add custom non-client area handling for transparent window rendering
- Introduce window dragging and resizing support for frameless windows
- Remove deprecated acrylic and window setup methods from Flutter and native code
- Implement Windows 11 rounded corners and system backdrop support
- Simplify window creation and styling for better DWM integration
- Remove theme-related registry checks and manual theme handling
- Improve window initialization with modern Windows UI effects