Community
Participate
Working Groups
If you have code like this: get() And then put the cursor after the get and do an autocomplete, selecting getSomething(), you wind up with: getSomething()() Which is not what you want. This can happen a fair amount if you are duplicating code just to change the method names.
This doesn't happen when you have 'Completion overwrites' selected in the preferences (or hold Ctrl while inserting). Unfortunately, the Ctrl-toggling is not available when you have 'Insert single proposals automatically' enabled and Ctrl+Space only finds a single proposal. Nevertheless, I agree this is a real problem.
Note that there are also scenarios where you do want the additional arguments list, e.g.: get|(name) and you want to change this to: getRemote(path, credentials).get(name) => in this case the () after getRemote are not empty but contain auto-filled arguments.
*** Bug 405275 has been marked as a duplicate of this bug. ***
Another related bug (bug 405275) : with either 'Completion inserts' or 'Completion overwrite' options activated, code assist inserts redundant parenthesis when a space separates the cursor and its following parenthesis : get<<CODE ASSIST>> (true); will insert: getSomething ( ) (true); Maybe also related to options of my code formatter, where I'm using settings that put spaces before parenthesis.