Show Desktop Upgrade:
Renamed "Show desktop" to "Show Desktop" (uppercase).
New features:
* Added individual movement options for all 4 corners.
* Implemented the new movement direction option "Intelligent Random".
This option will make windows slide out of view in one of 3
random directions (Top/Bottom / Left/Right / ToCorners) using the
shortest movement distance, when Show Desktop is invoked.
* Also implemented a "Fully Random" movement direction mode, which will
move every window out of view using one of 8 randomly chosen directions
(one of 4 corners or one of 4 edges of the virtual screen).
enum IRDirection represents allowed directions in Intelligent Random
Direction mode, while enum FRDirection represents allowed directions
in Fully Random Direction mode.
Refactored ShowdesktopPlacer:
1. Removed #define macros and replaced them with inline functions in ::.
2. Refactored out the offset algorithms into separate functions.
3. Placed the actual offset + setting algorithms into ShowdesktopPlacer
and re-used where appropriate. This reduces the size of
ShowdesktopWindow::repositionPlacer.
Simplified void ShowdesktopScreen::donePaint () and removed redundant
damageScreen () call.
Removal of redundant brackets, declaration and assignment of variables in
the same line, indentation fixes, readability improvements and general
cleanup.
(LP: #1161343). Fixes: https://bugs.launchpad.net/bugs/1161343.
Approved by PS Jenkins bot, MC Return.