aboutsummaryrefslogtreecommitdiff
path: root/src/Screen.cc
diff options
context:
space:
mode:
authorrathnor <rathnor>2004-04-28 14:59:12 (GMT)
committerrathnor <rathnor>2004-04-28 14:59:12 (GMT)
commit4439b3f9b17e9c8bd9682ce967631f03249304bf (patch)
tree3e7fd160b6ba503359da09c5eec9b0f57d40e2f0 /src/Screen.cc
parentbb779745f45c917099fde31c4cea8bb6d6bc6f7d (diff)
downloadfluxbox_pavel-4439b3f9b17e9c8bd9682ce967631f03249304bf.zip
fluxbox_pavel-4439b3f9b17e9c8bd9682ce967631f03249304bf.tar.bz2
fixes for/reimplement parts of directional focus movement
Diffstat (limited to 'src/Screen.cc')
-rw-r--r--src/Screen.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/Screen.cc b/src/Screen.cc
index eef61c4..f815f3a 100644
--- a/src/Screen.cc
+++ b/src/Screen.cc
@@ -22,7 +22,7 @@
22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
23// DEALINGS IN THE SOFTWARE. 23// DEALINGS IN THE SOFTWARE.
24 24
25// $Id: Screen.cc,v 1.275 2004/04/19 22:44:42 fluxgen Exp $ 25// $Id: Screen.cc,v 1.276 2004/04/28 14:59:11 rathnor Exp $
26 26
27 27
28#include "Screen.hh" 28#include "Screen.hh"
@@ -1640,7 +1640,7 @@ void BScreen::setFocusedWindow(WinClient &winclient) {
1640 } 1640 }
1641} 1641}
1642 1642
1643void BScreen::dirFocus(FluxboxWindow &win, FocusDir dir) { 1643void BScreen::dirFocus(FluxboxWindow &win, const FocusDir dir) {
1644 // change focus to the window in direction dir from the given window 1644 // change focus to the window in direction dir from the given window
1645 1645
1646 // we scan through the list looking for the window that is "closest" 1646 // we scan through the list looking for the window that is "closest"
@@ -1657,7 +1657,11 @@ void BScreen::dirFocus(FluxboxWindow &win, FocusDir dir) {
1657 Workspace::Windows &wins = currentWorkspace()->windowList(); 1657 Workspace::Windows &wins = currentWorkspace()->windowList();
1658 Workspace::Windows::iterator it = wins.begin(); 1658 Workspace::Windows::iterator it = wins.begin();
1659 for (; it != wins.end(); ++it) { 1659 for (; it != wins.end(); ++it) {
1660 if ((*it) == &win) continue; // skip slef 1660 if ((*it) == &win
1661 || (*it)->isIconic()
1662 || (*it)->isFocusHidden()
1663 || !(*it)->winClient().acceptsFocus())
1664 continue; // skip self
1661 1665
1662 // we check things against an edge, and within the bounds (draw a picture) 1666 // we check things against an edge, and within the bounds (draw a picture)
1663 int edge=0, upper=0, lower=0, oedge=0, oupper=0, olower=0; 1667 int edge=0, upper=0, lower=0, oedge=0, oupper=0, olower=0;