<table><tr><td style="">tristanp created this revision.<br />Herald added a project: KDevelop.<br />Herald added a subscriber: kdevelop-devel.<br />tristanp requested review of this revision.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D24428">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>In differential <a href="https://phabricator.kde.org/D20548" style="background-color: #e7e7e7;
border-color: #e7e7e7;
border-radius: 3px;
padding: 0 4px;
font-weight: bold;
color: black;text-decoration: none;">D20548</a> an issue with document switcher plugin and<br />
splitted views is described.<br />
The solution is to open/activate document instead of activating<br />
view (aka Sublime::View) as view are linked to area (aka Sublime::Area)<br />
and will show again in same area instead of current active area.</p>
<p>But the differential solution was trying to retrieve the document<br />
from activated view which is not the perfect way as it must handle<br />
Sublime::UrlDocument to have a url for openDocument function.</p>
<p>This patch use the document controller (aka IDocumentController)<br />
instead of sublime components.</p>
<p>The plugin tracks a list of document (aka IDocument) and<br />
enables signals for open/activate/close actions.<br />
Every document is placed in list model via DocumentSwitcherItem<br />
class responsible of extracting text and icon from a document<br />
passed in its constructor.</p>
<p>Without dependency to sublime, the plugin structure is<br />
simplified by not taking care about active main window, active<br />
area, and views. Only documents are tracking independently of the<br />
way they are displayed in UI.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R32 KDevelop</div></div></div><br /><div><strong>BRANCH</strong><div><div>switch_doc_2</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D24428">https://phabricator.kde.org/D24428</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>plugins/documentswitcher/CMakeLists.txt<br />
plugins/documentswitcher/documentswitcheritem.cpp<br />
plugins/documentswitcher/documentswitcheritem.h<br />
plugins/documentswitcher/documentswitcherplugin.cpp<br />
plugins/documentswitcher/documentswitcherplugin.h</div></div></div><br /><div><strong>To: </strong>tristanp<br /><strong>Cc: </strong>kdevelop-devel, hmitonneau, christiant, glebaccon, domson, antismap, iodelay, alexeymin, geetamc, Pilzschaf, akshaydeo, surgenight, arrowd<br /></div>