import com.intellij.openapi.editor.ex.EditorEx;
import com.intellij.openapi.fileEditor.FileDocumentManager;
import com.intellij.openapi.project.DumbAwareAction;
+import com.intellij.openapi.project.DumbModePermission;
+import com.intellij.openapi.project.DumbService;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.FrameWrapper;
import com.intellij.openapi.util.Disposer;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
+import java.awt.*;
import java.text.SimpleDateFormat;
import java.util.AbstractMap;
import java.util.Calendar;
LOG.info("Generated file " + userFileName + "was not found");
return;
}
- FrameWrapper showPreviewFrame = new FrameWrapper(project);
+ final FrameWrapper showPreviewFrame = new FrameWrapper(project);
showPreviewFrame.setTitle(userFileName);
LabeledEditor labeledEditor = new LabeledEditor(null);
final EditorFactory factory = EditorFactory.getInstance();
header.add(new JLabel("Read-only preview."));
String timeStamp = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(Calendar.getInstance().getTime());
header.add(new JLabel(String.format("Created %s.", timeStamp)));
- labeledEditor.setComponent(createdEditor.getComponent(), header);
+ JComponent editorComponent = createdEditor.getComponent();
+ labeledEditor.setComponent(editorComponent, header);
createdEditor.setCaretVisible(false);
createdEditor.setCaretEnabled(false);
showPreviewFrame.setComponent(labeledEditor);
- showPreviewFrame.show();
+ showPreviewFrame.setSize(new Dimension(500, 500));
+ DumbService.allowStartingDumbModeInside(DumbModePermission.MAY_START_BACKGROUND, new Runnable() {
+ @Override
+ public void run() {
+ showPreviewFrame.show();
+ }
+ });
}
}
\ No newline at end of file