| Summary: | don't call validateEdit when Code Assist is just started in Java Editor | ||
|---|---|---|---|
| Product: | [Eclipse Project] JDT | Reporter: | Hirotaka Matsumoto <jljlmatu> |
| Component: | Text | Assignee: | JDT-Text-Inbox <jdt-text-inbox> |
| Status: | CLOSED INVALID | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | ||
| Version: | 3.1 | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Windows XP | ||
| Whiteboard: | |||
This is the intended behavior since code assist is an editing command and we have to ask up-front. If you simply want to browse the code you can use the more powerful Ctrl+F3 on the receiver. This gives you the list of methods, you can even look at the inherited members and directly navigate to them. Could you pease clarify why you decided to call it at this moment. Is this because of some usability test result ? or just you thought so ? We would like to see any rationale for this behaviour because this reason could affect our editor's behaviour. In my personal view, this isn't natural a litle bit. For example, some refactor commands (i.e. Raname, Move.. ) sets up everything through the dialog, then validateEdit is called just before modifying( a.k.a making dirty ) document, so that we have a chance not to check out the file. But in the current code assist behaviour, we have no choice. . Invoking code assist means the user asks for assistance to modify the code i.e. at that point the user already decided to modify the document. All modifying editor actions call validate edit before applying or delegating the operation. Note: if you do not like that behavior for your editor simply implement your own ContentAssistAction and bind it to the code assist command. . |
Don't call validateEdite when Code Assist is just started in Java editor. Here is an user scenario. a) Open java file by Java Editor. Make sure that that java file is under SCM control. b) Put the cursor the location where the code assist can show some candidate. ( i.e Just after "super." to see what apis are available ) The objective is to see what apis are avaialble, not actually being edited. c) Initiate Code Assist by Ctrl+Space So that you will see "Need to checkout file ?" dialog. The intention is to see what apis are available, not edit the file itself, so this dialog is very big surprise. It was said that validateEdit is called just before actually being edited, so calling it in this timing isn't what is supposed to be. .