From 26633f501d02097e27f54953ffa256b28c8bc366 Mon Sep 17 00:00:00 2001 From: A-Larsen Date: Tue, 13 Oct 2026 10:28:05 -0400 Subject: [PATCH] goto window dwm shortcut --- dwm | Bin 85552 -> 85552 bytes dwm.c | 36 ++++++++++++++++++++---------------- dwm.o | Bin 79608 -> 79760 bytes 3 files changed, 20 insertions(+), 16 deletions(-) diff --git a/dwm b/dwm index 3f6f18e39b18c7b835efc7ae6979c5fa409f6fe5..8c55f19b71f5ba7ade53ba457015fa78a2b09eff 100755 GIT binary patch delta 1826 zcmZuy3v5$W7(VBAW!>z$haKC5u?@-|fQ*93W7e!V@GuIt$XFR0biCXcMAVi?U=F-Y zx!e_k2OLD=GzKARaBvg5u4C;i5oQz#Br?IcC>dN}zy@&>RIdNI#el|UyXX9m@B5#( zZ9b@NhCdyS>Dh+VPY+GR`LX(u5lKH%D#qhEV@oh=Yw{OwXY{6Tt+J8EmeMl^uSg9V z<5299K1xe@7T=-%m*(RpNpCk|?4wzZjokCq()$jR1`kM~1)t!=qSXks=K^gI!$U5t zp&J&C=F)2D2MY(eIHv=+h*IER77 zJfN{oHFw%qBl+8Rfq*}m35m;-e`I9R5ui~?62P@p?RYlx5{pc_6=ZDGXf}!X`aP@) z(Q>{9j!95D)P3jzxJ`3bxvTlW8kUU5^^gx7!{B&|XKIylI~~`WF=Q_&s#l!^x$R_Y^DSvgxQ%Yf3sUr>O=0?LdZ-TNRNIXO8n;DZlM!pzGJ|MY!VcjU z5katL%1x{fF!{D4k@KsoaPomdb#^*td4@_Srt7vR;7= zNkGdOr)+`&ngY9Z+ zSt?st1ZSB$9x7l74no~9*mP)&5nzxtyoK_V(+sTTKm(Dh9wn}0)M21DD{|s_HG(?! zTpL8y+u$EgZ!gu3G+%F;Cr;RHSdYK4+5aGImh#PVt&tssH%b{10 zz)0Rw4I=Wu*TCjnIgJ*F8ir0|H3+{D;i9?-A_MhQ(%w*BT^TfQYXNdkVnzJ51B5La zWxB^C+?H>veYNbbgvwd9@B;K0Ss@*;{z>n!L?>?sV=xwsawT9RU#2gDiDm1My(}*5 zx1M+{M*%8de4r?0VT72O@Vz=B?d!-e96#F4Tg8ds^H-CdLK^6Rc+!t?hpy4g@qD{@tMY zfp+!})9!^^hjgvKR7>rH&G4Ipf6qz6UB0|nJZMZzXRU%yQWQcQNyW^Wb3eVDj|AB0rqr-k*$9Oy?3Lo{|n}|zO@cKqaG0uWI*EH44S}6#m@j Jn1j2yzX4t?!rA}; delta 1695 zcmYjR4NOy46u$SBNC7AgJ#qY9`K%A%ssjBaSIrJ02(_=ix(lrd&z()u%T>K<%7 zA0>{v$p}X07U!JF!uA${f>4GVGL}VWvQ1{faBe>Fw{a2w#@o5CS@flS=bU@a`OdlD zIeD#zw5{;d;fUsaNPU{A5vNB!P6}C%lOzY8&za;A(&4yJ*Z6jS-}Y~vo~n$7z*|zi z#xw;_mX5~9EyTxY$BIH+C`GwU7+2Dyf*oA2LTV|nXz&Rsu<|o(9D5C+?o@#7!SIsr zR?_W7v$!8C>EWU=?ra5ZD$d3Sr3=Nk!*L7kD;?l2l}Qa{yD=`2qBh>dxLkVpir2tB zaMG=wW77+rfTm+;T6htG|40?7)|>Jon(2Lq`zBvH<-Mxs26Ln%HTyK!CMDIajpi=T zk#>KW$Z>;d(vc=d60W7A?X&R)YV26FXCX93_%miA46iG>7Jgk(NVYcR4TNH9C#tTU zSzJu*epX22Kjsh;>1y^SMEHdWT3;1H$(}lw*JvFe!d1a!5uBDVdGs;h2*YyAMUbLx zGepVH|E4J2kcyUC2bNj`M2vP-p&Wp_VZzAkP_T<0_Rokr>|-tDS#;%O zZrCg~3y)S_+(>`+zf`sc!ko~sfe3v}n&r3yic%Z!EGHsZq;|j?PJGcVX1KktlNBJo z*e%mw3QV^K-WVJ36;g9H=0 zIqD%p5E)w0|KtPX&2*$I-dGBWPw{IwKqsF5v~aM3UDIhv?9a1gutk&8L;Bx+uq+N4wXTmFYG>+UYG`5CBf z%Vvc92DFhu%3Fa>>phn9U7w=xo#hO~Gnt6e=b%A!E=0?7_p?luAtEk_h9i3i3$(W< z!W*KdZl>-Y%j|OS5MlM3#K*JrO6-!qYETrB*MTL*9tF23M$zG2=9xZ|3-Vew0s2Yx zvYjlWTiqzb4|Jr*v?mXGgQ3j;BHR!MZHhZ8{!JKeKvWiG97jr0;Ib%!jLp?^*Y&2)#^%M?@GcNG9U;ROoRW z&g2uJUY_A?r@%zscp~mfl{e9*K>d_=S^vTa5r))xi!3Q~BVF8^w&%E@D0{P!=Q+l( zgBjHtWr^1!+?I1xPHlg=;ns{x*z?R-cBfw0^3wNM&kN3ivnLXq@|Sgr68fTj04~;U zfjq?O!Wu^rpY4$ef`-NwWo;jXGe6;P=%hb-6ZN!pvGeP5?cw-})bT5?nK6D@QJnDz z@vt_nAkTx$n2OM)Yl`BM*8H9xt9Jp$JZNSTs1STHVmesm zU^UZ=!D-qW&}yUy!D1~9a0cocYlRO!zMnD)*SDob;xUu)99s-{CWRryAp>e?vL@g- zJh^Ro0uB%3?g!fnlkqYQ#5d2zDLP!$);k|B3d8QU2bs7y4yQF0IBdata.l[2] == netatom[NetWMFullscreen]) setfullscreen(c, (cme->data.l[0] == 1 /* _NET_WM_STATE_ADD */ || (cme->data.l[0] == 2 /* _NET_WM_STATE_TOGGLE */ && !c->isfullscreen))); - } else if (cme->message_type == netatom[NetActiveWindow]) { -// /* cme->data.l[0] == 2 means it came from an external pager/script like wmctrl */ - if (cme->data.l[0] == 2) { - /* --- NATIVE TAG, MONITOR, AND MOUSE JUMP ON ACTIVATION --- */ - selmon = c->mon; - if (!(c->tags & selmon->tagset[selmon->seltags])) { - view(&(Arg){ .ui = c->tags }); - } - focus(c); - restack(selmon); + } else if (cme->message_type == netatom[NetActiveWindow]) { + /* cme->data.l[0] == 2 means it came from an external pager/script like wmctrl */ + if (cme->data.l[0] == 2) { + /* --- SAFE CROSS-MONITOR ACTIVATION --- */ + if (c->mon != selmon) { + unfocus(selmon->sel, 0); + selmon = c->mon; + } + if (!(c->tags & selmon->tagset[selmon->seltags])) { + view(&(Arg){ .ui = c->tags }); + } - /* Optional: Warp cursor to the center of the target monitor */ - XWarpPointer(dpy, None, root, 0, 0, 0, 0, - selmon->wx + selmon->ww / 2, - selmon->wy + selmon->wh / 2); - /* ------------------------------------------------------- */ + /* Warp pointer first to prevent focus-follows-mouse race conditions */ + XWarpPointer(dpy, None, root, 0, 0, 0, 0, + selmon->wx + selmon->ww / 2, + selmon->wy + selmon->wh / 2); - } else if (c != selmon->sel && !c->isurgent) + focus(c); + XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime); + restack(selmon); + /* ------------------------------------- */ + } else if (c != selmon->sel && !c->isurgent) seturgent(c, 1); } } diff --git a/dwm.o b/dwm.o index ab42e77222eefffdb38a70c64f4fa8baff240949..265338e59e73bf78fd5111349466e80a5050f56d 100644 GIT binary patch delta 1725 zcmZ`(ZA@EL7(VZ{UAvN9D2r>0`(U$0_iH>Er8b3B4@it1b1BIaM}2?h#xE}~D@m185~@x~-YMkCcnj&04=IVy?>_cMLzmrmMM*3q zOzy-%w<&jVNu;e2!Uq0S>+ZdYYq_d9!DWUi&38#j?iRt1X$Y1Rzm#OX+xn<-pXnYC zq2ivj%BdnHe!kz;&1rz`{H4ey_<;9E%B03={&K{@zl~VnIX)W+NVlhW zaqB^8>aWa^)-t$jVwk#8_sdI%xllq6vJDd7-@9?wvvPI2T-PWo z56TT8*((KYvNI@`1ZC@@$vbvJ9dq9moU zuQkX{<7P8BLPL63gaULmbc?E;Um@)qgB}d}oZ9V`5`EIbZku#owE3G>zD?~4`g()@ zAA|n5fxm9xKh$_!FoWIo#R^5|(7p;Bt{aB%HA9Uh3{p5`jSxpBMy)XH&|%=0D3;&C z))n|(9Hes4hhQOh7PA6cBG!l2LwL7aK#`dkipDf_>cR7fMsE6x}9xlAg zMof$FV{KY_5xzkyzX5tt#Dra{3SP%sLj0317NboX#Mg1NmBgbsBHR>)g`3yV&-f}K z*B|0TA*^jK%9tJ`Op2$0^XwcnH~#zp&6vc z7{C0&M*PSJPTQ$Tt%h?yUiCo$2GCv!wNiNp9;k#GTX}~TK53?ub$F%{%IRpbBoWFT zQS+t{w`A_4tlbDvAQF=;3_rq_ zlG$XX#MNBmnK1_DACRGmLP@5ZlA@Rhe+@qtXJP=Op_@Sk{%`@pJonvKb0yhLUe7z{ z_i@fWFU|aATfA(`R71nDnj`IykV3IazCTj^zb2# zu{7@#zlM>THBv=XXKQwkv<$cdXN=UP)IHwRCa*2OaC2$NNS)8WKSwd$C|LRMPkgrV z8OI-cjI=4s)_1-Qu$Q0dTD|_p5#l9t15a8QX^oWGF8^WfKZ{MNUyanCdEu7K?S9xu z@AcaAIqr>ywC8fXJKCm|T+belR=_I9gzR6Mr#L(vp^4dmT}-qudufXew8klZxw{g+ z;m+6>n(Hk8Hs*sj`L&pLMf`iwZ(3Y6zr?-qE_jI##UJD)Ju7%(mkq~);Nq^Hl58%X z^Xn~SeA*=@Vr&NZTch_sx<_w#R*$@(8yoeOX5Fv7;?&EZ(p^ou{psQ^y}ZeMC3-JC z<^1>2ZM1{t%;QA{<)8AwOi%VgX0g~eL)$lxjWLY@3wFvhX)cekV^)1CmeoGccfe!l zE`l;>li_6<`mv9Sp8XwCE7m|V_OVRadpIsMhb8%IN&e0v3*vQp=u?{Ks)YYh;2R3; z!>xBxs~y&uLVZnv-#`%X0R>)C;Bh=f@YYW(SPXhvfu|MOT3SqDrn5@@rox|FroIvP z-9;DPjI9(r+q+0Yr?8e2GG&93HDa;?CzoN}TBiO4UKHkSQR!ANFYJ69y6rTA9s5M6 zz$OZwsxAK~|6om0ZL&P|7A%&!O1b_!I4;x&6}U=)U&M0)?(ddvLS3i8T*6}t>{H;w z7;w;ppPQ`a^A@Xco%O^N=c=OC6!op!_+u7-4OThHwHi;6x##(qbP=PelSlE2=)FsZ zAyeZSR>)zc)koM$mY%OHxG-U*v}Qk=>WZHgbwpAB7Q^FCn1y>MQ^nA62L$k<4x??&=9okfEa-kefmIW%^(ofinr|^GF+*Y5m`ka`Y^Fs&FhYr+2y|dvzc}k1^ z9wcWz9$$%(AXE!dkfe{`1O+WR#G&WDcS8j9VoeCb?!=HBWYL