/* Ċ Ġ* ĠCopyright Ġ 2 0 0 0 - 2 0 1 9 ĠJetBrains Ġs . r . o . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ Ġ*/ Ċ Ċ package Ġorg . jetbrains . r . breadcrumbs Ċ Ċ import Ġcom . intellij . openapi . editor . Editor Ċ import Ġcom . intellij . psi . Psi Element Ċ import Ġcom . intellij . ui . breadcrumbs . Breadcrumb s Provider Ċ import Ġcom . intellij . xml . breadcrumbs . Breadcrumb s Panel Ċ import Ġcom . intellij . xml . breadcrumbs . Breadcrumb s Xml Wrapper Ċ import Ġcom . intellij . xml . breadcrumbs . Cr umb Presentation Ċ import Ġorg . jetbrains . r . actions . R Action Util Ċ Ċ class ĠRP si Cr umb ( element : ĠPsi Element , Ġprovider : ĠB readcrumb s Provider , Ġpresentation : ĠCr umb Presentation ?) Ġ: ĊĠ ĠCommon Psi Cr umb ( element , Ġprovider , Ġpresentation ) Ġ{ ĊĊĠ Ġprivate Ġval Ġfile Ġ= Ġelement . containing File ĊĊĠ Ġoverride Ġfun Ġnavigate ( editor : ĠEditor , Ġwith Selection : ĠBoolean ) Ġ{ ĊĠĠĠ Ġun mute Caret Change Update ( editor ) ĊĠĠĠ ĠR Action Util . execute Action ById (" File Structure Popup ", Ġfile . project ) ĊĠ Ġ} ĊĊĠ Ġprivate Ġfun Ġun mute Caret Change Update ( editor : ĠEditor ) Ġ{ ĊĠĠĠ Ġ// ĠB readcrumb s Xml Wrapper Ġdoes Ġnot Ġtrack Ġcaret Ġchanges Ġjust Ġafter ĠCr umb Ġnavigation ĊĠĠĠ Ġ// ĠBut Ġin Ġthis Ġcustom Ġimplementation Ġwe Ġneed Ġto Ġtrack Ġit ĊĠĠĠ Ġval Ġbreadcrumb s Component Ġ= ĠB readcrumb s Xml Wrapper . get Breadcrumb s Component ( editor ) Ġ?: Ġreturn ĊĠĠĠ Ġval Ġtrack Caret Change Flag Ġ= ĠB readcrumb s Panel :: class . java . getDeclared Field (" my User Caret Change ") ĊĠĠĠ Ġtrack Caret Change Flag . is Accessible Ġ= Ġtrue ĊĠĠĠ Ġtrack Caret Change Flag . set ( breadcrumbs Component , Ġtrue ) ĊĠ Ġ} Ċ } Ċ