From 77f43591ce5fca89e646a4d1140bc95cbe082025 Mon Sep 17 00:00:00 2001 From: rathnor <rathnor> Date: Sun, 15 Jun 2003 11:38:35 +0000 Subject: new keys for cycling through groups - NextGroup/PrevGroup (they are an alias for NextWindow/PrevWindow 1 --- src/Keys.cc | 11 ++++++++++- src/Keys.hh | 3 ++- src/fluxbox.cc | 4 +++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/Keys.cc b/src/Keys.cc index 5913b2b..64ca79d 100644 --- a/src/Keys.cc +++ b/src/Keys.cc @@ -19,7 +19,7 @@ // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER // DEALINGS IN THE SOFTWARE. -//$Id: Keys.cc,v 1.30 2003/06/10 12:18:26 fluxgen Exp $ +//$Id: Keys.cc,v 1.31 2003/06/15 11:38:35 rathnor Exp $ #include "Keys.hh" @@ -102,6 +102,8 @@ Keys::t_actionstr Keys::m_actionlist[] = { {"KillWindow", KILLWINDOW}, {"NextWindow", NEXTWINDOW}, {"PrevWindow", PREVWINDOW}, + {"NextGroup", NEXTGROUP}, + {"PrevGroup", PREVGROUP}, {"NextTab", NEXTTAB}, {"PrevTab", PREVTAB}, {"FirstTab", FIRSTTAB}, @@ -320,6 +322,13 @@ bool Keys::load(const char *filename) { else last_key->param = 0; break; + case NEXTGROUP: + case PREVGROUP: + if (argc + 1 < val.size()) + last_key->param = atoi( val[argc+1].c_str()) ^ 1; + else + last_key->param = 1; + break; case NEXTWINDOW: case PREVWINDOW: if (argc + 1 < val.size()) diff --git a/src/Keys.hh b/src/Keys.hh index b78f7e7..99bc48d 100644 --- a/src/Keys.hh +++ b/src/Keys.hh @@ -19,7 +19,7 @@ // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER // DEALINGS IN THE SOFTWARE. -// $Id: Keys.hh,v 1.24 2003/06/08 14:32:28 rathnor Exp $ +// $Id: Keys.hh,v 1.25 2003/06/15 11:38:35 rathnor Exp $ #ifndef KEYS_HH #define KEYS_HH @@ -50,6 +50,7 @@ public: NEXTWORKSPACE, PREVWORKSPACE, LEFTWORKSPACE, RIGHTWORKSPACE, KILLWINDOW, NEXTWINDOW, PREVWINDOW, + NEXTGROUP, PREVGROUP, NEXTTAB, PREVTAB, FIRSTTAB, LASTTAB, MOVETABPREV, MOVETABNEXT, ATTACHLAST, DETACHCLIENT, FOCUSUP, FOCUSDOWN, FOCUSLEFT, FOCUSRIGHT, diff --git a/src/fluxbox.cc b/src/fluxbox.cc index f84c513..02d27b0 100644 --- a/src/fluxbox.cc +++ b/src/fluxbox.cc @@ -22,7 +22,7 @@ // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER // DEALINGS IN THE SOFTWARE. -// $Id: fluxbox.cc,v 1.157 2003/06/12 14:32:08 fluxgen Exp $ +// $Id: fluxbox.cc,v 1.158 2003/06/15 11:38:35 rathnor Exp $ #include "fluxbox.hh" @@ -1213,6 +1213,7 @@ void Fluxbox::handleKeyEvent(XKeyEvent &ke) { m_focused_window->clientWindow()); } break; + case Keys::NEXTGROUP: //activate next group (params set right in Keys) case Keys::NEXTWINDOW: { //activate next window unsigned int mods = Keys::cleanMods(ke.state); if (mousescreen == 0) @@ -1229,6 +1230,7 @@ void Fluxbox::handleKeyEvent(XKeyEvent &ke) { mousescreen->nextFocus(m_key->getParam()); break; } + case Keys::PREVGROUP: //activate prev group (params set right in Keys) case Keys::PREVWINDOW: {//activate prev window unsigned int mods = Keys::cleanMods(ke.state); if (mousescreen == 0) -- cgit v0.11.2