Show 'unavailable' icon for not supported contents
authorkyuho.jo <kyuho.jo@samsung.com>
Mon, 5 Jun 2017 11:35:47 +0000 (20:35 +0900)
committerkyuho.jo <kyuho.jo@samsung.com>
Wed, 7 Jun 2017 04:15:53 +0000 (13:15 +0900)
Change-Id: I3ed9fda3eeae5c633e90569f748c682ddd49c9fe
Signed-off-by: kyuho.jo <kyuho.jo@samsung.com>
12 files changed:
TVMediaHub/TVMediaHub.Tizen/DataModels/MediaInformationEx.cs
TVMediaHub/TVMediaHub.Tizen/Models/ContentProvider.cs
TVMediaHub/TVMediaHub.Tizen/Models/ImageProvider.cs
TVMediaHub/TVMediaHub.Tizen/Models/VideoProvider.cs
TVMediaHub/TVMediaHub.Tizen/TVMediaHub.Tizen.csproj
TVMediaHub/TVMediaHub.Tizen/Views/ImageItem.xaml
TVMediaHub/TVMediaHub.Tizen/Views/ImageItem.xaml.cs
TVMediaHub/TVMediaHub.Tizen/Views/VideoItem.xaml
TVMediaHub/TVMediaHub.Tizen/Views/VideoItem.xaml.cs
TVMediaHub/TVMediaHub.Tizen/res/img_gallery_unavailable_photo.png [new file with mode: 0644]
TVMediaHub/TVMediaHub.Tizen/res/img_gallery_unavailable_video.png [new file with mode: 0644]
TVMediaHub/TVMediaHub.Tizen/res/img_movie_unavailable.png [new file with mode: 0644]

index 223cd9c..92fe788 100644 (file)
@@ -20,7 +20,14 @@ namespace TVMediaHub.Tizen.DataModels
 {
     public class MediaInformationEx
     {
+        /// <summary>
+        /// The media content information
+        /// </summary>
         public MediaInformation MediaContentInformation;
-        public bool IsAvailable;
+
+        /// <summary>
+        /// An attribute of the availability of this media content
+        /// </summary>
+        public bool IsAvailable = true;
     };
 }
index 672cfd0..fee6c63 100755 (executable)
@@ -218,7 +218,6 @@ namespace TVMediaHub.Tizen.Models
                 {
                     result.Add(currentGroupItem);
                     lastGroupItem = currentGroupItem;
-                    DbgPort.D("new Group : " + currentGroupItem.Title);
                 }
 
                 if (currentGroupItem != null)
index 7a0cd72..1db692b 100755 (executable)
@@ -54,8 +54,9 @@ namespace TVMediaHub.Tizen.Models
                 // Check 1 : The size of the image file must be less than 4MB.
                 var fileInfo = new FileInfo(mediaContent.MediaContentInformation.FilePath);
 
-                if (fileInfo != null && fileInfo.Length > 4 * 1024 * 1024)
+                if (fileInfo != null && fileInfo.Length > 8 * 1024 * 1024)
                 {
+                    DbgPort.D(mediaContent.MediaContentInformation.DisplayName + ": This content is not available");
                     mediaContent.IsAvailable = false;
                 }
             }
index ed9ca1b..0bcb5e8 100755 (executable)
@@ -54,6 +54,7 @@ namespace TVMediaHub.Tizen.Models
             if (mediaContent.MediaContentInformation.IsDrm ||
                 mediaContent.MediaContentInformation.MimeType.Contains("ogg"))
             {
+                DbgPort.D(mediaContent.MediaContentInformation.DisplayName + " : This content is not available");
                 mediaContent.IsAvailable = false;
             }
         }
index b1cbfcd..b7aed71 100755 (executable)
     <Content Include="res\img_dimmed.9.png" />
     <Content Include="res\img_dimmed_opacity75.9.png" />
     <Content Include="res\img_dimmed_opacity85.9.png" />
