<table><tr><td style="">emateli created this revision.<br />Restricted Application added a project: Frameworks.<br />Restricted Application added a subscriber: Frameworks.
</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/D8920" rel="noreferrer">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>This patch aims to address an issue with KUrlNavigator using relative paths. Upon attempting to navigate using relative paths, due to the way <tt style="background: #ebebeb; font-size: 13px;">QUrl::fromUserInput</tt> works, a relative symbol such as 'Documents' will be converted to <tt style="background: #ebebeb; font-size: 13px;">http://Documents</tt> or <tt style="background: #ebebeb; font-size: 13px;">.config</tt> will be converted to an empty QUrl. This patch uses the <tt style="background: #ebebeb; font-size: 13px;">AssumeLocalFile</tt> flag along with the home directory as the relative link (which is where the suggestions are taken from), alongside that it adds two test cases to account for this behaviour. The suggestions would perhaps be more intuitive if they were from the current directory but I assume that's an issue to be discussed in another patch.</p>

<p>All tests currently pass, but someone with more knowledge of this should check if this patch potentially breaks something with <tt style="background: #ebebeb; font-size: 13px;">KUriFilter::filterUri</tt>.</p></div></div><br /><div><strong>TEST PLAN</strong><div><p>Open an application where KUrlNavigator is used. Eg.: Dolphin, Gwenview</p>

<ul class="remarkup-list">
<li class="remarkup-list-item">Select the KUrlNavigator and clear the text</li>
<li class="remarkup-list-item">Type something with dot or a character that would otherwise show suggestions</li>
<li class="remarkup-list-item">Highlight one of the suggestions and activate it via enter</li>
</ul>

<p>Expected: The selected directory should be browsed<br />
Actual: Dolphin will show invalid protocol error for dotfiles or otherwise launch browser. Gwenview fails silently.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R241 KIO</div></div></div><br /><div><strong>BRANCH</strong><div><div>relative-files</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D8920" rel="noreferrer">https://phabricator.kde.org/D8920</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>autotests/kurlnavigatortest.cpp<br />
src/filewidgets/kurlnavigator.cpp<br />
src/widgets/kurifilter.cpp</div></div></div><br /><div><strong>To: </strong>emateli<br /><strong>Cc: </strong>Frameworks<br /></div>