Skip to content

Commit 62a500e

Browse files
authored
Merge pull request #42 from lawson89/master
Autocomplete cleanup
2 parents a314fab + 21aa371 commit 62a500e

2 files changed

Lines changed: 10 additions & 9 deletions

File tree

sierra-tools/previewer/src/main/java/org/httprpc/sierra/tools/previewer/SierraXMLCompletionProvider.java

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public class SierraXMLCompletionProvider extends DefaultCompletionProvider {
4949
// TagName -> {AttributeName -> Description/ValueDefinitionString}
5050
private final Map<String, Map<String, String>> elementAttributeDefinitions = new HashMap<>();
5151

52-
private final Map<String, Map<String, String>> baseClassAttributeDefinitions = new HashMap<>();
52+
private final Map<String, Map<String, String>> sierraAttributeDefinitions = new HashMap<>();
5353

5454
private final List<Completion> tagCompletions = new ArrayList<>();
5555

@@ -66,7 +66,6 @@ private void loadTags() {
6666

6767
tagCompletions.sort(Comparator.comparing(Completion::getInputText));
6868

69-
baseClassAttributeDefinitions.put(JComponent.class.getName(), getAttributesForClass(JComponent.class));
7069
addCommonAttributes();
7170

7271
}
@@ -77,10 +76,10 @@ private void addCommonAttributes() {
7776
for (UILoader.Attribute attr : UILoader.Attribute.values()) {
7877
attributes.put(attr.getName(), attr.getType().getSimpleName());
7978
}
80-
baseClassAttributeDefinitions.put("CommonAttributes", attributes);
79+
sierraAttributeDefinitions.put("CommonAttributes", attributes);
8180
}
8281

83-
private Map<String, String> getAttributesForClass(Class<?> type){
82+
protected Map<String, String> getAttributesForClass(Class<?> type){
8483
Map<String, String> attributes = new HashMap<>();
8584
for (var entry : BeanAdapter.getProperties(type).entrySet()) {
8685
var property = entry.getValue();
@@ -135,10 +134,7 @@ public List<Completion> getCompletions(JTextComponent comp) {
135134
return new ArrayList<>();
136135
}
137136

138-
// parent class
139-
// @todo we need to walk all the class hierarchy here?
140-
allAttributes.putAll(baseClassAttributeDefinitions.get(JComponent.class.getName()));
141-
allAttributes.putAll(baseClassAttributeDefinitions.get("CommonAttributes"));
137+
allAttributes.putAll(sierraAttributeDefinitions.get("CommonAttributes"));
142138

143139
var definedAttributes = getAlreadyDefinedAttributes(comp, context.tagStartOffset, offset);
144140
List<String> availableAttributeNames = new ArrayList<>();

sierra-tools/previewer/src/test/java/org/httprpc/sierra/previewer/SierraXMLCompletionProviderTest.java renamed to sierra-tools/previewer/src/test/java/org/httprpc/sierra/tools/previewer/SierraXMLCompletionProviderTest.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,17 +11,21 @@
1111
* See the License for the specific language governing permissions and
1212
* limitations under the License.
1313
*/
14-
package org.httprpc.sierra.previewer;
14+
package org.httprpc.sierra.tools.previewer;
1515

1616
import org.fife.ui.autocomplete.Completion;
1717
import org.httprpc.sierra.tools.previewer.SierraXMLCompletionProvider;
1818
import org.junit.jupiter.api.BeforeEach;
1919
import org.junit.jupiter.api.Test;
2020

21+
import javax.swing.JComponent;
22+
import javax.swing.JTextArea;
2123
import javax.swing.text.BadLocationException;
2224
import javax.swing.text.Document;
2325
import javax.swing.text.JTextComponent;
2426
import javax.swing.text.PlainDocument;
27+
28+
import java.util.Map;
2529
import java.util.stream.Collectors;
2630

2731
import static org.junit.jupiter.api.Assertions.*;
@@ -227,4 +231,5 @@ void testTagNarrowing() throws BadLocationException {
227231
assertTrue(suggestionsBU.stream().anyMatch(c -> c.getInputText().equals("button")),
228232
"Suggestions after 'bu' should include the 'button' tag.");
229233
}
234+
230235
}

0 commit comments

Comments
 (0)