From 4b200a674e3d1647440370908282a73232b40cd5 Mon Sep 17 00:00:00 2001 From: Travis Abendshien <46939827+CyanVoxel@users.noreply.github.com> Date: Thu, 13 Aug 2026 20:22:52 -0700 Subject: [PATCH] feat(ui): add hint icons to suggest boxes (#1475) * feat(ui): add hint icons to suggest boxes * docs: directly mention new icons --- REUSE.toml | 8 +++++++- .../tag_field_bars/field_bar_search.png | Bin 14029 -> 14475 bytes docs/assets/tag_field_bars/tag_bar_new.png | Bin 8533 -> 9264 bytes .../tag_field_bars/tag_bar_search_match.png | Bin 13169 -> 13762 bytes .../tag_field_bars/tag_bar_shift_off.png | Bin 10147 -> 10699 bytes .../tag_field_bars/tag_bar_shift_on.png | Bin 11459 -> 12195 bytes docs/usage.md | 18 +++++++++++------- .../qt/controllers/field_suggest_box.py | 18 ++++++++++++++++++ src/tagstudio/qt/controllers/suggest_box.py | 17 ++++++++++++++++- .../qt/controllers/tag_suggest_box.py | 18 ++++++++++++++++++ src/tagstudio/qt/resource_manager.pyi | 4 ++++ src/tagstudio/qt/resources.json | 16 ++++++++++++++++ src/tagstudio/qt/views/suggest_box_view.py | 5 +++++ .../resources/qt/images/hint_field_add.png | Bin 0 -> 2179 bytes .../resources/qt/images/hint_field_create.png | Bin 0 -> 2360 bytes .../resources/qt/images/hint_tag_add.png | Bin 0 -> 2305 bytes .../resources/qt/images/hint_tag_create.png | Bin 0 -> 2428 bytes 17 files changed, 95 insertions(+), 9 deletions(-) create mode 100644 src/tagstudio/resources/qt/images/hint_field_add.png create mode 100644 src/tagstudio/resources/qt/images/hint_field_create.png create mode 100644 src/tagstudio/resources/qt/images/hint_tag_add.png create mode 100644 src/tagstudio/resources/qt/images/hint_tag_create.png diff --git a/REUSE.toml b/REUSE.toml index 70e2cf7c..1d39078d 100644 --- a/REUSE.toml +++ b/REUSE.toml @@ -45,6 +45,12 @@ SPDX-FileCopyrightText = "(c) 2026 Boxicons" SPDX-License-Identifier = "MIT" [[annotations]] -path = ["src/tagstudio/resources/qt/images/dupe_file_stat.png"] +path = [ + "src/tagstudio/resources/qt/images/dupe_file_stat.png", + "src/tagstudio/resources/qt/images/hint_field_add.png", + "src/tagstudio/resources/qt/images/hint_field_create.png", + "src/tagstudio/resources/qt/images/hint_tag_add.png", + "src/tagstudio/resources/qt/images/hint_tag_create.png", +] SPDX-FileCopyrightText = "(c) github:google/material-design-icons Contributors" SPDX-License-Identifier = "Apache-2.0" diff --git a/docs/assets/tag_field_bars/field_bar_search.png b/docs/assets/tag_field_bars/field_bar_search.png index 10f4fca63822399d72a018cbb8e019f74014d780..c7c8063c4bb8f2acf948a278ba9e4de3d718780d 100644 GIT binary patch delta 12999 zcmaia1ymQ&_a`M?(jnaq(v5V3(k^i^&3acCdb6Vi3R9MZl~kt?Srs??R*ee+p|P0n3r z?-jwzmku>CZKsU%AErAmFSA!%pPO|GpN$Fg+8%ZwhNer6PGl4s!u^I+(5+6)UyQPp z+N(}mN+I1y;WxvhCvs)fT3QyuvC|!7Y;N+0GB1v(qgO%~j}sp`aEGtqsB3T~aR;xj z;Xbg#9n%GsR=~lnV+`H7NT}^5&8ua!*{Aow-{riFV!fy z0twhGNjZPNPBv!!Ge+?ahWRE8buf$|8XhNZ`jJYmCYZ$TxMOq4vxw-nwmS1i1nbSU zM}gEy*DTqem}WP6bt8R#539A4FS8NKmuEKetY47(su?n;cyRZ+A@P2>-ohvzx)N?N zCHut1lg($%uA%TJ^esYRes*0?$+5C9L1>D zWyVp`T&N$m`Ia~u$f5Ghy!=W*Y~c$I`h8-AzmijtL@|u+ciB15)_P7KLG&y&HYXl~ zf=mUPd%YMJ%`0n|DU{Ruj{Q#`4u@F&u2P1K~sXkfu1OgTS%5vRGmmU1us?1g_;93MlYeC z;?uf*nm8prK@^K0Ml}AW92%WvEcz<^%iWEl={NJTMfrX@oLmsC?hZ~Tl`K5=r~xB$ zI6wX_Ik1T=G=9D8+0=NiFguKsbt(z4PAbcsFD|}j-(Ys{#7rh3; zmikYa$Tm~E)TvcwOEiZNaj3^pl8>LE6}X}^41Go!T9vSpeLRjvVWav+9jP<*cyxz) z`_5d3QMsQWVRR7s6t9mb6aBT%&4PJ~Qn2UV-AoMq0l8;4rq1msSx905pAuID?GjZF zZ8@BrSC*lc$5b78SyNKGK_WB18pj2ZU;LQ*Cr+7+bxs&LJkw8#@!oHUtD}@jo1gD= zE6_dTE{LB7HOjDx#$Y@t+SWo~@v&5J5U~r0D`Wm~bN2Tobdx3A`YUHDujb5C!YCNt ziEhBqV&yeT4evbK{xcsWM+DVe;2wm%1*PI@1HzsRi-KC`zaWMlCy z_1*FGuij_F9e*iS4sToRRi&DmtJQ6#Qe;5`V_OqVv~6u|4nX+ehr&wbIJ0jP!oGeg9G4?CPLn%`^_z1#>Mp)rjz=4DR!&Wm+zVk?dclr9 zD_UKqZpy%prxnxWo$g2eZPWUv;$e9T)gPC)@x5>n--~?f9_3+*i*Wx!!j3i4V>K^b zfmz<|@C6yFcyf4VT|vG#@M~2zCxO?U>HXI=KfLh)+ck_6LO(*&Si$v@1!KW>FT7RE$*9VNrf(ej|R#2H6JV1_p;T2P}t@S(j3A zJw3f9%}d=xE#gux-D>TX>JZ)gsvB}F3M>??1o>9^f^W+4%Vd>gf_!;erP|~U)co;= zQYK23P+{JuUj>~%J~@gwdhkEVisdWkC+Fv~mneE^_k&NsS)}s4?h8@HHmSY2k9G@o z?)83#7!73&*pA-zSPnA{Ob!EfTaML}zY2rZZqOnO0W>ENc#`= zRXYLDjAe1KjTbM(o4gQEw_%f*8K5elHCkbnXMz2mJUc3zILlS=h#RsscTBc=X;Cw= z-dL2yF!FrFqr*CTGc+x8)~ftk_pff3kyeGl58)r=l@t11wKWY&HP?&9Lw}Mh!#L&| z=No@rq*KgtcDtmT#4i&DeiR>(mq-UzTGNaE+v`scmwucFa(wCKobK={SF!9a{yR)m+olTZAr{n#z+SB1< zXmNkGf7-ggR`<(z0Dk-1c4B|3laP j#T*?kz4erWLUj@yA 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 delta 12676 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 diff --git a/docs/assets/tag_field_bars/tag_bar_new.png b/docs/assets/tag_field_bars/tag_bar_new.png index 7327d9063e01c94f4b1844bb764b14e92668d794..3a8b83f1b356771a3cd19c063f8c708e1e8c6241 100644 GIT binary patch delta 7564 zcmb_=g;P~s`0gg8J4L!nS~@*+gEUBY973dpjY@+c91xN2kM59GQbI&J4&B{xsC)d~ zJ9F;xO&wAFLgjB11W7Y7>|IEz5u_(3w{Y<0Umx)34VT< zBN{Ev|DA<3qjfw%ey*tr3qq&*KTm1syzKuoC*kL0@BV+C@eAt<2uZvUK)U(g&Y1XM z*64x%ue()r4^RwHUjP6+e`k4l9R+7^PdDoT05A?8F$#FC*H4kvYKI01l{2=(zGaIl zN3p}U#$~u=ic(WSMTf*;=d8wmF|0mh`k<~@#z0YFD7X9JKLc(>FZsP!WV*U8H8HKH zY%Do{JFc$MmplY5JH*dM#DyFW+tEV5$PJIC=9>cRpgNA-iS^52&Jt&hzqWGd2szSb z6r2RU)LL8HeBe3rLF&eaa45&zkQPn_c=9!(L>$FJl>K2wRu(J*03I3}NhjuTv2jO*+0HGHzQc-gT?Q*Ib(; zw9zoU5AU%C-jhY45XSv|q*ts7e(H4GzA^7zNO4D|ga4`D`<$*^@=f z%vku1-O5SzWVqVZnS&BnHAYVrYucCq(OwrQ-K*H0A1T0G%rB+toG^E?LDTFJigLp8 zUF?0?>e`dGWtFH;jK7nj^7HjYSWWVD!tsZV>tE@28SIM=Xb1g=S$7>Dl?y=Lv+w@2yKm@us_>K?$lyXpDfn- zg+|Em8#D2k20PaShxONgn7@`~>=Yi4qcFMY`xqh&#vYIEux_KR<=NDF$>N6xz=BW4 zB=S)|dOU47#^^+U-g{X};XGjc+>NR8JW3RknI)wolEA*gGQx(3Q41-s)(Ti?VZe1{ z^&4c;va1N)(S)Us85RgjKl#!{(6@#o^_~w4osj{x zCsg4xPLcePw^i0qmm5F*bCkjynsN+kIr13{-%!(IG%?^?7qKVm9qR9ovCCY|*mcE} zQYdK4tp1S%Di6L*`j!aot3+SdumF2pxL5Vl=lDZE?Peh5cx7EK)fiy;lfyIna_YVQ z#bt$zcp)$LuRm7&Nq+Y`uHc@K`;%M5imnzP4_%wT10Gd!NaC>L(dkiB`NKbJe%0h) z)hF^LCLq@8uA5NzS7jlgQZUP-l!`6sdA%yNinB_wDr3W41DlbjVM$bpU{Ow@=ZxrK zCjYFanywP0+OL|b(p~^g+xgT|&8E<(X)&u0u&(2r(wz#NvYyJHO2$z1ep{7~&c)*J z<}Blo-xexoQQNpH;A!+c8z(D&hJ@ z_{q1}7iGfK!hFs$g}P2tFGQdc6<-ZsN~*NV?M>%7%{qD2`FVpmYksnc+b{H>ZvC!y3-;Jy70@d}}Za1N~E)txp>ElV#m ztGxZ_9(fp=6`$1#TGTGmw7azD2g32WC`5 zJ}UHQSoni@msGEX{apuM;0X*1y|$gP^Pk5OeZwCk^bJ}+xm~aOCu?4x~p z)hgh!Z$;xFHR>Pf)q0W>U84FmdcqF&OBEKP7vY@aT)7hnj@uRmJG>PFg%W22>((3+ z(gHO^^oGmrvTO*xQm03zQ-1RhJ>mx)tz8rCbZu%zR~rkzu?`6iy=k{k-v~`fo3tyt zF}yJBG}9|LnG&C(t{64$tgUHKt+|;i`n8!@@t$Y8ai($c@(b-GZ2Qxa0v3~8mNllrhJX*^Gx5j^oQ!Zhk|ZP+6hEj9aZo~g;9 z$?-7$5OP&o8uu;4*TPS0v3BujQ4VxQ zG&nboZ)!-2!kt?D5o1*KRBcq4LReIsR6&A^XEy%AZ9g>JH#dh-WFk8g9~Fo=jQO@n z5!ll>^bR-n6(fPk2dVA6t$geZ#Z1MPJ;VmlSsM{s?nA*Tl&~gA50wn2#Z>LzqXV+f z$H2sORjrX1nc|KP#S^-wTnAYjLayEAC?*ANsWge&Fj30wpF>JPx#lZI;eN4qv8AyV zqgq+Pp7ED7zcMbr6L_bN1{>3u-rY;RqXRAG-<{p4Z!Vd4SyTrz*7AE>&od1v4pCh2 z5}3ViRe-84CM~JGR-5|LX8f(T-ahSDZ7(kZ#Z|+a5O#N@uQPCc)Vr- zdQ-GPKZI`I`K2}4D7n+}hvms$6KQ9~ov)Mq)L^_pR#{^uTjiJXjz%^s%>&behF;g8 zDNT#%=B)1>ZuhbHLLwPuo>eoAx=`DdzQe))1~)Yg(+xcWEmQP-8YKP;Tyj_&84?9M z=a^>RIJ+)SML^l+2br{)H$WiQJAHe3sbv{S%s|xF!f6DH+L(WF}~8xNf9D%-(Flm4_4b=_e&ycE8Tm z*!M@oQ_|DBr8Hh<56Fy-i{u|{{^De>%7~Gi^pZF|pS6U5;sFuCo7X0tb;`eQG9>S~ z_oj=^vbLz_rRNCmH&5ns2}a}la4jgm@daAC?PN>@?7!+NBu)Lu_xL6}Xal^P+%C(U zPO3CNQajr1;B9``j=1itTZ#<<{k%_jepb}Zn>KMDK3yug>3&EEhG)T*k1&>?ovEHj z4uqXszk+Y>uiA&`bm;Y^UIZCm4P1;RcKqpxO(>Q*3}y;Gt?WG4K9CiaZ3se)TfPSy z2sNm-gV};a&aYy&B1Zi>Jwb3x(%Z~^DB$G6s{r}3pNUl_B^|2*ItF4{)o z-o0@ST{`!=Ki(_C4ZW8{seX^Be+$@@04#xM6C=?2(wNi3G7bfQQ1m+ficv_G^iExO zF;@00$PJgQ^w7%fmR^K9`owSS11bOj*q$mT-T*+s`fs49zG68B0ODj-g_rvN83%Bv z8`;Iju9KyGp@YN5dVLOP>X)LJoDb4T>YRi)F+IRDV%wgt<7)3DY(jeq5~EZYu%7B- zGrs(wQV`mO3$aikXk)k&ufIUZ{un&*GT6$_Xb86RjH9iVPt@bQNg2N_OecPY}I^;@F=55LJ2 zb;)||1k*+wVteyA)ZA{PSs|sRi2DaQ2BP^YbYNkx-ZsHgj0O)QSSEYYrD4`hpnzi+ z%egaQjSdLqCBj1g__7u5UZaqjvR#S&1oeGoB`*#-u&rb;Sy@@>q@AQl%y{q=B?}Bm$Nz^IGg|UqC`Sv+F#8(AK|fRaCEMb;9%w?0IQ`t{gcA ztK;Tgov=KKADBSs56`DDIvixX^Hu=xtJg{lPmzO$;0nqQgs$80(}bP=?GzT6!iZV z4UE2@^`eOF-uUhF{fs95ZJF?-T}-eM5E`V8#0I)VYfIY!^x^=D|HI12?N(QcPP=~o zD^Gl`e7}Q3JW1OzHIP%v!&Ce%Js~nrTX%wZ@JvHZoj#X?<_ZAZbtkRLnkpX>K!t`B zaUPzL>p5neqQb&0ZXBZ|00472*!sboxR;!16^nBmje;R8$$M#1{>K9Y9uks|Zf*W; z6$g1sOSuu_o=c`)q`a>y)yn`|90Z%+0}s|?(aT$ z1u?Odj{%qG;9Fk{f+xWrrb|)fUg=Ki{PC+eJ1yLVvB7#b1}Q|@vBhW(zkC6OT*RF0 zM3tD6Gw=C0OXNN7To`v<9>@M1FA3n&0Q@=ifqU{VLBulk)?|HCNK=y~e{Dr>nIuIl zvygZ4L(R!gS!(KpetsRGD|BM!dZ-uoF&`Wrrm?RPi*s}0fbjZN%22n~osG)whQwJ% z0ih`S2`#pnnc(7e4u`v67MNIpr?frQ@r;ko=sPMpaLsLCK+U%(p}MISYZ-=YNbvWH z1DkqgG=SyffZPn!ojLt!%;(8(rF^&dv||Lgz-K%rH0uWOPi{6Gki^mOwGalN3#y3m za~VxB;1UIpdq#&c4WF%Z3@1`lRIJ5B1q8UBKc^9Of32kz|98(8ENX3OadCA`pp~2& zV?2<+B}NTJDXgyc+#F6*ntCfnLnw1?_44J9Ea@O#%Z`lg_i&2hHNZ-a3h6+4Rq^NrBG{r!FWk@E6#WNfnv!wUIV@sVOANau>*FGAC` zvPZYhZk|)9gYNE?Rgn=95$!=&7^ow zPE1TB$RGx6YV-{Zg3m@ogO?ZqJgHHsGmVgt4x+rmLi?@XnWk^vYHDf*T^$A=e&4dA zC1jO?%+Ai9ZH}ZPGtGJV@tm*S!b4MYWU9hUJ41{ZJj=?|+UkiW4JSg96&8w|c1cNz z>H9FEw6wI|-rkgy6!=u)d~Q!xe9-xraual3#P4un02Q0@@Ax>oRz|aRcZ6ehut+W% za!-r6%~TI07?xc$mO0ZVy|LhZPt3)|g}6H#HRnyeJh?tuOBaF8)jN+9%HHLSs5Y5a zY;1rV9vwFht9?l3+h6$Z&BMck=s(*UU2@hmp;epM5rh5Gx3F-pn++o>E#)<-UB5l* zoCYP3fylWHrOyAzL!weG0-bL!51>#e_A_jNr7ly_kAjlYtYQl3M)bvt^V*{1vp3N( zI?m2JUj=OIH+ak%6)04&#wI4t`=~uYeSLj@DY{m;jO*0%gS`0hop_4K^wZSbiC3!0l})=tnr{y_FDUpc|o#|Q4~b_MraLY7xoS4Xbs z?B-TpS?TWL64OtQ4}g;I<#M)sawK;i30S!x3DTEe8+FXh+nvXYvbd36z>#!OKC?y* zEPgzTG1qZF_*|f8y0#4W6EnDD+8$+q7DJl04w?~N7s?G;QEMLbARI_eY z%J1-X)%5K~s^z8qQ-GiU+%b|wP~eA4gM)*E%McQGt>Z2$p3O!7Z1a3)JovG2a&nSB z6+tZduh-rMa2GKfCzFp1pnblxyqUk)o3?EA z)x;8TnfNc{DHp(^4~14V@&{e+yI)}|mN`bAKQ6AZGERq`D{tD{*?k?^)Zs{uTFP_v z@R)ua^Fgj@S>tgR8X*=V4lZs3*jgV!K-=Opmgml0Tu^|;h(Smv^>+JD7y&szaxhb4 zdvkMBQBhH>mAQKh=Yv-grX(lRNcr>gu1&D8K#Zy^CMn7d%lg-LOrow^4jwLUu)@Q` zS2s^SZ-!G^G>=y*#XTiH8bgum+}+-uskK+98HET73)3P`nVsTn3Wz@_mF0h62>Xn6 zb01PQot~A&8^*!KrS|q81uU_LSL3^AupddNp2)7LEEe0xkLyK26o7w}AoIr1SY z9v8R%i4Oh#{kwR45Jhx)p1Fz1&4ivdHe-=?cF1zq`}s;(YHE}Ji49{& zd?b&#bMK8G1afh3fZG9owIu-(QOoJz-3iWvHEr4Z^TXC7rHdw@OM1|yLFQ&1Hh1c` z6inGom!Y+lA?{uO5y!xwth97hyrV~2^6+@2d+uj}Dh$bRe)B$yA-4xf|BU3GZT#}m z7ixWdyaG3z%I^FF8*$*~;W@b6SWA$tc)|Kn?+Q#DZ%I% zSU&2r6C{U|b#KCP>OGb^)KhtT1Hw+=ng4!XYn%HrnYsnNZ9iG?CKxn%cvrT z(}d=JPL${g2@0NHuxoys5E4q1xn4%QxBmc%q7rf#{wAz$HpN6n5ZUmNv1z_N@WSOF z7xeumVB5EkJS0Z5q+9)tIu6pL0TqZeZgP~FJBg13?^C==(*~EdzE2Kyvu+|)mYoj+ ziOfh;|FGhhmF=vr*Y9jGFfl1vDxX_eC^y$oQ&qh|>{a<4Ee78sE|8_UI$j2@y!qbf z4o4vC_VxAMTwf=nq;y@P7k^XG(gK>AJ*>v^A*p-WQ!FMnmK({~+}u^>tzQxok%{5e z%{~tkd%LZ(F69BJnBMC#B>qXA%M|lkZNFMHtFa01UeO`5A57-dE7I6${QYo$EBkQ0 zHsE1cVcPI!Lk;!|$y66pW*$^GiX$T<&d$!fsjkSKpSXl%E?)B%eFM_ug2RaVUXFuI zFny%+?o?e7RP4=DjIC$)biI{*vp#@is`HeKljPKYEa)ss=-g&;REgx#{h8dQMRee* zQgWm{=I#O6FTZcaf3lyDKsc1xf@P&Hm(DlnA6}U=XC+xhHxNsCz4yo$2W@lyXJ@6G37FOl_%m5-a zOV@()mm_E=AF}m4JktKh%VF50h)%f=NHrixE$os!=`xvx%Z_N5WAYL$Lj@i-%MD#k zO}{>!9l93(fw=A?(PpaTiI(5@BX$jA^lt3yz3a1xh+p6 zmynQHy$#86@{%9`7(V4efak zOv*MkO)G6#&is7Nsa#Y5BYA({DSpJr=7`q(kvEeMc^u5A>Ssy|T%SuZMzduLo~6?|zJMT=c2lu9hW++Z z^TO;$A)KEpIvn6SVI&&jMgl3Hi@$34wsIrUQ|)Bx;9$L;VA|fWSk_4mPe@Fi+fgFZ z@NPZJd&&kdq}4Y}PES4*pIm&R!*)i#CDJ;+;<+TohrCM?L9h()1KT^Nr)lF|%C_Uf zUO2?sZvUxCOUp<1Za@J_18+_rkrIQ6Y(K_#+?YwQpvIU6sl&N>M%}&5pjxnK$6Qpo zTCB*AC}8C1($u2q(v%^6oQ&+Z8D?}qj^4`|6NW-2NO32d7sCF6g?GRR`JVt#Rn$_b Igjjv}U&~Q)wg3PC delta 6880 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 diff --git a/docs/assets/tag_field_bars/tag_bar_search_match.png b/docs/assets/tag_field_bars/tag_bar_search_match.png index 3e993c4dd2f1db8b2dfb426b9071ec8d608d4b37..24431ccc0b948e53132b721abcdb5ada74354020 100644 GIT binary patch literal 13762 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

w@>%&rz*{yYIzk5^8xYR9bK1=Do|4rZosa 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 LvZAHJy6^uNvXq%` diff --git a/docs/assets/tag_field_bars/tag_bar_shift_off.png b/docs/assets/tag_field_bars/tag_bar_shift_off.png index a52deb6b23013f4d8f38e17a09cb275742eff4ba..32b16034a237b282605b51c8c7f84f807b3bc3f9 100644 GIT binary patch delta 9081 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 Qp&o#|tcpxI!ub7v0hT>X00000 delta 8622 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¬S-uj7!qX+=N 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 diff --git a/docs/assets/tag_field_bars/tag_bar_shift_on.png b/docs/assets/tag_field_bars/tag_bar_shift_on.png index be3179a0c56de9cdb547b35dcf59eccdd943e21c..f3d7283337ffa1b4cf1a39c2eefe6dbb36cf8b90 100644 GIT binary patch delta 10712 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

!Ply6& z(~+-7MNV38)}!~0B<||B?MSgLM5|{T*#{Vq*PbZxU-oC;W15RS%lN=HietA!P^NL0un8 zO&$j~jD{j5{ivRD&TiIGpIaR6zpEZ~2ZKsZOY5~LgPk%cX~1h`kwEiJdKqs59eyM@ z6BuU)Gk>@d#GV?k5IUYxJ05x(=1VSvL#5^^^+ZNFxZlRaa6=l6IzeJrQtpNXfu(}l z>im|?gae@(6)+9Ze?*gU6I3&z(a!imJ$TixdISJ}+Aq(BIEOY|1RuHy)V~_1rkjA1 zka63O;H3(|9iaZ#$1N-+5AJ^_GRoKa)4>P)`*h#VIT-7K$?14WI$x<2$M;84 ziOSr_AhT3TSJ}RtHCY8GEb{VwV7`JGT}fD}uAlPOlRzpZl4^3;F2mWiHI7><6%F`C z`r{q*HDAeqImb@`d!wjq(o4DPQauDmT*V`v?H z=k#YGjQWRso+isI$(xZfCnP(&%pNFj4SlLAV^V3B3`je!3r8}q>%1Nc%MLwHR;JU_ z4UCEZlrsHN3-H$MFF`C>}7attqXfj#@{kl@_Hr2^fA9C&gP+56_|)$!K%F1nn7CT3r~ zGa<;rKw9BzHCabtAZVX3ezj@(S>WWT?J6`heJ>D3jgJ;8+pqVK^Ye4$a@gE@gES0+ z!p#tV14nselWl2h1!>Wev*4JT`f98D!E)3w%SC9bm&`}nn@+?W2fKZ}m%QDAuD#t~ zXpif561HyDvS?(efgqNy+wSh<(^Jf*L#h16*I0d;^vLTkX^CSS}y?SqDzuU}nT&AghS==1!nlHpK;jc|b|B zmHAbp?|6z{{A@DWR|wP%tB2PFEXr93kPA?Zm@0yExjtP;%iA}|wrW|gr6j>Kw|H<= zGej;|dl3u1aZrEI1)dRON)jh608SHHSqJ0J@ujBlT`W`6z}tT`LEYmMO@AC6s>A~x nk^pe+lr&Sa{8kgty2c}{S~SSoLG1kB+5kmaHJJ)2(@*~cIp>Xr delta 10097 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 ZZ6(|zD!%W6-tqu|oRlK0QsQIa{{cWNUBdtX diff --git a/docs/usage.md b/docs/usage.md index a983983c..801b765e 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -26,7 +26,7 @@ TagStudio automatically scans for new or updated files when opening a library by With one or more file entries selected, you can **search for** or **create a new tag** by clicking the "Add Tag" button at the bottom of the preview panel or by pressing Ctrl+T. -This will open the the **"Tag Bar"**, a combination search/creation bar that is designed to allow you to quickly create and apply tags that don't exist yet, find and apply existing tags in your library, and verify if certain tags already exist and/or are applied to your selection. +This will open the the **"Tag Bar"**, a combination search/creation bar that is designed to allow you to quickly create and apply tags that don't exist yet, find and apply existing tags from your library, and verify if certain tags already exist and/or are applied to your selection. Every step is keyboard-friendly, allowing for an efficient tagging "flow state" when it comes to creating and applying tags. @@ -43,7 +43,7 @@ Every step is keyboard-friendly, allowing for an efficient tagging "flow state" ### :material-tag-plus: Tag Bar: Creating Tags -Type to search for an existing tag, or use that search term to quickly create and apply a new tag to your selection. Pressing Enter with **no results** will **create** a tag from your search query and apply it to the selected entries. +Type to search for an existing tag, or use that search term to quickly create and apply a new tag to your selection. Pressing Enter with **no results** will **create** :material-tag-plus-outline: a tag from your search query and apply it to the selected entries. After applying a tag, the "Add Tag" button is now focused, allowing you to press Enter or Space to quickly reactivate the bar. Alternatively, you may edit your new tag by right-clicking the tag and selecting **"Edit"**. @@ -62,7 +62,7 @@ Tags can be also viewed, created, edited, or deleted from the **Edit -> Manage T ### :material-tag-search: Tag Bar: Searching for Tags -Pressing Enter with **one or more results** will **apply the first tag** to your selection (assuming it's not already on your selection). +Pressing Enter with **one or more results** will **apply** :material-tag: the underlined tag to your selection (assuming it's not already on your selection). Tags that are already present on your entries will be greyed out and ignored when pressing Enter. This lets you visually confirm that a tag already exists and has been applied to the selection. @@ -75,13 +75,17 @@ Tags that are already present on your entries will be greyed out and ignored whe #### :material-tag-arrow-up: Force Create Tag -Holding Shift while pressing Enter will **force create** a tag from the search bar text, regardless of the results. This is indicated by the first tag in the results becoming greyed out. This is especially useful when you need to create a new tag with a name that partially overlaps with an existing tag's name. +Holding Shift while pressing Enter will **force create** :material-tag-plus-outline: a tag from the search bar text, regardless of the search results. This is especially useful when you need to create a new tag with a name that partially overlaps with an existing tag's name.

![Empty File Entry](assets/tag_field_bars/tag_bar_shift_off.png){ width=80% } -
Pressing Enter will apply the underlined tag, "Cube".
+
Pressing Enter will **apply** :material-tag: the underlined tag, "Cube".
![Empty File Entry](assets/tag_field_bars/tag_bar_shift_on.png){ width=80% } -
With Shift held, pressing Enter will create a new tag called "Cub".
+
+ Shift+Enter will **create** :material-tag-plus-outline: a new tag called "Cub". +
+ Note the the greyed-out tag, showing it will not be applied. +
--- @@ -90,7 +94,7 @@ Holding Shift while pressing Enter will **force create** a [Fields](./fields.md) are extra pieces of information you can add to file entries, such as titles, comments, notes, specific dates or times. Unlike tags, fields are based on [templates](./fields.md#field-templates) that contain pre-filled information such as the field type and title, and that information is _copied_ to fields when adding them to entries. Editing field information on entries **does not** modify the template it was created from. -Creating and adding fields to entries is extremely similar to [how it works for tags](#tagging), with a few notable differences: +Creating and adding fields to entries is extremely similar to how [tagging](#tagging) works, with a few notable differences: - Click "Add Field" or press Ctrl+L to open the field bar. - The same template can by applied to an entry any number of times. diff --git a/src/tagstudio/qt/controllers/field_suggest_box.py b/src/tagstudio/qt/controllers/field_suggest_box.py index 87b2346c..a08563a6 100644 --- a/src/tagstudio/qt/controllers/field_suggest_box.py +++ b/src/tagstudio/qt/controllers/field_suggest_box.py @@ -86,6 +86,24 @@ class FieldSuggestBox(SuggestBox[BaseFieldTemplate]): else: return ([], []) + @override + def _on_shift_held(self, held: bool) -> None: + if held: + self.set_hint_icon(self._rm.hint_field_create) + else: + self._update_hint_icon() + + return super()._on_shift_held(held) + + @override + def _update_hint_icon(self) -> None: + if self.layout().search_field.text() and len(self._search_results) > 0: + self.set_hint_icon(self._rm.hint_field_add) + elif self.layout().search_field.text(): + self.set_hint_icon(self._rm.hint_field_create) + else: + self.set_hint_icon(None) + @override def _set_item_widget(self, item: BaseFieldTemplate | None, index: int) -> None: """Set the field template of a field template widget at a specific index.""" diff --git a/src/tagstudio/qt/controllers/suggest_box.py b/src/tagstudio/qt/controllers/suggest_box.py index a0cdf67a..5dccd023 100644 --- a/src/tagstudio/qt/controllers/suggest_box.py +++ b/src/tagstudio/qt/controllers/suggest_box.py @@ -5,8 +5,9 @@ from functools import partial from typing import Any, override import structlog +from PIL import Image, ImageQt from PySide6.QtCore import Signal -from PySide6.QtGui import QAction, QShowEvent, Qt +from PySide6.QtGui import QAction, QPixmap, QShowEvent, Qt from PySide6.QtWidgets import QGraphicsOpacityEffect, QWidget from tagstudio.core.library.alchemy.library import Library @@ -14,6 +15,8 @@ from tagstudio.qt.controllers.autofill_line_edit import QtCore, QtGui from tagstudio.qt.controllers.modal_content import ModalContent from tagstudio.qt.controllers.underlined_widget import UnderlinedWidget from tagstudio.qt.global_settings import GlobalSettings +from tagstudio.qt.helpers.color_overlay import auto_theme_overlay +from tagstudio.qt.resource_manager import ResourceManager from tagstudio.qt.translations import Translations from tagstudio.qt.views.stylesheets.stylesheets import ( autofill_line_edit_style, @@ -52,6 +55,7 @@ class SuggestBox[T](QWidget): super().__init__() self._lib = library self._settings = settings + self._rm = ResourceManager() self._limit = 25 self._is_shift_held = False self._search_results: list[T] = [] @@ -98,6 +102,13 @@ class SuggestBox[T](QWidget): self.layout().search_field.holding_shift.connect(partial(self._on_shift_held)) self.layout().search_field.index_updated.connect(partial(self._on_index_updated)) + def set_hint_icon(self, icon: Image.Image | None) -> None: + if icon: + pixmap = QPixmap.fromImage(ImageQt.ImageQt(auto_theme_overlay(icon))) + self.layout().hint_icon_action.setIcon(pixmap) + else: + self.layout().hint_icon_action.setIcon(QPixmap()) + def _on_shift_held(self, held: bool) -> None: for i in range(0, self.layout().content_layout.count()): underlined_widget = self.layout().content_layout.itemAt(i).widget() @@ -154,6 +165,7 @@ class SuggestBox[T](QWidget): raise NotImplementedError() def _on_search_query_changed(self, query: str) -> None: + self._update_hint_icon() self._update_items(query.strip()) def _on_search_query_submitted(self, query: str, always_create: bool = False) -> None: @@ -185,6 +197,9 @@ class SuggestBox[T](QWidget): def _is_excluded(self, item: T) -> bool: return _item_id(item) in self.excluded + def _update_hint_icon(self) -> None: + raise NotImplementedError() + def _update_items(self, query: str | None = None) -> None: """Update the item list given a search query.""" logger.info("[SearchPanel] Updating items", limit=self._limit) diff --git a/src/tagstudio/qt/controllers/tag_suggest_box.py b/src/tagstudio/qt/controllers/tag_suggest_box.py index 2f69f97c..e9538d37 100644 --- a/src/tagstudio/qt/controllers/tag_suggest_box.py +++ b/src/tagstudio/qt/controllers/tag_suggest_box.py @@ -91,6 +91,24 @@ class TagSuggestBox(SuggestBox[Tag]): self._clear_search_query() self.done.emit("*") # The query does not matter + @override + def _on_shift_held(self, held: bool) -> None: + if held: + self.set_hint_icon(self._rm.hint_tag_create) + else: + self._update_hint_icon() + + return super()._on_shift_held(held) + + @override + def _update_hint_icon(self) -> None: + if self.layout().search_field.text() and len(self._search_results) > 0: + self.set_hint_icon(self._rm.hint_tag_add) + elif self.layout().search_field.text(): + self.set_hint_icon(self._rm.hint_tag_create) + else: + self.set_hint_icon(None) + @override def _search_items(self, query: str) -> tuple[list[Tag], list[Tag]]: if query != "": diff --git a/src/tagstudio/qt/resource_manager.pyi b/src/tagstudio/qt/resource_manager.pyi index 986ed884..46e6ca58 100644 --- a/src/tagstudio/qt/resource_manager.pyi +++ b/src/tagstudio/qt/resource_manager.pyi @@ -36,6 +36,10 @@ class ResourceManager: edit: Image.Image file_generic: Image.Image font: Image.Image + hint_field_add: Image.Image + hint_field_create: Image.Image + hint_tag_add: Image.Image + hint_tag_create: Image.Image icon: Image.Image ignored_stat: Image.Image ignored: Image.Image diff --git a/src/tagstudio/qt/resources.json b/src/tagstudio/qt/resources.json index 6533ce38..3fbdefba 100644 --- a/src/tagstudio/qt/resources.json +++ b/src/tagstudio/qt/resources.json @@ -71,6 +71,22 @@ "mode": "pil", "path": "qt/images/file_icons/font.png" }, + "hint_field_add": { + "mode": "pil", + "path": "qt/images/hint_field_add.png" + }, + "hint_field_create": { + "mode": "pil", + "path": "qt/images/hint_field_create.png" + }, + "hint_tag_add": { + "mode": "pil", + "path": "qt/images/hint_tag_add.png" + }, + "hint_tag_create": { + "mode": "pil", + "path": "qt/images/hint_tag_create.png" + }, "icon": { "mode": "pil", "path": "icon.png" diff --git a/src/tagstudio/qt/views/suggest_box_view.py b/src/tagstudio/qt/views/suggest_box_view.py index da5dcd66..7279d6a1 100644 --- a/src/tagstudio/qt/views/suggest_box_view.py +++ b/src/tagstudio/qt/views/suggest_box_view.py @@ -4,6 +4,7 @@ import structlog from PySide6.QtCore import Qt +from PySide6.QtGui import QPixmap from PySide6.QtWidgets import QFrame, QHBoxLayout, QSizePolicy, QVBoxLayout, QWidget from tagstudio.qt.controllers.autofill_line_edit import AutofillLineEdit @@ -19,6 +20,7 @@ logger = structlog.get_logger(__name__) class SuggestBoxView(QVBoxLayout): def __init__(self, placeholder_text: str = "") -> None: super().__init__() + self.setContentsMargins(0, 0, 0, 0) self.setSpacing(0) @@ -66,6 +68,9 @@ class SuggestBoxView(QVBoxLayout): self.search_field.setObjectName("search_field") self.search_field.setMinimumHeight(search_bar_height) self.search_field.setPlaceholderText(placeholder_text) + self.hint_icon_action = self.search_field.addAction( + QPixmap(), AutofillLineEdit.ActionPosition.TrailingPosition + ) self.scroll_area.setFocusProxy(self.search_field) self.search_field.setContextMenuPolicy(Qt.ContextMenuPolicy.ActionsContextMenu) diff --git a/src/tagstudio/resources/qt/images/hint_field_add.png b/src/tagstudio/resources/qt/images/hint_field_add.png new file mode 100644 index 0000000000000000000000000000000000000000..dabe8d9278f721d0e251496f2f4c9e0da69bedc2 GIT binary patch literal 2179 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 Ma2~rMG=1lP0dLHC3;+NC literal 0 HcmV?d00001 diff --git a/src/tagstudio/resources/qt/images/hint_tag_add.png b/src/tagstudio/resources/qt/images/hint_tag_add.png new file mode 100644 index 0000000000000000000000000000000000000000..50a1e89a8fbae7f3d020c37972ad8ef8502d1150 GIT binary patch literal 2305 zcmaJ@e^^sh7`_;(AUr9Q&J4J@k$Vw>-1iX4Dq5w87pO@+f@#Q19I@z)fQKMq zl*NdtvvHc4iR%c12<~q^4l@aj2wonh;3$mIcoq>;V8W9M5|Y&g+3H9Q9QB%~&>{c^ zdYs0X7JZI^5?DmA%U1xNov%@t>5|adB3PwRGNVZo&J07s5DxsBCsSzBXa$MVMPtEW zB!aVO+9*KL{QP_*KNKNNI+Pn38HsXuD38Ym3N~dm(3pj7pyoL(Mm?lBr8W^pnjj5K zrze(4nrRUX1D-i%j$4QccLO!Hd{79~$)H?>gFY;$3GGwlPUbPWF^i;0DvLCZFW`|W z#_7ibLHV8>V!@105-Sw{FW2iISq4SR@<1WRiuy=S|4u+9Ta7rHh*PB5q{d}=xPhMM zs)VyH0wrO=b5v47j~ggZT@lP*_#bk`Q^;sChcqRDO@)hKt}Dh_Ie}b{>G0)*hRz!I zns^_N8+89AoSEgAovmGFAi!F96JDwbP6UVZ(1)g3@kDC84+2+q3Q_}-3w0SzQ1a+# zrHRxMIe?=Q7fYCOSu~#;$>+0q$mk59X#x;SXsuF=1}Ywh$7gdQ*xb-$E=Ry!$mWC# zI2@O)O9~Ex2BWe66+8DbQwZb=g&>BYXwqbLy&B!%NqFw)XmprExOO&^>FTclQ#;Ee zf{i9pV^-rD*UZ3fl%+^5osXGtu@1CW1dFv=0u<89R66%8lgH#Cd}Oo+<01K3IIw%l zve2=-Q0GbeH!&glSn5KT;Gv@l;zr+rBMk2KqZ zkA%e9|1f`*(SE>m;Q5LVvyTQE&fT&q^j$UIQ#EJr)eH%D49#s^bT~GF92O%PKiDeW z&P(WTe{^i{3*y^*GT%G6u}l)Wu=(yvmbPuUy5+^4Bj+#p$kW}*(=G8!TXqd>9_W5^ zX_z(c^SG`KA6t;kUxB>5MtyTIIBMJWgO2*H)WEs!*=3C(=_dyTDZJDK)f)*J$jZdR ze)X}Aite*#<+oqx7YB6*x~0X3iZ@}CXIEJnXyIgytYl5^lD}Ecb}iGSyt4a{q}od+ z+_j~)ATcxc_u36Cyy?MPBYW%LzW?LRjZlxj_m!4_RQ~0CnT&ubZx5QMDxNdeG+diC zj9pdy9;>+ZOUbY~;>$h6pg!W4qC2a@>P{5aF38Oeeil7>X@lhY3(d%~)x)i4zx9*; zbafws>1NqY$JXAP!)Vdj-meY~0KXC*#+Vfp1WogG!VRk4&VZmvCb?9cY}tP8)fTczpEQqf@Aymzs(wGtxc%1#V#H2eWx@ln7xh>_6qFw(kkin z{XX&BHj{sTliJYx*Eijw#uK@B4e^_dy0-A5fi$EaSF_3RDIX_?-p^3YA)_ZR*3b$+q; zrRl0kccANjR38*xL~gwPN8If<@4NeZZ9D3c48!a=;?eX0 z3?8?>*LI|WvlAxLW)`21kiX**5x@1p#gt8x?SUQctohybYwFnczzqe%g)>q{7$`h+ zV!y|s$^*VBBbYD`xv;IYuCfmdLfU1Q_|+l(3&iPCM4T=GcpVY@y#bI0kP4szNC8L& zNCZ#EC4 zTHE&{ACzACd)7x&^GgaUZaR8qFXRzEg4YKQ*Orcu1$@zS5q}# z1e7(juU`<|5*q>AugSZ8{im33@Xz$du`@m{O{!{;*;Lo!J~|hBFL8cz>ah%4z1L~^ z={ZN^jBN61@F$gy&Pi7JjpnwBa(B5knk`PfsFa`D)piJ4qm`VQlP*7Xxa~6grCW|g z&jonMHiuu>qD;2#W_!rCgm+dcY3uIAJv(-sa&$h3-Lto?BKVWjj!xF#&R_dyKj literal 0 HcmV?d00001 diff --git a/src/tagstudio/resources/qt/images/hint_tag_create.png b/src/tagstudio/resources/qt/images/hint_tag_create.png new file mode 100644 index 0000000000000000000000000000000000000000..10c94b306ea98bb11ce30fa9a79e46ec2cb5f594 GIT binary patch literal 2428 zcmai0d0bOh8oi0^h*%XwWO)XWH48yNVge+AvXrn!#0Bs{9^nJX|o59#*=c96f`JXhD2wF@sqMsle`5aUmqi;l7S0| z5DbQtqBOCbp=6P?x(xicW|~TZv=l6rMT+G`KwOCofjlT46dK9L2x7_v$&4uf_veD~ z5sQ?9VNwQ_nwgnN$#kbkWJ0Q&x3@QyMyJy0WSl{kXNfUbNfyiPG!nBK{)jwDhDtG1 zB8D`YaH2$ku}CBwhvvi)CAy$4md|Y;H-f4`sBRP*^;J5CCclHOLEfNCQzV!~o+6RX zZ{W2h=HWL2ar@pLqJ*VyBlCFwn=TT)whcKJkbxU9XX4j z8HgCO(>kH?g%N=&k+fKURD_7-xVtQp=lVZ@TiyY3C20~_G~QGQi{z$_(KyEl7QsSf zGb+GR=Cu~)LlLp?kANn#G=-+Lo5U!-7y5!$>;lFjdC{q_EVJdU(0m;j+U$4|0iK+@ zR&W6d=5ixsl4LXu$K+9g94I(|>*?n0=}D$jW>>(A#=v9I!eTp?F>1s0RR!Ws0)9E`^a6H+@&PC6@f8-dkdyp+Zkw|Kz;==NFUz zCcSXw`SIzWALlk)9CU7Q2^oB*xR%g-Ms{XJS$XPrYsH-pvv{J`%D>AiJ7y}Um|ss> z)xUo}Bup~RrX=*JKO^*Uu&&-;_FFr64)!PRtNXN=xhEv|Qo zyE(~-p>GX~jSowpY>UbpPinee*51(({K#ya?a;oKuszhBT?*^1`csw#HBV0vP?&Q! z{6DU`t(ycfPT!p4R4fi)R((;O9hDgJYxRCtN#AS zXkn{gG^sG)nMy0q-di~hkMMpC;XNEEoK|eOauS^sZ5SwcveV8Z}T)SE;5 zIrq&jQa0_JZtUo?_P;$+OM!(e2W3sUGpj9BLiHyV?zZ^r!cZEtMGk=Ra?L{k6^AVV zAdUq4v-!%yKOXW;UBR|!$&YOK2-0!OUVG%4PprcjR6a!6Sb zy{&)7aJR*7%OFHv%IS0-b{&nm-S+*XMz5(`M|SS07|0Y>-fw7>@7&lhaW$quw8L}* zp(y0>Ql;sj{qjxC>!kbQQ??E0){O;Xsh>T&cIffy`s&K=Dzk2@nKURZ9L_iaJ<_Gc zyYBIBPs`6!U+QZX?saoHYPvnWCr4jQ^fhbowHqkwkFc6z(4_mVpN0kz0DX6-nV)I@ zs@}^wqpX%&M9xZ(@2Wb>Yzbe&HX6z-X%*VolygeK1J%LWLkG&)r9e55_-Ap`Xt`f0 zDBWXA3@1MOcnO<06i{;PFL8@UoSbzG3uesS*NhgV2NXgCFj{*H87(?nX1I^YHUdN6 z9gnfgAu9~xK+jfnsPb6djOQuNK|MdCQ*1|F;K+6~1de`=CP1esf&>fvZTH&JUz|Q^q7J+8tv*xN{HJXGm&WP?dzz|F5q;>Zn$tN6 zk$iaF#sT{Yr>{M7ReNoTFT7!4ZS$hGOIDJvT-pI-@&O1;3-iBf8TGGyxwyxO%naUeaLd6w@YYVlN)U*Z$<{GiB?^cU8)o7kLVBT-PsZU k1+&F<^V6~fQvAP-7gaY$cJ7UMqWRMl91!MT$Jw#_zZooz{r~^~ literal 0 HcmV?d00001