Use new-style assistant popups

Authored by kfunk on Jul 12 2016, 8:13 PM.


Use new-style assistant popups

(Integration of the assistantpopup-ng branch)


Instead of showing a highly annoying popup on problems (say: missing
declaration, missing include, etc.), we now just mark the corresponding
range as problematic. The user explicitly can check what's going on by

  • hovering the problematic range (yellow/red underlined text)
  • or just pressing and holding 'Alt', for activating the code browser as usual.

KDevelop will either show the error message + assistants (in
case there is an error, or just the normal code navigation if there

To select a solution, the traditional way of invoking Alt+1, Alt+2, ...
can be used.

"Static assistants" (update signature assistant, rename assistant) now
create fake problems at the location where they are useful.

Squashed commits, since the history in the assistantpopup-ng branch was
too messy. Partial history:

  • Show problem context on magic modifier
  • Kill AssistantPopup
  • Remove ProblemTextHintProvider, now covered by context browser.
  • Also prevent showing another tooltip for the currently active problem.
  • Show help in navigation context
  • Show context for nearby problems
    • Show the problem navigation context for problems close to the current cursor position.
    • Only consider a problem "close" if there are no non-space characters between it and the current cursor position
  • Navigation widget: rework linebreak handling: replace <br> by <p>
  • Cleanup: remove AssistantNavigationContext

Differential Revision:


kfunkJul 12 2016, 8:15 PM
Differential Revision
D1100: WIP: AssistantPopups NG?
R33:d7dcc54daf84: use pretty file name for window title