Lines Matching refs:pWMInfo

123     WMInfoPtr pWMInfo;  member
130 WMInfoPtr pWMInfo; member
142 static WMMsgNodePtr PopMessage(WMMsgQueuePtr pQueue, WMInfoPtr pWMInfo);
148 GetWindowName(WMInfoPtr pWMInfo, xcb_window_t iWin, char **ppWindowName);
154 UpdateName(WMInfoPtr pWMInfo, xcb_window_t iWindow);
161 winInitMultiWindowWM(WMInfoPtr pWMInfo, WMProcArgPtr pProcArg);
165 PreserveWin32Stack(WMInfoPtr pWMInfo, xcb_window_t iWindow, UINT direction);
172 winApplyHints(WMInfoPtr pWMInfo, xcb_window_t iWindow, HWND hWnd, HWND * zstyle);
274 PopMessage(WMMsgQueuePtr pQueue, WMInfoPtr pWMInfo) in PopMessage() argument
355 Xutf8TextPropertyToString(WMInfoPtr pWMInfo, xcb_icccm_get_text_property_reply_t *xtp) in Xutf8TextPropertyToString() argument
360 (xtp->encoding == pWMInfo->atmUtf8String)) { // UTF-8 ISO 10646 in Xutf8TextPropertyToString()
379 GetWindowName(WMInfoPtr pWMInfo, xcb_window_t iWin, char **ppWindowName) in GetWindowName() argument
381 xcb_connection_t *conn = pWMInfo->conn; in GetWindowName()
393 cookie = xcb_get_property(pWMInfo->conn, FALSE, iWin, in GetWindowName()
394 pWMInfo->atmNetWmName, in GetWindowName()
396 reply = xcb_get_property_reply(pWMInfo->conn, cookie, NULL); in GetWindowName()
417 pszWindowName = Xutf8TextPropertyToString(pWMInfo, &reply); in GetWindowName()
436 pszClientMachine = Xutf8TextPropertyToString(pWMInfo, &reply); in GetWindowName()
476 IsWmProtocolAvailable(WMInfoPtr pWMInfo, xcb_window_t iWindow, xcb_atom_t atmProtocol) in IsWmProtocolAvailable() argument
481 xcb_connection_t *conn = pWMInfo->conn; in IsWmProtocolAvailable()
483 cookie = xcb_icccm_get_wm_protocols(conn, iWindow, pWMInfo->ewmh.WM_PROTOCOLS); in IsWmProtocolAvailable()
522 getHwnd(WMInfoPtr pWMInfo, xcb_window_t iWindow) in getHwnd() argument
528 cookie = xcb_get_property(pWMInfo->conn, FALSE, iWindow, pWMInfo->atmPrivMap, in getHwnd()
530 reply = xcb_get_property_reply(pWMInfo->conn, cookie, NULL); in getHwnd()
578 GetClassNames(WMInfoPtr pWMInfo, xcb_window_t iWindow, char **res_name, in GetClassNames() argument
586 cookie1 = xcb_icccm_get_wm_class(pWMInfo->conn, iWindow); in GetClassNames()
587 if (xcb_icccm_get_wm_class_reply(pWMInfo->conn, cookie1, &reply1, in GetClassNames()
598 cookie2 = xcb_icccm_get_wm_name(pWMInfo->conn, iWindow); in GetClassNames()
599 if (xcb_icccm_get_wm_name_reply(pWMInfo->conn, cookie2, &reply2, NULL)) { in GetClassNames()
613 UpdateName(WMInfoPtr pWMInfo, xcb_window_t iWindow) in UpdateName() argument
617 hWnd = getHwnd(pWMInfo, iWindow); in UpdateName()
622 if (!IsOverrideRedirect(pWMInfo->conn, iWindow)) { in UpdateName()
626 GetWindowName(pWMInfo, iWindow, &pszWindowName); in UpdateName()
651 UpdateIcon(WMInfoPtr pWMInfo, xcb_window_t iWindow) in UpdateIcon() argument
656 hWnd = getHwnd(pWMInfo, iWindow); in UpdateIcon()
661 if (!IsOverrideRedirect(pWMInfo->conn, iWindow)) { in UpdateIcon()
666 GetClassNames(pWMInfo, iWindow, &res_name, &res_class, &window_name); in UpdateIcon()
673 winUpdateIcon(hWnd, pWMInfo->conn, iWindow, hIconNew); in UpdateIcon()
682 UpdateStyle(WMInfoPtr pWMInfo, xcb_window_t iWindow) in UpdateStyle() argument
688 hWnd = getHwnd(pWMInfo, iWindow); in UpdateStyle()
693 winApplyHints(pWMInfo, iWindow, hWnd, &zstyle); in UpdateStyle()
722 UpdateState(WMInfoPtr pWMInfo, xcb_window_t iWindow) in UpdateState() argument
728 hWnd = getHwnd(pWMInfo, iWindow); in UpdateState()
741 PreserveWin32Stack(WMInfoPtr pWMInfo, xcb_window_t iWindow, UINT direction)
748 hWnd = getHwnd(pWMInfo, iWindow);
765 XRaiseWindow(pWMInfo->pDisplay, xWindow);
767 XLowerWindow(pWMInfo->pDisplay, xWindow);
784 WMInfoPtr pWMInfo = pProcArg->pWMInfo; in winMultiWindowWMProc() local
787 winInitMultiWindowWM(pWMInfo, pProcArg); in winMultiWindowWMProc()
798 pNode = PopMessage(&pWMInfo->wmMsgQueue, pWMInfo); in winMultiWindowWMProc()
825 xcb_configure_window(pWMInfo->conn, pNode->msg.iWindow, in winMultiWindowWMProc()
830 PreserveWin32Stack(pWMInfo, pNode->msg.iWindow, GW_HWNDPREV); in winMultiWindowWMProc()
838 xcb_configure_window(pWMInfo->conn, pNode->msg.iWindow, in winMultiWindowWMProc()
845 xcb_change_property(pWMInfo->conn, XCB_PROP_MODE_REPLACE, in winMultiWindowWMProc()
846 pNode->msg.iWindow, pWMInfo->atmPrivMap, in winMultiWindowWMProc()
854 xcb_change_property(pWMInfo->conn, XCB_PROP_MODE_REPLACE, in winMultiWindowWMProc()
855 pNode->msg.iWindow, pWMInfo->atmPrivMap, in winMultiWindowWMProc()
859 UpdateName(pWMInfo, pNode->msg.iWindow); in winMultiWindowWMProc()
860 UpdateIcon(pWMInfo, pNode->msg.iWindow); in winMultiWindowWMProc()
861 UpdateStyle(pWMInfo, pNode->msg.iWindow); in winMultiWindowWMProc()
879 xcb_unmap_window(pWMInfo->conn, pNode->msg.iWindow); in winMultiWindowWMProc()
885 if (IsWmProtocolAvailable(pWMInfo, in winMultiWindowWMProc()
887 pWMInfo->atmWmDelete)) in winMultiWindowWMProc()
888 SendXMessage(pWMInfo->conn, in winMultiWindowWMProc()
890 pWMInfo->atmWmProtos, pWMInfo->atmWmDelete); in winMultiWindowWMProc()
892 xcb_kill_client(pWMInfo->conn, pNode->msg.iWindow); in winMultiWindowWMProc()
912 cookie = xcb_icccm_get_wm_hints(pWMInfo->conn, pNode->msg.iWindow); in winMultiWindowWMProc()
913 if (xcb_icccm_get_wm_hints_reply(pWMInfo->conn, cookie, &hints, in winMultiWindowWMProc()
920 xcb_set_input_focus(pWMInfo->conn, XCB_INPUT_FOCUS_POINTER_ROOT, in winMultiWindowWMProc()
923 if (IsWmProtocolAvailable(pWMInfo, in winMultiWindowWMProc()
925 pWMInfo->atmWmTakeFocus)) in winMultiWindowWMProc()
926 SendXMessage(pWMInfo->conn, in winMultiWindowWMProc()
928 pWMInfo->atmWmProtos, pWMInfo->atmWmTakeFocus); in winMultiWindowWMProc()
934 UpdateName(pWMInfo, pNode->msg.iWindow); in winMultiWindowWMProc()
938 UpdateIcon(pWMInfo, pNode->msg.iWindow); in winMultiWindowWMProc()
944 if (IsOverrideRedirect(pWMInfo->conn, pNode->msg.iWindow)) in winMultiWindowWMProc()
947 UpdateStyle(pWMInfo, pNode->msg.iWindow); in winMultiWindowWMProc()
952 UpdateState(pWMInfo, pNode->msg.iWindow); in winMultiWindowWMProc()
965 xcb_flush(pWMInfo->conn); in winMultiWindowWMProc()
969 xcb_generic_event_t *event = xcb_poll_for_event(pWMInfo->conn); in winMultiWindowWMProc()
983 int e = xcb_connection_has_error(pWMInfo->conn); in winMultiWindowWMProc()
992 pthread_cond_destroy(&pWMInfo->wmMsgQueue.pcNotEmpty); in winMultiWindowWMProc()
995 pthread_mutex_destroy(&pWMInfo->wmMsgQueue.pmMutex); in winMultiWindowWMProc()
1286 winSendMessageToWM(pProcArg->pWMInfo, &msg); in winMultiWindowXMsgProc()
1303 winSendMessageToWM(pProcArg->pWMInfo, &msg); in winMultiWindowXMsgProc()
1314 winSendMessageToWM(pProcArg->pWMInfo, &msg); in winMultiWindowXMsgProc()
1330 winSendMessageToWM(pProcArg->pWMInfo, &msg); in winMultiWindowXMsgProc()
1357 WMInfoPtr pWMInfo = malloc(sizeof(WMInfoRec)); in winInitWM() local
1361 if (pArg == NULL || pWMInfo == NULL || pXMsgArg == NULL) { in winInitWM()
1364 free(pWMInfo); in winInitWM()
1371 ZeroMemory(pWMInfo, sizeof(WMInfoRec)); in winInitWM()
1375 *ppWMInfo = pWMInfo; in winInitWM()
1379 pArg->pWMInfo = pWMInfo; in winInitWM()
1383 if (!InitQueue(&pWMInfo->wmMsgQueue)) { in winInitWM()
1397 pXMsgArg->pWMInfo = pWMInfo; in winInitWM()
1418 winInitMultiWindowWM(WMInfoPtr pWMInfo, WMProcArgPtr pProcArg) in winInitMultiWindowWM() argument
1462 pWMInfo->conn = xcb_connect_to_display_with_auth_info(pszDisplay, in winInitMultiWindowWM()
1464 if (xcb_connection_has_error(pWMInfo->conn)) { in winInitMultiWindowWM()
1474 while (xcb_connection_has_error(pWMInfo->conn) && iRetries < WIN_CONNECT_RETRIES); in winInitMultiWindowWM()
1477 if (xcb_connection_has_error(pWMInfo->conn)) { in winInitMultiWindowWM()
1487 pWMInfo->atmWmProtos = intern_atom(pWMInfo->conn, "WM_PROTOCOLS"); in winInitMultiWindowWM()
1488 pWMInfo->atmWmDelete = intern_atom(pWMInfo->conn, "WM_DELETE_WINDOW"); in winInitMultiWindowWM()
1489 pWMInfo->atmWmTakeFocus = intern_atom(pWMInfo->conn, "WM_TAKE_FOCUS"); in winInitMultiWindowWM()
1490 pWMInfo->atmPrivMap = intern_atom(pWMInfo->conn, WINDOWSWM_NATIVE_HWND); in winInitMultiWindowWM()
1491 pWMInfo->atmUtf8String = intern_atom(pWMInfo->conn, "UTF8_STRING"); in winInitMultiWindowWM()
1492 pWMInfo->atmNetWmName = intern_atom(pWMInfo->conn, "_NET_WM_NAME"); in winInitMultiWindowWM()
1497 atoms_cookie = xcb_ewmh_init_atoms(pWMInfo->conn, &pWMInfo->ewmh); in winInitMultiWindowWM()
1498 if (xcb_ewmh_init_atoms_replies(&pWMInfo->ewmh, atoms_cookie, NULL)) { in winInitMultiWindowWM()
1505 pWMInfo->ewmh.WM_PROTOCOLS, in winInitMultiWindowWM()
1506 pWMInfo->ewmh._NET_SUPPORTED, in winInitMultiWindowWM()
1507 pWMInfo->ewmh._NET_SUPPORTING_WM_CHECK, in winInitMultiWindowWM()
1508 pWMInfo->ewmh._NET_CLOSE_WINDOW, in winInitMultiWindowWM()
1509 pWMInfo->ewmh._NET_WM_WINDOW_TYPE, in winInitMultiWindowWM()
1510 pWMInfo->ewmh._NET_WM_WINDOW_TYPE_DOCK, in winInitMultiWindowWM()
1511 pWMInfo->ewmh._NET_WM_WINDOW_TYPE_SPLASH, in winInitMultiWindowWM()
1512 pWMInfo->ewmh._NET_WM_STATE, in winInitMultiWindowWM()
1513 pWMInfo->ewmh._NET_WM_STATE_HIDDEN, in winInitMultiWindowWM()
1514 pWMInfo->ewmh._NET_WM_STATE_ABOVE, in winInitMultiWindowWM()
1515 pWMInfo->ewmh._NET_WM_STATE_BELOW, in winInitMultiWindowWM()
1516 pWMInfo->ewmh._NET_WM_STATE_SKIP_TASKBAR, in winInitMultiWindowWM()
1519 xcb_ewmh_set_supported(&pWMInfo->ewmh, pProcArg->dwScreen, in winInitMultiWindowWM()
1533 xcb_cursor_t cursor = xcb_generate_id(pWMInfo->conn); in winInitMultiWindowWM()
1534 xcb_font_t font = xcb_generate_id(pWMInfo->conn); in winInitMultiWindowWM()
1540 xcb_screen_t *root_screen = xcb_aux_get_screen(pWMInfo->conn, pProcArg->dwScreen); in winInitMultiWindowWM()
1546 xcb_open_font(pWMInfo->conn, font, sizeof("cursor"), "cursor"); in winInitMultiWindowWM()
1548 xcb_create_glyph_cursor(pWMInfo->conn, cursor, font, *mask_font, in winInitMultiWindowWM()
1552 xcb_change_window_attributes(pWMInfo->conn, window, mask, &value_list); in winInitMultiWindowWM()
1554 xcb_free_cursor(pWMInfo->conn, cursor); in winInitMultiWindowWM()
1555 xcb_close_font(pWMInfo->conn, font); in winInitMultiWindowWM()
1564 winSendMessageToWM(void *pWMInfo, winWMMessagePtr pMsg) in winSendMessageToWM() argument
1575 PushMessage(&((WMInfoPtr) pWMInfo)->wmMsgQueue, pNode); in winSendMessageToWM()
1652 winApplyHints(WMInfoPtr pWMInfo, xcb_window_t iWindow, HWND hWnd, HWND * zstyle) in winApplyHints() argument
1655 xcb_connection_t *conn = pWMInfo->conn; in winApplyHints()
1745 xcb_get_property_cookie_t cookie = xcb_ewmh_get_wm_window_type(&pWMInfo->ewmh, iWindow); in winApplyHints()
1746 if (xcb_ewmh_get_wm_window_type_reply(&pWMInfo->ewmh, cookie, &type, NULL)) { in winApplyHints()
1748 if (type.atoms[i] == pWMInfo->ewmh._NET_WM_WINDOW_TYPE_DOCK) { in winApplyHints()
1752 else if ((type.atoms[i] == pWMInfo->ewmh._NET_WM_WINDOW_TYPE_SPLASH) in winApplyHints()
1798 GetClassNames(pWMInfo, iWindow, &res_name, &res_class, &window_name); in winApplyHints()