mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEA-88519: Unexpected formatting live templates
- enable force-formatting for complex zen-coding templates only. simple templates is reformated according to template reformat option #IDEA-88519 fixed
This commit is contained in:
+3
-1
@@ -114,7 +114,9 @@ public class CustomTemplateCallback {
|
||||
}
|
||||
|
||||
public void startTemplate(Template template, Map<String, String> predefinedValues, TemplateEditingListener listener) {
|
||||
template.setToReformat(!myInInjectedFragment);
|
||||
if(myInInjectedFragment) {
|
||||
template.setToReformat(false);
|
||||
}
|
||||
myTemplateManager.startTemplate(myEditor, template, false, predefinedValues, listener);
|
||||
}
|
||||
|
||||
|
||||
@@ -36,6 +36,7 @@ public class LiveTemplateBuilder {
|
||||
private final List<VarOccurence> myVariableOccurences = new ArrayList<VarOccurence>();
|
||||
private final List<Marker> myMarkers = new ArrayList<Marker>();
|
||||
private String myLastEndVarName;
|
||||
private boolean myIsToReformat = false;
|
||||
|
||||
public CharSequence getText() {
|
||||
return myText;
|
||||
@@ -123,6 +124,7 @@ public class LiveTemplateBuilder {
|
||||
last = occurence.myOffset;
|
||||
}
|
||||
template.addTextSegment(myText.substring(last));
|
||||
template.setToReformat(myIsToReformat);
|
||||
return template;
|
||||
}
|
||||
|
||||
@@ -215,6 +217,7 @@ public class LiveTemplateBuilder {
|
||||
}*/
|
||||
|
||||
public int insertTemplate(int offset, TemplateImpl template, Map<String, String> predefinedVarValues) {
|
||||
myIsToReformat = myText.length() > 0 || template.isToReformat();
|
||||
removeEndVarAtOffset(offset);
|
||||
|
||||
String text = template.getTemplateText();
|
||||
@@ -301,17 +304,6 @@ public class LiveTemplateBuilder {
|
||||
}
|
||||
}
|
||||
|
||||
private boolean isInEmptyText(int offset) {
|
||||
if (offset >= myText.length()) {
|
||||
return false;
|
||||
}
|
||||
char c = myText.charAt(offset++);
|
||||
while (Character.isWhitespace(c) && offset < myText.length()) {
|
||||
c = myText.charAt(offset++);
|
||||
}
|
||||
return c == '<' || c == '"';
|
||||
}
|
||||
|
||||
private boolean hasVarAtOffset(int offset) {
|
||||
boolean flag = false;
|
||||
for (VarOccurence occurence : myVariableOccurences) {
|
||||
|
||||
Reference in New Issue
Block a user