diff --git a/python/ipnb/src/org/jetbrains/plugins/ipnb/editor/panels/IpnbFilePanel.java b/python/ipnb/src/org/jetbrains/plugins/ipnb/editor/panels/IpnbFilePanel.java index 47915f6d5f09..524e4f4aa438 100644 --- a/python/ipnb/src/org/jetbrains/plugins/ipnb/editor/panels/IpnbFilePanel.java +++ b/python/ipnb/src/org/jetbrains/plugins/ipnb/editor/panels/IpnbFilePanel.java @@ -604,4 +604,8 @@ public class IpnbFilePanel extends JPanel implements Scrollable, DataProvider, D public VirtualFile getVirtualFile() { return myVirtualFile; } + + public Document getDocument() { + return myDocument; + } } diff --git a/python/ipnb/src/org/jetbrains/plugins/ipnb/psi/IpnbPyFragment.java b/python/ipnb/src/org/jetbrains/plugins/ipnb/psi/IpnbPyFragment.java index a787ad9670be..289b9bd81dc1 100644 --- a/python/ipnb/src/org/jetbrains/plugins/ipnb/psi/IpnbPyFragment.java +++ b/python/ipnb/src/org/jetbrains/plugins/ipnb/psi/IpnbPyFragment.java @@ -72,6 +72,13 @@ public class IpnbPyFragment extends PyFileImpl { return getManager().findDirectory(parentFile); } + @NotNull + @Override + public PsiFile getOriginalFile() { + final PsiFile psiFile = PsiDocumentManager.getInstance(getProject()).getPsiFile(myFilePanel.getDocument()); + return psiFile != null ? psiFile : super.getOriginalFile(); + } + @Override public PsiElement getNextSibling() { return null;