Mirror details view mode for right-to-left languages
This merge request implements mirroring of the details view mode for right-to-left languages. This is the last of the Dolphin view modes which did not adapt to right-to-left languages correctly.
To implement this I needed to rework quite a bit of logic, so I used the opportunity to fix some bugs/behaviur quirks:
- Left and right padding is now saved and restored separately instead of only saving the left padding
- Changing the right padding no longer disables "automatic column resizing".
- The grip handles for column resizing can now be grabbed when near the grip handle instead of only allowing grabbing when slightly to the left of the grip.
- Role column headers now only show a hover highlight effect when the mouse cursor is actually above that role and not above the grip handle or the padding.
- There is now a soft-boarder when shrinking the right padding so shrinking the padding "below zero width" will no longer immediately clear automatic resize behaviour. So now it is possible to simply remove the right padding by resizing it to zero width.
Acknowledgement
This work is part of a my project funded through the NGI0 Entrust Fund, a fund established by NLnet with financial support from the European Commission's Next Generation Internet programme, under the aegis of DG Communications Networks, Content and Technology.
Test plan
Use all the view modes both "normally" as well as right-to-left by launching Dolphin with the --reverse
argument and check that I didn't break anything visually. This shouldn't have changed much of the basic controls. Also I am aware that resizing of columns in right-to-left mode is not exactly as in left-to-right mode, but it was quite difficult to get it to the current state, so let's not get too concerned about the finer details please as long as resizing of columns is possible and looks okay.