Commit Graph

67 Commits

Author SHA1 Message Date
Johannes Rieken
a33752f9f0 clean up strategies (#200938) 2023-12-15 10:57:40 +01:00
Johannes Rieken
054c9129f8 live3 becomes live (#200866) 2023-12-14 18:24:38 +01:00
Johannes Rieken
2018d1523e await undo, reuse code (#200349)
* Revert "protect against faulty `canUndo` result"

This reverts commit cc629533b9.

* await undo, reuse code

https://github.com/microsoft/vscode/issues/200223
2023-12-08 14:41:43 +01:00
Johannes Rieken
2d826896fc protect against faulty canUndo result (#200323)
https://github.com/microsoft/vscode/issues/200223
2023-12-08 11:19:31 +01:00
Johannes Rieken
f746843c72 update diff when document changes but don't auto-accept change regions (#200061)
https://github.com/microsoft/vscode-copilot/issues/3206
2023-12-05 18:59:17 +01:00
Henning Dieterichs
c62947f67e Diff editor code cleanup (#199761)
* Diff editor code cleanup
2023-12-01 17:34:06 +01:00
Johannes Rieken
c364ff25d1 Don't update diff or accept changes when document is just changing (#199661)
fixes https://github.com/microsoft/vscode-copilot/issues/3134,  https://github.com/microsoft/vscode-copilot/issues/3139
2023-11-30 14:45:25 +01:00
Johannes Rieken
7a5744dffc fix https://github.com/microsoft/vscode-copilot/issues/3134 (#199523) 2023-11-29 12:34:19 +01:00
Johannes Rieken
25632434b0 add missing dispose call (#199164) 2023-11-27 15:27:30 +01:00
Johannes Rieken
e6b2fd82c1 use better file create mode for lightweight mode, fix issue with hidden/visible extra button bar (#199151) 2023-11-27 12:39:18 +01:00
Johannes Rieken
f54f1b0400 Further tweak light weight diff mode (#199148)
- Let message talk about changes not lines
- Move "Compare" into rhs toolbar as toogle action
2023-11-27 12:21:57 +01:00
Johannes Rieken
f593d2e626 Joh/weird-mink (#199049)
* fix up wholerange with diff information once all edits are there

* update summary when having changes across ranges
2023-11-24 19:13:50 +01:00
Johannes Rieken
5d73488bb3 Use a light weight diff for live inline chat mode (#199027)
* wip

* add yet another live mode which is live and live preview...

* use `renderLines` and view zones for orginal contents, render accept, discard, and compare in line

* remove LiveStrategy2 again

* render insertion diff as progressive changes happen

* implement discard

* implement explicit accept via button and implict accept via typing inside changes

* merge diff changes that are somewhat near

* pass zone, not just widget to strategies

* add `IEditorDecorationsCollection#append`

* move live3 actions into widget, don't render normal accept, discard, allow strategry to trigger accept, discard flows

* cleanup

* make sure re-run works
2023-11-24 15:14:53 +01:00
Johannes Rieken
6c8fd34375 Joh/young-catshark (#198416)
* add save & discard-btns to inline new file experience, simplify response type because we don't really support workspace edit, fix size/height bug, fix positioning bug

* fix preview mode, clean up events, fix workspace edit escape hatch

* merge main, fix compile errors
2023-11-16 16:27:36 +01:00
Benjamin Pasero
f9b5584b73 aux window - reduce direct setInterval uses (#197741) 2023-11-08 16:09:30 +01:00
Johannes Rieken
96025e7015 Don't dispose diff zone widgets when hiding them. (#197525)
fixes https://github.com/microsoft/vscode-copilot/issues/2617
fixes https://github.com/microsoft/vscode-copilot/issues/2627
2023-11-06 11:59:34 +01:00
Johannes Rieken
6697193a79 debt - merge EditResponse and MarkdownResponse into ReplyResponse (#196885) 2023-10-28 15:08:49 +02:00
Johannes Rieken
9f627c21f6 no undoStops between streaming edits, esp not between last and second to last round (#196708)
fixes https://github.com/microsoft/vscode-copilot/issues/2403
2023-10-26 15:21:08 +02:00
Johannes Rieken
1ca2bfbec1 stop progressive text edits when request is cancelled, hide diffzone(s) after undo'ing changes (#196100) 2023-10-20 11:08:12 -07:00
Johannes
d7bd919732 for now, disable multiple diff zones
https://github.com/microsoft/vscode-copilot/issues/2121
2023-10-20 18:42:03 +02:00
Johannes
52fa01b46c https://github.com/microsoft/vscode-copilot/issues/2122
highlight whole range again, always show widget above whole range, simplify bits some parts
2023-10-20 18:30:49 +02:00
Johannes
07cf686e87 fix https://github.com/microsoft/vscode-copilot/issues/2124 2023-10-20 17:45:05 +02:00
Johannes
fcb1687ef8 Rename DeferredAsyncIterableObject to AsyncIterableSource and align it method names 2023-10-20 11:41:07 +02:00
Johannes
52b663b3ab Add listener to show diff zones as soon as first edit is applied 2023-10-20 11:17:10 +02:00
Johannes Rieken
b598801d4a Make streaming edits so that each line is typed out according to the response speed (#196010) 2023-10-19 10:11:52 -07:00
Johannes Rieken
c1fb869bcd undo streaming edits when final result isn't an edit result (#195995)
fixes https://github.com/microsoft/vscode-copilot/issues/2030
2023-10-19 16:44:25 +02:00
Johannes Rieken
40b94a8f44 Better rendering of insert-only "diffs", be very conservative when making separate diff groups (#195921) 2023-10-18 10:35:43 -07:00
Johannes
a61980d2b0 - always use computeMoreMinimalEdits to reduce flicker for empty edits
- don't use automatic inline diff'ing for predictable heights
- fix widget positioning off by one
2023-10-18 14:38:46 +02:00
Johannes
303a246f06 remove Session#lastTextModelChanges because it is often stale. Instead compute on demand 2023-10-18 12:12:31 +02:00
Johannes
f6e7767e89 tweak position and margin 2023-10-18 11:56:12 +02:00
Johannes
6db41844bc * show a diff zone per "change region"
* don't show whole range highlights anymore
2023-10-18 11:39:22 +02:00
Johannes
712a1b5455 - remove diff locking
- Remove unused variable and property in InlineChatLivePreviewWidget
2023-10-17 15:24:41 +02:00
Johannes
cad29a236c use session position once there is one 2023-10-16 17:22:41 +02:00
Johannes
aec38b677f render diff as soon as changes arrive 2023-10-16 15:28:28 +02:00
Johannes
c89d54ea3a show inline chat above changes, not below 2023-10-06 19:30:32 +02:00
Johannes
92d806dd79 don't show inline diff when nothing has changed 2023-09-12 15:45:03 +02:00
Henning Dieterichs
e424e83820 Diff Algorithm Cleanup 2023-09-01 14:43:31 +02:00
Johannes Rieken
fdac0768d1 likely fix https://github.com/microsoft/vscode/issues/188208 (#188468) 2023-07-21 11:11:31 +02:00
Aiday Marlen Kyzy
4043b9a93c Merge branch 'main' into aiday/toggleDiffAsSetting 2023-07-13 09:30:28 +02:00
Aiday Marlen Kyzy
2a65810af6 cleaning up the code 2023-07-12 16:09:07 +02:00
Aiday Marlen Kyzy
55cabc414b no longer need some of the toggle diff methods 2023-07-12 15:31:08 +02:00
Aiday Marlen Kyzy
2fce05e8b3 initial code 2023-07-12 15:08:25 +02:00
Johannes Rieken
ef9afc3b2b joh/inline progress (#187705)
* allow to report progress when computing inline chat response, wip still needs better handling in the UI strategies

* support for async, sequential progress

* for now let extension know if progress/live is supported, for live modes apply edits as they happen
2023-07-12 14:29:53 +02:00
Aiday Marlen Kyzy
e399de0069 Merge branch 'main' into aiday/incorrectIndentation 2023-06-23 14:43:23 +02:00
Aiday Marlen Kyzy
d463dc07e9 the second show widget should also take in value true 2023-06-23 14:40:03 +02:00
Aiday Marlen Kyzy
c862be97f7 overriding the position 2023-06-23 14:09:21 +02:00
Aiday Marlen Kyzy
d983c8498a review changes 2023-06-14 12:40:59 +02:00
Aiday Marlen Kyzy
1ad238a760 Merge pull request #184598 from microsoft/aiday/positioningInlineChat
Adapt positioning of the inline chat
2023-06-14 09:17:40 +02:00
Johannes Rieken
f1b2a3a77f Use Lazy for creating diff and preview zone so that they don't block startup (#185041)
https://github.com/microsoft/vscode/issues/185034
2023-06-13 13:16:58 -05:00
Aiday Marlen Kyzy
d037fad589 changes from review 2023-06-13 18:29:50 +02:00