Add phone UI
Previous to this commit launching Dolphin on phones (e.g. those running Plasma Mobile) would show Dolphin with its default user interface optimised for desktop usage. This commit changes this so instead a phone form factor optimised user interface is used.
The differences to the default UI configuration are:
- Toolbar at bottom
- Icon-only toolbar
- Different actions on the toolbar
- Places panel hidden
- Location bar at the top with a button to show places
- Zoom slider hidden (pinch gestures to zoom still work)
Through these changes Dolphin actually has a good user experience on phones by default. All the features were already there. Especially Steffen Hartleib's work to trigger selection mode on long press leads to great UX when dealing with multiple files.
Still, this might be considered just a start towards making Dolphin great on phone form factors. Secondary windows that Dolphin might spawn are not yet adapted, but are usable on Plasma Mobile as they are anyway.
Test plan
- Delete any potential older configuration files (e.g. both
~/.local/state/dolphinstaterc
and~/.config/dolphinrc
) - Use Plasma Mobile (or alternatively, set
usePhoneUi=true
indolphinmainwindow.cpp
) - Launch Dolphin
Note
I am not 100% sure that the call KRuntimePlatform::runtimePlatform().contains(QLatin1String("phone"))
works as expected because I have not actually tested this on Plasma Mobile. I have however used Dolphin on Plasma Mobile at Akademy on @knauss' phone and noticed that the UX is good aside from what I am changing here.
The dolphinuiforphones.rc
file added here is mostly identical to the dolphinui.rc
file.