<?xml version="1.0" encoding="utf-8"?>
<Page
    x:Class="XFENewsApplication.Views.AppShellPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:XFENewsApplication.Views"
    xmlns:add="using:XFEExtension.NetCore.WinUIHelper.Utilities.Addition"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d" Loaded="Page_Loaded">

    <Grid x:Name="mainGrid">
        <Grid x:Name="appTitleBar" Canvas.ZIndex="1" Height="{Binding ElementName=navigationView, Path=CompactPaneLength}" IsHitTestVisible="True" VerticalAlignment="Top">
            <Image Source="/Assets/icon.png" HorizontalAlignment="Left" Width="16" Height="16"/>
            <TextBlock Text="新闻" VerticalAlignment="Center" TextWrapping="NoWrap" Margin="28,0,0,0"/>
        </Grid>
        <Grid x:Name="rightPanelGrid" Canvas.ZIndex="2" Margin="0,50,0,0">
            <Grid.TranslationTransition>
                <Vector3Transition/>
            </Grid.TranslationTransition>
            <StackPanel x:Name="messageStackPanel" Margin="0,5,0,0" VerticalAlignment="Top" HorizontalAlignment="Center"/>
        </Grid>
        <Grid x:Name="globalLoadingGrid" Canvas.ZIndex="1" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Background="{ThemeResource SmokeFillColorDefaultBrush}" Visibility="Collapsed">
            <Grid VerticalAlignment="Center" HorizontalAlignment="Center" CornerRadius="15" Padding="100">
                <Grid.Background>
                    <SolidColorBrush Color="Black" Opacity="0.5"/>
                </Grid.Background>
                <StackPanel Spacing="30">
                    <TextBlock x:Name="globalLoadingTextBlock" Text="加载中..." Foreground="White" FontSize="34" VerticalAlignment="Center" HorizontalAlignment="Center"/>
                    <ProgressRing IsActive="True" Width="60" Height="60" VerticalAlignment="Center" HorizontalAlignment="Center"/>
                </StackPanel>
            </Grid>
        </Grid>
        <NavigationView x:Name="navigationView" IsBackButtonVisible="Visible" Canvas.ZIndex="0" IsBackEnabled="{x:Bind ViewModel.CanGoBack, Mode=OneWay}" IsSettingsVisible="False" DisplayModeChanged="NavigationView_DisplayModeChanged" PaneOpening="NavigationView_PaneOpening" PaneOpened="NavigationView_PaneOpened" PaneClosing="NavigationView_PaneClosing" PaneClosed="NavigationView_PaneClosed">
            <NavigationView.AutoSuggestBox>
                <AutoSuggestBox QueryIcon="Find" PlaceholderText="搜索新闻源"/>
            </NavigationView.AutoSuggestBox>
            <NavigationView.MenuItems>
                <NavigationViewItem Content="MSN 新闻" add:NavigationAddition.NavigateTo="XFENewsApplication.Views.NewsViewPage" add:NavigationAddition.NavigateParameter="MSN">
                    <NavigationViewItem.Icon>
                        <ImageIcon Source="https://www.msn.com/favicon.ico" Width="16" Height="16"/>
                    </NavigationViewItem.Icon>
                </NavigationViewItem>
                <NavigationViewItem Content="CCTV 新闻" add:NavigationAddition.NavigateTo="XFENewsApplication.Views.NewsViewPage" add:NavigationAddition.NavigateParameter="CCTV">
                    <NavigationViewItem.Icon>
                        <ImageIcon Source="https://news.cctv.com/favicon.ico" Width="16" Height="16"/>
                    </NavigationViewItem.Icon>
                </NavigationViewItem>
                <NavigationViewItem Content="微博 热搜" add:NavigationAddition.NavigateTo="XFENewsApplication.Views.HotSearchViewPage" add:NavigationAddition.NavigateParameter="Weibo">
                    <NavigationViewItem.Icon>
                        <ImageIcon Source="https://m.weibo.cn/favicon.ico" Width="16" Height="16"/>
                    </NavigationViewItem.Icon>
                </NavigationViewItem>
                <NavigationViewItem Content="BiliBili 热搜" add:NavigationAddition.NavigateTo="XFENewsApplication.Views.HotSearchViewPage" add:NavigationAddition.NavigateParameter="Bilibili">
                    <NavigationViewItem.Icon>
                        <ImageIcon Source="https://www.bilibili.com/favicon.ico" Width="16" Height="16"/>
                    </NavigationViewItem.Icon>
                </NavigationViewItem>
            </NavigationView.MenuItems>
            <NavigationView.FooterMenuItems>
                <NavigationViewItem Content="收藏" add:NavigationAddition.NavigateTo="XFENewsApplication.Views.NewsViewPage" add:NavigationAddition.NavigateParameter="Favorite">
                    <NavigationViewItem.Icon>
                        <FontIcon Glyph="&#xE728;"/>
                    </NavigationViewItem.Icon>
                </NavigationViewItem>
                <NavigationViewItem Content="历史记录" add:NavigationAddition.NavigateTo="XFENewsApplication.Views.NewsViewPage" add:NavigationAddition.NavigateParameter="History">
                    <NavigationViewItem.Icon>
                        <FontIcon Glyph="&#xE81C;"/>
                    </NavigationViewItem.Icon>
                </NavigationViewItem>
                <NavigationViewItem Content="设置" add:NavigationAddition.NavigateTo="XFENewsApplication.Views.SettingPage">
                    <NavigationViewItem.Icon>
                        <FontIcon Glyph="&#xE713;"/>
                    </NavigationViewItem.Icon>
                </NavigationViewItem>
            </NavigationView.FooterMenuItems>
            <Grid x:Name="loadingGrid">
                <Frame Padding="56,24,56,0" x:Name="navigationFrame"/>
            </Grid>
        </NavigationView>
    </Grid>
</Page>
