synched with bb-cvs. couple bug fixes.

This commit is contained in:
Dana Jansens 2002-06-05 04:20:08 +00:00
parent 7a55323343
commit aad50046de
5 changed files with 14 additions and 12 deletions

View file

@ -1040,10 +1040,14 @@ void BScreen::changeWorkspaceID(unsigned int id) {
workspacemenu->setItemSelected(current_workspace->getID() + 2, False);
if (blackbox->getFocusedWindow() &&
blackbox->getFocusedWindow()->getScreen() == this &&
! blackbox->getFocusedWindow()->isStuck()) {
current_workspace->setLastFocusedWindow(blackbox->getFocusedWindow());
BlackboxWindow *focused = blackbox->getFocusedWindow();
if (focused && focused->getScreen() == this && ! focused->isStuck()) {
if (focused->getWorkspaceNumber() != current_workspace->getID()) {
fprintf(stderr, "%s is on the wrong workspace, aborting\n",
focused->getTitle());
abort();
}
current_workspace->setLastFocusedWindow(focused);
blackbox->setFocusedWindow((BlackboxWindow *) 0);
}
@ -1079,7 +1083,8 @@ void BScreen::manageWindow(Window w) {
XMapRequestEvent mre;
mre.window = w;
win->restoreAttributes();
if (blackbox->isStartup())
win->restoreAttributes();
win->mapRequestEvent(&mre);
}

View file

@ -268,7 +268,6 @@ BlackboxWindow::BlackboxWindow(Blackbox *b, Window w, BScreen *s) {
BlackboxWindow::~BlackboxWindow(void) {
#ifdef DEBUG
fprintf(stderr, "BlackboxWindow::~BlackboxWindow: destroying 0x%lx\n",
client.window);

View file

@ -224,7 +224,6 @@ void Workspace::lowerTransients(const BlackboxWindow * const win,
wkspc->stackingList.push_back((*it));
}
}
}

View file

@ -666,10 +666,9 @@ void Blackbox::process_event(XEvent *e) {
} else if(e->xclient.message_type == getBlackboxChangeWorkspaceAtom()) {
BScreen *screen = searchScreen(e->xclient.window);
if (screen && e->xclient.data.l[0] >= 0 &&
e->xclient.data.l[0] <
static_cast<signed>(screen->getWorkspaceCount()))
screen->changeWorkspaceID(e->xclient.data.l[0]);
unsigned int workspace = e->xclient.data.l[0];
if (screen && workspace < screen->getWorkspaceCount())
screen->changeWorkspaceID(workspace);
} else if (e->xclient.message_type == getBlackboxChangeWindowFocusAtom()) {
BlackboxWindow *win = searchWindow(e->xclient.window);

View file

@ -11,7 +11,7 @@ bsetroot_LDADD = ../src/BaseDisplay.o ../src/Color.o ../src/GCCache.o ../src/Tex
MAINTAINERCLEANFILES = Makefile.in
distclean-local:
rm -f *\~
rm -f *\~ .\#*
# local dependencies