+    <Content Include="res\img_gallery_unavailable_photo.png" />
+    <Content Include="res\img_gallery_unavailable_video.png" />
     <Content Include="res\img_gradient_topbottom.9.png" />
     <Content Include="res\img_media_no_contents.png" />
+    <Content Include="res\img_movie_unavailable.png" />
     <Content Include="res\img_photozoom_gradient.9.png" />
     <Content Include="res\img_stroke.9.png" />
     <Content Include="res\img_stroke2.9.png" />
index 1126cb2..1c056c3 100755 (executable)
@@ -20,6 +20,9 @@
         <Image x:Name="ContentImage"
                Source="{Binding ThumbnailPath}"/>
     </Views:CustomImageControl>
+    <Image x:Name="UnavailableIcon"
+         Source="img_gallery_unavailable_photo.png"
+         IsVisible="false"/>
     <Utils:NinePatch x:Name="ImgDimmed"
                      Source="img_thumbnail_gradient_normal.9.png"
                      IsVisible="False" />
index a3d7c88..08eb93e 100755 (executable)
@@ -316,6 +316,14 @@ namespace TVMediaHub.Tizen.Views
                     UpdateView();
                 }
             }
+            else if (e.PropertyName.CompareTo("SelectedImage") == 0)
+            {
+                if (SelectedImage.IsAvailable == false)
+                {
+                    ContentImage.IsVisible = false;
+                    UnavailableIcon.IsVisible = true;
+                }
+            }
         }
 
         /// <summary>
@@ -363,6 +371,13 @@ namespace TVMediaHub.Tizen.Views
                         ImgDimmed.LayoutTo(ImageAreaFocusedBounds, 500, easing);
                         ImgFocused.LayoutTo(ShadowFocusedBounds, 500, easing);
                         ContentImage.LayoutTo(ImageFocusedBounds, 500, easing);
+
+                        if (SelectedImage.IsAvailable == false)
+                        {
+                            UnavailableIcon.ScaleTo(1.3, 167, easing);
+                            UnavailableIcon.LayoutTo(ImageFocusedBounds, 500, easing);
+                        }
+
                         if (IsDeleteMode)
                         {
                             ImgCheckDimmed.LayoutTo(ImageAreaFocusedBounds, 500, easing);
@@ -387,6 +402,13 @@ namespace TVMediaHub.Tizen.Views
             ImgFocused.Opacity = 0.0;
             ContentImage.ScaleTo(1.0, 167, easing);
             ContentImage.LayoutTo(ImageBounds, 167, easing);
+
+            if (SelectedImage.IsAvailable == false)
+            {
+                UnavailableIcon.ScaleTo(1.0, 167, easing);
+                UnavailableIcon.Layout(ImageBounds);
+            }
+
             ImgFocused.LayoutTo(ShadowNormalBounds, 167, easing);
             ImgDimmed.LayoutTo(ImageAreaNormalBounds, 167, easing);
             if (IsDeleteMode)
@@ -416,6 +438,7 @@ namespace TVMediaHub.Tizen.Views
                 ImgDimmed.Layout(ImageBounds);
                 ImgCheckDimmed.Layout(ImageAreaNormalBounds);
                 ImgCheck.Layout(ImageAreaNormalBounds);
+                UnavailableIcon.Layout(ImageAreaNormalBounds);
                 IsLoaded = true;
             }
         }
index 1d934f6..95562da 100644 (file)
@@ -33,6 +33,9 @@
     <Image x:Name="PlayImage"
            Source="btn_list_thumbnail_play.png"
            Opacity="0"/>
+    <Image x:Name="UnavailableIcon"
+         Source="img_movie_unavailable.png"
+         IsVisible="false"/>
     <Utils:NinePatch x:Name="CheckDimImage"
                      VerticalOptions="CenterAndExpand"
                      HorizontalOptions="CenterAndExpand"
