baskerville/bspwm — pull request #37 by Stebalien (2013-07-13 20:32:16+00:00)
Title: Apply modifiers to all objects

This patch applies the modifiers to all selectors. This change allows for commands like `window -f biggest.like` (focus the biggest like window), and queries like `query -D -d focused.free` (is the current desktop free).

Please check the direction logic. I don't know if I understood it correctly.

Window:
* cycle : no change
* direction (history) : only consider matching nodes
* direction (distance) : only consider matching nodes
* direction (normal) : match or NULL
* last : walk history
* focused : match or NULL
* biggest : find biggest matching

Desktop:
* cycle : no change
* focused : match or NULL
* last : match or NULL

Monitor:
* cycle : no change
* direction : only consider matching nodes
* last : match or NULL
* focused : match or NULL