Esempio n. 1
0
def get_workspace(window, ewmh: EWMH) -> int:
    """
    Return the given window's workspace number or -1 if the window
    is invalid or is missing the required _NET_WM_DESKTOP property.

    :param window: A window whose workspace number to get
    :param ewmh: An instance of EWMH for workspace retrieval
    :return: The window's workspace number or -1 if missing
    """
    try:
        return ewmh.getWmDesktop(window)
    except Xlib.error.BadWindow:
        logging.info('Bad window (id: %s)', window.id)
    except TypeError:
        logging.warning('Window (id: %s) has no workspace number.', window.id)

    return -1
Esempio n. 2
0
import classes.Window as Window
from ewmh import EWMH
from Xlib.display import Display

import time

ewmh = EWMH()

NewWindow = Window.Window

windows = []
try:
    for window in ewmh.getClientList():
        if ewmh.getWmDesktop(window) == 2:
            windows.append(window)
except (TypeError):
    pass

display = Display()

window = NewWindow()
data = windows[0].get_geometry()
print(data)
window.init(display, windows[0], data.x, data.y, data.width, data.height)
window.debug()
window.set(300, 300, 200, 200)
window.set_last_update()
window.debug()
while True:
    time.sleep(0.1)
    window.update()