index 2318310..a8a0481 100755 (executable)
@@ -166,7 +166,7 @@ namespace TVMediaHub.Tizen.Views
         {
             InitializeComponent();
             InitializeSize();
-            PropertyChanged += VideoTabPropertyChanged;
+            PropertyChanged += VideoItemPropertyChanged;
         }
 
         /// <summary>
@@ -248,6 +248,7 @@ namespace TVMediaHub.Tizen.Views
                 PlayImage.Layout(PlayIconBounds);
                 CheckDimImage.Layout(NormalBounds);
                 CheckImage.Layout(NormalBounds);
+                UnavailableIcon.Layout(NormalBounds);
                 IsLoaded = true;
             }
         }
@@ -278,7 +279,12 @@ namespace TVMediaHub.Tizen.Views
             DimImage.LayoutTo(NormalBounds, 167, easing);
             ContentImage.LayoutTo(NormalContentImageBounds, 167, easing);
             BgDimImage.LayoutTo(NormalShadowBounds, 167, easing);
-            PlayImage.FadeTo(0.0, 167);
+
+            if (VideoInfo.IsAvailable)
+            {
+                PlayImage.FadeTo(0.0, 167);
+            }
+
             if (IsDeleteMode)
             {
                 CheckDimImage.LayoutTo(NormalBounds, 167, easing);
@@ -331,7 +337,12 @@ namespace TVMediaHub.Tizen.Views
                         DimImage.LayoutTo(FocusedBounds, 500, easing);
                         ContentImage.LayoutTo(FocusedContentImageBounds, 500, easing);
                         BgDimImage.LayoutTo(FocusedShadowBounds, 500, easing);
-                        PlayImage.FadeTo(0.99, 167);
+
+                        if (VideoInfo.IsAvailable)
+                        {
+                            PlayImage.FadeTo(0.99, 167);
+                        }
+
                         if (IsDeleteMode)
                         {
                             CheckDimImage.LayoutTo(FocusedBounds, 167, easing);
@@ -437,7 +448,7 @@ namespace TVMediaHub.Tizen.Views
         /// </summary>
         /// <param name="sender">The source of the event</param>
         /// <param name="e">A propertyChanged event argument</param>
-        private void VideoTabPropertyChanged(object sender, PropertyChangedEventArgs e)
+        private void VideoItemPropertyChanged(object sender, PropertyChangedEventArgs e)
         {
             if (e.PropertyName.CompareTo("IsDeleteMode") == 0)
             {
@@ -447,6 +458,15 @@ namespace TVMediaHub.Tizen.Views
                     UpdateView();
                 }
             }
+            else if (e.PropertyName.CompareTo("VideoInfo") == 0)
+            {
+                if (VideoInfo.IsAvailable == false)
+                {
+                    ContentImage.IsVisible = false;
+                    UnavailableIcon.IsVisible = true;
+                }
+            }
+
         }
 
         public void ShowContextPopup()
diff --git a/TVMediaHub/TVMediaHub.Tizen/res/img_gallery_unavailable_photo.png b/TVMediaHub/TVMediaHub.Tizen/res/img_gallery_unavailable_photo.png
new file mode 100644 (file)
index 0000000..e7a6f66
Binary files /dev/null and b/TVMediaHub/TVMediaHub.Tizen/res/img_gallery_unavailable_photo.png differ
diff --git a/TVMediaHub/TVMediaHub.Tizen/res/img_gallery_unavailable_video.png b/TVMediaHub/TVMediaHub.Tizen/res/img_gallery_unavailable_video.png
new file mode 100644 (file)
index 0000000..51497dd
Binary files /dev/null and b/TVMediaHub/TVMediaHub.Tizen/res/img_gallery_unavailable_video.png differ
diff --git a/TVMediaHub/TVMediaHub.Tizen/res/img_movie_unavailable.png b/TVMediaHub/TVMediaHub.Tizen/res/img_movie_unavailable.png
new file mode 100644 (file)
index 0000000..463709d
Binary files /dev/null and b/TVMediaHub/TVMediaHub.Tizen/res/img_movie_unavailable.png differ