Bug 562655 - improve displaying errors in content-assist popup
Summary: improve displaying errors in content-assist popup
Status: NEW
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Text (show other bugs)
Version: 4.13   Edit
Hardware: All All
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: Platform-Text-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 547743
  Show dependency tree
 
Reported: 2020-04-30 06:10 EDT by Martin Lippert CLA
Modified: 2021-03-12 01:21 EST (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Lippert CLA 2020-04-30 06:10:20 EDT
While trying to improve the error handling of language servers in LSP4E while retrieving content-assist proposals, I came across the error handling of the CompletionProposalsPopup in JFace and with the suggestion from Mickael Istria I am looking into improving the error handling and visualization - and potentially also displaying progress for the async case.

At the moment the error message gets displayed at the status bar of the workbench window, which is visually far away from the popup dialog - and therefore far away from the place where the attention of the user is while doing content-assist. So the idea would be to move the error visualization needer towards the proposals.

In a similar way, the async content-assist uses actual temporary regular proposal items to display progress and potential errors inside of the popup, but mixed up with regular proposal items.

In summary, I think it would be a good idea to have a dedicated area in the popup dialog to display progress and errors instead of using the status bar or temporary fake proposal items.

I experimented with this a bit by adding a simple label to the end of the popup dialog to display errors. Any opinions about that? Do you think this makes sense? It occupies some extra space, so ideally I would display that label only in case there is an error (or progress to report), so that in case there is no error or progress reporting, you wouldn't notice a difference to the existing popup dialog. But I am not sure if that is possible and doable within that popup. Any hints/pointers here would be awesome.

Any additional thoughts and pointers here would be highly welcome!
Comment 1 Mickael Istria CLA 2021-03-12 01:21:32 EST
The CompletionProposalPopup should be extended to have a `private Label fErrorLabel`. This label would be shown (made visible) on the popup when an error message is returned by some proposal computer or in case of a failure/exception and bet set to this error message.