Ejemplo n.º 1
0
void focus_desktop(monitor_t *m, desktop_t *d)
{
	focus_monitor(m);

	show_desktop(d);
	if (m->desk != d) {
		hide_desktop(m->desk);
	}

	m->desk = d;
	ewmh_update_current_desktop();

	put_status(SBSC_MASK_DESKTOP_FOCUS, "desktop_focus %s %s\n", m->name, d->name);
}
Ejemplo n.º 2
0
void focus_desktop(monitor_t *m, desktop_t *d)
{
	focus_monitor(m);

	if (d == mon->desk)
		return;

	PRINTF("focus desktop %s\n", d->name);

	show_desktop(d);
	hide_desktop(mon->desk);

	mon->desk = d;

	ewmh_update_current_desktop();
	put_status();
}
Ejemplo n.º 3
0
void focus_desktop(monitor_t *m, desktop_t *d)
{
	bool changed = (m != mon || m->desk != d);

	focus_monitor(m);

	if (m->desk != d) {
		if (focus_follows_pointer) {
			listen_enter_notify(d->root, false);
		}
		show_desktop(d);
		hide_desktop(m->desk);
		if (focus_follows_pointer) {
			listen_enter_notify(d->root, true);
		}
		m->desk = d;
	}

	if (changed) {
		ewmh_update_current_desktop();
		put_status(SBSC_MASK_DESKTOP_FOCUS, "desktop_focus 0x%08X 0x%08X\n", m->id, d->id);
	}
}