From 33432e48eeba2411d73664276c1e05623e057c2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Agn=C3=A8s=20ZITTE?= <16295702+agneszitte-nventive@users.noreply.github.com> Date: Mon, 29 Aug 2022 16:54:05 -0400 Subject: [PATCH] feat: Implement Badge for TabBarItem (#296) --- .../tabbaritem-winui-material-badges.png | Bin 0 -> 3613 bytes .../tabbaritem-winui-material-largebadge.png | Bin 0 -> 1418 bytes .../tabbaritem-winui-material-smallbadge.png | Bin 0 -> 1382 bytes doc/controls/TabBarAndTabBarItem.md | 48 +++++++++ .../Uno.Toolkit.Samples.Droid.csproj | 4 +- .../Content/Controls/TabBarSamplePage.xaml | 16 ++- .../Uno.Toolkit.Samples.Skia.Gtk.csproj | 4 +- .../Uno.Toolkit.Samples.UWP.csproj | 4 +- .../Uno.Toolkit.Samples.Wasm.csproj | 4 +- .../Uno.Toolkit.Samples.iOS.csproj | 4 +- .../Uno.Toolkit.Samples.macOS.csproj | 4 +- .../Uno.Toolkit.WinUI.Samples.Droid.csproj | 2 +- .../Uno.Toolkit.WinUI.Samples.Skia.Gtk.csproj | 2 +- .../Uno.Toolkit.WinUI.Samples.Wasm.csproj | 2 +- ...olkit.WinUI.Samples.Windows.Desktop.csproj | 2 +- .../Uno.Toolkit.WinUI.Samples.iOS.csproj | 2 +- .../Uno.Toolkit.WinUI.Samples.macOS.csproj | 2 +- .../Controls/TabBar/TabBarItem.Properties.cs | 22 +++++ .../Uno.Toolkit.UI.Cupertino.csproj | 2 +- .../Uno.Toolkit.WinUI.Cupertino.csproj | 2 +- .../Generated/mergedpages.uwp.v2.xaml | 29 +++++- .../Generated/mergedpages.winui.v2.xaml | 29 +++++- .../Styles/Controls/v2/BottomTabBar.xaml | 91 +++++++++++++++--- .../Uno.Toolkit.UI.Material.csproj | 2 +- .../Uno.Toolkit.WinUI.Material.csproj | 2 +- 25 files changed, 233 insertions(+), 46 deletions(-) create mode 100644 doc/assets/tabbaritem-winui-material-badges.png create mode 100644 doc/assets/tabbaritem-winui-material-largebadge.png create mode 100644 doc/assets/tabbaritem-winui-material-smallbadge.png diff --git a/doc/assets/tabbaritem-winui-material-badges.png b/doc/assets/tabbaritem-winui-material-badges.png new file mode 100644 index 0000000000000000000000000000000000000000..9e143b5646a81940d6027f53e698f5f43c7c0970 GIT binary patch literal 3613 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 h@ox$u69-z{{S=*e*sX*4LAS* literal 0 HcmV?d00001 diff --git a/doc/assets/tabbaritem-winui-material-largebadge.png b/doc/assets/tabbaritem-winui-material-largebadge.png new file mode 100644 index 0000000000000000000000000000000000000000..32f9b3f2d23e509a87735d14f29683042d0d19e7 GIT binary patch literal 1418 zcmb7EdoipoW|s>p|P(d3&VmrDzanSI6H}=!~ew zfk4~z5svnLu>qo@Q9Rmdf9i&1`U3;TWtK8C?TCh%>&9=NlP~aF2LqIo_s%6>Os_Ku zkP?F)R%^LAt|c1|Rx*+Ba5eme+CxpqB6h=k5u+7=A!wtgTZ@T_Le$yTwd+w)p;J5> zNl)5f95zt+%C3+XHdWH*zICs$YnZ`*u?LuJR7)mb$_#Z6##Ni7a6W3tb}cAUp2E-? z!WOEDN4`_bXdF5w+87xr;$>9*gzNUFc8Jo<+oWMThk+ zg*U9S=7N!{9!$efr3~COW@=g#L91Y`H;IllW{ps_OX%f&hld%_%ALwp6aDmzwVXUc z-@ddbcQpa2CBu5woaHXWA+)89n2)?N+J@;))%0jWF@DU2g^)qpb#f-mjYcX}Gnt;6 zpdG{rQ)tR02kb1jK91sC)x=V?LS}LR+tjziRi5 z9)j|~#xlMG3J)J~lP^xzG~CW39gVH-H_G!Jun`!j1LGUsk8e6;ubw(lA7M2mEfV00 zy{Yv_86HsT{Iz_zWG>~*uV0@tRn7NglG=D)khX*+(?yAMcVrK_sgoYSK3dE|jdYE= z(=+aw4X2m>anqu2+Or;?8@E{sZj87_I&W7EpP#F#r?p#N>q&X{_WfW3y3!g4$=y8X zUZWxV#@R9fy}v5x<$vL{=c0D53nD)z*K@mIkA83B^XYc<=qHPJ#Mv9RK306+#i0UY z{+}Td3uPyyzpt}$Rb?j29cw}8vuvpy@yabXJvtFA3BI)w*3K7fw zAzj{yM&bceF8Lm1pxv>D8PzO$oB|W_Ni$C$FluMML59(M>`I`{ zC%j6AH*Z}frIa1D13##l!Fn4j3xR;qXsyLs#b~09EGAhUpt`km`%g9PK-l3tGh1nO zk;a%uekFMlvjtn1@|jyVe!AT6cG#?f_#@=V-aNf(qkrF8pf_Rw=gd#lpQG2?3A4my zL*u1@eF4ZByWopcb5NX6wJ zxX?i)C(6q0SIKXTg8XXU)HKHc)~j)S&6EyzVE?FE?Q)Rg?BLR3MG|%iCMJw8_;A_6 z+}fGe;}`*D9V-4_L|98H7`(01jY;KB4sc0mn}gs^HXhXc&-|kG@%+^iOhL9zjwF&t u&8EcbE{Rs|SPp(QOd=`%4~Y4DKEq$=I|MOz6D;Ka6NGR=IdU8Vll}r_hQKiZ literal 0 HcmV?d00001 diff --git a/doc/assets/tabbaritem-winui-material-smallbadge.png b/doc/assets/tabbaritem-winui-material-smallbadge.png new file mode 100644 index 0000000000000000000000000000000000000000..fad27e854d75987d7f22c71ddd94ec5770d21a90 GIT binary patch literal 1382 zcmaJ>Su~po7)`AiQlV6-NU4O;){?OfZJlTkwFgCL$!}UqQA^9zHjyGEA&OCL6sf)1 zsL{>Rim`7QA+|70k7k;tt=ej-Qj>X{d6&DVU2%sXE79M@VgnLDAf@hqu&@70 z{ZEpgug(~>&(9YY?+jCe9Mt-Dtw^sqhrlFyxYSu0=WoO<;zxvWP)-36tlLM#pmMd) zJO}kSm4%~Pq1XlefOqyk1mrMGl~WNM*EWMiA!_2y)y?AF;O6QJ)mK)(ydI<$o}_9Pqk_yj@3FA zm$3enaW|$_Y`1sqm%Y>YaWccqD5;&BINGi~9bvMW%#fe$4d*1yj|9hs`6HybBG`a_ zACRO*D+2o-9Rj@licbLZZL|5WUR$qLBsV7ciJ8ax;;n>Jb$BjgXz)W((tHgR+L~Z; z@&hOO&yN$r-Y7C5I&x4D7+Fstput6K3a1lBJsBneAxT3?V=Re3Z-KuRa%xDm`lk zZ(ojZbi$$di#rLjJMXDW+dx77Y)Sy9=Tf24$0ljlEYSPH0?`al*#mj%Wi zO)ky$1xpM@U;onCpTKKaN8 zX)-WHtp-L$-=3l;ix$(obagH^+u+L>7M2+;9n@<+)J-i-$-?~E{$ zVQ9V<>bk446czchQ#A2%BH(E}M5_BQ6U*kdhKN;bnGwOD>U{*J_pRJ*mq!gH5d|sk z5??@z+%B*V;$fnagQg{4o?J^G+ZRmgu_>nr;I?MGRASyn7xT+4mrAdeHNG!3m3Zqw zBtR@C8jT)b7b82*-dR#$ueiI@Txp~fum2`{W*G=7 z-~Ez6|=oo6`ZW~&D&j5ry_oJAws g|Ha|}F^m0VH + + + + +``` + +##### Large Badge +A large badge displays a number within a container to indicate a quantifiable status change related to a destination. + +![](../assets/tabbaritem-winui-material-largebadge.png) + +```xml +xmlns:utu="using:Uno.Toolkit.UI" +... + + + + + + +``` \ No newline at end of file diff --git a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Droid/Uno.Toolkit.Samples.Droid.csproj b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Droid/Uno.Toolkit.Samples.Droid.csproj index 60c487c32..7c4bb208e 100644 --- a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Droid/Uno.Toolkit.Samples.Droid.csproj +++ b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Droid/Uno.Toolkit.Samples.Droid.csproj @@ -66,10 +66,10 @@ - 2.3.0-dev.4 + 2.3.0-dev.6 - 2.3.0-dev.4 + 2.3.0-dev.6 diff --git a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Shared/Content/Controls/TabBarSamplePage.xaml b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Shared/Content/Controls/TabBarSamplePage.xaml index 02c68ad3b..1c2c11308 100644 --- a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Shared/Content/Controls/TabBarSamplePage.xaml +++ b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Shared/Content/Controls/TabBarSamplePage.xaml @@ -421,12 +421,22 @@ - + - + - + + + + + + diff --git a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Skia.Gtk/Uno.Toolkit.Samples.Skia.Gtk.csproj b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Skia.Gtk/Uno.Toolkit.Samples.Skia.Gtk.csproj index 3d15dfcfc..43090cd40 100644 --- a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Skia.Gtk/Uno.Toolkit.Samples.Skia.Gtk.csproj +++ b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Skia.Gtk/Uno.Toolkit.Samples.Skia.Gtk.csproj @@ -29,8 +29,8 @@ - - + + diff --git a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.UWP/Uno.Toolkit.Samples.UWP.csproj b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.UWP/Uno.Toolkit.Samples.UWP.csproj index 3623693a0..48840f786 100644 --- a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.UWP/Uno.Toolkit.Samples.UWP.csproj +++ b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.UWP/Uno.Toolkit.Samples.UWP.csproj @@ -12,10 +12,10 @@ - 2.3.0-dev.4 + 2.3.0-dev.6 - 2.3.0-dev.4 + 2.3.0-dev.6 diff --git a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Wasm/Uno.Toolkit.Samples.Wasm.csproj b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Wasm/Uno.Toolkit.Samples.Wasm.csproj index 90847fdb6..c02ad305d 100644 --- a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Wasm/Uno.Toolkit.Samples.Wasm.csproj +++ b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Wasm/Uno.Toolkit.Samples.Wasm.csproj @@ -42,9 +42,9 @@ - + - + diff --git a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.iOS/Uno.Toolkit.Samples.iOS.csproj b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.iOS/Uno.Toolkit.Samples.iOS.csproj index 1edec4ed4..f892b2edb 100644 --- a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.iOS/Uno.Toolkit.Samples.iOS.csproj +++ b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.iOS/Uno.Toolkit.Samples.iOS.csproj @@ -191,10 +191,10 @@ all - 2.3.0-dev.4 + 2.3.0-dev.6 - 2.3.0-dev.4 + 2.3.0-dev.6 diff --git a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.macOS/Uno.Toolkit.Samples.macOS.csproj b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.macOS/Uno.Toolkit.Samples.macOS.csproj index 86ef9cc49..22d51eeab 100644 --- a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.macOS/Uno.Toolkit.Samples.macOS.csproj +++ b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.macOS/Uno.Toolkit.Samples.macOS.csproj @@ -75,10 +75,10 @@ - 2.3.0-dev.4 + 2.3.0-dev.6 - 2.3.0-dev.4 + 2.3.0-dev.6 diff --git a/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Droid/Uno.Toolkit.WinUI.Samples.Droid.csproj b/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Droid/Uno.Toolkit.WinUI.Samples.Droid.csproj index bcd5dc036..daabbdf85 100644 --- a/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Droid/Uno.Toolkit.WinUI.Samples.Droid.csproj +++ b/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Droid/Uno.Toolkit.WinUI.Samples.Droid.csproj @@ -71,7 +71,7 @@ - 2.3.0-dev.4 + 2.3.0-dev.6 diff --git a/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Skia.Gtk/Uno.Toolkit.WinUI.Samples.Skia.Gtk.csproj b/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Skia.Gtk/Uno.Toolkit.WinUI.Samples.Skia.Gtk.csproj index cb6368859..49d55f29b 100644 --- a/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Skia.Gtk/Uno.Toolkit.WinUI.Samples.Skia.Gtk.csproj +++ b/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Skia.Gtk/Uno.Toolkit.WinUI.Samples.Skia.Gtk.csproj @@ -34,7 +34,7 @@ - + diff --git a/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Wasm/Uno.Toolkit.WinUI.Samples.Wasm.csproj b/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Wasm/Uno.Toolkit.WinUI.Samples.Wasm.csproj index 6c81f4e84..593f2e820 100644 --- a/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Wasm/Uno.Toolkit.WinUI.Samples.Wasm.csproj +++ b/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Wasm/Uno.Toolkit.WinUI.Samples.Wasm.csproj @@ -42,7 +42,7 @@ - + diff --git a/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Windows.Desktop/Uno.Toolkit.WinUI.Samples.Windows.Desktop.csproj b/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Windows.Desktop/Uno.Toolkit.WinUI.Samples.Windows.Desktop.csproj index 8f6c2e04a..ad8a3ed22 100644 --- a/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Windows.Desktop/Uno.Toolkit.WinUI.Samples.Windows.Desktop.csproj +++ b/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Windows.Desktop/Uno.Toolkit.WinUI.Samples.Windows.Desktop.csproj @@ -18,7 +18,7 @@ - + diff --git a/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.iOS/Uno.Toolkit.WinUI.Samples.iOS.csproj b/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.iOS/Uno.Toolkit.WinUI.Samples.iOS.csproj index c3427f77e..a5bd7e6c6 100644 --- a/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.iOS/Uno.Toolkit.WinUI.Samples.iOS.csproj +++ b/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.iOS/Uno.Toolkit.WinUI.Samples.iOS.csproj @@ -124,7 +124,7 @@ - 2.3.0-dev.4 + 2.3.0-dev.6 diff --git a/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.macOS/Uno.Toolkit.WinUI.Samples.macOS.csproj b/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.macOS/Uno.Toolkit.WinUI.Samples.macOS.csproj index cd6de0bea..4a914d0b9 100644 --- a/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.macOS/Uno.Toolkit.WinUI.Samples.macOS.csproj +++ b/samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.macOS/Uno.Toolkit.WinUI.Samples.macOS.csproj @@ -74,7 +74,7 @@ - 2.3.0-dev.4 + 2.3.0-dev.6 diff --git a/src/Uno.Toolkit.UI/Controls/TabBar/TabBarItem.Properties.cs b/src/Uno.Toolkit.UI/Controls/TabBar/TabBarItem.Properties.cs index 652e4e42c..293ceeeb6 100644 --- a/src/Uno.Toolkit.UI/Controls/TabBar/TabBarItem.Properties.cs +++ b/src/Uno.Toolkit.UI/Controls/TabBar/TabBarItem.Properties.cs @@ -29,6 +29,28 @@ partial class TabBarItem DependencyProperty.Register(nameof(Icon), typeof(IconElement), typeof(TabBarItem), new PropertyMetadata(null, OnPropertyChanged)); #endregion + #region BadgeVisibility + public Visibility BadgeVisibility + { + get { return (Visibility)GetValue(BadgeVisibilityProperty); } + set { SetValue(BadgeVisibilityProperty, value); } + } + + public static readonly DependencyProperty BadgeVisibilityProperty = + DependencyProperty.Register("BadgeVisibility", typeof(Visibility), typeof(TabBarItem), new PropertyMetadata(Visibility.Collapsed, OnPropertyChanged)); + #endregion + + #region BadgeValue + public string? BadgeValue + { + get { return (string)GetValue(BadgeValueProperty); } + set { SetValue(BadgeValueProperty, value); } + } + + public static readonly DependencyProperty BadgeValueProperty = + DependencyProperty.Register("BadgeValue", typeof(string), typeof(TabBarItem), new PropertyMetadata(default(string?), OnPropertyChanged)); + #endregion + #region IsSelectable public bool IsSelectable { diff --git a/src/library/Uno.Toolkit.Cupertino/Uno.Toolkit.UI.Cupertino.csproj b/src/library/Uno.Toolkit.Cupertino/Uno.Toolkit.UI.Cupertino.csproj index 37735d6a3..5d0869573 100644 --- a/src/library/Uno.Toolkit.Cupertino/Uno.Toolkit.UI.Cupertino.csproj +++ b/src/library/Uno.Toolkit.Cupertino/Uno.Toolkit.UI.Cupertino.csproj @@ -15,7 +15,7 @@ - + diff --git a/src/library/Uno.Toolkit.Cupertino/Uno.Toolkit.WinUI.Cupertino.csproj b/src/library/Uno.Toolkit.Cupertino/Uno.Toolkit.WinUI.Cupertino.csproj index c97b1ed79..518712874 100644 --- a/src/library/Uno.Toolkit.Cupertino/Uno.Toolkit.WinUI.Cupertino.csproj +++ b/src/library/Uno.Toolkit.Cupertino/Uno.Toolkit.WinUI.Cupertino.csproj @@ -17,7 +17,7 @@ - + diff --git a/src/library/Uno.Toolkit.Material/Generated/mergedpages.uwp.v2.xaml b/src/library/Uno.Toolkit.Material/Generated/mergedpages.uwp.v2.xaml index 317f9a1e5..ff1564438 100644 --- a/src/library/Uno.Toolkit.Material/Generated/mergedpages.uwp.v2.xaml +++ b/src/library/Uno.Toolkit.Material/Generated/mergedpages.uwp.v2.xaml @@ -42,11 +42,22 @@ 0,12,0,16 12,0 16 - 22,7 + 64 + 32 20 16 16 12 + + + 6 + 6 + 0,4,20,0 + 16 + 16 + 32,2,0,0 + 4,0 + 8