From c35562a0349d5a763ace3a971cc207b193f25b5e Mon Sep 17 00:00:00 2001 From: ctrlaltca Date: Sun, 24 Dec 2023 13:54:32 +0100 Subject: [PATCH] Tray icon fixes (#2581) * tray icon: add different icons for light/dark theme, fix #1840 fix #1358 * Tray icon: fix tooltip not showing up on linux; fix #2339 * Tray icon: add support for rich text tooptips on linux using kde's appnotifier * Do not output html tooltips on win, mac --- src/modules/trayicon/CMakeLists.txt | 15 +-- src/modules/trayicon/kvi_dock_48.xcf | Bin 26370 -> 37553 bytes src/modules/trayicon/kvi_dock_dark_48-0.png | Bin 0 -> 3782 bytes src/modules/trayicon/kvi_dock_dark_48-1.png | Bin 0 -> 3380 bytes src/modules/trayicon/kvi_dock_dark_48-2.png | Bin 0 -> 3468 bytes src/modules/trayicon/kvi_dock_light_48-0.png | Bin 0 -> 3716 bytes src/modules/trayicon/kvi_dock_light_48-1.png | Bin 0 -> 3381 bytes src/modules/trayicon/kvi_dock_light_48-2.png | Bin 0 -> 3427 bytes src/modules/trayicon/kvi_dock_mono_22-0.png | Bin 731 -> 0 bytes src/modules/trayicon/kvi_dock_mono_22-1.png | Bin 815 -> 0 bytes src/modules/trayicon/kvi_dock_mono_22-2.png | Bin 819 -> 0 bytes src/modules/trayicon/kvi_dock_mono_48-0.png | Bin 3642 -> 0 bytes src/modules/trayicon/kvi_dock_mono_48-1.png | Bin 3217 -> 0 bytes src/modules/trayicon/kvi_dock_mono_48-2.png | Bin 3320 -> 0 bytes src/modules/trayicon/kvi_dock_normal_22-0.png | Bin 1440 -> 0 bytes src/modules/trayicon/kvi_dock_normal_22-1.png | Bin 962 -> 0 bytes src/modules/trayicon/kvi_dock_normal_22-2.png | Bin 968 -> 0 bytes src/modules/trayicon/libkvitrayicon.cpp | 123 +++++++++++------- src/modules/trayicon/libkvitrayicon.h | 25 +++- 19 files changed, 105 insertions(+), 58 deletions(-) create mode 100644 src/modules/trayicon/kvi_dock_dark_48-0.png create mode 100644 src/modules/trayicon/kvi_dock_dark_48-1.png create mode 100644 src/modules/trayicon/kvi_dock_dark_48-2.png create mode 100644 src/modules/trayicon/kvi_dock_light_48-0.png create mode 100644 src/modules/trayicon/kvi_dock_light_48-1.png create mode 100644 src/modules/trayicon/kvi_dock_light_48-2.png delete mode 100644 src/modules/trayicon/kvi_dock_mono_22-0.png delete mode 100644 src/modules/trayicon/kvi_dock_mono_22-1.png delete mode 100644 src/modules/trayicon/kvi_dock_mono_22-2.png delete mode 100644 src/modules/trayicon/kvi_dock_mono_48-0.png delete mode 100644 src/modules/trayicon/kvi_dock_mono_48-1.png delete mode 100644 src/modules/trayicon/kvi_dock_mono_48-2.png delete mode 100644 src/modules/trayicon/kvi_dock_normal_22-0.png delete mode 100644 src/modules/trayicon/kvi_dock_normal_22-1.png delete mode 100644 src/modules/trayicon/kvi_dock_normal_22-2.png diff --git a/src/modules/trayicon/CMakeLists.txt b/src/modules/trayicon/CMakeLists.txt index 256347bc32..e1e82ef25e 100644 --- a/src/modules/trayicon/CMakeLists.txt +++ b/src/modules/trayicon/CMakeLists.txt @@ -8,18 +8,15 @@ set(imageFiles kvi_dock_normal_16-0.png kvi_dock_normal_16-1.png kvi_dock_normal_16-2.png - kvi_dock_normal_22-0.png - kvi_dock_normal_22-1.png - kvi_dock_normal_22-2.png kvi_dock_normal_48-0.png kvi_dock_normal_48-1.png kvi_dock_normal_48-2.png - kvi_dock_mono_22-0.png - kvi_dock_mono_22-1.png - kvi_dock_mono_22-2.png - kvi_dock_mono_48-0.png - kvi_dock_mono_48-1.png - kvi_dock_mono_48-2.png + kvi_dock_dark_48-0.png + kvi_dock_dark_48-1.png + kvi_dock_dark_48-2.png + kvi_dock_light_48-0.png + kvi_dock_light_48-1.png + kvi_dock_light_48-2.png ) file(GLOB files "${CMAKE_CURRENT_SOURCE_DIR}/*.png") diff --git a/src/modules/trayicon/kvi_dock_48.xcf b/src/modules/trayicon/kvi_dock_48.xcf index ce75177de87874861d08974c9f36f585de8bb040..c134dc47bda0638158fe21de8b423ff0d420f2cb 100644 GIT binary patch literal 37553 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%0DFAf3F3`aCp%_ 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 diff --git a/src/modules/trayicon/kvi_dock_dark_48-0.png b/src/modules/trayicon/kvi_dock_dark_48-0.png new file mode 100644 index 0000000000000000000000000000000000000000..51984cb6c10bbf4d8514e7efea0615978484dddb GIT binary patch literal 3782 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 literal 0 HcmV?d00001 diff --git a/src/modules/trayicon/kvi_dock_dark_48-1.png b/src/modules/trayicon/kvi_dock_dark_48-1.png new file mode 100644 index 0000000000000000000000000000000000000000..0c7a5cc99e5fc9746e2ee27e84cb4315181d34a4 GIT binary patch literal 3380 zcmV-44a@S0P)rEQ~RPg@ws?@80zvJb3WRTd~h&a{XKapw1^Ke{AjMEf0Cf%kXatz6lYEvxv=OHe^8-h1qA`ob z5|N#qZ4lu3=by*0VZ$OiL;=(_Jar89Zvoy`ts%H?DW9G%8Iu0ZU`?iwMQ{@Vjx%76 z44kkG?L0Gkfy!85MvvBCGBPr37K?EKNs^GBo^Gw63XNHCH^ZG(3iFZAF+BYjz&=S) zP~TzK>+946F3v=LwI<&snCHy08`t- z!3Dp1P|DD=6AEf{ zmfxuHSNgOkAuV)1x9oO3SO?RF$4Cdvs3307>>YFCN|xDyCC0Vz%^T#!z7s?3fM z!nbHbL8iX5nQJYp7dWeGVR{#EE?)aSqg~Yy0i#Ec?p?WZ<@NOR^acPf01^QE#ful8 zIdteyDiLBuE!vU+*CpUl4e-<)t#1Xt`z|W$Ta&dWI1q *`k33U<$RDLfc`L}v>| zhMF-n*6nt;+U<6YMfLahv&hKEF==(IS!A+nFGJhkl_>P91B%mX;Dei?=}jdHC49hO zn??f`&@c^55*_oD9XK7O{C_4!iSuH}6U{}$Mc^V7Ag7*r0I=KbL_}Sp0}}`076aC? z44yhd;~#;(Y6k9R;2wtl8iwWqh56`L7;IBXoB2f(A^_R05F=T=Mocm&P7ywgv0MOU zrpS@8EIp25RzlK;42`Q9+&2hKtBvzw<}!@jWQ=?v0aT{XL_a=)Ozi-wM`_0SZj~Fq+EGR9|L@agR@bQFa${D)$GPq6y{#JmymFY3F7)Jh;3}8>=1KBPi z6ANKZoFu|s140xuleuGk*Up_gXEDZp5IN_ZNA2Fd`^SG}|7o14Ne+{J0JtwOw5Z@X zH!+`_ii(O@eVt*ZSt20fCBlde%G}QFfaek$&^j5woH}Vnk2V`ldk|tU=Z{AFWg@q4@Xk&hU{{45~eV5E0uh&ac zrcCLttgNgF1OjTNr?;}Rvz?!P_L=FNoSYomwQE-+5v3Ou6*&tE3N-J1J|7hq7n8%` z@ML9WIX7(B(9zP;a-4`9aJ$_{CQX{uw|ezzx^(Fh1p)!nP3F&^ANb^xPntOA_KJ#% zAF{Kv-G0B{ly>dfwX|leNRrm&-ug)zwAm>FJM}o16aw0M*si zRXI61UbA%rfdHL5caB!9SV5_&sSj&wYfquPyu3CqFV9CqJPwD$>-Bn%c6WC(A}X3Z zd2;WOBS%bWuU)%F6DLl5NJJkK(X-pOZEIY*bg3!rjvYHFCnu+eh!&`)wJ$9#Eie>6 z3l=Q!mzI_`O0~7MNwO@54TU0|PN!tGTAjm(4<`V7b8~ZhKK=AlQ`*$jR3s-SM{VD} zeLjG~CN(v7T_cO)_Pxy3n zbTE&{)3$c)+RKfNjSp|%zHLgkWXTfg*s){Q`uh46-QC?W`T6+=LMV1CaIbA>m^H;G@m$eB49>uv)Qn4;ll8ShK7*^1qG&S zo<4m#ke8R&$~iw9M66X+RpS#961W+?EX%lZ0W?yDzW*vwqtG&Jb>rIb)7`?qR>X%oSvTEQ&v_ssIzg-O~=olKTm0CX+1== zO;|5!Ggwc|c5^^{k-ptI*-gWENb=KF{pCzJP1^^lNKxUmU(!prx>RB-f z1?hiGef;S^dx2>yI(^cF7Q$;fCAxVJa@DSc2Ga}%)$P)t!9SqUYp>0L0SF=hE@mQ`-y=Q;Jw1oJ_q1E%m^i2e?SJ1c>{t2&PSp?+mo88Gp>(Hw^4UvGMXHi;_&grxvvQ3(7u8Nw!* z6#JUSmLLTA8R`pw{_6zm(+s2505Q{nuu%Z_1HM+JXX*S3AWlZ#`58W7hDv=m0qe`b z6Jqe!0#Uyk9C9-Nm~=PPmFOyCXeuH^Br+s_0a%8SImG4WU5vlo`CKjU%%2SjOSSX; z46SpX7zkkaS0VFrE)sg9!9{zHs=dlT1Cq+TSjOo!ppRhNwrzVn2OnsAqj+-OwI>Lj z6GN>}-8a=DWEwOrF!7#1FN_$^b8>PXEn2jQr=_JusOvKT{;OB7ddthprBeDKMq@S> z!qeX_5}lHq5FY{Zv?v%!qM0!D8!Gx zH(p`{BMl$Sq4|@w*G1F&IS=Qd`rXi-4lWow4{-e#=-35BO=pl|2~715GbkY*>yx(E z#SY7JV_$NybeU?!qAh{ z-=m2p;q`jGmo8n3m@;LGMu3`{8u)xZFL6Xbcgw?~NzJed18f{2wp>+^Ago!TEJ62E z0Yfn}$W^OZVM72WPoC^E>sFMOmLek~!}qw>JWM)se28ep0AS*EB@gI-BVoYnFji0c z8=G^_-2Hap!iCeujvX5z%d$niUX`1gnmmUN9jcmiZR{LVC7D!cgVh+pp}uA6k3D|j zpWD3F+1dHd$&)81)Ya7`0>Jq3<6CFWoOwGTAz?dX?9?y0-~R!7v{UA*VRX{~0000< KMNUMnLSTYqW|)Ip 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 Rw!lp!fL7H;Rj63L_#g9J8|?r9 literal 0 HcmV?d00001 diff --git a/src/modules/trayicon/kvi_dock_light_48-1.png b/src/modules/trayicon/kvi_dock_light_48-1.png new file mode 100644 index 0000000000000000000000000000000000000000..6d28cc609c30e7ffa97c6646df711f4b039bd2bf GIT binary patch literal 3381 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 FV1j3ibC>`C literal 0 HcmV?d00001 diff --git a/src/modules/trayicon/kvi_dock_mono_22-0.png b/src/modules/trayicon/kvi_dock_mono_22-0.png deleted file mode 100644 index 1cd0f5efc748fc4276ff7e0530ca72351a9ddb96..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 731 zcmV<10wn#3P)Dim;a|{=LH|WJ6+~Bc)m;#I z5eZ)Og;0Tdk(nQ}&2ZDT?{jv}-tV3#005jAc=_Eu&z3fCUj6z`4*;kE2&e?(vmYHe znpwE_+ZBr{0TmE~FgHJ4Pc;~{~pPp<5krg)urBb2mHT&ff zSK8lyc==0Z1ijVUJEbwh4#>nB8v4{dX+W^HB@&Ojy?Q+;<#WNLk4uLYq=}c zb3?lP@V=4=;pt;zhc{hw--1}%uu)xo=H2y|`}RC_@VJQD)IdBwGS_JKJeDdY5<#i7 zC0AII>Kh!KoBX+0iC=yH^ykxOYH_ZorGIs$)wo)0iDS7m}!XV(OXxS|TxI zT~E)hWvg<#5?vEAnXJ}062Dl>BqF8469%n`1UKzy%9KV7N>mDwOgwrpJ=#B1iwe16 zi%OZE1evZA=B+7Y#pc51rMUg~;7wJLytvEeC!8q~+5W+7K7<>nPi1VGT&?3)l&F>EXegD2Zt8~4h+ zp}$lKB0<{SzNO;97mHt&Z2}1WV~5Un*Vg|TKfY&f-?>_iyjZ@x^Ud1zk*V6mgG>2} z5&$9r(a_B4TW71Y)eG}`XGI7ifEYjps=g%jI!l|^w!iEAlBJ*m_#cE#G6mtCH@g4; N002ovPDHLkV1gJVWHbN( diff --git a/src/modules/trayicon/kvi_dock_mono_22-1.png b/src/modules/trayicon/kvi_dock_mono_22-1.png deleted file mode 100644 index 098ce2c9f2a9a69dcdc262b6e69f92bd909be109..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 815 zcmV+~1JL}5P)Xk48Ob9>eh>;g2Lz7=eYN8e``2fMS%gaR8mrsVzb$PPEJm$$mzb4-FOJ_!vh=N7&lh zLKOJRRK#%XcDuzXyS})%kPRpu34&vY!GS;kp->37x3}2a+ml=;T|CYyJAHh7#KXe_ zR##Ug-*MY5FE1}etJUTY4i4TCB%-RSEM}*NhlgA!3H|Bm3HSH+SYBSn!NGwzr#8gI z#02{L`(d$IP+eUe%+1aHk&~07QR?gK&D1`>*Vos>4BFk@#p2>3_bWCwHn6g?0+-8$ zU@(a5>uYX5`HeL-2oI@Hb0O>xGe4aAMp>68t4 zF~c||?3~^}%+Airb9xhH4goUQ0_0h=Zo4CNwuUqqMZtuT)l6T4=|=Q&Ur6hAu2DU~O$p+zkv2 zz-qOMc+Ac?m#n_NKIsm2&A^6+2GrKpz7g-0&Jw4Rm6fH*&d%0S;sY}?GZ7AZcz9US zLigzG>_m5Ww}`L)&8E{ciQLw72D*OSa@f-bvgc481Hxn{5Gqn{J70>LPRbF2Hnx39sn3&@j tN=r-A6ciNvB9~s0j}9zHDt+Ru`v(@yxkZMqkiY-{002ovPDHLkV1l~?m;L|% diff --git a/src/modules/trayicon/kvi_dock_mono_22-2.png b/src/modules/trayicon/kvi_dock_mono_22-2.png deleted file mode 100644 index bf0908435b71c6739632bb420735a2e3aa29381f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 819 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 DTh=OJ diff --git a/src/modules/trayicon/kvi_dock_mono_48-2.png b/src/modules/trayicon/kvi_dock_mono_48-2.png deleted file mode 100644 index 8b4b48944d67fb573ae5c2cfaeb7a342e38534da..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3320 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 diff --git a/src/modules/trayicon/kvi_dock_normal_22-0.png b/src/modules/trayicon/kvi_dock_normal_22-0.png deleted file mode 100644 index 3771834937325ac3b6662fcfad45f2ca4bbdf45b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1440 zcmV;R1z-A!P)A>8|R;WH5p2M3#BQwiVGindi!@vt4r% zCh#Q-`}3=J#7DP*jRVaQ{b89$2cF1{rhoLxk7q{*PY!p)qt?q;U%7GR)YUh}lH*T@ z{g9zNjitlMRI2OvsiAQZiiP!er@wdc+f&z{+Ny1CH|$3He+I{*vECP+c79tEj+-gEpUFmsUQ3&OFPm0KY*jYr zJ>P8|wL-jpOWSVdby?q9+=mBf5oF zie_^NWw}h8od(Z`R+(aHlexQvcGa$yzq&lVxOs2=O72>I@x2eTPu|#sz(6#%7|-4# zcd>_9(gJsf>c;yN_hw*GfYSu8%-=s~(6%#$_5BBHfclaZ7ltoPjU@BXa`mvfm@~2a9LP*hOTI0Y%D!Ky;}Hu4p5=-zEe@t zFf-Zs;A}F~neg0WtSq`*9-T+{65%z83lk(Cg=zZ^T1cdln8L)D9_BzYJM2p5 zj1`KcB1XgrRDdsQOkAt5IKPMCd)N}(hK+362sAAZHe{T!TUYtVhY|MnJ*1L&(hEv< zX?@Qwy<^te)#c^V@}Ep$93So)p74|>@|6%H*-eaIlfvhFxJu(IKxkSL>aL*csq=XH zB=7#&A;3rJfQRL^_vQd{c@wS{}#L2Cl`d*q{tN8g`g` zK1I>4p^;&L+d(5`rA8=!oM?}1G$K4Wmihe@A!dV zJb;k+nrJc}zd{2>I^H{Sarn|-GKu~P0c_XvYj+>reXiQBJbXOlz!>#SnRis6WFU99 uYx!SQTICr)G`;4WRI+eHr@xwa0RI6UPquV}D<}Q{00002KRX4v6#A)tH}YH3}8Vr{z$vDOnCQ%h(L}e?6VpY7mWE#E*okXzd@wP?6o=04eXJ(&n_U;jBO)TuU~5B* zZgb*|qu1Ftt{O!ZV#%)1#VAIBkp`^{GO{b4YkUT-CUMa$&|dG-Q2!T3YYK&9=!j1( z)g+Gf+^7Hbb{eA*@Kfa0equ8dKa#Z4xQb%d8i}n=P9HxBvX#}D6la|jwSb&hXRg7v z?9S`w$0y!>E%{e*6qdM{u)6ER)83>0wOB4~Z`BJ-SMr z?XtX;nEdtO{ToutP5bJ|`=4GOeD9m#7e_9-mTQ*-!)9)ies`LB?IFrLlnXgz{{Z>? z7S?Zf=?GHb7ufbfrdG!&$xcG$(^%JZsyEtu#TJ(Dw7P9)V;zI1ZQG_CmMF`B=8gy( zJ02~~A%3Wc_&)iyBwna!%jfVKGy-@WG}Hc4H|cpFZ6wl2rzz4jWLeIrBUL~-EMqGR zsTH9#bT=Bj?g3Wj7qIKVHiq>(cX?W}h@(k)5C%{GNfIIO4diuH{-vD?+)$(A!z&XERt~fG5G<^^gS*fuR_{nr!0bD;K!;i%VuJKx#=K z1C{pD4>MkR(%vcM78lctH*H~^=xgg63UnaWvku359$~#;v$34P*M?97!cdfu_XTZl zog*-(nEJkqB19X-gYDHHXE*-%BwO0PEoyDIo1gtj#4obnBmmhE<=VGH{IBgcn;oFL z?g?%^2w~v|u#)PkydeAk^MTqqXmXg=w=W@%7wGKLC}FX_A$X7ufu(?V_y`3mKpBM)1|dKQv6pmpS+yDx>7~g~1@a#=fiDAjxzhGpGP8W6;#|yFW&NKPy^>F#?5uyCEpEpF kQ3wh%Qp=4)5B)&>H`^21Lo#)~NB{r;07*qoM6N<$f{i@T4gdfE diff --git a/src/modules/trayicon/kvi_dock_normal_22-2.png b/src/modules/trayicon/kvi_dock_normal_22-2.png deleted file mode 100644 index 6008ca828e925900642c633eaab72341df91993e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 968 zcmV;(12_DMP)M#L?fkG`s3W(O0im}!k8&i`u)>Je`<8P=}{sHg2Ao0q7V7ydG zB%0KiHfF{T&8$fo(q6d``>yV!ic86))znPN_O|gk!Eal zG;>qjxLzqwZU_4w;QezS45i(cE>ny#B}=P&^!U54yf?J7$ljd)#rU=6^Mju71O^;q zIbu?7f6c&ED!~1(>jBVg2~$jBW3bv{VvF{+#1jwqkgLeJXz$WcZOBTUyW|}6t1dEi0@>Kj>}HZqcbQ5D8&>U+>?!rj1^4F896j$;Ixszv_Lq@4PR4r>rb18!NQ?zfolZM0t~PVFTUX zK|a5V{QVYd;7DCW7{z#DNPaFu5XGeO8wAw`0X$H3G(49kJ04=JMqBOHdbK@Lx&y9`73HXm z6HBy-iL@nMV+qn7%#7c~Nq}Q53pa1^uq5fnupB_7pm3&#h_u2< zCtKP=UGDWK~ z_0uTZ$;kI*Vj_%eoSa5u}8(- zN}CtOWu`KMu}QEtLI{f#JIGXId;nCeh;57z79l_g@kr^zQPC@=vXjG6tn|Od1ff>( zRCaP?mjp^ZA&cCl&E5mdtY$vVm-87%I=IqdqqH`c$xUC|HJ6>g$1W)jGx}IRT-;pv qa=p0L4~T*){H2Xv+IQ$X;(q`m`O(_jjz(1g0000 #include #include -#include #include #include @@ -68,7 +65,12 @@ static QPixmap * g_pDock2 = nullptr; static QPixmap * g_pDock3 = nullptr; KviTrayIconWidget::KviTrayIconWidget() - : QSystemTrayIcon(g_pMainWindow), m_Tip(g_pMainWindow, "dock_tooltip"), m_CurrentPixmap(ICON_SIZE, ICON_SIZE) +#ifdef COMPILE_KDE_SUPPORT + : KStatusNotifierItem(g_pMainWindow), +#else + : QSystemTrayIcon(g_pMainWindow), +#endif + m_CurrentPixmap(ICON_SIZE, ICON_SIZE) { g_pTrayIcon = this; m_pContextPopup = new QMenu(nullptr); @@ -86,7 +88,7 @@ KviTrayIconWidget::KviTrayIconWidget() g_pMainWindow->setTrayIcon(this); -#ifndef COMPILE_ON_MAC +#if !defined(COMPILE_ON_MAC) && !defined(COMPILE_KDE_SUPPORT) m_pTitleLabel = new QLabel(__tr2qs("
KVIrc Tray Options
"), m_pContextPopup); QPalette p; m_pTitleLabel->setStyleSheet("background-color: " + p.color(QPalette::Normal, QPalette::Mid).name()); @@ -117,21 +119,38 @@ KviTrayIconWidget::KviTrayIconWidget() connect(m_pContextPopup, SIGNAL(aboutToShow()), this, SLOT(fillContextPopup())); +#ifdef COMPILE_KDE_SUPPORT + setCategory(KStatusNotifierItem::ApplicationStatus); + setToolTipTitle("KVIrc"); + setIconByPixmap(*g_pDock1); + setStandardActionsEnabled(false); +#else setIcon(*g_pDock1); - connect(this, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(activatedSlot(QSystemTrayIcon::ActivationReason))); +#endif } KviTrayIconWidget::~KviTrayIconWidget() { g_pTrayIcon = nullptr; g_pMainWindow->setTrayIcon(nullptr); + +#ifndef COMPILE_KDE_SUPPORT + // KStatusNotifierItem takes ownership of the menu, avoid deleting it if(m_bHidden) m_pContextPopup->deleteLater(); else delete m_pContextPopup; +#endif } +#ifdef COMPILE_KDE_SUPPORT +void KviTrayIconWidget::show() +{ + setStatus(KStatusNotifierItem::Active); +} +#endif + void KviTrayIconWidget::executeInternalCommand(bool) { int iCmd; @@ -186,52 +205,48 @@ static const char * idlemsgs[] = { static const std::size_t NIDLEMSGS = sizeof(idlemsgs) / sizeof(*idlemsgs); -bool KviTrayIconWidget::event(QEvent * e) +const QString KviTrayIconWidget::getToolTipText(bool bHtml) { - if(e->type() == QEvent::ToolTip) - { - QPoint pos = g_pMainWindow->mapFromGlobal(QCursor::pos()); - QString tmp; + QString szTmp; - KviWindowListBase * t = g_pMainWindow->windowListWidget(); + KviWindowListBase * t = g_pMainWindow->windowListWidget(); - QString line; - bool first = true; + QString line; + bool first = true; - for(KviWindowListItem * b = t->firstItem(); b; b = t->nextItem()) - { + for(KviWindowListItem * b = t->firstItem(); b; b = t->nextItem()) + { - if(b->kviWindow()->view()) + if(b->kviWindow()->view()) + { + if(b->kviWindow()->view()->haveUnreadedMessages()) { - if(b->kviWindow()->view()->haveUnreadedMessages()) + line = b->kviWindow()->lastMessageText(); + if(!line.isEmpty()) { - line = b->kviWindow()->lastMessageText(); - if(!line.isEmpty()) - { - if(!first) - tmp += "

\n"; - else - first = false; + if(!first) + szTmp += bHtml ? "

\n" : "\n\n"; + else + first = false; + if(bHtml) { line.replace(QChar('&'), "&"); line.replace(QChar('<'), "<"); line.replace(QChar('>'), ">"); - tmp += ""; - tmp += b->kviWindow()->plainTextCaption(); - tmp += "
"; - tmp += line; + szTmp += ""; } + szTmp += b->kviWindow()->plainTextCaption(); + szTmp += bHtml ? "
" : "\n"; + szTmp += line; } } } + } - if(tmp.isEmpty()) - tmp = __tr2qs_no_xgettext(idlemsgs[std::rand() % NIDLEMSGS]); + if(szTmp.isEmpty()) + szTmp = __tr2qs_no_xgettext(idlemsgs[std::rand() % NIDLEMSGS]); - m_Tip.tip(QRect(pos, QSize(0, 0)), tmp); - return true; - } - return false; + return szTmp; } void KviTrayIconWidget::doAway(bool) @@ -458,8 +473,18 @@ void KviTrayIconWidget::refresh() ICON_SIZE / 2, ICON_SIZE / 2, ICON_SIZE / 2, ICON_SIZE / 2); } updateIcon(); + +#ifdef COMPILE_KDE_SUPPORT + setToolTipSubTitle(getToolTipText(true)); +#else + setToolTip(getToolTipText(false)); +#endif } +#ifndef COMPILE_KDE_SUPPORT +// Under Kde do nothing, KWin will restore/hide our window +// See ctor doc: KStatusNotifierItem::KStatusNotifierItem ( QObject * parent = nullptr ) + void KviTrayIconWidget::activatedSlot(QSystemTrayIcon::ActivationReason reason) { switch(reason) @@ -483,6 +508,7 @@ void KviTrayIconWidget::activatedSlot(QSystemTrayIcon::ActivationReason reason) break; } } +#endif void KviTrayIconWidget::grabActivityInfo() { @@ -605,7 +631,11 @@ void KviTrayIconWidget::grabActivityInfo() void KviTrayIconWidget::updateIcon() { +#ifdef COMPILE_KDE_SUPPORT + setIconByPixmap(QIcon(m_CurrentPixmap)); +#else setIcon(QIcon(m_CurrentPixmap)); +#endif } /* @@ -723,26 +753,31 @@ static bool trayicon_kvs_fnc_isvisible(KviKvsModuleFunctionCall * c) return true; } -#if defined(COMPILE_KDE_SUPPORT) || defined(COMPILE_ON_MAC) -#define ICON_INFIX "mono" -#else -#define ICON_INFIX "normal" -#endif - /////////////////////////////////////////////////////////////////////////////// // init routine /////////////////////////////////////////////////////////////////////////////// static bool trayicon_module_init(KviModule * m) { + QString szIconTheme; +#if defined(COMPILE_KDE_SUPPORT) || defined(COMPILE_ON_MAC) + if (g_pApp->palette().window().color().value() > g_pApp->palette().windowText().color().value()) + { + szIconTheme = "light"; + } else { + szIconTheme = "dark"; + } +#else + szIconTheme = "normal"; +#endif QString buffer; - g_pApp->findImage(buffer, QString("kvi_dock_" ICON_INFIX "_%1-0.png").arg(ICON_SIZE)); + g_pApp->findImage(buffer, QString("kvi_dock_%1_%2-0.png").arg(szIconTheme).arg(ICON_SIZE)); g_pDock1 = new QPixmap(buffer); - g_pApp->findImage(buffer, QString("kvi_dock_" ICON_INFIX "_%1-1.png").arg(ICON_SIZE)); + g_pApp->findImage(buffer, QString("kvi_dock_%1_%2-1.png").arg(szIconTheme).arg(ICON_SIZE)); g_pDock2 = new QPixmap(buffer); - g_pApp->findImage(buffer, QString("kvi_dock_" ICON_INFIX "_%1-2.png").arg(ICON_SIZE)); + g_pApp->findImage(buffer, QString("kvi_dock_%1_%2-2.png").arg(szIconTheme).arg(ICON_SIZE)); g_pDock3 = new QPixmap(buffer); KVSM_REGISTER_SIMPLE_COMMAND(m, "hide", trayicon_kvs_cmd_hide); diff --git a/src/modules/trayicon/libkvitrayicon.h b/src/modules/trayicon/libkvitrayicon.h index 53b5dcdf8d..d90ec44bac 100644 --- a/src/modules/trayicon/libkvitrayicon.h +++ b/src/modules/trayicon/libkvitrayicon.h @@ -27,18 +27,29 @@ //============================================================================= #include "kvi_settings.h" -#include "KviDynamicToolTip.h" #include "KviMainWindow.h" #include "KviTrayIcon.h" -#include +#include #include #include +#include #include +#ifdef COMPILE_KDE_SUPPORT +#include +#else +#include +#endif + class QPixmap; -class KviTrayIconWidget final : public QSystemTrayIcon, public KviTrayIcon +class KviTrayIconWidget final +#ifdef COMPILE_KDE_SUPPORT +: public KStatusNotifierItem, public KviTrayIcon +#else +: public QSystemTrayIcon, public KviTrayIcon +#endif { Q_OBJECT public: @@ -46,7 +57,6 @@ class KviTrayIconWidget final : public QSystemTrayIcon, public KviTrayIcon ~KviTrayIconWidget() override; private: - KviDynamicToolTip m_Tip; QMenu * m_pContextPopup; QMenu m_awayPopup; #ifndef COMPILE_ON_MAC @@ -70,16 +80,21 @@ class KviTrayIconWidget final : public QSystemTrayIcon, public KviTrayIcon public: void refresh() override; void updateIcon(); +#ifdef COMPILE_KDE_SUPPORT + void show(); +#endif private: void grabActivityInfo(); - bool event(QEvent * e) override; + const QString getToolTipText(bool bHtml); private slots: void fillContextPopup(); void toggleParentFrame(); void doAway(bool); void flashingTimerShot(); +#ifndef COMPILE_KDE_SUPPORT void activatedSlot(QSystemTrayIcon::ActivationReason reason); +#endif void executeInternalCommand(bool); void disableTrayIcon(); };