summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author조규호/Tizen Platform Lab(S/W센터)/Senior Engineer/삼성전자 <kyuho.jo@samsung.com>2017-08-18 14:03:16 +0900
committerGitHub Enterprise <noreply-CODE@samsung.com>2017-08-18 14:03:16 +0900
commitd7fa143c44daaaf79cc0163ba7f63c07f96009e2 (patch)
treeb9f47b98ad6eaab0f9c1642b0c2d85d99a3fa95c
parent8d031b540d7693487b4acbfbf17f3ab4016c0a9e (diff)
parentb0656cca24958cf65ccf24ac66f30b4b5df8b000 (diff)
downloadvideoplayer-d7fa143c44daaaf79cc0163ba7f63c07f96009e2.tar.gz
videoplayer-d7fa143c44daaaf79cc0163ba7f63c07f96009e2.tar.bz2
videoplayer-d7fa143c44daaaf79cc0163ba7f63c07f96009e2.zip
Merge pull request #59 from RS7-TizenReferenceSampleApplication/kyuho.jo
Changes that were made during the Off-line code review.
-rw-r--r--NewPlayer/NewPlayer/App.xaml.cs7
-rw-r--r--NewPlayer/NewPlayer/ViewModels/LibraryPageViewModel.cs12
-rw-r--r--NewPlayer/NewPlayer/Views/LibraryPage.xaml3
-rw-r--r--NewPlayer/NewPlayer/Views/LibraryPage.xaml.cs38
4 files changed, 23 insertions, 37 deletions
diff --git a/NewPlayer/NewPlayer/App.xaml.cs b/NewPlayer/NewPlayer/App.xaml.cs
index 20ebee8..32a4af1 100644
--- a/NewPlayer/NewPlayer/App.xaml.cs
+++ b/NewPlayer/NewPlayer/App.xaml.cs
@@ -11,12 +11,7 @@ namespace NewPlayer
public App()
{
InitializeComponent();
- SetMainPage();
- }
-
- public static void SetMainPage()
- {
- Current.MainPage = new NavigationPage(new LibraryPage());
+ MainPage = new NavigationPage(new LibraryPage());
}
}
} \ No newline at end of file
diff --git a/NewPlayer/NewPlayer/ViewModels/LibraryPageViewModel.cs b/NewPlayer/NewPlayer/ViewModels/LibraryPageViewModel.cs
index d77f47a..968704e 100644
--- a/NewPlayer/NewPlayer/ViewModels/LibraryPageViewModel.cs
+++ b/NewPlayer/NewPlayer/ViewModels/LibraryPageViewModel.cs
@@ -10,6 +10,8 @@ namespace NewPlayer.ViewModels
{
private IEnumerable<MediaItem> items;
+ public Command UpdateCommand { get; set; }
+
public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged([CallerMemberName] string propertyName = null)
@@ -27,17 +29,15 @@ namespace NewPlayer.ViewModels
}
}
- public async void UpdateItemList()
+ private async void UpdateItemList()
{
- {
- await MediaItemProvider.Instance.Update();
- Items = MediaItemProvider.Instance.ItemList;
- }
+ await MediaItemProvider.Instance.Update();
+ Items = MediaItemProvider.Instance.ItemList;
}
public LibraryPageViewModel()
{
- UpdateItemList();
+ UpdateCommand = new Command(() => { UpdateItemList(); });
}
}
} \ No newline at end of file
diff --git a/NewPlayer/NewPlayer/Views/LibraryPage.xaml b/NewPlayer/NewPlayer/Views/LibraryPage.xaml
index 2bfa4df..2114465 100644
--- a/NewPlayer/NewPlayer/Views/LibraryPage.xaml
+++ b/NewPlayer/NewPlayer/Views/LibraryPage.xaml
@@ -5,7 +5,8 @@
xmlns:ViewModels="clr-namespace:NewPlayer.ViewModels"
x:Class="NewPlayer.Views.LibraryPage"
NavigationPage.HasNavigationBar="false"
- Items="{Binding Items}">
+ Items="{Binding Items}"
+ UpdateCommand="{Binding UpdateCommand}">
<ContentPage.BindingContext>
<ViewModels:LibraryPageViewModel/>
diff --git a/NewPlayer/NewPlayer/Views/LibraryPage.xaml.cs b/NewPlayer/NewPlayer/Views/LibraryPage.xaml.cs
index 5a3761a..21a2d39 100644
--- a/NewPlayer/NewPlayer/Views/LibraryPage.xaml.cs
+++ b/NewPlayer/NewPlayer/Views/LibraryPage.xaml.cs
@@ -17,6 +17,14 @@ namespace NewPlayer.Views
set { SetValue(ItemsProperty, value); }
}
+ public static readonly BindableProperty UpdateCommandProperty = BindableProperty.Create("UpdateCommand", typeof(Command), typeof(LibraryPage), null);
+
+ public Command UpdateCommand
+ {
+ get { return (Command)GetValue(UpdateCommandProperty); }
+ set { SetValue(UpdateCommandProperty, value); }
+ }
+
private void UpdateGridItems()
{
var index = 0;
@@ -28,6 +36,11 @@ namespace NewPlayer.Views
GridView.Children.Add(new ItemView(item), index / 3, index % 3);
index++;
}
+
+ if (index > 0)
+ {
+ GridView.Children[0].FindByName<Button>("FocusButton").Focus();
+ }
}
private void OnPropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
@@ -41,36 +54,13 @@ namespace NewPlayer.Views
protected override void OnAppearing()
{
base.OnAppearing();
-
- GridView.LayoutChanged += OnGridViewLayoutChanged;
- }
-
- private void OnGridViewLayoutChanged(object sender, System.EventArgs e)
- {
- if (GridView.Children != null && GridView.Children.Count > 0)
- {
- var item = GridView.Children[0];
- if (item != null)
- {
- item.FindByName<Button>("FocusButton")?.Focus();
- }
- }
+ UpdateCommand.Execute("");
}
public LibraryPage()
{
InitializeComponent();
-
PropertyChanged += OnPropertyChanged;
-
- // In a case of Tizen, the Items property is ready before initializing the LibraryView.
- // Therefore, the property changed event can be skipped.
- // To prevent from missing the changed event, we should check the Items first.
- // If it is ready, we can update the Grid.
- if (Items != null)
- {
- UpdateGridItems();
- }
}
}
}