Move the UrlNavigators to the toolbar
This change forces the UrlNavigator to the toolbar. There will be two of them while in split view mode. UrlNavigators get aligned with the ViewContainers if there is enough space.
A big portion of this MR is refactoring because until now the UrlNavigators were tightly intertwined with the DolphinViewContainers. With this MR an UrlNavigator for controlling a View can be freely connected or disconnected with a single method call.
A DolphinUrlNavigator class is created in the process which contains all Dolphin-specific UrlNavigator code which did previously reside in the DolphinViewContainer class. Other application parts that belong to UrlNavigator-management are also moved there.
Furthermore, code paths are removed for having UrlNavigators outside the toolbar.
KUrlNavigator currently doesn't provide a sane sizeHint() which I need for alignment. I added that to the DolphinUrlNavigator class for now but it would probably be better to have that method in KUrlNavigator in the future.
Downsides of this change:
- The toolbar is forced to be either at the top or bottom of the window.
- The "Sort By" action is removed from the default toolbar to make space.
(The split view activation animation seen in this video is !86.)
Previous discussions on this change:
- Previous merge request on Phabricator: https://phabricator.kde.org/D27523
- Discussion "Move URL Navigator into toolbar": https://phabricator.kde.org/T11663
- Discussion "Dolphin UI redesign": https://phabricator.kde.org/T12308
Additional small bug fix:
- Changing the KCompletion mode now instantly applies to all UrlNavigators