From 6154f93185fb555daf4b30c69327cd2252dd19c2 Mon Sep 17 00:00:00 2001 From: KarthikRajaKalaimani <92777139+KarthikRajaKalaimani@users.noreply.github.com> Date: Tue, 9 Sep 2025 18:34:02 +0530 Subject: [PATCH 1/8] Fixed the CollectionView - SelectedItem visual state manager not working --- .../Items/Android/Adapters/SelectableItemsViewAdapter.cs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs b/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs index 41f5619c3ea7..ded5d1bd5636 100644 --- a/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs +++ b/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs @@ -178,7 +178,13 @@ void UpdateMauiSelection(int adapterPosition) // Selection's not even on, so there's nothing to do here return; case SelectionMode.Single: + var previouslySelectedItem = ItemsView.SelectedItem; ItemsView.SelectedItem = ItemsSource.GetItem(adapterPosition); + if (previouslySelectedItem == ItemsView.SelectedItem) + { + ClearPlatformSelection(); + _currentViewHolders[adapterPosition].IsSelected = true; + } return; case SelectionMode.Multiple: var item = ItemsSource.GetItem(adapterPosition); From d531db9794f15b745d8ba6af5f7cc6e0f8fe885a Mon Sep 17 00:00:00 2001 From: KarthikRajaKalaimani <92777139+KarthikRajaKalaimani@users.noreply.github.com> Date: Fri, 12 Sep 2025 16:45:58 +0530 Subject: [PATCH 2/8] Test case included --- .../Adapters/SelectableItemsViewAdapter.cs | 3 +- ...lectionViewSelectionChangesVisualState.png | Bin 0 -> 22018 bytes .../TestCases.HostApp/Issues/Issue20062.cs | 101 ++++++++++++++++++ .../Tests/Issues/Issue20062.cs | 34 ++++++ ...lectionViewSelectionChangesVisualState.png | Bin 0 -> 24520 bytes 5 files changed, 137 insertions(+), 1 deletion(-) create mode 100644 src/Controls/tests/TestCases.Android.Tests/snapshots/android/CollectionViewSelectionChangesVisualState.png create mode 100644 src/Controls/tests/TestCases.HostApp/Issues/Issue20062.cs create mode 100644 src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs create mode 100644 src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/CollectionViewSelectionChangesVisualState.png diff --git a/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs b/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs index ded5d1bd5636..a3c5d460e09a 100644 --- a/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs +++ b/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs @@ -182,8 +182,9 @@ void UpdateMauiSelection(int adapterPosition) ItemsView.SelectedItem = ItemsSource.GetItem(adapterPosition); if (previouslySelectedItem == ItemsView.SelectedItem) { + var viewHolderIndex = ItemsSource.HasHeader ? adapterPosition - 1 : adapterPosition; ClearPlatformSelection(); - _currentViewHolders[adapterPosition].IsSelected = true; + _currentViewHolders[viewHolderIndex].IsSelected = true; } return; case SelectionMode.Multiple: diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/CollectionViewSelectionChangesVisualState.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/CollectionViewSelectionChangesVisualState.png new file mode 100644 index 0000000000000000000000000000000000000000..20b4e02045a50309d31bde47a9134b7924c93a48 GIT binary patch literal 22018 zcmeI32~<;A*6*(%QkDZVWsKHdH)f*_l4hY$RKAZv{fWF6y^b?`~%k*-Vd_La-wAFL6CsE#0! ze?gE%_$YE5L4x)o$oumMVsZyTnc=}L%T7@x@zvJRfgLyB9L5nf)v7f|tWGhR;&^Lm65+`A2AiMR?C|-@ z@d#*3mJKCOPpXv3G1k;m6!>YpX^vW~I8E1T{L$;Tq7UXR0nMfS z!m7*PKu3{l)_5ZN9$EJ}i~$lklan4k-|KsP4gB$aYVRykWrD?GCwRP;+FHv+ktkp^ z**&MG#$st{X<}l+lW2z6#J9Dz#l*z8y1J^$%3&H`zdroa_3OGiI#l>Phr#(iSgUrT zft7DPIDXzeJ?Qi{ZKt%CH|58~{1!Y>2{CDmQ#LIQ;&gd4EA(5if^!{1x7^00K72pP zY#!Tod$TTCBHry(WhCzu^5Z&LS?B4wj$B(?JRaZSBJFoW$=F}jih>D$*^L!VmIz;J zN5tnl(A>HU9IYviSJF4s;)@AhTZ~Lzh=u%s&Qo?5r{BHQUSu{V>+0(1-3n;I8kV@X z_%3bSxY70e`K*byHAXMd&YPK~Ny~07jmQWcP4*smy3fVMMVq+PmG4jz%ss1dPWySY z%piN_tY9i}kHbt!=29bzi%3~LXNgA*-GwtF_GR9^xR#a-tm%;?t)|x2V?X`$la5bc zX^xdl*7KuBkGc-MitR1+JYnEFa0jlFHY=Lrbh|gD==aj_&K=poYfa@N>x_yBwv$dI z8vhfeO%ohW!^}uSz{qX8j9Kw7NlqzV1?B2Dx9zz^Jb>KjrH7L+A%jt7(=WDYV3$8U zmqXh!4qNc+*kSM+boJz8f+?l8Et21Cs%^*$abeBo7(U5xDD^mAP&rj`&c9C0nj&j? z+16a>I#tP|d$Z})a|4nkQ2?)6;3k-2T2ll+5zEs_+$Y^`6YamC2g^f~*K4QORZbQ+ z_%F?M)3nISN=l7Sx}8!r3!dJaXhX(zI9>S-O9FOgHA$du9PG(`-}$KI$LBxgSdsSk zlp|H~HiGK@^=sn{TRZKX)3<7#F2y(pb)G7p$VpAXY>3pN`H$4+IaZdUs_bmiHTnX`Y&y~-)9k=!Sd;dN0g;VnmWxUBKp{^j=V--DUJ zR8UpR2d`|$~(T9 zJ%gnEG}@e=diU;Kv$;1X6ciNd1_#fptE(5gFyeBoQa=yYLelT|3w$*`H?q0gpjElM zMpRjoI^0uvSY@&Gx(+m!!;l)(GuXTL=W83}-Ix_Y3MwisGVm=y%m+qIW(G-g^@@FE124it+IQF0;j>m%d#!r9NBJu{o{aluj5jwHH@=D7+O zj4!dY`(?9CRzgrei|Z=I*tyrMD{sKRVGo$r5$b^7^G#FBGFjP;>86J6X_pTf;8|&^ z#>--U$>pI}F|o1w*gmfdV^YWdOq*odX!xZ`)hzYbq{CyZflJhO&R~nG* zK05g9YHxXf`{LrFPWa+1YE2VGPFujHcUAnz3$B>3mTUECHsR!TnOa@FdNs7WlGQnT z82M1lnkyh&^z++`^9MU0%`0iXM7(d;1f5Q)C()#$TyE@frdI`pF@w7Gv73>qd-LI) zbcRVfOw7Sk0$&*^#usNFpZ~KKn51gmHF>8y4cawT6Yuh8Nco4~HY6yC45%_2 zw&`KpHH!n*{QB@6EC0K}JKxzk2A$&cnBtI=?Q~k7z&;oKGOust%WpPp+wBpq#w@s=+gEPaVE@Q|tXWAz`#76AzTYb+Ou@(^ zP9^h8o%C*#rf9siuqk;>7Ihbi_Bq^4no)0xuDi{)J!jv{8X+H2_M9#KHej?7=kI@D zTn|iznN`oqKQMSlYAh|lrrCHbO|=d@NyiXU%L%?fdBQ8R@t^N??=MFJV{O=#ou4S3 z$f_>e<5*ETaTys5@?yKBFZi~L>UZ=9GMUT? z@$-8OS32Jg<0Z=QN`YB0eE+7}A-;AW&OIa4jT16I*=tRaMiRQ{Eq&nD;lZsqo;$_7 zu{I93{mU;sludi3vJ^{sW%ENhy>R_(8)oI!^-2kEBG$*(#K6VpLt1f3^?iT*N+RD{ ziG#0fux&6!5K2%4W8sZYFcu2s-=TWI*i(rz4$Q}3y zv1%KukHe~SSoMehX?0*V=Ex!;YG|a3Mz_J-zR8}V9aeElbycDKl`uw`7h+XVKALhg zv!Gk579#Pehif-yxnTK?y5-!m{+U>O*pM1|Ih_}#k-0SK&Tl5rb)6+MNda|gNqSfv zGK z%38c$iAu+jV{z3R0;RhX*C@Mtd+#RCyOX<2>MCa2kMLWT#Vx(nB!XnbS)!(CSI~IE z7JJ)t>gf(hifpLftSVy~JA%}aEp2H$uhqH-`aL8bx3Z|m3I-BX(VT=yV5bYJ#<0o8 z{A)LxVR`lEJ*~3~$gvyH;SHJ3;0#K{Y_C}e1%pVvSIu97y}k1wBFTExTWOi=FC*L92C?_d!VqPQVIjGUAx##U zEzNfH){x0@O2+NPrZS)Y6wDT+;!5>~lj?qmGDpKgi1V#kn$L5pu9!HEWO1OOASv0_ zc=}vEeuT2TK+!cZNg3|Rtzd`on?f5LSk&@>u^bwWHrLmWuVLmsm9ACoskAiwlTl|I#5l9W{_o0n+WJ&@dGZ0Y=m)n!*!v{7XP8w*(q3z3b$y_1Lrr2EkR&ETxJdf8! z^F)SJWPvMBiuoJuS44R%gEZx-O#X0HC6FqE;WWpQQ!!6_ z`}S=PV_hV5(lIOb6EK%#1D~^ryY1VFVeD{0^`w^uj751%xRz<~q|t;iGT2!}i1Pgg zZhMT$iy&|oZaRxEOjU3S-(~@ZTOQGE`$@W7Tk|sm^|j?7eu%$||Ai@jt|@`*3g%IBK>P zr7UhuR&jiMd<=y`i!;6U$5@<8UL&Vu)CwuaUQezlFTtktkAb*d&20NHNBm)0O9L=l!9XFBVWGXSgRi zX^R%JtN-a`7tZke7ZDs)^qBh{0$+Vd_IfIUyf`5pIo4>FQRpDTc(L*67a9`xXd7!H zC*MqvXxpP)J{8X-)ii38g$=4&$ue1GTS$4~v>>YU(tA5-%Q5@+wv3PWXOJbrm0T6l zC;fhqRL~Dp)0ecU=nec@Owfe<>9A<&2RZEQN*d^F!*dYnmraFgKFTB*$p|?sZ>=t3$b5D$h+tqD`F=Y&cg>) z1Wi8~#?Hs+QrAz@t}FUR0FR^r_H(4_^;J3Z9^#k>n;x#lTT=!(^gTt;OSTxFCXK^2`%Oz3cY4kJYm2GHhB zK8bc>y;5!u$dagJ1nQ3)D4XaC4{8p0@%~v4B+U(m{AXAxvxBHlU}g&z=RZSFZs(F{ zTh=S#BlkFzmD)Ug#bEGzTqwW5D8t3QiF%057CEyImUMnPuT+cTSQD{?%XDnp1GjDR zY@(Q88VibAZ}G(=oc7)=6stprboBJzz~utVZ)@6(N<=(7He&ql^@>GhbgtFYeMz*0 zPn7Uk%BI1tFjD0U?{1>Y$K*h{F2zC;(rh#o)0k=q3+3-(oW)Xy#Ymk-=20ptLc)CH zzO1f+VZ)bpgz|!Kc*3B~AL!Vh<_jLWY9M4NHnby^^@ix%cJE+0tPP+OLP&x^USfsA z3FSPxs5o3S-xVMd@LH+`tW;(t!4S(*tVadMeo!~3YL+8NH0l3s^5tX08ex+?JuDPN z*Wh+O#3;=mh$Lz`rhwvhG}Rz~;`o~Jy)fy$;4e^V)jHK+q&7-gV+m$x4$R(qp4;C& z`>XO>c3-*1d_Jhd4Mhag%-XiELBGj-R8X<&ro47U8_%sdEg70jBTbbjV@bgr_w(n! zl9raXrfja=X#mnNEVW8Tepz!6!nL4Mu7aW>sf|PPWu`pw>i(!bv*OVvY1LdGbW)sW zO-A`#CDv!DX5uIJ*VW1N|K**ETbQ#R8YPZtx3Z|KY=N80_MW!hTpeAwo$6 zIosqJ@iv%9L_)PgYHiyyR60WyakLfTSSA}>d*B_^1i(gn!6!nvP@cos2|j!9c28xx z?clffU{MCaUg66x4})~mY{qY#6$o-c#Rq90#N67QIuO^O%STMiFo<`ka{1wd-yyI+ z6O+E#5XZV^8Kdyt$|t`IBOR$2SOJmq#cMaiTb5arG`xLlI|#2x{g#gy;s5Ec+zhZt zq0RD(1I?yHy)otG09IQz1EYdXvA33k(F*vsZfc^VgtRz2X)GC=^6V&vUt^A@cEM0R z_@526-oG5`DygXKt9z7HT4J-a%YO{i!wbmjNW^mriCFwFS3@vA>)H{cU`;vEXYZbV z8{}7a;2Ee)n~IT*+*}GeGfGh$XueH=Ho9kxs{Zn~XZpjH5f_*8%Yk~`D#lb=45j8B zhoPhUT)~6r4Fo4@qr2NHr|BSz%zZl^kw^h}TidS2S;@;s`~DSu`BeE|(3hsmQdZZW z61{gXH{9J{KCM>p#^{#4eRArIhgM7T?$-s4=qvnWGviK|0 zfKW`6wSBU^@$9{Bc7I30vWZt>>$J|l^O&-ZAx6sR(h(A3B)eJ3V+pKX7xf6QUO9<# zp8pPPj*gF`z$P(k!}i`hhgw zXii?^l}WP+0U_h^AxS}@b}ExjRSo5*veQNylH9>*YhW$V48^fR4}?{8t44g2V4te zRl`SwC#M>MtSO&Z?&}_*hwXB%C;1C-E#&+{ZRZqyO_5E0hQs5Fm>nGPs(fN1`-u?XQm~R zJZzJ%gE6m)?>`i4I11eG1gHGq&21xnUWHBVzZ^-$$VF;>7*4Pqg-E6WT&+V3mtA8a zV3F{_JQi~{BzG$imw5|}F|}}$ocrQ5gHy8G`L+8@Q`r3#T%=NG$WIRYx}n${=dV|% zv2NWAIbB`lR%q|Vq>)8VA)e{4V`Oy4tFYR@?%d^r5C*hf10t6s;?-D?1XI@jlZlC) zkL=tbuCS&A_x;I;Wl0VlKPKt8D{sDWipQT0`^MRexErY$=$?rVGb6K!V#5-*k((uM z`q-|WL35pU?vR`2Gf)`dTQQNd!eSo(GX}M%@s7S%m$M=E#l+yF9Xo^}{n#_)WbILl zF}^iLrq=WPMc?|v>-_hh*1#1gDmGlRqKuLpiE50wZfA1)n9n)#(wuOKy}Yz?g?+#w z!TWpn7OUa>pUKF(Hm4cqGtx|?7>a1)`FNZ{v!!oSx{xTzT{&UKvY@V_O5gC}MPh&| zUO|Od|N1hDvFK`OobeH3y}gI{J^arY>xL2@i5mK%lG}PWY;xhYBFF!rZ!>|vJWBR} zfw9@ISiGCvU|p^*=jt>+yk}@A`S6UTt!+oPbu`Mmw(3G0nJiCgEb1c7nM3R};;E;-**prc# zBpYCDPQ~XKTKRK(&P42UIfO~wmp##@K2qGE)xeWX@cDME~zHUX!7 z``a~pny(|oRsra6LEIAx93&N!uW6krwz!hyKi6}HZeTV*6k7=oVLmfN#u3VJzA!s1 zdv3w&`SWrjs02k$G$DU%>?cKE4{QX)x|+U7>pt}E1av`lJ_Ai=!Pl^7&p6g?Rm!dH zg+P*D8z*hX)NMA}u_9ljL29w$lRm9^)*8Jw?!;i>X65?1>}*_IxIUZQJeGn6_`}c6 zB?OchHk7ElTOYlzQ73mZ9K%300@Ul{sNi?T1Q9&J%CYUgUE6?$@M!E89v+@-9!@O7 zvsrKlFZb*^;XSbs!r`1(X~2)P@H@NNA5s>gCJNPS5P%mpBB_*Z%uh~3Q~-DdB)Hos@Pg`0%cN~m)Le(QeMYD zBD!5%(?{V+`$EwqXP-f$oMf>ZM^zai%us~Drq|SJE;7Q5Eb4ixIP(RLv-`m)QI!1d zGe4tj6zBi;n*8WYgEk)Jil?+{#53nY-d=+N+R$@FW0RaxyKT*^_JNWC1zwK+n8ZQtcYc zi(Jy=tIbt6hTh%O_EpyY$O_N@&__sqWTb8js8M6;1g6>Y^e8w#xP}k-F~4=xz|k?k zw5L|(G+OsoCFGXjM~9_qe%)o)CrSx=d-ug}WmtH!I^mf>f#J)ZGwamVQ!u&Uj%af` z`R~>t%y%zr901K~27g$DQvxBJ${%9zc_<%M&kxUh!Yj|269{N=va+%e$sjogL^fXR zpsHY0P{>^1#_+V(Wr0rEg^L=3nA=+!N-HW+`1pM(uXNs#;ichsv^~@(Y3frY=tF{( zl`Qj~&fdMPCfkgV@oijD{?eUp8-RfGgtFj^5$N#Wf5I!VskoB8RP3k`i3Hx9_uy^2 z4fCY#nc;8}vL&v_+v)nc&31kW$ewWzc0l{lgt9{&3GV*BE9YYq0(4U{RMSIc7%>XE zX^2#-K2*o(0`KnHSC|P5G@P-l6kYRIB#^R&l#iz_r#;XEx~qz_MI9+$&Vvc?dU!iV4Y)2BSbat0L(F&tV&Z8zG@Il zOmXI^!|6DB+AuXoc3osKS^_x`-0vfNW#~lYMU0uU>)b6wy;UG#HYU}GN6z_21CZJV zKk@jQ*XeB)rR`t|I_4R%2Y zQuqp`kplrOMb-V?-APa=Y03+2A?XB+ZXnS>_Mx$eUUcz@{QMLuRCb+GM$#>TJhhgo zYQ`;#Ap?3g?axYbDH{6ACTlr4Pm32A7R@dcY+`O^gb6C|#_!OcWcu_&1G<2sWknE$>(;-|kzEs6AV|m*tD>0r zbYU4GDg_wv{&3AY6%7Tf*=@h7?lBrU6V9Ppd3nK4eAVGU;^s zz(255!L@3Vh)WaAf04BVy%bSTgAvJQTW}d6n+h$`T%S(dU6XY`IyxFEY#*^J zugj@4e|QX5qmCZcLEY_13S-wy_eHB_9w{C&%#cQ$Vm&)@F4j@O7687AS?M4GjhPF| zp*UdZ{up9{((o(-O_{u}&N1}z)1LU@A)NWLVvC9|F$DQ`1c>a9yol+W&W(-)=G;BM zA`te%#6v1AV;1BY7B;L0H4Hfg8Ix89RlJ{im7!8&QMU=lN`xda!FU_i>HYmn_>V>+ z>S4^FxYRi0Lk}w)$^$YLeV=}fC-wKYcXTA69Fzd{lt*60RFk-19zc#|w}0>NPIcga zH+&{Yoa<;yEmRl2o$l7CYe~gmknd4tE1kefcEDFZ*=h{%_V%eqHmpiel7;W>YEo1r zAFh}4n_WnPF$>hWyxq1nYd@1Z{7jX+@OcdfHxsYAoHA^ikmn&{GI5*rv1Z6Es6wR; zKa*8yRFS;BDe#2|*?cCRGVHuO=giL~FXq}8y#uQdFbQL=UjsJZi1OT?tvLGaVNK&; zhx)@*W1QAe9U3<%(@Y|bR5_vY&UL%qTI`m`Re>l(tA z!QM#(smAXf|`p zgY7BB7!GW_&dK1k+FgzfmSS3#XB(mc1&fiwU=_`73oOd){nKFeYOY+ zi;L$y@HN(Pko{CL?@3uE8SnH9Y~88^y8^sF9^OXp=p!f>I*z41`Jyx8oq#tJ^7m}) zQzdQ^cZyj_`#rJKqy2i+20c*U%;zj7#aI{TA3*P4>A%K&?|xl(x2IQqkE6gOc*-m| zs18KdmE7?~bb499n2qx_a~#MHXFB^+RTWc_tFA zZkbRMdCN5z7K==7Kdfp{>a5jI!?&Oxyy#RsaS+4| zu3+c#K}i90W>DXY?VP?KRMaTVTx&ktx_^a+9}#Wl3l&f7heIurjdd-IB);7ue>>mC z>W@S^w%m}{;0RjG?Ch`xqvq?pE!@5*kAl8=3aAX~e#+6ZY5m@+(15N&=gi?V14h$( zemn{jdriX0v(F!D8Q!pRnX@9+C4l^w;N<)v(NtyON{2kzj$G4NRP|_uX&SA`ynKi{ zOqj_IGg|IJ3%zfcr;!_Z!&W%za>Ofz&|j|>vW$NGr-=Kul}flCFz+K&@1Doc;NGE> z_X4@QyW2!!D@;Wv)b0(v5T+>C0q`ED=adq1vW;HSM^H!rNubDD*KL?b$yAb@#x&UR z$Ix5X<~$Pe#iubxsN!&EXM>An;Su7KTD~Jx2SjEA4c0`rC80x zijQ-qQT4q;N@e$=KXCq_cH9uHW{Er5TapXq0bk*Y-CHukME%-TZ>ukLKAZ&0nJB8D zI-In*%W!LaeSqr4c-5Y|19W6m!NeLDg1m2J?HC^clhW!`PK6nG9R*`#PAmk62{)Hkt_Xg~Hz_xZIY@lG899}VW zwMjGaVY(n)D;DRW7iy|9WH%E6j%fN0guYS`J_5ann76Y8mQdLBqX8QZP`p_Y#6e*K z09XU;b|m*M4AO9%>6FLISSZ{ObrqgCIv64yR!F05H3pS^`Rir(LpndphJE-J!T)SK zazx1HTjUyAQI&2gl38rfiBI@K-AVrIeNbw^z>s!VS67>dd=Y8*Mq1A7XI|KtDQx7h z_22DVN_P7q_a}h-LMJ>vPQ83;A$OSdb7yjrd$Eq8KJ>(K%1d}avdh^6D@nC4naQji zua9MyUTjG0;_lMGP+%SN@c0$I%T0Ob%5?;6D8!%MFNYnjk2U-&G)v6N)o^fcd|e4; zHl?Z!B?i!QtcahJ*RU1cw38$}Oiwlq@REEbP{qZm3m0lFB{Z#t##lRai^?R>8hPii z%TV``h+5|~L#0K*JuM!BWPPCijvlZfMToA)W`O^3R0xNlP_ED2w<>C7&)AlPWyXiI z=kyH{Yg82KUNW@pzNh{dP$~2+GkXs_n?p-W_6`gEKR8kT_0A;uo{!}Ol7F%@iE#Ea zqwO=J(a~Y=foi<_@HQc%#*|l=H1l8}iIal)Eb>A@L%8rH{gz;ODj{R}th2Mkw=2)g z5FW@K2KNdJwHuPOTW;Gqg|_pd9MKak)r2a;Unf3W^Q{NO(xHPkJW~Tgg2jG58xD%!`u0$C0}U(smgpE>G}BGNY>nKkyJM() zr)EF^d|Irtp_qT4%|?x~l1}%|`0=`GT`F5Vy4#s<){vMkwsu2H8i1ssL1h9Rdbt?|Wt(|Q#5N9(J5dLy^>hR= zg&8+@FUnkC=>}}6zrM( zsU+auhk8Ozq2L$YGYH#l>H#_Z<0imAU}!G0(h!!523VZ0#cuw_FYxg%ppgUhHjIfI zXoEm zHbGM{?wf@A5;S6cliIBOdr?IyYZjtW1W8a^-Jt@*u(~N{b&JyKhOJd< z^50*Dy~-rO-L5i;RVD#uu*zsx8SSb+T=j>m;rHr-xVj*&E{OjJHbJf~H>=Cd|4++} zc$wR?Zxgb2W9{QOi}9^5;&xJFzak)CK@kZ2o7sr&w_5#UbqrSRVD(v8^#`jy@&Eq1 zz-w$=Qbx7-4;R)HU&+69Gepw`{!$A(cqY*G$H0pwF8&wc4bj=FqrYdb@t%D;C-)kg z?9(;T*U{X&*JSTrj&#ClMh@9OCm`d^=r;-tA1PWblkR|xd list = new List(); + protected override void Init() + { + list.Add("a"); + list.Add("a"); + list.Add("a"); + list.Add("a"); + collection = new CollectionView + { + SelectionMode = SelectionMode.Single, + ItemsLayout = new GridItemsLayout(2, ItemsLayoutOrientation.Vertical) + { + HorizontalItemSpacing = 12, + VerticalItemSpacing = 12 + }, + ItemTemplate = new DataTemplate(() => + { + var border = new Border + { + Padding = 4, + BackgroundColor = Colors.White, + Stroke = Colors.Gray, + StrokeShape = new RoundRectangle { CornerRadius = 12 }, + StrokeThickness = 1 + }; + + var label = new Label + { + FontFamily = "SemiBold", + TextColor = Colors.Black, + FontSize = 14, + HorizontalOptions = LayoutOptions.Center, + HorizontalTextAlignment = TextAlignment.Center, + VerticalOptions = LayoutOptions.Center + }; + label.SetBinding(Label.TextProperty, "."); + + var grid = new Grid + { + RowDefinitions = + { + new RowDefinition { Height = new GridLength(80) }, + new RowDefinition { Height = new GridLength(40) } + } + }; + + grid.Add(label, 0, 1); + + border.Content = grid; + VisualStateManager.SetVisualStateGroups(border, new VisualStateGroupList + { + new VisualStateGroup + { + Name = "CommonStates", + States = + { + new VisualState { Name = "Normal" }, + new VisualState + { + Name = "Selected", + Setters = + { + new Setter { Property = Border.BackgroundColorProperty, Value = Colors.Blue }, + new Setter { Property = Border.StrokeProperty, Value = Colors.Red } + } + } + } + } + }); + + return border; + }) + }; + collection.AutomationId = "CollectionView"; + + var layout = new VerticalStackLayout + { + Padding = new Thickness(30, 0), + Spacing = 25, + Children = { collection } + }; + collection.ItemsSource = list; + + Content = new ScrollView + { + Content = layout + }; + + } +} + diff --git a/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs b/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs new file mode 100644 index 000000000000..1450c8dd8960 --- /dev/null +++ b/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs @@ -0,0 +1,34 @@ +#if TEST_FAILS_ON_WINDOWS // When select an single item, the selection background is applied to all items. +using NUnit.Framework; +using UITest.Appium; +using UITest.Core; + +namespace Microsoft.Maui.TestCases.Tests.Issues; + +public class Issue20062 : _IssuesUITest +{ + public Issue20062(TestDevice device) : base(device) { } + + public override string Issue => "CollectionView - SelectedItem visual state manager not working"; + + [Test] + [Category(UITestCategories.CollectionView)] + public void CollectionViewSelectionChangesVisualState() + { + App.WaitForElement("CollectionView"); +#if ANDROID + App.TapCoordinates(80, 180); + App.TapCoordinates(80, 450); +#elif IOS +App.TapCoordinates(50, 100); + App.TapCoordinates(50, 280); +#elif MACCATALYST +var firstItem = App.FindElement("a").GetRect(); + var X = firstItem.X + 5; + App.TapCoordinates(X, 150); + App.TapCoordinates(X, 250); +#endif + VerifyScreenshot(); + } +} +#endif \ No newline at end of file diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/CollectionViewSelectionChangesVisualState.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/CollectionViewSelectionChangesVisualState.png new file mode 100644 index 0000000000000000000000000000000000000000..a163477f488deb86ed53bdf343f9e83a3dd0a27e GIT binary patch literal 24520 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 literal 0 HcmV?d00001 From 5a3b7b25d96b26c72ee62210b4acbecc4dcf6349 Mon Sep 17 00:00:00 2001 From: KarthikRajaKalaimani <92777139+KarthikRajaKalaimani@users.noreply.github.com> Date: Fri, 12 Sep 2025 17:34:36 +0530 Subject: [PATCH 3/8] Included automation Id for Tapping --- .../TestCases.HostApp/Issues/Issue20062.cs | 36 ++++++++++++++----- .../Tests/Issues/Issue20062.cs | 14 ++------ 2 files changed, 30 insertions(+), 20 deletions(-) diff --git a/src/Controls/tests/TestCases.HostApp/Issues/Issue20062.cs b/src/Controls/tests/TestCases.HostApp/Issues/Issue20062.cs index 23f800e9f43e..a81aed1882aa 100644 --- a/src/Controls/tests/TestCases.HostApp/Issues/Issue20062.cs +++ b/src/Controls/tests/TestCases.HostApp/Issues/Issue20062.cs @@ -7,14 +7,10 @@ namespace Maui.Controls.Sample.Issues; public class Issue20062 : TestContentPage { CollectionView collection; - - List list = new List(); + Issue20062ViewModel viewModel; protected override void Init() { - list.Add("a"); - list.Add("a"); - list.Add("a"); - list.Add("a"); + collection = new CollectionView { SelectionMode = SelectionMode.Single, @@ -43,7 +39,8 @@ protected override void Init() HorizontalTextAlignment = TextAlignment.Center, VerticalOptions = LayoutOptions.Center }; - label.SetBinding(Label.TextProperty, "."); + label.SetBinding(Label.TextProperty, "Name"); + label.SetBinding(Label.AutomationIdProperty, "Id"); var grid = new Grid { @@ -89,7 +86,8 @@ protected override void Init() Spacing = 25, Children = { collection } }; - collection.ItemsSource = list; + BindingContext = viewModel = new Issue20062ViewModel(); + collection.ItemsSource = viewModel.Items; Content = new ScrollView { @@ -99,3 +97,25 @@ protected override void Init() } } +public class Issue20062_Item +{ + public string Name { get; set; } + public string Id { get; set; } +} + +public class Issue20062ViewModel +{ + public List Items { get; set; } + + public Issue20062ViewModel() + { + Items = new List + { + new Issue20062_Item { Name = "a", Id = "FirstItem" }, + new Issue20062_Item { Name = "a", Id = "SecondItem" }, + new Issue20062_Item { Name = "a", Id = "ThirdItem" }, + new Issue20062_Item { Name = "a", Id = "FourthItem" } + }; + } +} + diff --git a/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs b/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs index 1450c8dd8960..818c6ef62b4f 100644 --- a/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs +++ b/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs @@ -16,18 +16,8 @@ public Issue20062(TestDevice device) : base(device) { } public void CollectionViewSelectionChangesVisualState() { App.WaitForElement("CollectionView"); -#if ANDROID - App.TapCoordinates(80, 180); - App.TapCoordinates(80, 450); -#elif IOS -App.TapCoordinates(50, 100); - App.TapCoordinates(50, 280); -#elif MACCATALYST -var firstItem = App.FindElement("a").GetRect(); - var X = firstItem.X + 5; - App.TapCoordinates(X, 150); - App.TapCoordinates(X, 250); -#endif + App.Tap("FirstItem"); + App.Tap("ThirdItem"); VerifyScreenshot(); } } From afd1e8271f4921df68139c74fe9f42d8aca70a81 Mon Sep 17 00:00:00 2001 From: KarthikRajaKalaimani <92777139+KarthikRajaKalaimani@users.noreply.github.com> Date: Thu, 18 Sep 2025 15:41:44 +0530 Subject: [PATCH 4/8] Snapshot added --- ...lectionViewSelectionChangesVisualState.png | Bin 22018 -> 21690 bytes ...lectionViewSelectionChangesVisualState.png | Bin 0 -> 9737 bytes ...lectionViewSelectionChangesVisualState.png | Bin 24520 -> 25045 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/CollectionViewSelectionChangesVisualState.png diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/CollectionViewSelectionChangesVisualState.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/CollectionViewSelectionChangesVisualState.png index 20b4e02045a50309d31bde47a9134b7924c93a48..e0de2abf8af37a1769134bea9c02a8e8abebf249 100644 GIT binary patch literal 21690 zcmeHucT`hZyY~Uq=vWwsQB;}^5p)!hUPG9%V5I5bh)7jHKzfG|nv60w&>$i;jErCd zq)U%AgccN~C!mB9DS=P}0q%3~zV+UBt?&Eeerw(LW9b5tle4qSbDsSx&%S!X#9-q$ zJH9~>WFz6&;a?DBl_r9$p{-p5?@$a|F2b*!_Q!rPMi8PLf<*j=Aan3m#2|wBA4HHZ zb_k+<4?)DeQp!&1!i6>G4Gj(>OX$D!%B(ne2jfRDK7!$_6J0N>@__1Ui6CZ4gu_3b z3hEeUhTe+5oH(!`<1BV`aNCw6V&8N-EA9Ac-{t_;our{=;z0 z#4i_=%ZH4V|P4 z8(t_`78T>H(KVn=()-mqWqvfnKmN!^e?i)Om(z#N#@X-ybe!qW-WiL+Z{(nrFa~~| zU_DIL37q>Kos|Yj0M_T>&?31L+S3x7)4%`+wufnT~i;Md$^07}&XLs}l zT3cHuDmxyJ(f;z#FECJ)za1Y&YR(XO7CSQc`|BP`79~tOG&D4r^B`e5Xz{}%GnJ6( zVWT9~N1S(^Nl)x!yf0hw>KpU{5bD*Cz}o(YLp=k{=wmJ=y&#-y>D)gdzTUV zX(MuIq%BXjva*shG-T-M>6sS3$lq0sUzlw6oo;t>dimQr(?RTGmpsc(0pq&A!AWOLpjg9qyp6d9p2 z%+|8V{)Z|Jo#XOViL3|oo+qgP?FXl7LT^zpLXDGX*UmnjV49yBA7>uVD z1xeEDBSc<{i0ahD>R#@}f1*>TC}%|+pSv;UO_OS! zbe4Sy14#9oW4Rkt4Tj1PXFo+xEO5i|bZYsr1RJ7Dj4rPxlP27QsGocJo0SiJ_jZ*F zMr8JU_fnX2*zBiF+75M?yMPamLQ1UHNzT`pnd0IvuNN-c*(V3o98&V=1Y5yD3mx0Ts61)5AaiR|#^+LqlOqzePW zCw_fXX?dBdbZJfam5bBE?Z&YpNQnCw>+x8k9SpJd@d)$BRWY02cXv~&s;aQ`y;&(_ zF;m?<&TYglH`VLqI<2V>W^q_}$}I{m7&psS{s?z{3G?Mn&&+7xeldW)9E0E)8m~`O zNtVXI0|;wZD4lCnn$PjJiHG=+-&PTb;i|JVVQ9M3ZT19mNkyMRqN>X;&AkY9NZsZA zpYYm~kROs;Bnyq3oN(lx{=w@;#6}5q2WFW+feaZhlO`0Q;npf00>=}UAMJleA@Q`{zKm#Oaf;qSOu zp{DHtBLxsG%8C_ZkS7W&#$K)u7L3!P>(?S5M>j_uyL5L~ZgRC#2+uNc(%RBYYrsF`3N&{D6f{WfSE7!NVi4yx(bFae=&+ zP3xt_dO`?nD}JF^xW?deCPbFs{Qze9mUWV^*i0;;5yhP-u};K3eNu z!n{ja5)71%zm;faGE=b@l|=uX(*C4O15AX^uywlGTIexKHu8hUKV#|etp#46Ue+gT zC}LzP=Ih+K90@3BKmu$4>axViV|_wF}DeJ%&FkjRuVmcN6ML|rF?v1 zE>B1UUX)40MErvG>G>s*J)UE`3p-0ZQ7AF!40q>Py$~ua0;1XvOt9ho1H%cRGk?O= zG4M;IV)xD#Vq=`CUi;)dq-is>p&TjVY$>WcrjHJ`D|jH)I93>uVz5>}7SoI<_ItHa zgKaM}f5wK$d4LrO^snx@w4N6eSRpGWXH;`f$^I;(vOmeS>x~q0bpM7QHAVk%3;0mYy+=Fz~qF5eCaAnwHOSWY}@I-$mZA}Cj z1``L1WQn$8qC5V&WxR5RHUF5wEcJD&8oR9M(2%5ds8I+BLF3^n+R^oj70;$-pV%&3 z^r+(Z<81V^Eehl)i<4OsZxqA4YxvogCF(dmxqsQCH1A8%w(T-$AlsqHzrW0 z(%u-IE4sNL7PMLiT35|fa{DrqJ&uzFlUaCoA_>{^20D5<_95cViINf60mHdlr&vvj z?e_Qg@4L1yrzSRB&`bI(MyY|oI$Le|-0PeT(7wM!hZsbMvt@Ipaot9Zu3Nd`3qwG^ z0eM>T`ZcPxP+kWs(?n$bYHl6>B&X~#$6F{}HAMWO2~08TQ?yJPAn*c?64DcaKCt|+ zvd8~826*K+_5veMKm&Dh4|4E)z(`TlChdoulV^b+Y5%G-x{SehXn0tW9cVF9?fH&| zDA9Q4&Z^MT2^c;`1|>rSXL22-CKp>PEpJnmjG~r=Jvs^>al8?`wl&;>@m|`0^9f?! zYLv_{IynCbt}BvP>1VYsWB#1j%Y`C;54@MJxwHn7(Y~E5|IfY&&bz+4vJs_XuhfGm zMa@o;BY$^Un|k zsHGp!5jjT9oYARj(&qdbXXAYudFVWLK%$~I$R6cU-k)Df`hPe{sAv;TFSZUD9?Xbs z{7P#=GzDX?d?()-h$e199`C3K6vYe1GHH8Fd$#Q=zt{;3HUWefl(n^HqnQOaV?~}0 z6JPGYsrK^twUV-IcATjPu4-v<{wr^Eth-wzUD8W4vvEP${^Q5P%;V4rUU5lfwtvAp zp!ZmmW1$S%#u9R`bm-(etcV694P}zDm5&K=azK#ooOW4ekLkXRT3J&;bn@=MFy0-o zaws2l{5b8gMVPiWNjKQXL}#QBOJ{^l7d$ezG;NH}UJ zr~lQPdwQ4Gjb|{nlBpoh`v+*lxtyx`QCFOF1+60$+CK8@jK^wdJNe+bpBuG@o?_{9 zQ$q#L@9t+B2uGL~LAC;2PLJTzV&UYtENT_DLSQ_8RDqKE=}73ae6&=+88RD#pM7!b zXACm(IT9mX6D6v5532=Y)bX%2ZLo&dOxnsvOnTZdAgm=^KTx(Own2rOPImn1Kt;o%0t)h0U$b+;M; zf1&_(bu1lvlE7)s(!jMmgQ+XbFkzODT>Jo8IZz#UIIFzxu4O)n&%@GTfA9hEFf%JF z3nUy(>Qk#y<&rKR!=WQBg)YrL<8Q>FiQj=4JBwppvfMR5{>q0<6%`V*d$oM~3r7W; zkogV}q!OT41^%SB+nv~udEG!XLp3KC%zKu*Jly3s!weii^`xQMdKE@J`~|@&oc>DT zY~dc5YSFVaZZIQ68RW}MT1OVFNs`abQD(p{uVE*MY_F{#Dp@bJ%Y$eGGKgbGp^I_s z8vSUCyz@uy9!^6YT4McZ-xFFk?CKYIPfsvNF zEVGOwdqzRkWsr9p@(L&mPyI*7UWqauB-kX`$7p48#;5nev+z}S{Abnkj+qG^kdO)p zD47PU((l0o*A>3B5X`=9a3zJJ<$IwKH`8@PN~f5!S>oJ)@H0gS8iT*7vAZ-58Ili) z;#5HjLq%Rx2_Y7GPOi3lD5VqdXGw_$h(4T=k%kEd9?zZut(VxSH$S{Ax1H>~1oEyI zG-%r6EVi()V3F@YIGugAh{i1|D^qr?y@Tcr&giH#PbEw+3lPaprV}zG=pL%<0Ztah z#MagpMGUw!y#JREAis9TugirM>*+qvZQ1Qrn21WWA0Pi}QFQTF*urO$7&5SFvnDe& z)Nty^d<}$OzCA6bmBe~|RZIn%NFnj)dff5^Sh}#dO3P&GySHKdI@|s{nlwBM+*=YY zh`zE{LH%B{O!l8~CbeJF*aL{pimf3f3+p70xG~GrlGWWWS|2DHVklS^SA2H-1@XHA z&z>eK#DpF`KSuGeDfR@B2y-B$L_JajFzz0P`%BP6B6zDd!K-xLuWy?6pzya=3>=aF z?Uy!r5RvKkAbq;FR`D1u*~X?AY8B72I$ko=&!=7~WKlBUOmnmUpMZoe0Fr=ha6&rV zqr0k-Gmf-Hqru?O^&ECwC&BFap+!lZ0JrAe@g1vT0;Y49k^~cY`Rn5Hf!)kWRirRE ze2E(;O4?c4a|xCxDJ`=QQW6_oKnRw!pwCxfJ4xRt6)qS@?E`{*>K#D%_c`7{t1|*d zyGjcFT~Okk>03>CL`i zr*hqh!{4>!SSQEtGhdFj>aYb@z3|Dwcc=i}Y%lUmbm5D6buCMv$ons@NpiwE$&vHz z`D{bm9cv}3KfMv0-sTeiDJTuHyUmYnNE zj6l`5U{7_t_>2H^pyD8Z*eMQGPb(FsW@emV%Yvx?C|y1DHVJsQzzu25neEFt? z#s%2mf(QSIzLJ86WZMiz4Lmu2W@X7|7?fjlkdTf%djo(c&8@8oEEY?5NicCJEF9?C z0LbKxzpWEXlAem#?WNksABe**O|WwpFV=9vYojMx`B7bz?Z&2S^_5h7!WZ}0);&nX zPl|`nM$;*aEbnK%=55pC*UeV|8r|LFrAJKW7!6|*oxS=`GP zUE0N;qHgS!Zk!}(g{MgP1~ zUYfJDjBf1lBR&u_MhEEgZE`8J%7%eK>(mxuTuBHloek^cb zl&h|ue;seW$*SR9q(|jci-0YUcafriEtd$U$Fkjn`Wim-BPAs}mhs+fF#uguc(=R*4Su)*=Jnv#A1$IeLED>kN_TU8ESPTHqA z{a|S#oE#gvpOC+osih)%!Lg!AINc(P{Z98*fwEpQ#zgQ6kF8$lG>%ovI|L9&`mPq zz1uM7T+0Xp*Yqr7m6vnV+{{N`D7`V8Lb6q5`+SlJ~mt z=L5sIZ~+ZVX9fr6Ft!+*qOHHRN-O83MMlAe$k3MlG~$;>fck$R_;h*GzCt?i^!iZL zkEQ}FfV;~QF)=$M?Xeq)twV}Dd1F)X&PELR!=q8c=H43?yLiLx1;CPv=ZZIp52++rPKw^WW-;W@-eX>R*|w6noJ7IzmL zTxZE517%XfZ9*z`#mO1hTC#X|vE_jhuVlS${AM6yEKS@)SdKGQWbBGUZC4})R2xAd z*lfXaLoL~c+p5s9;MKbR5VFVl*u(0PV$`kc z349J1>9Isboz)v9k}&O9kd~L*@e-<#z6rRqYr>S5dbPWr*LIdm>F* z0V9QAh3bBF>+Z;TZD{Q%%8p)2D$&4gL^gD0XgSWjNXNAnLSaUUv<&2Cl+MYXA2X4t z7z$cg74vDw~KGqZ#u&iSs!Aj9~ao^4vfG%r*=k;=4&4~mC^dYt-l zi=?bU&$gTd+u6!HIZqj{mv6D8Tn*l9ErN;CyVhQ4tvGiyR(eGCN5t=jckf%r$-&4a zH5q}okqsW5t*Iwi`rR9@#P5)8O4*guyfjx#_2N`+92Nq_h4?+P?PPgC=W;>H1J!>! z*!u4Z$5+PnZ^NusmU3k&|F=s96;a93NKcW1sgDy`M$RJ6!IFHH(0Gi;!WP_b6{gml z`9JdfI#{baV!>|7%Zjr~Wn1R*<}Kq$dh`@*s~q@yROAF8TYT!1+$wF<2IMj=JuB5v zD-NprQmjHoiV~H<2kE#DEj(JpierO=no4EKMyAT@^jPxKaK2z<`|pz7#y(cfQ6l_veBes$*CfocOd2k& zUY`%psLQ|Ax^$$tlQ%(G($!!E*_V~W_W-~2ZBPTV%LeS9jm$WQ@w!-=oW(r{n=3Yc zE%EI94Zs2th6?5%Z$j)myFhogs0gy-#z^U?uNOa14@!&A*o*QR4|8+#1Lec{FcYJd zAq!KjB{^RZXN)kW=}MZBa&I3c)~V;481sogHoT6pKCO<^MeguGdcOdKD^bb*sNUju ztkahd=H2CAt;V7dZjO};S9s(VPBTK?udfatlA%LqZy+6pGB;OZ5VEJQc3*CNy!j}T zH8MKd2pVz$Py|-!Xen?|ne;bXB=s@dx-J6F+JN{KzL2qQuVTXTMDK&u0>gu8OV zSds1=9*OK8l{Vqfd`MW|pbacIRM6jVU8WkV%R4qVKR*H0jZU4#%#azn{D^fr4h&(5 zkewpkH+-C$qY!;s2+BVj)LPk%I&fJITuL(yEdLBS!A4IynSBY%J*K>ie(xtnrCb$m zHNtu>;qiQz%zPV-_ufz>BoJ17ISl^hR6;nYwOaLdnne_2!H;!5a^>yKCvhY>k#oKA zBn7}^6-xU~Ki&47Mo!h-7gE0ph5p;R+={^J>7rcdn&o#eyvc^)7zr5yuMeA%B>fGd z{a&M*-*CEX_HPDeEo=3cafKiCCC=&&jz`OSAk-@GFh?urKZ%B)=|XDJRti+;k6XtD z*#vbBoGNms5Nbo8o-LXQ2?W&LUeOM783&=Bc#>cu=||#Lk9VaKs%|+nc&3OT({E9^ z|MOKCOXW<}9P6K)&BFCCONYca5d|Ny8cqzaJUMz+9BEvm(bIi-VPCEfx?xv4l^l> zAJAw+P0=q=guA;-1zW;e>>kBdF5EE`^$r5A|PDIAAoy=|^#271|YnsR* z@-awI23j?XhM4WrTq~-Ifr89#@C@^f!A-Xr-Fp_owekP>Yw4FCL&Tl&!k81(PlQG{ z;#x#=rz8|BXiXS_uSzpG_5VaL-j<_LxtE}Pz%nUq6>`+bHMg>2pyS00j7$o)z1ZEd zIRl~o-ci)KNqaCo(_pVLu#k*c6S8051Ec!6Wg3!vZ;DfED1xC$Hcx6QpoQ#Yc%Eb} zi-YWiA{w88-;TZ{yk9PGd;ryoYJ-=%Ehnxo-z<^O=-A`6A?#fV)UBcp;bx_vteZ0U zDvtMYG0iK6!2DiSD7Xg56rSwaCb$n;db-&LmJ9GCX`nT0D#vu>Tu~|DihGS-2tVWA z2z84j)I~1yIPRRLoaYUyl2s1cO5u>fDX4YOmj@N0X0zrM*QWK=W<2L*MpubjDw|I? z7NK3)D3Jsn>(SResr}NDKz=v0ZZ^Pze}zp(K;j_H69xujF|R zSCh33B#D%O4yx(rZ#E&vT`$iyo0^(vJ>YmxdqHLOz+ggk`w;lZhH91rSD$Dc zy#~TYe}gMd5GC;cszVs?J4U0_H%Ug}Ge}DdtW!vO=CXlXzVx;RYJzJmoQgcu=ROI{ zSjk*<+-79BXr?d5Dv2+G@$KI*T%@iBu9Z=u@@@jCU9oHsTs(777^9g*T1GSexRF1eS$}ScdhlTgpftFAS4j$?lgH(4w+}iKt(VIKs zv85A@It4y`wP2n`?1Iqs1p!!|fL=mvXvhSv#HTT`Uc>taQsSU|C;OG>K!(=tSasYM zgw1|hf3uV{a}|=Jo#z%cn0-_<_9xXTlsGJxL###!WYl_qqZ!$~kVH!J2K9dM8a4#s z6*ULQ4kYyf5b@%At#>0yzQ?5-mJ*gUnC+@wpG}wi>}!2eaXHa4SyY7GVq>Y>7M0;-U6Uu`^`vamesZ4V}K>Fnq0$>e3{I4B9bx&+@3%94$?J=&uXtwxuK+p)PuL zhtBkY?d~Q;@qW9#6bjFw(O#*^Qby>gud%4Ne%n-g4;-f;D9e`&{H`1KCO91RB0g26 zEu}2oUCNt(y)-LBH`kt#s4@xTKk=Y|SBfQ|4lHT>h`A5)%yvK6;Bdylb7&UF4K_v3 zL!b`9^Go*O^DQN7a{6ac-Kb7Q0TqSy%vEvQ5vhJ&*FAh=f(lMlG(~eToqa`uEE@hC zobT(=GGUr1K+Q?eMi0lp0TpHUj>1d>k#v!4&|3`?4m3bjMBE0FW$oV#^G(}?4a7#P z@%$PCG9-i4G97NCE!)(`fYmzbhkQT7B56<>5_oA{Mf2=C02MTLb4gCky(8u*o(Hso z9?vLllnU(fPQ---pw(TOH26Z@#o1oen}!MxN>QT}Y_+A6?+tzHl|Zdy2_5NiuAN}W zhc6D$Z5KY?YM$_Qsk)1=T}XU4`5W@RitNmQD6f_8wdgXaxHu+?sZ!``I+QG(x7o79 zqXE42ILLS#wZd!nW;yiNCoZ38kQF|00utzG_0l4oX^}nD$VkyrL37007^%+5-!YPr z87@yw@3x)$g(tdnkUeRZm~sU6nZ#sRv*LlCO!?L64U#D%@K$j6Rws|Gjy`ES=6(Zb z0`&+VnI%gXDY$h#SAsc|@)3ED)%s^|F4lv13h8J9j_|&-GZ{{FOioYt^9Lw0ym{bI zIP@$DTGKW85VJor!+O7^`nTF1mHx4|mG`=9!6G!Bhv+O zgG}dLwV;$Z8iR{j7{83Uloa)A(+V6~JX05T4;WTDS-m$Ho7Rxf0SStZ}iOO{9y?M4g zz#YmD;(vW|+7XV72Jh3+-Bu*_#dyeUdc8qoA1i$&Xu#SD<^+f(AUcG-WB-0a`t}(5v?Gi6-2ax zi2m&n(b!UnJxvv%9z z%!!TlUEQ0}eL!)m_nvjkn6n2+@M5>$ku!b{=lmSC?R^~K7ovPnSxw=fmV%PnDJ3Os z6*X-&rF{nvY9BmUba1&4{I73#t)y%RH|+WAH~6`@JNo*abNBk!_rzhv Rs^K1laKz+r&d+w2{sY(-wxR$4 literal 22018 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 d1Oz&I-~PX!$^G+l6LIfg>{ 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 LUjFw#{P;fr_~4|s literal 24520 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 From 9f174e1ec8e0702f1edaad6b4ca7cdcf3f640a71 Mon Sep 17 00:00:00 2001 From: KarthikRajaKalaimani <92777139+KarthikRajaKalaimani@users.noreply.github.com> Date: Mon, 22 Sep 2025 17:09:12 +0530 Subject: [PATCH 5/8] Fixed modified and added snapshot for iOS. --- .../Adapters/SelectableItemsViewAdapter.cs | 2 +- ...lectionViewSelectionChangesVisualState.png | Bin 25045 -> 24613 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs b/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs index a3c5d460e09a..b165bb1c0ed3 100644 --- a/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs +++ b/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs @@ -180,7 +180,7 @@ void UpdateMauiSelection(int adapterPosition) case SelectionMode.Single: var previouslySelectedItem = ItemsView.SelectedItem; ItemsView.SelectedItem = ItemsSource.GetItem(adapterPosition); - if (previouslySelectedItem == ItemsView.SelectedItem) + if (previouslySelectedItem == ItemsView.SelectedItem && ItemsView.SelectedItem is not null) { var viewHolderIndex = ItemsSource.HasHeader ? adapterPosition - 1 : adapterPosition; ClearPlatformSelection(); diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/CollectionViewSelectionChangesVisualState.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/CollectionViewSelectionChangesVisualState.png index 757a940369acb179f43dbb70e46a5d4e06b9eda2..9938e1fa8ac3742bf92a09feea48fa30f90a41d5 100644 GIT binary patch literal 24613 zcmeHv2UJsOyKWF2#!Z}a0YQp@AR#a_QbtffP(fM{qzKZahY}q}6Z$wPSSSJ_ z0vbem4Gs~kAiWccNGBkK5=e62&6I!s|NOJ=xp%F5&N}O|S&O}sz4y1j{gt;o&+{eR z#7KYJS3+N*P^fLkf6y^Sp*CJXp}w5{aszx*lk}wp?DjeQV0sdTA{;=WuKa{TvEZvK zqbQW0A__HbheB!GL7^~SiDjoW;lvmAhWa`vF7o%FGBXao;qyIyQkQRR^UiHY_*?L2 z-ojTro|lbI^E9Ld+(V&kHID0icRH|Zve)hBR_5K&6=&vkLm&4CH}8KCy+e-s;h?L( zY~#&9S9SFBI`4zq8`PEJI#pHu4oFpX)+S{ud%wH;@J;3WFz>|hth+M$%J(|arl;Ka za9^9D`6PddE`1QL$W#7ZdHDN`)SG&v-9dT2(J%OPzgXo8Yo&aC=~+1O(#+=bD*JgG zEBDQ-S3f}IX6}zih{66r6m16z_3ig^JSfyR|5b-+siQpgk~K9om1`TD&8~|T*Y=<6 z=^7JcqiNy~>ZWva(9oHcCA`p>m7Ay2(Clg|z+HUF1DfJ3T$E#(kEWdj7?ao1Q*>>hA8Y>|F2bxXHlY z&h9~GW@dVNdVao7JHdusM}C=eCsEaCO=H-=nf|UqH#bJ-VeTp`5_|0u-965sg73K8IOy}M*zw!VEMN0(hKeHS5Q{s@ZiVd-zN!Mo+h{7PzT*9TwOl+kEHF@A;^6H!5xZsOsjHvU zNUX)@HCN|oM@wty4)$XvBpm?uh`5+9P9&OH$cJdK-OBmdVx^V|i zT0Xz@zwdLAg!x{sa*I{brR5g_VJ0{Q%YxBI_dSHv zJgkx1{i36z6Ra=4PR0fEi>Pl$Zr>?oB;u#=s$-yfd90^nKo@P8>AJEo6|4FA2WEv! zW16sMMP6!ZD!h1~B$LS$U#jLSD=*J!?-IrOzq_aEwktH0B+8%Iptr)WU}DqA8^sTA z7P2%z%1L3|gX)jB=JZm;)afnl?YXv=J0kyMt@$N zSWeZqrFJhi&@I0-Y3=K)vU~9(Sx`ubFqu~uAvW@G((6jG&>?KaR$5bc(7<(!1{N!s zMxl7XxYLd0HIa}tr#z{;3G;F8I>uI-koc1*zt`bm`oR9LL{h>}78+U5;HR~B_I&u@)q2K!H;(_?F>AlpGp(MoUHQ%p zF``(ghFZq}$}{&JwnCHEbeuh^ubnN1jLk=n9wFr>!TzlRwSqvIdiTq-8lFDey8(eg zxZ7Upzf#O3K3Q?y}e7g1iE^??+Tyy-!U zYw&YTj3rj2f7fjaw1t7MukUGrxsit4zHc^OiM#0Haz~pO#(X-3jp_P1 zq|G}I{M~sN%sC_&|9k%CemIp)QgW#MyZga4GW+9RpfV{%%5GK#+hJH;lzz>x@O9os z6zb>ghTzLLuOF_r!}=gtpA74k;D3@u48M`ahcbHo>eZ_k*Z6`7garnj-qE4%JxDv3 z@1&}xhQVP_jCcH`QwDP1b@~Ma5Vh%6zoj9=qB3C=R{-30*y)mEk1l9 z?tEoOUd@0=zwv=vEl`=z#oongUV%$JCEnmTSv8PVK~N*9A0wjf)j!&pj)ec|v0ALv zxdt^Am7c(%Xx-SY)evK-tC9ChXPvx%gx!i~w?ddJVb7W$qpp-wgCVM_hsZl4W4P5E z-%BNOAy(ror*KQDRN_c|5}rM7o*-|dLFBBaWqz^mSALSub&DT=DH}-+&NlA^=i1}n z?cReD)tY*M^pl!fJ z4;;FmpI^I8Krj4T>}&{Im`mZV>SAn8m%q`|v9amRNU$YzyBEJtJetpns}l=;^84)~ zgSX*j8bYUiT5F!1%dd?UPth7-Gl*P1t(mLI$;sr7s?gv@N!}R^tVsPf`^|42L+V#q z$v&M7k>-!%=OHT6HQx3ugc2j$^ERfpLc@Zmw+)^u9IqLwi^bs3sLVIex8FhEMn^@> z&(Hh%`Bkode!H^BAWjvwXScVHpMM*FNLS#?>f@aQirL}&rE}pC;;a39-9_#>wvOdx zW!adnY$z-?Dry%_5_J@6!ehVLz;$uD7xLSNGQSB96VGM-RO}1^cC@e>rL;5%dbPK= zSJ(Kf>hRxtEWL&#Ko1&8TI>tHF#3-R4Ipg|)*VC?BeW5ETv}Z)Nw= z*+~K3s9O>6Vq5bzIu?YnSu4}!xrE!5gAuY?>@j1!f2ZT2LxN5fl#}@k z5}8=y>X1}$*UZc_hSEl9VR+BINQ+acRKgv_^WSHf9_?%nTOATF|FGd!^zRi@acg@r zejWywLglt_mFObR$Yks@8H)QVpMBCHg*_Rj+iNt{MN1;$+Lq1A2XBx+n6Yycn z$e@}o9f1t-x&6zCbp2SZS=vtBhAq`pm}rS#$3KYDS{)D|jv3<1pzVmP=9GoSMdD&P zJ#=-pE)!-DWLa-ybGL5Wrb}zeF!ZFd7giWl`t>~zPD7_T!!%0=xZ}QORZv&KMfy^$ zTG(tPezG%v1g58rjZG^N3o~i>Z32=-!I_@9$&KDN8gd`I7!0$u2H4b$cJkA%kWqZgWOkAF^p_ zYOX>>C+Sq;cuSVD(>p=PR;M;Y#$;W3*|E`K!_UuZ&KK-7RQw7?;Co12A)nI~*ic>W zM5-AbZX5V-2wr{D0PGk)4=~HSN#+B#_u8b%1r&{x8$HUM$`%?q8(Q8cju$_ zn&AL^c=C7WW5w|}k)xL%{>^zXeP?l#-Nm_obN=4_`v9^?rsd`~j9lX}dRbllEgp~8 zfh1fFe1dxTUy_qk(AiVeU%(vwk?jCvMxnftjr{W>yuLlaN3F-4ot+!=QBfNpGyN^! z>bq?^HS-*87!JwScq-scNOi7u6+M}1*Z|o!!yxO=bgZ{LK!Bfr52USG+xYpX`zp%` z@-^4n`1#cR9J>b`CF6IPJvwn$$w5zN>(;H8x{IEUdZP>gd2(;Hl6iMW$pL}YVga_Q z*z()umks0Pvc$qTb14|ymT$9K7cRK_?5T(1bociRWJtuXokucQz^%YIVc@~XMYTc# zVKSpnWu1QGlUfM*qVCavz%0msZ^@YLk+ay2mXwq<)@J)Q4xw(fG#hK<4j{$UoS;iPJD@3j|!Jhuy(Gc>`yZZr&si-{6nEAZjP^u6NPiMZf zKCQpM-^>_yW?mhYG1p>de8y8v4aTu<kn^$soMbI4LV$-Us!d^z~){XTsh0M?@I$qTF z3;QwAf`S6;pyAuCb1ddWd3kwc@|O?n!0u19=jJ9O4jh3iq%>sU2^-U0NC{T~i~(np z6J`(y8$ew8v0{e+R{d23NAQJ@t!kd{VD@%CchohW=ZEIJcdEE%i&T8yxzJEHz(n96 zgwX&Vt+o|csRAH6Z-Uw+C@8oDAN^+fUyua>tAopOJTJ>CV?`dgs!Y%P8lGWx*l)Z= z*rOzs6*>bW84UJb1kIJcve@$B!v_GU%F4CRgD_8l%9*1U402E0n{d6yl zq;b+;-K*+of`8!G2Vt-ROvnNUF^u3-9Kf>2;}!5=Qf;B_oclh#zu%sV$5(oq0<4>7 z|8h714=1>`P(rf0RKQa33Av<4Q{Bbdt1~sw_&HjM+C&b#B*3cY=B-iAdd9|x|MzF~ z*@UVCzz(fEkQOO_kU&ueFuLA-WPzWk5T4N-0KHS_*4|b%_zXbn;$l3&QacZvkS3^H zX%6`K>Sks#!FBG_`@$`>#G^iEpIZ9G^s2pv0*;R$s5&`=m;eCdHo)-!kn_iMfoXj! zUw#RYs5mKOd4k53fXv)n##m-b*g~f>A0JFPFEZN-X6ORbHVC+fgJK&X)tJYCvlGsW}f z3B<&|7|H|r@EQzRL~=%;zq(>s$AELJg+@6zd5yIVCIVnqZYf`XA$>M9G}OmuuBX(e zy9?QR8ukI)IedXcb*421J447`ytYAb#QJ`Gv!~)F^H-O)yG8+hBlBO*2K~R{p4M0^+Tfr z&&XAS3=ey=nwIcw@8fFgliTJ~>8?vpi(I@m2V!oJNWp8{%E}6`Q(@5CFJ8PzBWXCSP4-uIc8>NK5LszQoCl~mfL7d@>mX4`k}5v%;DeS&?>Ei<>Q$m7LzUE|Yw(3_%b8yG+!DIi|~2z)#G6dq6S>CprV z0o*feuj8aJxW=P~a!I?7iI$ghCa(E$=ld&a6cE@D8ywX1vWB>%@56m7-dg-#fe=3^ z3dk%>rUu+%4>%#fOZ$@w!6yLI1GVMl|;{6sfe)84k?g%w;er&w13H`}(@9<4Jx ze5V*E&+>bxAri-5_b^?lYBcET+{-0(4H#)d z2OVZ7ZD%$l~gBR-!_ z_-(vJgYe4O*jQg*-`RNt9IDaMm&0J{C{?U+0J5Qk(r@LGczCVw9nA2CLxi#LF5??% zVWD!weOl}vR;vUEzYu4T@f=*#fi+w!%)f5$sOzga_^`$vJC3yl$H zEWH!OXw4UPB?+_A#~4G#)IG&jB6AU9{QbRmF$#1c{7UoEO4pW?*KXG)X!*Hyt1-w* z4iU-I@8FHQo}I6OnA0`D16Z1p$>(q5h8`h8_!_dmw&3HoCa%QjHFL?@ z6)IsYt2{}GN1VymxEjm}R)>B>@X-X*XhX)6p-_+sa7pqvOYVngW42)M7~_L>MRal@`)<2ij?YW3Mfc#!9_D>Mac4HahEUd z00j@2K+XuD6H~qA#iQW{C!w@n?yS!?NnZ5q1?#!?*<~b=xlWB~(B9jwqf_&$dYZdb znpSr-3jx+x2jVtu*|YTN+?8zLOW{z522no3($A}B9Ek5TVpP&?mYQym1lanC;Ge(GIRsfHC z)VJF_hXnQtU+anFkKwC_!&atCG6)p+x2ByX-VV$U5NkIznL<{#zX|rim6b(@f@Jf2 zO+y86eT04~bffsmfLcr>RKs^VO5rSnzYD&FleY8f)bkJpw618VsHh-3F2bT}fYjj( zc<;5gX0Z(`ZUgO`tk81?x9YyyS#{?Wl0N1uIKiiLYpLdJx;XnWp#%^=n2U7Y>hOE_ z?jeNlcxjRH(W@43wpEt6HNF*=uvZkS+Ea`q-^W7_d5A{cAY06TzLAOvK!{y_QH=ti zdC8!*0M_>qq_e+Rmib=HFbyX|bPF-S<5BN7KgbQ2O^58$)040dm1FQ1-`n)cuP%|9 zrzv57;o(F*ACS*}R>dBod-sNuuW!K^-BZaz5_nhOhqqwlqsTXJ-URow2WPZ5Jj1$| zyL6U06YK2*Xu>T^cjLAr&I7Iqs{)~;$8;Mun79_=Wa3TjWt8RzDM7g&kz`4wfyR<5 zq`axd63!1N$Yl6hwgx+kRNa$aMRvJ#$+{xY8|lfe-;ys$dq@QO!WYll%j6NK1ae5x z-b^;k^KxAOJWn?_SrGo5dQf!eWs_BShEDUGHbv|R?fD;^bCLFzmfl_) z9Ef-j)>hi2JHC*8JlcW~`QpWvmf_W%6P4kNEnhnEK6z-sg2xq5wJ} z=2aj6CvIAf_n*0Gs%M&kT+(Ci2sK-*s18z#4T`QU{!Z?ZdyxFKwFXFm2+nO(lu%*P zx$d;n;TbzciNnm~u>JDV$Q!5sMj=CT|5WV2i906qxf|_T9#6gN+LHmrx;$I-VtT2E zjA5&@vXL(j(f%Z_*|I!>s;=1lBHgSVhEh8W5x6W5FkMdapV9_{}oz7NLV=w_6jvem9D0QiF@ z?+5aJM1{A0xZV!ygJ69!tXqQrAr?_(7Y^kWp(nwwH?K1p>k@TGP)RnebTkVU=nP0F z0K=1GW1UnY(ZOMe7QWN@{k_(nOQd6+z-dya$qap8{rL*Cp@YN$op%uyBHp?*Qe^V> zE7k!4i;Gk)8z^tU>|EudAt(Ozr_K3J?=33=XLp-h&khK5517~j6?jQ~@HJT#9SbFG ztr*^n(XmF)z9tK^y}yvYJuomJl@f9p^ogX0i_`>}}ip z)o1{05carTntdCnE4fQ zXFzi*SmQZB7t;$aHfwX|v=QK%D2Trk}{&5|r2y#k8?# zB35KJpBzsPmXsJ=ChJRh$Pk=R5)!~yCcDa<1T4L%+oPPrnn0fO=uvyX5(o)^H_r#k zAed39CXoy;q%RiqG2Uv@OIoy;pLAI$;&Eh&{9qZmK`%sWFiq{YsZNWowUDf@0OST*i=|MtHD(?}%qw&*MUTC=}zvDOY z4-&^EyNsvqZs}8>lwEs8fH=CljW3cEEM{2z^x_77(%~J3iiBt#k;uTQXi{BdGT#+5 z)x(D`LtN8t8yrd!*Y+SC+l!3So8)9Ng`6O{pkJ||CwWEy@Bx7YaJh233)ngWMjV$D4(l96#)qHVlJ1JD+L#T zQWZ%3_wU~i)kaTD7uBS;K&Lkkkg<}}p^|YE~#GZ>2?8|z!| zY22Z7C{4!x-Tma{op~Eg4g&N+WmK(XXZXI{Z5{%|b`=0lpwa*Us;#9(#pxY&Y9?j% zqZG{96LQ}j#VyskPan|h5%cbSof1?sdWvUhn}F7m9rH*4h?^_e3*EWp(+{z$Gv~1) z22UxYJXc!sJw^8DhOB-x7GAI^KsnA$=I1hIfQ$v{TA-LQ7>4rdv^jYoFo7O2%7@_*6*%@yL(qXi*}fZmCP(s}DywP$ zd0lQYT;?Z!y6ar^`F3ugu-L6ciytqSEkqwPrrDsa=<~M?uA$2%t1z>}v2pmLF z2fEzw^nt%B3bIuGouU9{j;dPVmCI#E?QLk0=o<8*p094mH}(V_oeGgzQ<@LjO5&`J zNOWM@=tZ6-H8pz39I!dIz#4)zgIQRdlQSVHzWi!_tXXmpxS=rUyJVmg4p|jFvB(<) z8Gy0odD5{U7`mAP`XMrd)8rJrdHoQz!CCS}v?MxLXREFbt%=+%IgK$yWqbxP!jd7L z)zlk6XE&#C3aC_WIh{Q{6sxV}-czzzv3pxGdD*}r#TtA3A&(xE|N zG?m=3(_1BN0t}3{eGo01yg*)w6x)4;Zi2@X=iaLs18^V=Vg&^dD}WFHOk_dM1oX+j zkt+00fyCiy8JQkgvJY$&1^#%^W|EKeE0B^a$mAs*+9vcstn#-(petbaG1z^ZFxE4m zND2Tn&d*O&-OCR22*B15K{G`SS^f+LQ9g&Q(Q_0umQ8y=N>})+Lh{r|6rvD{NOar!#0K}{` z%lwbb(G+mrmJga)ggd*y>u&lzA3Q{Z$)7_4LxB0WsUOVbJL3az&A+66wbmc3an{>& z|Dt9l&ko^isv0_4oK1?f4@QIuzh$h~@4#XS<}<(r(un(i&mE=D*pKN% zV=6tLH3_0IwT34f@qneIe`_|67gW#%W+iVnZE?5yaiC*>PSAnnDy4P2)miYCqZ1R6 zzpV?Bpo^M(Z$EZONXYi?OcnVt?G@i3M%S2E@vD%1VW+}xk^>!oT}k_Zl|hs+lzEuI zx?KA;Im9J|E;Hk!zQ~nqM&swfQASHoQ;~f^b_66swu9%g7qrBK-=(#_B2h)8H zpIo9Yae#JnVyF>;-3np9+4~y_+vJjxD)+F)AsXX9U#hw4t(ph%r2Xd2Ov}Aadpa6Ok_LN`B&Q)OSK|_*2+y^QkNy z+Gh)GsWJo_d-zFb@w0_E$THrs2Qwo9NkX(8f3Mx3nHtCqkJF3o>M9)3joYsk*R~@- z-$Re+TveK#&g7lqC!EkN2qFcNl5@}OzFR|GVfoS8N(In&%)>G^9XX3<)xk5S_G1s7 z`k2?p2O0)FoqzKDkx#ubs$D-8r77ugz*))6lWmRp&+ebzr#}$Ud@?-LP>x z$r*9?R%aOODePnMP(m@S7wTda{|01_ zHn>ZD6+w)?N~8=41YU)ePyhwS15`-BzUPh!_}iAqNeDUgCoj#dDMEq=8-yM9Nx;`n zmbKa60sJWs3Wc_|HnO0Ym~F9#%^Lg(jsYl3$+W^kCMX}|35lO!MUEYZyUMc5P?Dg8 zOKFP}Z4mTvW_fAC4dP_MCo1*a6ubf53jvQ&Bc-rFiqTalD*>^R z`4bC3EfHw;yCG88N=7TUl)$mZ=XvbP%q>imNI@6|nwRmX;C8k6UO>Shtlrg@6-OO^I6CtZE*?QbZbo zw@*a!y4f@DsEeURn-x6a65u?s7DboNF^vSkvjfrzakWe1PM%$#z{SDGr&T4Ns0*tL>NQ!zfT9Z?~3f^CWuSOC#Dm3Bdz&N1Ax_j_7m}G+dws zc>v-W=6EY`y3yood;(z;R&*gSj=vD1ly$F5# zPL3NSA_&VXuxTb4czJ{sfCvyFE5$V=5;GJ1tGPamt~oPV2dw`3ZJs9D3F&Z-^KvuC+r=B>GX>$OiTDM|B)V z9hd~+Y=HpwEWUn)NCi<3qYL80gSQPpOooVU`VpNHV7Cqq4vjuMi8e67)`GW%0CXNG zTVMg<9$d>~AX)axzyqDyof#Hh+zD})Fr~i5tUwn->ou**+u^+7)TPr*9|LsWf1dto zZIIEW{VA;xI$802o^q1Sb_~9uaHnK;)*wnnpCMkSwqpP0lZyhfbdV8WveNB66xD%2 zOWrQS6UQdfXH_%Q+}z!h)V=MQmD0JD3tdQ_11eW!l_0`5BFhDdBUpM?-=+f7tS8o` zO>PE^cwnuXfwi&(Ug@q%$Ya(FelS1_gC}ZfSs>DzTE3y>+`5r4DNY7!#;f;MDsk!4 zC@Zn48x+GUH3Hfp2x?jb%9LEtNP+-Kw_%f)6X<`R00s|6p_K%~v2x&saEQ^E3OS=$ ztsvcD@pg)9_aZf0fG>Sux@5S1X|Qjm*S1=^ZAUOwFraTofEvw?DJ80`b(q+EEPc2y zAak_;#WiGpgr0N{jlXT-R zQXr|>|BVy~&&{ELyhS#*;xZ72RmNil;h+Gro7hsWHCqZ|gi|Z8OM##sn~-8xcX~qbd;K zz)-&Q0)!Oc(`5+pKCn`+{6;`!0gyWaVT+`pl$F^hl32IJt0?KV|Ey4^aOGRnt{h0D zLDLS(30Oc4+w^gt1#-sX2T*M0YOsi$9EV{3tqWpelQ_+gk1k7WUIrrk`E}{Wr{n)3 z{Be;cJZb!$yaD+XBA#-(vs3FEl-B}~e5dKCo|cvtKzMq3tif8(n~ZE)TXXmG!~X^a z^ZL5K^+k{CD?Zm(e6FwfTwn3IzT)$L(u&XZ8M{7X*Jtedj9vf9j`g1|Sx+3-^Vsz~ zc0G^%{~?c^;TGfhke}Q{{kZxRBbX|;0VVhxroZBa%_x-JEBGPG>Yowe@7KtLI2I58 zZXk;ix1NK0)-POdp7lYoJ{8t2#kzf5_X_Jyb3Ig850L)92n*3#ffhGSqWgLv9M*BP zIPP@vBe~H?_vjfEoM?CO{B3(p*Q9zDR@C){^ZFsQZk8d_!c)Y|B5=>2Eu0tr^SsH$K*viKI#9BQ&qYrUl#5F? literal 25045 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 LUjFw#{P;fr_~4|s From 7f2b9ccbea51e51adfbeef419a107d08ece6fef4 Mon Sep 17 00:00:00 2001 From: KarthikRajaKalaimani <92777139+KarthikRajaKalaimani@users.noreply.github.com> Date: Mon, 13 Oct 2025 11:16:38 +0530 Subject: [PATCH 6/8] Snapshot updated --- ...lectionViewSelectionChangesVisualState.png | Bin 24613 -> 25045 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/CollectionViewSelectionChangesVisualState.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/CollectionViewSelectionChangesVisualState.png index 9938e1fa8ac3742bf92a09feea48fa30f90a41d5..c293950eb0fde0c633d15c6ec4b172077950a67c 100644 GIT binary patch literal 25045 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 K^1lD!$NvGc9jB`R literal 24613 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 From 142f41fdf5b2d2e08771bbe8df7bf3cd44804e1b Mon Sep 17 00:00:00 2001 From: KarthikRajaKalaimani <92777139+KarthikRajaKalaimani@users.noreply.github.com> Date: Wed, 15 Oct 2025 12:21:10 +0530 Subject: [PATCH 7/8] Code formatted --- src/Controls/tests/TestCases.HostApp/Issues/Issue20062.cs | 2 +- .../tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Controls/tests/TestCases.HostApp/Issues/Issue20062.cs b/src/Controls/tests/TestCases.HostApp/Issues/Issue20062.cs index a81aed1882aa..64e347a9d043 100644 --- a/src/Controls/tests/TestCases.HostApp/Issues/Issue20062.cs +++ b/src/Controls/tests/TestCases.HostApp/Issues/Issue20062.cs @@ -101,7 +101,7 @@ public class Issue20062_Item { public string Name { get; set; } public string Id { get; set; } -} +} public class Issue20062ViewModel { diff --git a/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs b/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs index 818c6ef62b4f..6a95ef579a18 100644 --- a/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs +++ b/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs @@ -1,4 +1,4 @@ -#if TEST_FAILS_ON_WINDOWS // When select an single item, the selection background is applied to all items. +#if TEST_FAILS_ON_WINDOWS // When selecting a single item, the selection background is applied to all items. using NUnit.Framework; using UITest.Appium; using UITest.Core; From 00872d14914528f7c643e5590cc08ad990cd8b09 Mon Sep 17 00:00:00 2001 From: KarthikRajaKalaimani <92777139+KarthikRajaKalaimani@users.noreply.github.com> Date: Tue, 31 Mar 2026 15:49:53 +0530 Subject: [PATCH 8/8] Fix improved and test case modified --- .../Adapters/SelectableItemsViewAdapter.cs | 20 ++++----- .../TestCases.HostApp/Issues/Issue20062.cs | 44 +++++-------------- .../Tests/Issues/Issue20062.cs | 5 ++- 3 files changed, 25 insertions(+), 44 deletions(-) diff --git a/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs b/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs index b165bb1c0ed3..2dfb6e8c0b34 100644 --- a/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs +++ b/src/Controls/src/Core/Handlers/Items/Android/Adapters/SelectableItemsViewAdapter.cs @@ -163,9 +163,16 @@ bool PositionIsSelected(int position) void SelectableClicked(object sender, int adapterPosition) { if (adapterPosition >= 0 && adapterPosition < ItemsSource?.Count) - { - UpdateMauiSelection(adapterPosition); - } + { + UpdateMauiSelection(adapterPosition); + // Unconditionally sync visual state for Single mode. + // Handles value-equal items where PropertyChanged is suppressed. + if (ItemsView.SelectionMode == SelectionMode.Single && sender is SelectableViewHolder clickedHolder) + { + ClearPlatformSelection(); + clickedHolder.IsSelected = true; + } + } } void UpdateMauiSelection(int adapterPosition) @@ -178,14 +185,7 @@ void UpdateMauiSelection(int adapterPosition) // Selection's not even on, so there's nothing to do here return; case SelectionMode.Single: - var previouslySelectedItem = ItemsView.SelectedItem; ItemsView.SelectedItem = ItemsSource.GetItem(adapterPosition); - if (previouslySelectedItem == ItemsView.SelectedItem && ItemsView.SelectedItem is not null) - { - var viewHolderIndex = ItemsSource.HasHeader ? adapterPosition - 1 : adapterPosition; - ClearPlatformSelection(); - _currentViewHolders[viewHolderIndex].IsSelected = true; - } return; case SelectionMode.Multiple: var item = ItemsSource.GetItem(adapterPosition); diff --git a/src/Controls/tests/TestCases.HostApp/Issues/Issue20062.cs b/src/Controls/tests/TestCases.HostApp/Issues/Issue20062.cs index 64e347a9d043..efde8d43a3a2 100644 --- a/src/Controls/tests/TestCases.HostApp/Issues/Issue20062.cs +++ b/src/Controls/tests/TestCases.HostApp/Issues/Issue20062.cs @@ -6,12 +6,13 @@ namespace Maui.Controls.Sample.Issues; PlatformAffected.Android)] public class Issue20062 : TestContentPage { - CollectionView collection; - Issue20062ViewModel viewModel; + CollectionView _collectionView; + List list = new List(); + protected override void Init() { - collection = new CollectionView + _collectionView = new CollectionView { SelectionMode = SelectionMode.Single, ItemsLayout = new GridItemsLayout(2, ItemsLayoutOrientation.Vertical) @@ -34,14 +35,12 @@ protected override void Init() { FontFamily = "SemiBold", TextColor = Colors.Black, + Text = "a", FontSize = 14, HorizontalOptions = LayoutOptions.Center, HorizontalTextAlignment = TextAlignment.Center, VerticalOptions = LayoutOptions.Center }; - label.SetBinding(Label.TextProperty, "Name"); - label.SetBinding(Label.AutomationIdProperty, "Id"); - var grid = new Grid { RowDefinitions = @@ -78,16 +77,19 @@ protected override void Init() return border; }) }; - collection.AutomationId = "CollectionView"; + _collectionView.AutomationId = "CollectionView"; var layout = new VerticalStackLayout { Padding = new Thickness(30, 0), Spacing = 25, - Children = { collection } + Children = { _collectionView } }; - BindingContext = viewModel = new Issue20062ViewModel(); - collection.ItemsSource = viewModel.Items; + list.Add("a"); + list.Add("a"); + list.Add("a"); + list.Add("a"); + _collectionView.ItemsSource = list; Content = new ScrollView { @@ -97,25 +99,3 @@ protected override void Init() } } -public class Issue20062_Item -{ - public string Name { get; set; } - public string Id { get; set; } -} - -public class Issue20062ViewModel -{ - public List Items { get; set; } - - public Issue20062ViewModel() - { - Items = new List - { - new Issue20062_Item { Name = "a", Id = "FirstItem" }, - new Issue20062_Item { Name = "a", Id = "SecondItem" }, - new Issue20062_Item { Name = "a", Id = "ThirdItem" }, - new Issue20062_Item { Name = "a", Id = "FourthItem" } - }; - } -} - diff --git a/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs b/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs index 6a95ef579a18..b257198b1215 100644 --- a/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs +++ b/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue20062.cs @@ -16,8 +16,9 @@ public Issue20062(TestDevice device) : base(device) { } public void CollectionViewSelectionChangesVisualState() { App.WaitForElement("CollectionView"); - App.Tap("FirstItem"); - App.Tap("ThirdItem"); + var items = App.FindElementsByText("a"); + items.ElementAt(0).Tap(); + items.ElementAt(2).Tap(); VerifyScreenshot(); } }