elvisangelaccio added inline comments.

INLINE COMMENTS

> kurlnavigator.h:297
> +     */
> +    bool isInsideCompressedPath(const QUrl &path) const;
> +

I'd make this function `static`, since it doesn't depend on the status of a 
specific `KUrlNavigator` instance.

To do so, `isCompressedPath()` needs to become a (static) free function.

> kurlnavigatorbutton.cpp:416
> +        auto kurlnavigator = qobject_cast<KUrlNavigator*>(parent());
> +        if 
> (kurlnavigator->isInsideCompressedPath(kurlnavigator->locationUrl())) {
> +            // We are in an archive, check whether the subdir we have to 
> list is part of the archive

What if the parent is not a `KUrlNavigator`?

> thsurrel wrote in kurlnavigatorbutton.cpp:414
> What would be the clean way to expose this function ? I wouldn't like to 
> duplicate the code.
> And btw, the "if ((m_url.scheme() == QLatin1String("tar")) || (m_url.scheme() 
> == QLatin1String("zip")))" condition was taken from 
> KUrlNavigator::setLocationUrl, so there must be a bugfix to be made there as 
> well with the 'krarc' case gregormi reports.

> What would be the clean way to expose this function ? I wouldn't like to 
> duplicate the code.

Sorry for the late reply. One way could be a public static function, either in 
`KUrlNavigator` or `KUrlNavigatorButton`.

REPOSITORY
  R241 KIO

REVISION DETAIL
  https://phabricator.kde.org/D17270

To: thsurrel, #frameworks
Cc: elvisangelaccio, gregormi, kde-frameworks-devel, michaelh, ngraham, bruns

Reply via email to