diff options
Diffstat (limited to 'platform/script-debugger/debugger-ui/src/org/jetbrains/debugger/frame/CallFrameView.java')
-rw-r--r-- | platform/script-debugger/debugger-ui/src/org/jetbrains/debugger/frame/CallFrameView.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/platform/script-debugger/debugger-ui/src/org/jetbrains/debugger/frame/CallFrameView.java b/platform/script-debugger/debugger-ui/src/org/jetbrains/debugger/frame/CallFrameView.java index eb698e685403..3cb993a01194 100644 --- a/platform/script-debugger/debugger-ui/src/org/jetbrains/debugger/frame/CallFrameView.java +++ b/platform/script-debugger/debugger-ui/src/org/jetbrains/debugger/frame/CallFrameView.java @@ -16,6 +16,8 @@ public final class CallFrameView extends StackFrameImplBase implements VariableC private final Script script; + private final boolean inLibraryContent; + public CallFrameView(@NotNull CallFrame callFrame, @NotNull DebuggerViewSupport debugProcess, @Nullable Script script) { this(callFrame, debugProcess.getSourceInfo(script, callFrame), debugProcess, script); } @@ -29,6 +31,9 @@ public final class CallFrameView extends StackFrameImplBase implements VariableC this.debugProcess = debugProcess; this.callFrame = callFrame; this.script = script; + + // isInLibraryContent call could be costly, so we compute it only once (our customizePresentation called on each repaint) + inLibraryContent = sourceInfo != null && debugProcess.isInLibraryContent(sourceInfo, script); } @Override @@ -48,6 +53,11 @@ public final class CallFrameView extends StackFrameImplBase implements VariableC } @Override + protected boolean isInLibraryContent() { + return inLibraryContent; + } + + @Override protected void customizeInvalidFramePresentation(ColoredTextContainer component) { assert sourceInfo == null; |