History

buffer_diff: Do not block on parsing in `set_snapshot_with_secondary_inner` (#50385)

Release Notes: - N/A *or* Added/Fixed/Improved ...

Lukas Wirth committed 8 months ago

Commit 746ecb01 parent 6401cc37 files · +37 −22Browse files

Showing the changes to crates/buffer_diff/src/buffer_diff.rs (1 of 7 files). Show all

Unified · Split

crates/buffer_diff/src/buffer_diff.rs+2−0
@@ -1753,6 +1753,7 @@ impl BufferDiff { · 1752 unmodified lines
1753 let should_compare_hunks = update.base_text_edits.is_some() || !base_text_changed;1753 let should_compare_hunks = update.base_text_edits.is_some() || !base_text_changed;
1754 let parsing_idle = if let Some(diff) = update.base_text_edits {1754 let parsing_idle = if let Some(diff) = update.base_text_edits {
1755 state.base_text.update(cx, |base_text, cx| {1755 state.base_text.update(cx, |base_text, cx| {
1756 base_text.set_sync_parse_timeout(None);
1756 base_text.set_capability(Capability::ReadWrite, cx);1757 base_text.set_capability(Capability::ReadWrite, cx);
1757 base_text.apply_diff(diff, cx);1758 base_text.apply_diff(diff, cx);
1758 base_text.set_capability(Capability::ReadOnly, cx);1759 base_text.set_capability(Capability::ReadOnly, cx);
@@ -1760,6 +1761,7 @@ impl BufferDiff { · 1 unmodified line
1760 })1761 })
1761 } else if update.base_text_changed {1762 } else if update.base_text_changed {
1762 state.base_text.update(cx, |base_text, cx| {1763 state.base_text.update(cx, |base_text, cx| {
1764 base_text.set_sync_parse_timeout(None);
1763 base_text.set_capability(Capability::ReadWrite, cx);1765 base_text.set_capability(Capability::ReadWrite, cx);
1764 base_text.set_text(new_state.base_text.clone(), cx);1766 base_text.set_text(new_state.base_text.clone(), cx);
1765 base_text.set_capability(Capability::ReadOnly, cx);1767 base_text.set_capability(Capability::ReadOnly, cx);

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t