To align a window to left/right/top/bottom half of a screen with mouse you should go to 'settings editor' -> 'xfwm4' and uncheck 'wrap_windows' property. Now you can drag window beyond the edge of the screen to tile it. But what are keyboard shortcuts for such a tiling? XFCE 4.10 has that functionality, but I can't find keyboard shortcuts for it.
Xubuntu keyboard shortcuts
By default, XFCE/Xubuntu tiling is a mouse only affair.
However, you do have the ability to define your own keyboard shortcuts:
Using settings manager --> window manager you have the Tile Actions as shown.
In the picture I have defined two custom keyboard shortcuts CTRL+T to tile the current window to the top and CTRL+G to tile to the bottom.
To define your own keyboard shortcut - double click in the shortcut field next to the action.
One problem with the solution mentioned above, is it won't work if you set the Whisker menu to use the SUPER key.
Whether you like or hate MS, I think you will agree that their shortcuts for the Start Menu, tiling, and window states are very intuitive. (WINKEY+LEFT: Tile Left, WINKEY+RIGHT: Tile Right, WINKEY+UP Maximize, WINKEY+DOWN Minimize, WINKEY: Open Start Menu)
I wanted to mimic that as closely as possible.
It seems with XFCE (at least Xubuntu) there are two main keyboard shortcut settings: one in Settings > Keyboard, and one in Settings > Window Manager. The Whisker Menu shortcut (which I set to the SUPERKEY/WINKEY) is in Settings > Keyboard and by setting that, it doesn't allow any WinManager WINKEY settings to work.
My solution was to assign the tiling keys from within Settings > Keyboard (instead of WindowManager) by using quicktile.py (found here).
~/src/quicktile/quicktile.py left - Shortcut:
~/src/quicktile/quicktile.py right - Shortcut:
~/src/quicktile/quicktile.py maximize - Shortcut:
~/src/quicktile/quicktile.py minimize - Shortcut:
~/src/quicktile/quicktile.py show-desktop - Shortcut:
Then I can have the SUPER/WINKEY open the Whisker menu with:
xfce4-popup-whiskermenu - Shortcut:
It works very well but isn't quite perfect. For example, in a multi-monitor environment, the Windows don't go to the next screen like Windows does. I would love for that functionality to work, but I can deal without it for now :)