X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;ds=sidebyside;f=util%2Fepist%2Fscreen.cc;h=8f9fbe3c02605483caf76fa5399c93b006c9bec3;hb=728022e170bf7f0ccc20101cc53587dfcd853ee5;hp=19a57c71dd1658d847b668a43c629eda400a3ee1;hpb=4aeca296e895bfe74d59d4732e740c2d49c10080;p=chaz%2Fopenbox diff --git a/util/epist/screen.cc b/util/epist/screen.cc index 19a57c71..8f9fbe3c 100644 --- a/util/epist/screen.cc +++ b/util/epist/screen.cc @@ -246,19 +246,27 @@ void screen::handleKeypress(const XEvent &e) { return; case Action::moveWindowUp: - window->move(0, -it->number()); + window->move(window->x(), window->y() - it->number()); return; case Action::moveWindowDown: - window->move(0, it->number()); + window->move(window->x(), window->y() + it->number()); return; case Action::moveWindowLeft: - window->move(-it->number(), 0); + window->move(window->x() - it->number(), window->y()); return; case Action::moveWindowRight: - window->move(it->number(), 0); + window->move(window->x() + it->number(), window->y()); + return; + + case Action::resizeWindowWidth: + window->resize(window->width() + it->number(), window->height()); + return; + + case Action::resizeWindowHeight: + window->resize(window->width(), window->height() + it->number()); return; case Action::toggleshade: @@ -352,7 +360,7 @@ void screen::updateClientList() { break; if (it == end) { // didn't already exist if (doAddWindow(rootclients[i])) { - cout << "Added window: 0x" << hex << rootclients[i] << dec << endl; + //cout << "Added window: 0x" << hex << rootclients[i] << dec << endl; _clients.insert(insert_point, new XWindow(_epist, this, rootclients[i])); } @@ -366,7 +374,7 @@ void screen::updateClientList() { if (**it2 == rootclients[i]) break; if (i == num) { // no longer exists - cout << "Removed window: 0x" << hex << (*it2)->window() << dec << endl; + //cout << "Removed window: 0x" << hex << (*it2)->window() << dec << endl; delete *it2; _clients.erase(it2); } @@ -389,9 +397,9 @@ void screen::updateActiveWindow() { } _active = it; - cout << "Active window is now: "; - if (_active == _clients.end()) cout << "None\n"; - else cout << "0x" << hex << (*_active)->window() << dec << endl; + //cout << "Active window is now: "; + //if (_active == _clients.end()) cout << "None\n"; + //else cout << "0x" << hex << (*_active)->window() << dec << endl; } @@ -400,10 +408,11 @@ void screen::execCommand(const std::string &cmd) const { if ((pid = fork()) == 0) { extern char **environ; + string c = "exec " + cmd; char *const argv[] = { "sh", "-c", - const_cast(cmd.c_str()), + const_cast(c.c_str()), 0 }; // make the command run on the correct screen