Рисование границы окна в Python xlib

Я работаю над оконным менеджером, написанным с использованием привязок Python xlib, и я (первоначально )пытаюсь имитировать поведение dwm более питоническим способом. Я получил многое из того, что мне нужно, но у меня возникли проблемы с использованием встроенной в X функции границы окна для указания фокуса окна.

Предполагая, что у меня есть экземпляр класса окна Xlib и я правильно читаю документацию, это должно делать то, что я хочу сделать (по крайней мере, на данный момент)-установить границу окна ранее существовавшего окна к яркому цвету и установите ширину границы на 2 пикселя.

def set_active_border(self, window):
    border_color = self.colormap.alloc_named_color(\
        "#ff00ff").pixel
    window.change_attributes(None,border_pixel=border_color,
           border_width = 2 )
    self.dpy.sync()

Однако я ничего не получаю от этого -Я могу добавить операторы печати, чтобы доказать, что моя программа действительно выполняет функцию обратного вызова, которую я связал с событием, но я не получаю абсолютно никакого изменения цвета на границе. Может ли кто-нибудь определить, что именно мне здесь не хватает? Я могу вставить более полный пример, если это поможет. Я не совсем уверен, что так и будет, поскольку это единственный бит, который обрабатывает границу.

5
задан bbenne10 21 April 2012 в 21:36
поделиться