亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? windows.c

?? 安裝DDD之前
?? C
?? 第 1 頁 / 共 4 頁
字號:
	if ((tmp->flags & ICONIFIED))	{	    wins[(*count)++] = tmp->icon_w;	    wins[(*count)++] = tmp->icon_pixmap_w;	}    }}/* * lower our children before ourselves */static voidlower_children(MwmWindow *win){    MwmWindow *tmp;    if (win == NULL)	return;    for (tmp = win; tmp != NULL; tmp = tmp->next)    {	if (tmp->child)	    lower_children(tmp->child);	XLowerWindow(dpy, tmp->w);    }}/* * Decorates all windows at start-up */voidWIN_CaptureWindows(ScreenInfo *scr){    unsigned int i, j;    unsigned int nchildren;    Window root, parent, *children;    PPosOverride = True;    if (!XQueryTree(dpy, scr->root_win, &root, &parent, &children, &nchildren))	return;    /*     * weed out icon windows     */    for (i = 0; i < nchildren; i++)    {	if (children[i])	{	    XWMHints *wmhintsp = XGetWMHints(dpy, children[i]);	    if (wmhintsp)	    {		if (wmhintsp->flags & IconWindowHint)		{		    for (j = 0; j < nchildren; j++)		    {			if (children[j] == wmhintsp->icon_window)			{			    children[j] = None;			    break;			}		    }		}		XFree((char *)wmhintsp);	    }	}    }    /*     * map all of the non-override windows     */    for (i = 0; i < nchildren; i++)    {	if (children[i] && mapped_not_override(scr, children[i]))	{	    /* Why the unmap? MLM */	    /* Answering my own question:  if the unmap isn't there, when	     * the window manager restarts, any transients lying around never	     * get they're MAPPED flag set (no map event, so they don't go	     * through normal channels.  I'm not happy with this, but for now	     * I'm going to keep it.  Actually, it should be ok as long as	     * any transient children aren't modal.  If they are, we'll need	     * to fixup the window trees based on that modality after the	     * capture procedure.	     */	    XUnmapWindow(dpy, children[i]);	    WIN_MapWindow(scr, children[i]);	}    }    isIconicState = DontCareState;    if (nchildren > 0)	XFree((char *)children);    /* after the windows already on the screen are in place,     * don't use PPosition */    PPosOverride = False;}/* * release window decorations when exiting */voidWIN_ReleaseWindows(ScreenInfo *scr){    MwmWindow *tmp;		/* temp mwm window structure */    /*     * remove the frame components from all the windows     */    XGrabServer(dpy);    if (scr->pager_win != None)	XDestroyWindow(dpy, scr->pager_win);    COLOR_InstallWindowColorMap(scr, &scr->mwm_root);	/* force reinstall */    for (tmp = scr->mwm_root.next; tmp != NULL; tmp = tmp->next)	release_window(scr, tmp);    MENU_DestroyMenus(scr);    XUngrabServer(dpy);    XSetInputFocus(dpy, PointerRoot, RevertToPointerRoot, CurrentTime);    XSync(dpy, 0);}/* * find the MwmWindow structure associated with a Window */MwmWindow *WIN_WindowToStruct(ScreenInfo *scr, Window target){    MwmWindow *t, *tmp_win = 0;    tmp_win = NULL;    for (t = scr->mwm_root.next; t != NULL; t = t->next)    {	if (t->pager_view == target)	{	    tmp_win = t;	}    }    return tmp_win;}/*  * set the focus window in a window tree */voidWIN_SetFocusInTree(MwmWindow *leaf){    MwmWindow *root;    root = MISC_RootOfTree(leaf);    if (root)	root->focus_in_tree = leaf;}/* * Sets the input focus to the indicated window. */voidWIN_SetFocus(ScreenInfo *scr, Window w, MwmWindow *Fw){    int i;    /* XmEXPLICIT keyboard focus policy queue manipulation */    if (Fw && Fw != scr->mwm_focus && Fw != &scr->mwm_root)    {	MwmWindow *anc;	anc = Fw->ancestor;	MISC_RemoveFromTree(scr, Fw);	MISC_AddToTree(scr, Fw);	anc = MISC_RootOfTree(Fw);	if (Fw != anc->focus_in_tree)	{	    Fw = anc->focus_in_tree;	    /* Without the if statement below, we can crash here.	     * Danny 16/4/97 */	    if (Fw)            {		w = Fw->w;            }	}    }    if (Mwm.number_of_screens > 1)    {	XQueryPointer(dpy, scr->root_win, &JunkRoot, &JunkChild,		      &JunkX, &JunkY, &JunkX, &JunkY, &JunkMask);	if (JunkRoot != scr->root_win)	{	    if ((Mwm.keyboard_focus_policy == XmEXPLICIT) &&		(scr->mwm_grabbing != NULL))	    {		/* Need to grab buttons for focus window */		XSync(dpy, 0);		for (i = 0; i < 3; i++)		    if (scr->buttons2grab & (1 << i))		    {			XGrabButton(dpy, (i + 1), 0, scr->mwm_grabbing->frame, True,				  ButtonPressMask, GrabModeSync, GrabModeAsync,				    None, scr->cursors[SYS_CURS]);			XGrabButton(dpy, (i + 1), LockMask, scr->mwm_grabbing->frame, True,				  ButtonPressMask, GrabModeSync, GrabModeAsync,				    None, scr->cursors[SYS_CURS]);		    }		scr->mwm_focus = NULL;		scr->mwm_grabbing = NULL;		XSetInputFocus(dpy, scr->no_focus_win, RevertToParent, MISC_FetchEventTime());	    }	    return;	}    }    if ((Fw != NULL) && (Fw->Desk != scr->current_desk))    {	Fw = NULL;	w = scr->no_focus_win;    }    if ((Mwm.keyboard_focus_policy == XmEXPLICIT) && (scr->mwm_grabbing != Fw))    {	/* need to grab all buttons for window that we are about to	 * unfocus */	if (scr->mwm_grabbing != NULL)	{	    XSync(dpy, 0);	    for (i = 0; i < 3; i++)		if (scr->buttons2grab & (1 << i))		{		    XGrabButton(dpy, (i + 1), 0, scr->mwm_grabbing->frame, True,			    ButtonPressMask, GrabModeSync, GrabModeAsync, None,				scr->cursors[SYS_CURS]);		    XGrabButton(dpy, (i + 1), LockMask, scr->mwm_grabbing->frame, True,			    ButtonPressMask, GrabModeSync, GrabModeAsync, None,				scr->cursors[SYS_CURS]);		}	    scr->mwm_grabbing = NULL;	}	/* if we do click to focus, remove the grab on mouse events that	 * was made to detect the focus change */	if ((Mwm.keyboard_focus_policy == XmEXPLICIT) && (Fw != NULL))	{	    for (i = 0; i < 3; i++)		if (scr->buttons2grab & (1 << i))		{		    XUngrabButton(dpy, (i + 1), 0, Fw->frame);		    XUngrabButton(dpy, (i + 1), LockMask, Fw->frame);		}	    scr->mwm_grabbing = Fw;	}    }    if ((Fw) && (Fw->flags & ICONIFIED) && (Fw->icon_w))    {	w = Fw->icon_w;	ICON_UpdateWindow(scr, Fw, True);    }    if (!((Fw) && (Fw->wmhints) && (Fw->wmhints->flags & InputHint) &&	  (Fw->wmhints->input == False)))    {        /* Window rw; */        /* int rt; */	/* Window will accept input focus */        /* MLM: 6/??/98.  A very weird thing can happen here.  We set         * the focus, but if you add a call just below here to XGetInputFocus(),         * you'll see that the focus has reverted to the old value.  I *think*         * this is due to the XSetInputFocus calls in the menu system -- I         * think there is a race condition where a dying application with         * a posted menu can reclaim the focus *after* their window manager         * info is gone (matte and decor), but before the application         * really terminates.  This manifests itself as a "missing" FocusIn         * event, but we receive the FocusOut event when the window finally         * goes away.  The (hack) fix for this is in events.c (see FocusOut         * in the event handler).         */	XSetInputFocus(dpy, w, RevertToParent, MISC_FetchEventTime());	scr->mwm_focus = Fw;    }    else if ((scr->mwm_focus) && (scr->mwm_focus->Desk == scr->current_desk))    {	/* Window doesn't want focus. Leave focus alone */	/* XSetInputFocus (dpy,scr->mwm_highlight->w , RevertToParent, MISC_FetchEventTime()); */    }    else    {	XSetInputFocus(dpy, scr->no_focus_win, RevertToParent, MISC_FetchEventTime());	scr->mwm_focus = NULL;    }    if ((Fw) && (Fw->flags & WM_TAKES_FOCUS))	PROP_SendClientMessage(w, XA_WM_TAKE_FOCUS, MISC_FetchEventTime());    XSync(dpy, 0);}/* * Moves focus to specified window  */voidWIN_ChangeFocus(ScreenInfo *scr, MwmWindow *t, int DeIconifyOnly){    int dx, dy;    int cx, cy;    int x, y;    if (t == (MwmWindow *)0)	return;    if (t->Desk != scr->current_desk)	DT_ChangeDesks(scr, 0, t->Desk);    if (t->flags & ICONIFIED)    {	cx = t->icon_xl_loc + t->icon_w_width / 2;	cy = t->icon_y_loc + t->icon_p_height +	    (scr->components[MWM_ICON].f_height + 6) / 2;    }    else    {	cx = t->frame_x + t->frame_width / 2;	cy = t->frame_y + t->frame_height / 2;    }    dx = (cx + scr->virt_x) / scr->d_width * scr->d_width;    dy = (cy + scr->virt_y) / scr->d_height * scr->d_height;    PAGER_MoveViewPort(scr, dx, dy, True);    if (t->flags & ICONIFIED)    {	x = t->icon_xl_loc + t->icon_w_width / 2;	y = t->icon_y_loc + t->icon_p_height +	    (scr->components[MWM_ICON].f_height + 6) / 2;    }    else    {	x = t->frame_x;	y = t->frame_y;    }    if (!(Mwm.keyboard_focus_policy == XmEXPLICIT))	XWarpPointer(dpy, None, scr->root_win, 0, 0, 0, 0, x + 2, y + 2);    WIN_Raise(scr, t);    /* If the window is still not visible, make it visible! */    if (((t->frame_x + t->frame_height) < 0) || (t->frame_y + t->frame_width < 0) ||	(t->frame_x > scr->d_width) || (t->frame_y > scr->d_height))    {	DEC_ConfigureDecorations(scr, t, 0, 0, t->frame_width, t->frame_height, False);	if (!(Mwm.keyboard_focus_policy == XmEXPLICIT))	    XWarpPointer(dpy, None, scr->root_win, 0, 0, 0, 0, 2, 2);    }    MISC_Ungrab(scr);    WIN_SetFocus(scr, t->w, t);}/* * Puts windows back where they were before mwm took over  */voidWIN_RestoreWithdrawn(ScreenInfo *scr, MwmWindow *tmp, Boolean restart){    int a, b, w2, h2;    unsigned int bw, mask;    XWindowChanges xwc;    if (!tmp)	return;    if (XGetGeometry(dpy, tmp->w, &JunkRoot, &xwc.x, &xwc.y,		     &JunkWidth, &JunkHeight, &bw, &JunkDepth))    {	XTranslateCoordinates(dpy, tmp->frame, scr->root_win, xwc.x, xwc.y,			      &a, &b, &JunkChild);	xwc.x = a + tmp->xdiff;	xwc.y = b + tmp->ydiff;	xwc.border_width = tmp->old_bw;	mask = (CWX | CWY | CWBorderWidth);	/* We can not assume that the window is currently on the screen.	 * Although this is normally the case, it is not always true.  The	 * most common example is when the user does something in an	 * application which will, after some amount of computational delay,	 * cause the window to be unmapped, but then switches screens before	 * this happens.  The XTranslateCoordinates call above will set the	 * window coordinates to either be larger than the screen, or negative.	 * This will result in the window being placed in odd, or even	 * unviewable locations when the window is remapped.  The followin code	 * forces the "relative" location to be within the bounds of the display.	 *	 * gpw -- 11/11/93	 *	 * Unfortunately, this does horrendous things during re-starts, 	 * hence the "if(restart) clause (RN) 	 *	 * Also, fixed so that it only does this stuff if a window is more than	 * half off the screen. (RN)	 */	if (!restart)	{	    /* Don't mess with it if its partially on the screen now */	    if ((tmp->frame_x < 0) || (tmp->frame_y < 0) ||		(tmp->frame_x >= scr->d_width) ||		(tmp->frame_y >= scr->d_height))	    {		w2 = (tmp->frame_width >> 1);		h2 = (tmp->frame_height >> 1);		if ((xwc.x < -w2) || (xwc.x > (scr->d_width - w2)))		{		    xwc.x = xwc.x % scr->d_width;		    if (xwc.x < -w2)			xwc.x += scr->d_width;		}		if ((xwc.y < -h2) || (xwc.y > (scr->d_height - h2)))		{		    xwc.y = xwc.y % scr->d_height;		    if (xwc.y < -h2)			xwc.y += scr->d_height;		}	    }	}	XReparentWindow(dpy, tmp->w, scr->root_win, xwc.x, xwc.y);	if ((tmp->flags & ICONIFIED))	{	    if (tmp->icon_w)		XUnmapWindow(dpy, tmp->icon_w);	    if (tmp->icon_pixmap_w)		XUnmapWindow(dpy, tmp->icon_pixmap_w);	}	XConfigureWindow(dpy, tmp->w, mask, &xwc);	XSync(dpy, 0);    }}/* * raise a window */voidWIN_Raise(ScreenInfo *scr, MwmWindow *t){    int count, i;    Window *wins;    MISC_SetTimer(0);    /* raise the target, at least */    count = 1;    count += count_transients(scr, t);    if ((t->flags & ICONIFIED))	count += 2;    if ((scr->pager_win) && !(t->flags & STICKY))	XRaiseWindow(dpy, t->pager_view);    wins = (Window *)XtMalloc(count * sizeof(Window));    i = 0;    /* now raise transients */    gather_transients(t, wins, &i);    if ((t->flags & ICONIFIED))    {	wins[i++] = t->icon_w;	wins[i++] = t->icon_pixmap_w;    }    wins[i++] = t->frame;    scr->mwm_last_raised = t;    if (i > 0)	XRaiseWindow(dpy, wins[0]);    XRestackWindows(dpy, wins, i);    XtFree((char *)wins);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
天天免费综合色| 国产.精品.日韩.另类.中文.在线.播放| 日韩一区和二区| 国产成人一级电影| 亚洲一区二区三区免费视频| 精品国产一区久久| 一区二区在线观看视频| 国产精品一区不卡| 欧美精品视频www在线观看| 国产精品天天看| 男男视频亚洲欧美| 欧美色图一区二区三区| 国产精品天天摸av网| 久久99久久精品| 欧美一卡二卡三卡| 亚洲亚洲人成综合网络| 色综合天天综合网天天看片| 久久你懂得1024| 狠狠久久亚洲欧美| 日韩视频免费观看高清在线视频| 亚洲一区在线视频观看| 91在线播放网址| 国产精品久久看| 成人久久18免费网站麻豆| 国产农村妇女毛片精品久久麻豆 | 亚洲一级在线观看| 99视频在线精品| 国产精品国产自产拍高清av王其| 国产成+人+日韩+欧美+亚洲| 2020日本不卡一区二区视频| 麻豆国产91在线播放| 91精品国产综合久久蜜臀 | 日本女人一区二区三区| 欧美亚洲尤物久久| 亚洲国产另类精品专区| 欧美日韩在线综合| 亚洲成人1区2区| 欧美日本在线播放| 日韩不卡免费视频| 日韩欧美aaaaaa| 麻豆精品蜜桃视频网站| 精品国产免费一区二区三区四区| 久久成人精品无人区| wwwwxxxxx欧美| 国产不卡在线一区| 亚洲男人电影天堂| 欧美在线观看视频在线| 一区二区三区四区不卡在线| 欧美日韩卡一卡二| 理论片日本一区| 国产欧美一区二区精品性| 国产白丝精品91爽爽久久| 国产精品久久久久婷婷二区次| 99久久99精品久久久久久| 亚洲精品成人a在线观看| 91精品国产色综合久久久蜜香臀| 久久精品噜噜噜成人88aⅴ| 国产午夜精品一区二区三区嫩草 | 在线观看国产一区二区| 亚洲国产精品尤物yw在线观看| 欧美日韩精品一区二区三区| 久久精品99国产精品日本| 国产精品天天看| 欧美日韩亚州综合| 国产一区二区三区在线看麻豆| 国产欧美日韩激情| 在线观看中文字幕不卡| 麻豆高清免费国产一区| 国产精品色噜噜| 欧美丰满少妇xxxxx高潮对白| 国产精品一区专区| 夜夜嗨av一区二区三区中文字幕| 日韩欧美国产一区二区三区| 99国产精品视频免费观看| 日本亚洲三级在线| 亚洲人成7777| 精品三级在线看| 色婷婷精品大在线视频| 国产露脸91国语对白| 一级日本不卡的影视| 久久久久久久久久电影| 欧美猛男gaygay网站| 不卡视频在线观看| 另类人妖一区二区av| 伊人性伊人情综合网| 国产午夜精品一区二区三区四区 | 欧美一级视频精品观看| 91在线播放网址| 国产传媒欧美日韩成人| 午夜精品免费在线| |精品福利一区二区三区| 精品免费日韩av| 6080午夜不卡| 色综合天天综合在线视频| 国产成人在线视频网址| 青青草97国产精品免费观看无弹窗版| 亚洲男女一区二区三区| 久久女同互慰一区二区三区| 欧美精品在欧美一区二区少妇| 99精品国产99久久久久久白柏 | 91麻豆精品视频| 国产成人精品影院| 另类小说色综合网站| 日日骚欧美日韩| 亚洲高清不卡在线观看| 亚洲激情中文1区| 亚洲色图第一区| 国产精品成人免费在线| 国产日韩欧美不卡在线| 久久久噜噜噜久久人人看| 欧美成人精品3d动漫h| 91精品国产综合久久精品| 欧美乱妇20p| 制服丝袜中文字幕一区| 91精品国产乱码久久蜜臀| 5566中文字幕一区二区电影| 欧美精品免费视频| 欧美一区二区三区的| 欧美一区二区久久| 精品久久久三级丝袜| 久久人人超碰精品| 国产丝袜美腿一区二区三区| 国产欧美精品一区二区三区四区| 久久伊人中文字幕| 国产精品福利在线播放| 亚洲免费在线视频一区 二区| 亚洲精品欧美专区| 午夜一区二区三区视频| 午夜精品久久久久久不卡8050| 婷婷久久综合九色综合绿巨人| 日本不卡中文字幕| 国产在线日韩欧美| 成a人片国产精品| 欧洲色大大久久| 91精品欧美福利在线观看| 日韩欧美激情在线| 国产精品美女久久久久久久久久久| 国产精品久久国产精麻豆99网站 | 91丨九色丨国产丨porny| 欧美在线你懂的| 精品伦理精品一区| 中文字幕一区在线观看视频| 亚洲午夜一区二区三区| 狠狠色狠狠色综合| 99re热视频精品| 欧美日韩在线播放一区| 欧美成人一区二区三区片免费 | 亚洲综合色婷婷| 看片的网站亚洲| 91啦中文在线观看| 91精品国产综合久久精品图片| 久久久美女艺术照精彩视频福利播放| 中文字幕在线一区| 奇米色777欧美一区二区| 国产成人av福利| 欧美日韩在线免费视频| 国产欧美日本一区视频| 午夜视频一区二区三区| 国产91精品免费| 91精品欧美久久久久久动漫| 国产精品久久影院| 看电视剧不卡顿的网站| 在线一区二区三区四区| 久久久天堂av| 日韩av中文字幕一区二区三区| 成人av综合一区| 欧美一级日韩不卡播放免费| 亚洲丝袜制服诱惑| 国产综合久久久久久鬼色| 在线观看免费成人| 国产精品久久久久婷婷二区次| 麻豆精品视频在线观看| 在线观看国产91| 国产日产亚洲精品系列| 捆绑调教美女网站视频一区| 欧美在线视频不卡| 中文字幕一区二区三区蜜月| 国产精品亚洲第一区在线暖暖韩国| 欧美日韩你懂得| 亚洲手机成人高清视频| 国产精品一区二区你懂的| 欧美一级高清大全免费观看| 亚瑟在线精品视频| 色综合久久综合网| 亚洲视频在线观看三级| 国产成人免费视频| 国产无遮挡一区二区三区毛片日本| 日韩vs国产vs欧美| 欧美精品久久天天躁| 亚洲国产欧美日韩另类综合 | 欧美在线一区二区| 中文字幕综合网| jlzzjlzz亚洲女人18| 国产三级一区二区| 国产裸体歌舞团一区二区| 日韩美女一区二区三区四区| 蜜桃精品视频在线观看| 日韩欧美亚洲另类制服综合在线| 日韩电影在线观看一区| 欧美精品乱人伦久久久久久|