AvaloniaFlixSearchView.xaml 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302
  1. <UserControl xmlns="https://github.com/avaloniaui"
  2. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  3. x:Class="ControlCatalog.Pages.AvaloniaFlixSearchView"
  4. Background="#0A0A0A">
  5. <DockPanel>
  6. <!-- Top bar: search field, mic, close -->
  7. <Grid DockPanel.Dock="Top"
  8. ColumnDefinitions="*,Auto,Auto"
  9. Margin="16,12,12,8">
  10. <!-- Search Bar -->
  11. <Border CornerRadius="4" Background="#222222" Padding="12,8"
  12. VerticalAlignment="Center">
  13. <Grid ColumnDefinitions="Auto,*">
  14. <PathIcon Grid.Column="0" Width="15" Height="15" Foreground="#888888"
  15. VerticalAlignment="Center" Margin="0,0,8,0"
  16. Data="M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z"/>
  17. <TextBlock Grid.Column="1" Text="Search AvaloniaFlix" FontSize="13"
  18. Foreground="#888888" VerticalAlignment="Center"/>
  19. </Grid>
  20. </Border>
  21. <!-- Mic Button -->
  22. <Button Grid.Column="1" Classes="flixTransparent"
  23. Padding="8" Margin="6,0,0,0">
  24. <PathIcon Width="20" Height="20" Foreground="White"
  25. Data="M12,2A3,3 0 0,1 15,5V11A3,3 0 0,1 12,14A3,3 0 0,1 9,11V5A3,3 0 0,1 12,2M19,11C19,14.53 16.39,17.44 13,17.93V21H11V17.93C7.61,17.44 5,14.53 5,11H7A5,5 0 0,0 12,16A5,5 0 0,0 17,11H19Z"/>
  26. </Button>
  27. <!-- Close Button -->
  28. <Button x:Name="CloseButton" Grid.Column="2" Classes="flixTransparent"
  29. Padding="8" Margin="2,0,0,0" Click="OnCloseClick">
  30. <PathIcon Width="18" Height="18" Foreground="White"
  31. Data="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z"/>
  32. </Button>
  33. </Grid>
  34. <!-- Scrollable content -->
  35. <ScrollViewer VerticalScrollBarVisibility="Auto">
  36. <StackPanel Spacing="0">
  37. <!-- Popular Searches -->
  38. <TextBlock Text="Popular Searches" FontSize="18" FontWeight="SemiBold"
  39. Foreground="White" Margin="16,8,16,10"/>
  40. <!-- Popular 1: Neon Horizon -->
  41. <Button Background="Transparent" Padding="0"
  42. HorizontalAlignment="Stretch" HorizontalContentAlignment="Stretch"
  43. Tag="Neon Horizon" Cursor="Hand" Click="OnMovieClick">
  44. <Grid ColumnDefinitions="Auto,*,Auto">
  45. <Border Grid.Column="0" Width="130" Height="73" ClipToBounds="True">
  46. <Border.Background>
  47. <ImageBrush Source="avares://ControlCatalog/Assets/Movies/trending1.jpg"
  48. Stretch="UniformToFill"/>
  49. </Border.Background>
  50. </Border>
  51. <TextBlock Grid.Column="1" Text="Neon Horizon" FontSize="14" FontWeight="Medium"
  52. Foreground="White" VerticalAlignment="Center" Margin="12,0,0,0"/>
  53. <Border Grid.Column="2" Width="36" Height="36" CornerRadius="18"
  54. Background="#E50914" Margin="0,0,16,0" VerticalAlignment="Center">
  55. <PathIcon Width="16" Height="16" Foreground="White"
  56. Data="M8,5.14V19.14L19,12.14L8,5.14Z"/>
  57. </Border>
  58. </Grid>
  59. </Button>
  60. <!-- Divider + Popular 2: Shadow Protocol -->
  61. <Border Height="1" Background="#222222"/>
  62. <Button Background="Transparent" Padding="0"
  63. HorizontalAlignment="Stretch" HorizontalContentAlignment="Stretch"
  64. Tag="Shadow Protocol" Cursor="Hand" Click="OnMovieClick">
  65. <Grid ColumnDefinitions="Auto,*,Auto">
  66. <Border Grid.Column="0" Width="130" Height="73" ClipToBounds="True">
  67. <Border.Background>
  68. <ImageBrush Source="avares://ControlCatalog/Assets/Movies/trending2.jpg"
  69. Stretch="UniformToFill"/>
  70. </Border.Background>
  71. </Border>
  72. <TextBlock Grid.Column="1" Text="Shadow Protocol" FontSize="14" FontWeight="Medium"
  73. Foreground="White" VerticalAlignment="Center" Margin="12,0,0,0"/>
  74. <Border Grid.Column="2" Width="36" Height="36" CornerRadius="18"
  75. Background="#E50914" Margin="0,0,16,0" VerticalAlignment="Center">
  76. <PathIcon Width="16" Height="16" Foreground="White"
  77. Data="M8,5.14V19.14L19,12.14L8,5.14Z"/>
  78. </Border>
  79. </Grid>
  80. </Button>
  81. <!-- Divider + Popular 3: Iron Bloom -->
  82. <Border Height="1" Background="#222222"/>
  83. <Button Background="Transparent" Padding="0"
  84. HorizontalAlignment="Stretch" HorizontalContentAlignment="Stretch"
  85. Tag="Iron Bloom" Cursor="Hand" Click="OnMovieClick">
  86. <Grid ColumnDefinitions="Auto,*,Auto">
  87. <Border Grid.Column="0" Width="130" Height="73" ClipToBounds="True">
  88. <Border.Background>
  89. <ImageBrush Source="avares://ControlCatalog/Assets/Movies/toprated1.jpg"
  90. Stretch="UniformToFill"/>
  91. </Border.Background>
  92. </Border>
  93. <TextBlock Grid.Column="1" Text="Iron Bloom" FontSize="14" FontWeight="Medium"
  94. Foreground="White" VerticalAlignment="Center" Margin="12,0,0,0"/>
  95. <Border Grid.Column="2" Width="36" Height="36" CornerRadius="18"
  96. Background="#E50914" Margin="0,0,16,0" VerticalAlignment="Center">
  97. <PathIcon Width="16" Height="16" Foreground="White"
  98. Data="M8,5.14V19.14L19,12.14L8,5.14Z"/>
  99. </Border>
  100. </Grid>
  101. </Button>
  102. <!-- Divider + Popular 4: Void Runners -->
  103. <Border Height="1" Background="#222222"/>
  104. <Button Background="Transparent" Padding="0"
  105. HorizontalAlignment="Stretch" HorizontalContentAlignment="Stretch"
  106. Tag="Void Runners" Cursor="Hand" Click="OnMovieClick">
  107. <Grid ColumnDefinitions="Auto,*,Auto">
  108. <Border Grid.Column="0" Width="130" Height="73" ClipToBounds="True">
  109. <Border.Background>
  110. <ImageBrush Source="avares://ControlCatalog/Assets/Movies/toprated2.jpg"
  111. Stretch="UniformToFill"/>
  112. </Border.Background>
  113. </Border>
  114. <TextBlock Grid.Column="1" Text="Void Runners" FontSize="14" FontWeight="Medium"
  115. Foreground="White" VerticalAlignment="Center" Margin="12,0,0,0"/>
  116. <Border Grid.Column="2" Width="36" Height="36" CornerRadius="18"
  117. Background="#E50914" Margin="0,0,16,0" VerticalAlignment="Center">
  118. <PathIcon Width="16" Height="16" Foreground="White"
  119. Data="M8,5.14V19.14L19,12.14L8,5.14Z"/>
  120. </Border>
  121. </Grid>
  122. </Button>
  123. <!-- Divider + Popular 5: Eclipse Rising -->
  124. <Border Height="1" Background="#222222"/>
  125. <Button Background="Transparent" Padding="0"
  126. HorizontalAlignment="Stretch" HorizontalContentAlignment="Stretch"
  127. Tag="Eclipse Rising" Cursor="Hand" Click="OnMovieClick">
  128. <Grid ColumnDefinitions="Auto,*,Auto">
  129. <Border Grid.Column="0" Width="130" Height="73" ClipToBounds="True">
  130. <Border.Background>
  131. <ImageBrush Source="avares://ControlCatalog/Assets/Movies/toprated3.jpg"
  132. Stretch="UniformToFill"/>
  133. </Border.Background>
  134. </Border>
  135. <TextBlock Grid.Column="1" Text="Eclipse Rising" FontSize="14" FontWeight="Medium"
  136. Foreground="White" VerticalAlignment="Center" Margin="12,0,0,0"/>
  137. <Border Grid.Column="2" Width="36" Height="36" CornerRadius="18"
  138. Background="#E50914" Margin="0,0,16,0" VerticalAlignment="Center">
  139. <PathIcon Width="16" Height="16" Foreground="White"
  140. Data="M8,5.14V19.14L19,12.14L8,5.14Z"/>
  141. </Border>
  142. </Grid>
  143. </Button>
  144. <!-- Top Movies & TV -->
  145. <TextBlock Text="Top Movies &amp; TV" FontSize="18" FontWeight="SemiBold"
  146. Foreground="White" Margin="16,12,16,10"/>
  147. <WrapPanel Orientation="Horizontal" Margin="12,0,12,24">
  148. <!-- Grid 1: Iron Bloom -->
  149. <Button Background="Transparent" Padding="4"
  150. Tag="Iron Bloom" Cursor="Hand" Width="160" Click="OnMovieClick">
  151. <Border Height="200" CornerRadius="6" ClipToBounds="True">
  152. <Panel>
  153. <Border>
  154. <Border.Background>
  155. <ImageBrush Source="avares://ControlCatalog/Assets/Movies/toprated1.jpg"
  156. Stretch="UniformToFill"/>
  157. </Border.Background>
  158. </Border>
  159. </Panel>
  160. </Border>
  161. </Button>
  162. <!-- Grid 2: Void Runners -->
  163. <Button Background="Transparent" Padding="4"
  164. Tag="Void Runners" Cursor="Hand" Width="160" Click="OnMovieClick">
  165. <Border Height="200" CornerRadius="6" ClipToBounds="True">
  166. <Panel>
  167. <Border>
  168. <Border.Background>
  169. <ImageBrush Source="avares://ControlCatalog/Assets/Movies/toprated2.jpg"
  170. Stretch="UniformToFill"/>
  171. </Border.Background>
  172. </Border>
  173. </Panel>
  174. </Border>
  175. </Button>
  176. <!-- Grid 3: Eclipse Rising (TOP 10 badge) -->
  177. <Button Background="Transparent" Padding="4"
  178. Tag="Eclipse Rising" Cursor="Hand" Width="160" Click="OnMovieClick">
  179. <Border Height="200" CornerRadius="6" ClipToBounds="True">
  180. <Panel>
  181. <Border>
  182. <Border.Background>
  183. <ImageBrush Source="avares://ControlCatalog/Assets/Movies/toprated3.jpg"
  184. Stretch="UniformToFill"/>
  185. </Border.Background>
  186. </Border>
  187. <Border HorizontalAlignment="Right" VerticalAlignment="Top"
  188. Margin="0,8,8,0" CornerRadius="2" Padding="6,3"
  189. Background="#CC000000">
  190. <TextBlock Text="TOP 10" FontSize="9" FontWeight="Bold"
  191. Foreground="#E50914"/>
  192. </Border>
  193. </Panel>
  194. </Border>
  195. </Button>
  196. <!-- Grid 4: Phantom Code (NEW EPISODES badge) -->
  197. <Button Background="Transparent" Padding="4"
  198. Tag="Phantom Code" Cursor="Hand" Width="160" Click="OnMovieClick">
  199. <Border Height="200" CornerRadius="6" ClipToBounds="True">
  200. <Panel>
  201. <Border>
  202. <Border.Background>
  203. <ImageBrush Source="avares://ControlCatalog/Assets/Movies/toprated4.jpg"
  204. Stretch="UniformToFill"/>
  205. </Border.Background>
  206. </Border>
  207. <Border HorizontalAlignment="Right" VerticalAlignment="Top"
  208. Margin="0,8,8,0" CornerRadius="2" Padding="6,3"
  209. Background="#CC000000">
  210. <TextBlock Text="NEW EPISODES" FontSize="9" FontWeight="Bold"
  211. Foreground="#E50914"/>
  212. </Border>
  213. </Panel>
  214. </Border>
  215. </Button>
  216. <!-- Grid 5: Starfall Legacy -->
  217. <Button Background="Transparent" Padding="4"
  218. Tag="Starfall Legacy" Cursor="Hand" Width="160" Click="OnMovieClick">
  219. <Border Height="200" CornerRadius="6" ClipToBounds="True">
  220. <Panel>
  221. <Border>
  222. <Border.Background>
  223. <ImageBrush Source="avares://ControlCatalog/Assets/Movies/continue1.jpg"
  224. Stretch="UniformToFill"/>
  225. </Border.Background>
  226. </Border>
  227. </Panel>
  228. </Border>
  229. </Button>
  230. <!-- Grid 6: Crimson Depths (TOP 10 badge) -->
  231. <Button Background="Transparent" Padding="4"
  232. Tag="Crimson Depths" Cursor="Hand" Width="160" Click="OnMovieClick">
  233. <Border Height="200" CornerRadius="6" ClipToBounds="True">
  234. <Panel>
  235. <Border>
  236. <Border.Background>
  237. <ImageBrush Source="avares://ControlCatalog/Assets/Movies/morelike1.jpg"
  238. Stretch="UniformToFill"/>
  239. </Border.Background>
  240. </Border>
  241. <Border HorizontalAlignment="Right" VerticalAlignment="Top"
  242. Margin="0,8,8,0" CornerRadius="2" Padding="6,3"
  243. Background="#CC000000">
  244. <TextBlock Text="TOP 10" FontSize="9" FontWeight="Bold"
  245. Foreground="#E50914"/>
  246. </Border>
  247. </Panel>
  248. </Border>
  249. </Button>
  250. <!-- Grid 7: Astral Divide -->
  251. <Button Background="Transparent" Padding="4"
  252. Tag="Astral Divide" Cursor="Hand" Width="160" Click="OnMovieClick">
  253. <Border Height="200" CornerRadius="6" ClipToBounds="True">
  254. <Panel>
  255. <Border>
  256. <Border.Background>
  257. <ImageBrush Source="avares://ControlCatalog/Assets/Movies/trending1.jpg"
  258. Stretch="UniformToFill"/>
  259. </Border.Background>
  260. </Border>
  261. </Panel>
  262. </Border>
  263. </Button>
  264. <!-- Grid 8: Binary Dawn -->
  265. <Button Background="Transparent" Padding="4"
  266. Tag="Binary Dawn" Cursor="Hand" Width="160" Click="OnMovieClick">
  267. <Border Height="200" CornerRadius="6" ClipToBounds="True">
  268. <Panel>
  269. <Border>
  270. <Border.Background>
  271. <ImageBrush Source="avares://ControlCatalog/Assets/Movies/trending2.jpg"
  272. Stretch="UniformToFill"/>
  273. </Border.Background>
  274. </Border>
  275. </Panel>
  276. </Border>
  277. </Button>
  278. </WrapPanel>
  279. </StackPanel>
  280. </ScrollViewer>
  281. </DockPanel>
  282. </UserControl>