Community
Participate
Working Groups
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!
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.