aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormarkt <markt>2007-07-07 04:54:34 (GMT)
committermarkt <markt>2007-07-07 04:54:34 (GMT)
commitb735d405f58ac226e025d6ef4dbd91a0129bb12e (patch)
treea69c7f72198d02a19c2a577e53102eb4d261c7b1
parent18cd70f74999b85ea5d35fc95fad3fdf33f1831e (diff)
downloadfluxbox_pavel-b735d405f58ac226e025d6ef4dbd91a0129bb12e.zip
fluxbox_pavel-b735d405f58ac226e025d6ef4dbd91a0129bb12e.tar.bz2
allow negative indices in :Workspace <int>
-rw-r--r--ChangeLog2
-rw-r--r--src/WorkspaceCmd.cc11
-rw-r--r--util/fluxbox-update_configs.cc12
3 files changed, 18 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 3f4d5ac..2a36cc4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,8 @@
1 (Format: Year/Month/Day) 1 (Format: Year/Month/Day)
2Changes for 1.0.0: 2Changes for 1.0.0:
3*07/07/07: 3*07/07/07:
4 * Allow negative numbers in :Workspace <int> command, which counts backwards
5 from the last one (Mark)
4 * Right clicking on a submenu didn't revert focus to its parent (Mark) 6 * Right clicking on a submenu didn't revert focus to its parent (Mark)
5 FbTk/Menu.cc/hh 7 FbTk/Menu.cc/hh
6 * Pressing escape in a torn menu didn't work (Mark) 8 * Pressing escape in a torn menu didn't work (Mark)
diff --git a/src/WorkspaceCmd.cc b/src/WorkspaceCmd.cc
index b040fdd..9859dd6 100644
--- a/src/WorkspaceCmd.cc
+++ b/src/WorkspaceCmd.cc
@@ -103,8 +103,15 @@ JumpToWorkspaceCmd::JumpToWorkspaceCmd(int workspace_num):m_workspace_num(worksp
103 103
104void JumpToWorkspaceCmd::execute() { 104void JumpToWorkspaceCmd::execute() {
105 BScreen *screen = Fluxbox::instance()->mouseScreen(); 105 BScreen *screen = Fluxbox::instance()->mouseScreen();
106 if (screen != 0) 106 if (screen != 0) {
107 screen->changeWorkspaceID(m_workspace_num); 107 int num = screen->numberOfWorkspaces();
108 int actual = m_workspace_num;
109 // we need an extra +1, since it's subtracted in FbCommandFactory
110 if (actual < 0) actual += num+1;
111 if (actual < 0) actual = 0;
112 if (actual >= num) actual = num - 1;
113 screen->changeWorkspaceID(actual);
114 }
108} 115}
109 116
110 117
diff --git a/util/fluxbox-update_configs.cc b/util/fluxbox-update_configs.cc
index de1fbb9..8cfe8ef 100644
--- a/util/fluxbox-update_configs.cc
+++ b/util/fluxbox-update_configs.cc
@@ -160,13 +160,15 @@ int main(int argc, char **argv) {
160 } 160 }
161 } 161 }
162 162
163 if (rc_filename.empty())
164 rc_filename = getenv("HOME") + string("/.fluxbox/init");
165
163 FbTk::ResourceManager resource_manager(rc_filename.c_str(),false); 166 FbTk::ResourceManager resource_manager(rc_filename.c_str(),false);
164 if (rc_filename.empty() || !resource_manager.load(rc_filename.c_str())) { 167 if (!resource_manager.load(rc_filename.c_str())) {
165 // couldn't load rc file 168 // couldn't load rc file
166 if (!rc_filename.empty()) { 169 cerr<<_FB_CONSOLETEXT(Fluxbox, CantLoadRCFile, "Failed to load database", "Failed trying to read rc file")<<":"<<rc_filename<<endl;
167 cerr<<_FB_CONSOLETEXT(Fluxbox, CantLoadRCFile, "Failed to load database", "Failed trying to read rc file")<<":"<<rc_filename<<endl; 170 cerr<<_FB_CONSOLETEXT(Fluxbox, CantLoadRCFileTrying, "Retrying with", "Retrying rc file loading with (the following file)")<<": "<<DEFAULT_INITFILE<<endl;
168 cerr<<_FB_CONSOLETEXT(Fluxbox, CantLoadRCFileTrying, "Retrying with", "Retrying rc file loading with (the following file)")<<": "<<DEFAULT_INITFILE<<endl; 171
169 }
170 // couldn't load default rc file, either 172 // couldn't load default rc file, either
171 if (!resource_manager.load(DEFAULT_INITFILE)) { 173 if (!resource_manager.load(DEFAULT_INITFILE)) {
172 cerr<<_FB_CONSOLETEXT(Fluxbox, CantLoadRCFile, "Failed to load database", "")<<": "<<DEFAULT_INITFILE<<endl; 174 cerr<<_FB_CONSOLETEXT(Fluxbox, CantLoadRCFile, "Failed to load database", "")<<": "<<DEFAULT_INITFILE<<endl;