Release/v0.4.0 - #32
Merged
Merged
Conversation
…ents - Introduced methods to prevent race conditions when accessing local history buffers. - Integrated `_externalOperationBuffer` for better buffer state verification. - Added `_bufferOperationTargetIsCurrent` to ensure correct operations on valid buffer states. - Enhanced `ClipboardInsertion` with capability checks for handling paste actions, including media and markdown assets. - Improved clipboard panel UX with auto-scrolling and better error handling.
…rovements - Added path transition methods to support safer buffer path changes in Local History. - Enhanced clipboard operations to handle image insertion with markdown and XML syntax support. - Improved error handling and state validation in clipboard and Local History operations.
- Introduced `_PendingUntitledPromotion` to track and manage untitled document promotions. - Added `_pendingUntitledPromotions` map to monitor pending promotions. - Implemented `promoteUntitledDocument` method in `LocalHistoryStore` and `LocalHistoryController`. - Updated path and buffer transition logic to handle untitled document promotions effectively. - Enhanced state cleanup and validation during document clearing and promotion processes.
- Introduced `PendingLocalHistoryAssociation` to persist pending promotions across app sessions. - Enhanced `_localHistory` to restore and flush pending identity promotions during application recovery. - Updated session persistence logic to save and load pending history associations. - Improved Local History robustness by ensuring consistent handling of pending promotions during shutdown and path transitions.
…thods - Renamed and made `showMarkdownPdfExportError` visible for testing. - Enhanced error dialog to display additional failure details when applicable. - Removed `_restoreSourceBlankParagraphs` and related methods from `wysiwyg_document_controller.dart` to simplify document handling logic.
- Introduced `insertBlankLine` method to handle consecutive hard breaks. - Added blank line command and toolbar button with relevant glyph. - Updated document controller and serializer for proper blank line handling and preservation.
- Added `readableHardBreakRuns` for better formatting of consecutive hard breaks. - Updated `_inlineMarkdown`, `_listItem`, and `_blockquote` methods to support the new behavior. - Normalized standalone `<br>` layout in raw HTML adaptation: - Introduced `_normalizeStandaloneBreakLayout` to handle soft line endings near `<br>` elements. - Adjusted blank line example and identifiers in syntax reference for consistency.
- Introduced shortcut (Ctrl+Shift+-) and command for thematic break insertion. - Updated toolbar, shortcuts, and editor command handling to implement the feature. - Enhanced focus restoration logic after toolbar actions for better usability.
- Refactored `_workspaceRefreshRevision` handling to ensure consistent state management during workspace refresh operations. - Enhanced Local History restore process with better validation and rollback mechanisms for missing history destinations. - Removed outdated commands and control options related to clipboard and history actions in UI. - Added export and TOC options in sidebar and outline menus with feature-specific validations.
…nhance code block handling - Implemented transient trailing paragraphs to improve editor behavior after terminal non-paragraph blocks. - Enhanced logic for exiting code blocks, including automatic insertion of trailing paragraphs. - Refactored block attribute handling with `_sourceBackedSplitAttributes` for better consistency. - Added control key shortcuts to facilitate seamless transitions from code blocks. - Updated serializer to handle transient trailing paragraphs without altering the Markdown structure until content is entered.
… workspace header logic to respect search state
…buffer handling - Deleted `WorkspaceIdentityRow` and replaced its references with reusable `BusyMarkSidebarRecordRow`. - Improved Local History integration with better buffer validation, revision handling, and checkpoint policies. - Enhanced logic for buffer autosaving, consistent state reconciliation, and document activation during workspace operation. - Updated sidebar actions and keyboard shortcuts for `Local History` and `Clipboard History`. - Cleaned up obsolete widgets and methods for improved code maintainability.
- Increased smoke test timer from 450ms to 2s for better evaluation. - Refined `LocalHistoryCaptureReason` handling to allow nullable reasoning. - Added `_waitForEditorSourceToSettle` for stability checks during clipboard operations. - Adjusted Local History save logic to handle production and testing timer modes. - Updated documentation to clarify toolbar actions and history commands.
- Updated `BusyMarkSearchField` hint text for Clipboard History to improve clarity. - Enhanced `ClipboardHistoryPanel` entry display with additional metadata and origin details. - Simplified `_LocalHistoryHeader` by removing unused `activeDocumentName` and `activeDocumentPath`. - Adjusted header logic to conditionally display based on document state and streamlined layout.
- Improved consistency in buffer state reconciliation during Local History flush operations. - Added `handleBufferClosed` to manage unresolved history work upon tab closure. - Refined buffer checkpoint and promotion handling with generation-based state validation. - Optimized flush logic with improved operations for pending and retryable tasks.
…uffer generations
- sync sidebar selection with replacement and retain position across result windows - run workspace matching and replacement planning in cancellable isolates - use Unicode regex semantics and reject surrogate-splitting replacement ranges - preserve exact queries and native submitted search text - search all open buffers, preserve queries across files, and replay cross-file targets - align search/replacement file scope and invalidate inactive-buffer edits - report invalid regexes, unsupported zero-length matches, skipped files, and partial results - fix exact-limit truncation and add search/replacement regression coverage
…ent limits, and snippets - Track `_searchNavigationFailed` to handle unsuccessful search navigation. - Ensure `Replace Current` respects valid states by introducing `canReplaceCurrent` checks. - Refine `_boundedSearchSnippet` to enforce boundary safety and improve snippet generation. - Update workspace search to handle zero-length matches and truncate snippets with safe boundaries. - Reset navigation failure and requested range states during key search operations.
…w rendering setup
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.