Details
-
Task
-
Resolution: Unresolved
-
Not Evaluated
-
None
-
None
-
None
Description
User story: As a software developer I would like to identify visually which code is being suggested by an external tool such as an AI assistant to review the new code.
ACs:
- The Text Editor should be able to accept Diff View requests from external components
- the external component must provide the new code suggestion and optionally also which lines may be impacted by the change (if the user has selected code)
- The Diff View should have the ability to identify which of the existing code is impacted by the new code
- The Text Editor should have the ability to display virtual content (content that hasn't been accepted to the file yet) as part of the open file in the text editor.
- the new line(s) of code must replace the existing line of code temporarily
- the entire row of the pending code must be highlighted with a high-contrast background
- the highlighting of the pending code must be visually different from the highlighted code the user has selected manually before the AI suggestion
- the highlighting color must be managed by the theming of Qt Creator
- The Text Editor should be able to process a request from the external component to merge the pending code to the file (if the user has accepted the code).
- The highlighting of the pending code must be removed.
- The Text Editor should be able to process a request from the external component to discard the pending code (when the user discards the suggestion).
- The Text Editor should display the original code again.
- Undo and Redo functionality must support the code that has been inserted by the Diff View
- The Text Editor should accept the pending code if the user presses the Tab key.
- The Text Editor should discard the pending code if the user presses the Escape key.
- The Text Editor should display the original code again.
UI Illustration (only as an indication, not Qt Creator design):
see the attachment from the Visual Studio Code implementation