Review Request: Improve appearance of assistant popup in language support

Milian Wolff mail at milianw.de
Sun Nov 11 15:52:34 UTC 2012


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/107277/
-----------------------------------------------------------

(Updated Nov. 11, 2012, 3:52 p.m.)


Review request for KDevelop.


Changes
-------

Here's my take on this.

It's looking a bit better now but at least the placement is still bogus and will require some API changes I think.

Right now, it looks like codeassistant.cpp in the C++ language plugin in kdevelop handles quite a lot, like e.g. when to hide the assistant etc. That logic should be moved to the assistant itself, paired with a notion of a "cursor location". Right now, if you add whitespaces before the declaration-about-to-be-created the popup won't update properly. Same here e.g., with '|' denoting the cursor position:

<pre>
     |                    i = 0;
</pre>

The popup will be shown below the | which is wrong.

So we'll need to adapt the API, do you feel up for that task?


Description
-------

I improved (at least IMO) the appearance of the assistant popup while editing code:
- I changed the layout of the popup to be vertically. Sometimes there are many actions in the popup which gives a rather crowded look. Additionally it sometimes doesn't fit on small screens (at least not on my 13" notebook).
- The placement has been changed to be oriented at the current cursor's position. The popup is placed 2 lines _under_ the currently edited line. If a line is edited at the bottom of the editor and the popup wouldn't fit into the window, it is placed _above_ the current line. That way a nasty magic number in the code can be removed too.

All in all I think this gives a better user experience. I had the feeling that some users didn't even see the popup because it was placed at the editor's bottom and so was out of the current "code focus". Additionally the vertical layout matches the behaviour which is seen in other IDEs like Qt Creator or Eclipse.


Diffs (updated)
-----

  shell/assistantpopup.h 42c55e4 
  shell/assistantpopup.cpp 44a4538 
  shell/uicontroller.cpp 2c0400f 

Diff: http://git.reviewboard.kde.org/r/107277/diff/


Testing
-------

Manual testing.


Screenshots
-----------

Popup under code
  http://git.reviewboard.kde.org/r/107277/s/817/
Popup when space is limited (above)
  http://git.reviewboard.kde.org/r/107277/s/818/


Thanks,

André Stein

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20121111/8904e609/attachment.html>


More information about the KDevelop-devel mailing list