c - Xlib:如何检查窗口是否最小化?

标签 c x11 xlib xorg windowing

如何使用 xlib 的 C 接口(interface)检查窗口是否已最小化?

编辑:这段代码应该有效吗?

int window_is_minimized(Display *display, Window window) {
    Atom actual_type;
    int actual_format;
    unsigned long i, num_items, bytes_after;
    Atom *atoms;

    atoms=NULL;

    XGetWindowProperty(display, window, vdl_x11_usefull_atoms->_NET_WM_STATE, 0, 1024, False, XA_ATOM, &actual_type, &actual_format, &num_items, &bytes_after, (unsigned char**)&atoms);

    for(i=0; i<num_items; ++i) {
        if(atoms[i]==vdl_x11_usefull_atoms->_NET_WM_STATE_HIDDEN) {
            XFree(atoms);
            return 1;
        }
    }
    XFree(atoms);
    return 0;
}

最佳答案

关于c - Xlib:如何检查窗口是否最小化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7365256/

相关文章:

c++ - xcb 忽略重复键

C - Xlib - 使用 XGetWindowProperty 作为窗口标题的 BadWindow 错误

c - 通过开罗表面绘画时清除 X 窗口的正确方法是什么

c - 如何使用 void * 数据创建结构体?

opengl - 无法设置GLXContext

qt - x11 限制鼠标移动

c++ - 使用 XGrabKey 或 XGrabKeyboard 重定向键盘输入

c - C中带指针的for循环

检查#warning预处理器的可用性

c - 为什么 `accept(2)` 需要 `sockaddr` 长度作为单独的指针?