TV Home - Fix Main Menu Layout
authorHeonjae Jang <heonjae.jang@samsung.com>
Wed, 22 Mar 2017 08:39:40 +0000 (17:39 +0900)
committerChulSeung Kim <charles0.kim@samsung.com>
Thu, 8 Jun 2017 09:34:49 +0000 (18:34 +0900)
Change-Id: I4f0a53c71a5aed3fd7a9f548a20def4749ffd1f1

TVHome/TVHome.TizenTV/bin/Debug/TVHome.TizenTV.tpk
TVHome/TVHome/Controls/MainPanelButton.xaml
TVHome/TVHome/Controls/MainPanelButton.xaml.cs
TVHome/TVHome/Controls/SubPanelButton.xaml
TVHome/TVHome/Views/MainPage.xaml
TVHome/TVHome/Views/MainPanel.xaml
TVHome/TVHome/Views/MainPanel.xaml.cs

index b9a7114bff8439d677079768ccb1e0684957099c..9f19c86293b26fa20361cda8ef0a3809b911319a 100644 (file)
Binary files a/TVHome/TVHome.TizenTV/bin/Debug/TVHome.TizenTV.tpk and b/TVHome/TVHome.TizenTV/bin/Debug/TVHome.TizenTV.tpk differ
index fa935c5f26fd075294ffeee8f816dbfc1960597a..92dbd821a5508cfe364dbf041f931fcb4acac14a 100755 (executable)
@@ -3,40 +3,34 @@
                       xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
                       xmlns:Controls="clr-namespace:TVHome.Controls"
                       x:Class="TVHome.Controls.MainPanelButton">
-    <RelativeLayout Opacity="0.3">
-        <BoxView x:Name="ButtonBox"
-                 RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=1}"
-                 RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=1.03}"
-                 RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=0}"
-                 RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0}"
-                 Opacity="0" />
+    <RelativeLayout Opacity="0.01"
+                    HeightRequest="240"
+                    WidthRequest="236"
+                    HorizontalOptions="Center"
+                    VerticalOptions="Center">
         <Image x:Name="ButtonBgImage"
-               RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Height, Factor=1}"
-               RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Width, Factor=1.6857}"
-               RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Height, Factor=0}"
-               RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Width, Factor=-0.343}"
+               RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=1}"
+               RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=1}"
                Source="img_tizen_home_menu_focused_bg.png"
                Opacity="0"
                Scale="0" />
         <Image x:Name="ButtonBlurImage"
-               RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Height, Factor=1}"
-               RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Width, Factor=1.6857}"
-               RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Height, Factor=0}"
-               RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Width, Factor=-0.343}"
+               RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0.83}"
+               RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0.83}"
+               RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0.085}"
+               RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0.085}"
                Source="home_icon_bg_01.png"
-               Scale="0.7"
                Opacity="0" />
         <Image x:Name="ButtonImage"
-               RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=0.218}"
-               RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=1}"
-               RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=0.390}"
-               RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0}"
+               RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0.2167}"
+               RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0.2167}"
+               RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0.3916}"
+               RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0.3916}"
                Source="{Binding CurrentStateDescription.IconPath}" />
         <Label x:Name="ButtonTitle"
-               RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Height, Factor=0.8739}"
-               RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Width, Factor=0}"
-               RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Width, Factor=1}"
-               RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Height, Factor=0.126}"
+               RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0.125}"
+               RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=1}"
+               RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0.875}"
                Opacity="0"
                FontSize="58"
                TextColor="White"
index ca9bf4115cdec7bc39ece1f51eb713ff72f404cc..21ea12e7a85d4a772d487ef9367a96691039ef6b 100755 (executable)
@@ -49,50 +49,48 @@ namespace TVHome.Controls
                 switch (Status)
                 {
                     case "selected":
-
-                        ButtonBlurImage.Source = "home_icon_bg_01.png";
-                        ButtonBgImage.FadeTo(0.875, 1);
                         await ButtonBlurImage.FadeTo(0.99, 1);
+                        uint delay = 10;
+                        ButtonBlurImage.Source = "home_icon_bg_01.png";
+                        await ButtonBgImage.FadeTo(0.875, delay);
 
                         ButtonBlurImage.Source = "home_icon_bg_02.png";
-                        ButtonBgImage.FadeTo(0.750, 1);
-                        await ButtonBlurImage.FadeTo((1.0 - 0.01 * 2), 1);
+                        await ButtonBgImage.FadeTo(0.750, delay);
 
                         ButtonBlurImage.Source = "home_icon_bg_03.png";
-                        ButtonBgImage.FadeTo(0.625, 1);
-                        await ButtonBlurImage.FadeTo((1.0 - 0.01 * 3), 1);
+                        await ButtonBgImage.FadeTo(0.625, delay);
 
                         ButtonBlurImage.Source = "home_icon_bg_04.png";
-                        ButtonBgImage.FadeTo(0.500, 1);
-                        await ButtonBlurImage.FadeTo((1.0 - 0.01 * 4), 1);
+                        await ButtonBgImage.FadeTo(0.500, delay);
 
                         ButtonBlurImage.Source = "home_icon_bg_05.png";
-                        ButtonBgImage.FadeTo(0.375, 1);
-                        await ButtonBlurImage.FadeTo((1.0 - 0.01 * 5), 1);
+                        await ButtonBgImage.FadeTo(0.375, delay);
 
                         ButtonBlurImage.Source = "home_icon_bg_06.png";
-                        ButtonBgImage.FadeTo(0.250, 1);
-                        await ButtonBlurImage.FadeTo((1.0 - 0.01 * 6), 1);
+                        await ButtonBgImage.FadeTo(0.250, delay);
 
                         ButtonBlurImage.Source = "home_icon_bg_07.png";
-                        ButtonBgImage.FadeTo(0.125, 1);
-                        await ButtonBlurImage.FadeTo((1.0 - 0.01 * 7), 1);
+                        await ButtonBgImage.FadeTo(0.125, delay);
 
                         ButtonBlurImage.Source = "home_icon_bg_08.png";
+                        await ButtonBgImage.FadeTo(0.125, delay);
                         ButtonBgImage.FadeTo(0.0, 1);
                         ButtonTitle.FadeTo(0.0, 1);
                         await ButtonBlurImage.FadeTo(0.0, 1);
+                        ButtonBlurImage.Source = "home_icon_bg_01.png";
                         break;
                     case "focused":
                         ButtonTitle.FadeTo(0.8, 100);
                         ButtonBgImage.FadeTo(0.99, 100);
                         ButtonBgImage.ScaleTo(1.0, 100);
+                        ButtonBlurImage.ScaleTo(1.0, 100);
                         await View.FadeTo(0.6, 100);
                         break;
                     default:
                         ButtonTitle.FadeTo(0, 100);
                         ButtonBgImage.FadeTo(0, 100);
                         ButtonBgImage.ScaleTo(0.01, 100);
+                        ButtonBlurImage.ScaleTo(0.01, 100);
                         await View.FadeTo(0.3, 100);
                         break;
                 }
index b1722ccdefdf765ed8ff019d70b349fe76e536aa..2ca9626e419ab9b4520f265ce8676337de377541 100755 (executable)
@@ -18,7 +18,7 @@
            RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Height, Factor=0.095652}"
            RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Height, Factor=0.6}"
            RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Width, Factor=0.75824}"
-             Source="img_tizen_home_list_dim_apps.png" />
+           Source="img_tizen_home_list_dim_apps.png" />
     <Label x:Name="ButtonTitle"
            RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Width, Factor=0.120879}"
            RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToView, ElementName=ButtonBox, Property=Height, Factor=0.77391}"
index 065116e714fefaa2887c5660c36565ab09eeb4e2..146bf969e1489c089d6e83a7818663a68f6356af 100755 (executable)
@@ -23,9 +23,8 @@
 
             <Views:MainPanel x:Name="PageMainPanel"
                              RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=0.22}"
-                             RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0.21875}"
+                             RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=1}"
                              RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=0.6537}"
-                             RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0.390625}"
                              OnFocusedCommand="{Binding MainPanelFocusedCommand}"
                              ItemsSource="{Binding MainList}"/>
 
index 53663d05b0f2f25f72a2c20d7fa5709a7ab2d0e3..4f5892e78d300997f273a3abd3eda2f43320d792 100644 (file)
@@ -3,11 +3,15 @@
              xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
              xmlns:Views="clr-namespace:TVHome.Views"
              x:Class="TVHome.Views.MainPanel">
+    <!-- TODO : Grid.ColumnSpacing should be -94 after taking Focus managemant -->
     <Grid x:Name="PanelButtonGrid">
         <Grid.ColumnDefinitions>
-            <ColumnDefinition Width="1*" />
-            <ColumnDefinition Width="1*" />
-            <ColumnDefinition Width="1*" />
+            <ColumnDefinition Width="*" />
+            <ColumnDefinition Width="236" />
+            <ColumnDefinition Width="236" />
+            <ColumnDefinition Width="236" />
+            <ColumnDefinition Width="*" />
         </Grid.ColumnDefinitions>
+        <Grid.ColumnSpacing>0</Grid.ColumnSpacing>
     </Grid>
 </Views:Panel>
\ No newline at end of file
index e453d3062d9d5d68fc5b8dd5902b94614936cf52..becc9f677232bf910c844631d4ef725c672892db 100644 (file)
@@ -46,7 +46,7 @@ namespace TVHome.Views
             }
 
             HomeMenuItem menuIndex = HomeMenuItem.Recent;
-            var index = 0;
+            var index = 1;
             PanelButtonGrid.Children.Clear();
             foreach (ShortcutInfo item in ItemsSource)
             {
@@ -56,6 +56,7 @@ namespace TVHome.Views
                 HomeMenuItem ItemName = menuIndex;
                 button.OnFocusedCommand = new Command(() =>
                 {
+                    PanelButtonGrid.RaiseChild(button.View);
                     FocusPanel();
                     OnFocusedCommand.Execute(ItemName);
                 });
@@ -63,11 +64,12 @@ namespace TVHome.Views
                 {
                     item.DoAction();
                 });
-                PanelButtonGrid.Children.Add(button.View, index, 0);
+                PanelButtonGrid.Children.Add(button.View,index,0);
 
                 index++;
                 menuIndex++;
             }
+            PanelButtonGrid.ForceLayout();
         }
 
         public void InitialFocusing()