1. Updated Tab with TabView 44/305944/6
authorAkshat Airan/Core S/W Group /SRI-Delhi/Engineer/Samsung Electronics <akshat.airan@samsung.com>
Wed, 14 Feb 2024 05:23:57 +0000 (10:53 +0530)
committerAkshat Airan/Core S/W Group /SRI-Delhi/Engineer/Samsung Electronics <akshat.airan@samsung.com>
Mon, 19 Feb 2024 08:38:42 +0000 (14:08 +0530)
2. Remove MultiResourceManager file
3. Added Multilanguage support

Change-Id: I39ed660f995b55b556437775f97a87960b0e907a
Signed-off-by: Akshat Airan/Core S/W Group /SRI-Delhi/Engineer/Samsung Electronics <akshat.airan@samsung.com>
22 files changed:
music-player/Common/MultiResourceManager.cs [deleted file]
music-player/MusicPlayer.cs
music-player/TextResources/Resources.Designer.cs
music-player/TextResources/Resources.en-US.resx
music-player/TextResources/Resources.ko-KR.resx
music-player/TextResources/Resources.resx
music-player/ViewModels/PlaylistViewModel.cs
music-player/Views/AlbumDetailView.cs
music-player/Views/AlbumView.cs
music-player/Views/ArtistDetailView.cs
music-player/Views/ArtistView.cs
music-player/Views/BaseView.cs
music-player/Views/PlayerView.cs
music-player/Views/PlaylistSelectorView.cs
music-player/Views/SearchView.cs
music-player/Views/SelectorView.cs
music-player/Views/TrackDetailView.cs
music-player/Views/TrackView.cs
music-player/Views/ViewManager.cs
music-player/res/themes/dark.xaml
music-player/res/themes/light.xaml
packaging/org.tizen.MusicPlayer-1.0.0.tpk

diff --git a/music-player/Common/MultiResourceManager.cs b/music-player/Common/MultiResourceManager.cs
deleted file mode 100644 (file)
index eee8e26..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-
-using System.Globalization;
-using System.Reflection;
-using System.Resources;
-
-namespace MusicPlayer.Common
-{
-    internal class MultiResourceManager : ResourceManager
-{
-        public MultiResourceManager(string baseName, Assembly assembly)
-            : base(baseName, assembly)
-        {
-        }
-
-        public override string GetString(string name)
-        {
-            return base.GetString(name)
-                ?? TextResources.Resources.ResourceManager.GetString(name);
-        }
-
-        public override string GetString(string name, CultureInfo culture)
-        {
-            return base.GetString(name, culture)
-                ?? TextResources.Resources.ResourceManager.GetString(name, culture);
-        }
-    }
-}
index 3da2f3b1d14218a4981d8c62955c66c909c4b790..5fdc80f90d67dd33767717fe2f86ab4cfaa3274d 100755 (executable)
@@ -67,8 +67,7 @@ namespace MusicPlayer
                     Tizen.Log.Debug(AppConstants.LogTag, "Setting Language failed" + e.Message);
                 }
             }
-
-            MultilingualResourceManager = new MultiResourceManager("music-player.TextResources.Resources", typeof(Resources).Assembly);
+            MultilingualResourceManager = TextResources.Resources.ResourceManager;
             Tizen.System.SystemSettings.LocaleLanguageChanged += (s, e) => SetLanguage();
             SetLanguage();
         }
index 987eddb069db3ae859a1a76db3867e46794ea56a..bf05458981fe77c16e488f1a84fe72e8541e4c4f 100644 (file)
@@ -60,15 +60,6 @@ namespace MusicPlayer.TextResources {
             }
         }
         
-        /// <summary>
-        ///   Looks up a localized string similar to Add to playlist.
-        /// </summary>
-        internal static string ADD_TO_PLAYLIST {
-            get {
-                return ResourceManager.GetString("ADD_TO_PLAYLIST", resourceCulture);
-            }
-        }
-        
         /// <summary>
         ///   Looks up a localized string similar to Add.
         /// </summary>
@@ -88,7 +79,16 @@ namespace MusicPlayer.TextResources {
         }
         
         /// <summary>
-        ///   Looks up a localized string similar to Albums.
+        ///   Looks up a localized string similar to Add to playlist.
+        /// </summary>
+        internal static string IDS_ADD_TO_PLAYLIST {
+            get {
+                return ResourceManager.GetString("IDS_ADD_TO_PLAYLIST", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to  Albums.
         /// </summary>
         internal static string IDS_ALBUMS {
             get {
@@ -97,7 +97,7 @@ namespace MusicPlayer.TextResources {
         }
         
         /// <summary>
-        ///   Looks up a localized string similar to Artists.
+        ///   Looks up a localized string similar to  Artists.
         /// </summary>
         internal static string IDS_ARTISTS {
             get {
@@ -150,6 +150,15 @@ namespace MusicPlayer.TextResources {
             }
         }
         
+        /// <summary>
+        ///   Looks up a localized string similar to Details.
+        /// </summary>
+        internal static string IDS_DETAILS {
+            get {
+                return ResourceManager.GetString("IDS_DETAILS", resourceCulture);
+            }
+        }
+        
         /// <summary>
         ///   Looks up a localized string similar to Enter Playlist Name.
         /// </summary>
@@ -195,6 +204,15 @@ namespace MusicPlayer.TextResources {
             }
         }
         
+        /// <summary>
+        ///   Looks up a localized string similar to Ok.
+        /// </summary>
+        internal static string IDS_OK {
+            get {
+                return ResourceManager.GetString("IDS_OK", resourceCulture);
+            }
+        }
+        
         /// <summary>
         ///   Looks up a localized string similar to Playlist name already in use..
         /// </summary>
@@ -205,7 +223,7 @@ namespace MusicPlayer.TextResources {
         }
         
         /// <summary>
-        ///   Looks up a localized string similar to Playlists.
+        ///   Looks up a localized string similar to  Playlists.
         /// </summary>
         internal static string IDS_PLAYLISTS {
             get {
@@ -240,6 +258,15 @@ namespace MusicPlayer.TextResources {
             }
         }
         
+        /// <summary>
+        ///   Looks up a localized string similar to Select All.
+        /// </summary>
+        internal static string IDS_SELECT_ALL {
+            get {
+                return ResourceManager.GetString("IDS_SELECT_ALL", resourceCulture);
+            }
+        }
+        
         /// <summary>
         ///   Looks up a localized string similar to Share.
         /// </summary>
@@ -250,11 +277,20 @@ namespace MusicPlayer.TextResources {
         }
         
         /// <summary>
-        ///   Looks up a localized string similar to Tracks.
+        ///   Looks up a localized string similar to This Track will be Deleted.
+        /// </summary>
+        internal static string IDS_THIS_TRACK_WILL_BE_DELETED {
+            get {
+                return ResourceManager.GetString("IDS_THIS_TRACK_WILL_BE_DELETED", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to  Tracks.
         /// </summary>
-        internal static string IDS_TRACK {
+        internal static string IDS_TRACKS {
             get {
-                return ResourceManager.GetString("IDS_TRACK", resourceCulture);
+                return ResourceManager.GetString("IDS_TRACKS", resourceCulture);
             }
         }
         
index 6ab452d92d5fc02b6f60265b72742c85f784c1f8..78249e7a340a0f1920b34d66a191ddf825d105c1 100644 (file)
   <resheader name="writer">
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
-  <data name="ADD_TO_PLAYLIST" xml:space="preserve">
-    <value>Add to playlist</value>
-  </data>
   <data name="IDS_ADD" xml:space="preserve">
     <value>Add</value>
   </data>
   <data name="IDS_ADD_PLAYLIST_NAME" xml:space="preserve">
     <value>Add playlist name</value>
   </data>
+  <data name="IDS_ADD_TO_PLAYLIST" xml:space="preserve">
+    <value>Add to playlist</value>
+  </data>
   <data name="IDS_ALBUMS" xml:space="preserve">
-    <value>Albums</value>
+    <value> Albums</value>
   </data>
   <data name="IDS_ARTISTS" xml:space="preserve">
-    <value>Artists</value>
+    <value> Artists</value>
   </data>
   <data name="IDS_CANCEL" xml:space="preserve">
     <value>Cancel</value>
   <data name="IDS_DELETE" xml:space="preserve">
     <value>Delete</value>
   </data>
+  <data name="IDS_DETAILS" xml:space="preserve">
+    <value>Details</value>
+  </data>
   <data name="IDS_ENTER_PLAYLIST_NAME" xml:space="preserve">
     <value>Enter Playlist Name</value>
   </data>
   <data name="IDS_NO_RESULT_FOUND" xml:space="preserve">
     <value>No results found</value>
   </data>
+  <data name="IDS_OK" xml:space="preserve">
+    <value>Ok</value>
+  </data>
   <data name="IDS_PLAYLISTS" xml:space="preserve">
-    <value>Playlists</value>
+    <value> Playlists</value>
   </data>
   <data name="IDS_PLAYLIST_NAME_USED" xml:space="preserve">
     <value>Playlist name already in use.</value>
   <data name="IDS_SEARCH_MUSIC" xml:space="preserve">
     <value>Search music</value>
   </data>
+  <data name="IDS_SELECT_ALL" xml:space="preserve">
+    <value>Select All</value>
+  </data>
   <data name="IDS_SHARE" xml:space="preserve">
     <value>Share</value>
   </data>
-  <data name="IDS_TRACK" xml:space="preserve">
-    <value>Tracks</value>
+  <data name="IDS_THIS_TRACK_WILL_BE_DELETED" xml:space="preserve">
+    <value>This track will be deleted</value>
+  </data>
+  <data name="IDS_TRACKS" xml:space="preserve">
+    <value> Tracks</value>
   </data>
   <data name="IDS_TYPE_HERE" xml:space="preserve">
     <value>Type Here</value>
index e16836b82d589868ec7b793aaf27b94868304fb2..9c281688af705113c8308e63d4daa7ce0c81c1da 100644 (file)
   <resheader name="writer">
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
-  <data name="ADD_TO_PLAYLIST" xml:space="preserve">
-    <value>재생 목록에 추가</value>
-  </data>
   <data name="IDS_ADD" xml:space="preserve">
     <value>더하다</value>
   </data>
   <data name="IDS_ADD_PLAYLIST_NAME" xml:space="preserve">
     <value>재생 목록 이름 추가</value>
   </data>
+  <data name="IDS_ADD_TO_PLAYLIST" xml:space="preserve">
+    <value>재생 목록에 추가</value>
+  </data>
   <data name="IDS_ALBUMS" xml:space="preserve">
-    <value>앨범</value>
+    <value> 앨범</value>
   </data>
   <data name="IDS_ARTISTS" xml:space="preserve">
-    <value>예술가</value>
+    <value> 예술가</value>
   </data>
   <data name="IDS_CANCEL" xml:space="preserve">
     <value>취소</value>
   <data name="IDS_DELETE" xml:space="preserve">
     <value>삭제하다</value>
   </data>
+  <data name="IDS_DETAILS" xml:space="preserve">
+    <value>세부 정보</value>
+  </data>
   <data name="IDS_ENTER_PLAYLIST_NAME" xml:space="preserve">
     <value>재생 목록 이름 입력</value>
   </data>
   <data name="IDS_NO_RESULT_FOUND" xml:space="preserve">
     <value>결과를 찾을 수 없습니다.</value>
   </data>
+  <data name="IDS_OK" xml:space="preserve">
+    <value>그래</value>
+  </data>
   <data name="IDS_PLAYLISTS" xml:space="preserve">
-    <value>재생 목록</value>
+    <value> 재생 목록</value>
   </data>
   <data name="IDS_PLAYLIST_NAME_USED" xml:space="preserve">
     <value>이미 사용 중인 재생 목록 이름입니다.</value>
   <data name="IDS_SEARCH_MUSIC" xml:space="preserve">
     <value>음악 검색</value>
   </data>
+  <data name="IDS_SELECT_ALL" xml:space="preserve">
+    <value>모두 선택</value>
+  </data>
   <data name="IDS_SHARE" xml:space="preserve">
     <value>공유</value>
   </data>
-  <data name="IDS_TRACK" xml:space="preserve">
-    <value>트랙</value>
+  <data name="IDS_THIS_TRACK_WILL_BE_DELETED" xml:space="preserve">
+    <value>이 트랙은 삭제됩니다.</value>
+  </data>
+  <data name="IDS_TRACKS" xml:space="preserve">
+    <value> 트랙</value>
   </data>
   <data name="IDS_TYPE_HERE" xml:space="preserve">
     <value>여기에 입력하십시오</value>
index 6ab452d92d5fc02b6f60265b72742c85f784c1f8..326b1bbddc305e3ab236eaec50c747c947548d8d 100644 (file)
   <resheader name="writer">
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
-  <data name="ADD_TO_PLAYLIST" xml:space="preserve">
-    <value>Add to playlist</value>
-  </data>
   <data name="IDS_ADD" xml:space="preserve">
     <value>Add</value>
   </data>
   <data name="IDS_ADD_PLAYLIST_NAME" xml:space="preserve">
     <value>Add playlist name</value>
   </data>
+  <data name="IDS_ADD_TO_PLAYLIST" xml:space="preserve">
+    <value>Add to playlist</value>
+  </data>
   <data name="IDS_ALBUMS" xml:space="preserve">
-    <value>Albums</value>
+    <value> Albums</value>
   </data>
   <data name="IDS_ARTISTS" xml:space="preserve">
-    <value>Artists</value>
+    <value> Artists</value>
   </data>
   <data name="IDS_CANCEL" xml:space="preserve">
     <value>Cancel</value>
   <data name="IDS_DELETE" xml:space="preserve">
     <value>Delete</value>
   </data>
+  <data name="IDS_DETAILS" xml:space="preserve">
+    <value>Details</value>
+  </data>
   <data name="IDS_ENTER_PLAYLIST_NAME" xml:space="preserve">
     <value>Enter Playlist Name</value>
   </data>
   <data name="IDS_NO_RESULT_FOUND" xml:space="preserve">
     <value>No results found</value>
   </data>
+  <data name="IDS_OK" xml:space="preserve">
+    <value>Ok</value>
+  </data>
   <data name="IDS_PLAYLISTS" xml:space="preserve">
-    <value>Playlists</value>
+    <value> Playlists</value>
   </data>
   <data name="IDS_PLAYLIST_NAME_USED" xml:space="preserve">
     <value>Playlist name already in use.</value>
   <data name="IDS_SEARCH_MUSIC" xml:space="preserve">
     <value>Search music</value>
   </data>
+  <data name="IDS_SELECT_ALL" xml:space="preserve">
+    <value>Select All</value>
+  </data>
   <data name="IDS_SHARE" xml:space="preserve">
     <value>Share</value>
   </data>
-  <data name="IDS_TRACK" xml:space="preserve">
-    <value>Tracks</value>
+  <data name="IDS_THIS_TRACK_WILL_BE_DELETED" xml:space="preserve">
+    <value>This Track will be Deleted</value>
+  </data>
+  <data name="IDS_TRACKS" xml:space="preserve">
+    <value> Tracks</value>
   </data>
   <data name="IDS_TYPE_HERE" xml:space="preserve">
     <value>Type Here</value>
index 63ccfbcfd20bc227c3877432453c33f3cde32841..b6c7a9ece38e517e4bb3c707f5c004c1805c947c 100755 (executable)
@@ -44,6 +44,7 @@ namespace MusicPlayer.ViewModels
             return false;
         }
 
+
         private string playlistCount;
 
         public string PlaylistCount
@@ -51,8 +52,8 @@ namespace MusicPlayer.ViewModels
             get => playlistCount;
             set
             {
-                string countText = string.Equals(value, "1") ? value + " Playlist" : value + " Playlists";
-                SetProperty(ref playlistCount, countText);
+                string text = string.Equals(value, "1") ? " playlist" : " playlists";
+                SetProperty(ref playlistCount, value + text);
             }
         }
 
index 304e1bb82391a4d5687e3402f8bdabb997e13868..a4961519a3408f54f3ae1fee59e2bf6564c44b66 100755 (executable)
@@ -52,13 +52,13 @@ namespace MusicPlayer.Views
 \r
         public override void UpdateSubContentMoreButtonItems(Menu moreMenu)\r
         {\r
-            var addtoPlaylist = new MenuItem("MenuItems") { Text = "Add to playlist" };\r
+            var addtoPlaylist = new MenuItem("MenuItems") { TranslatableText = "IDS_ADD_TO_PLAYLIST" };\r
             addtoPlaylist.Clicked += OnAddToPlaylistClick;\r
 \r
-            var share = new MenuItem("MenuItems") { Text = "Share" };\r
+            var share = new MenuItem("MenuItems") { TranslatableText = "IDS_SHARE" };\r
             share.Clicked += OnShareClick;\r
 \r
-            var delete = new MenuItem("MenuItems") { Text = "Delete" };\r
+            var delete = new MenuItem("MenuItems") { TranslatableText = "IDS_DELETE" };\r
             delete.Clicked += OnDeleteClick;\r
 \r
             moreMenu.Items = new MenuItem[] { addtoPlaylist, share, delete };\r
index 349f361b4a702c31d60affd7ff2c8189c50ae2c4..bee0dd605e9b2d663ae389f765375644ffa6b875 100755 (executable)
@@ -91,9 +91,9 @@ namespace MusicPlayer.Views
         {\r
             if (isTrackListEmpty == false)\r
             {\r
-                var addToPlaylist = new MenuItem("MenuItems") { Text = "Add to Playlist" };\r
+                var addToPlaylist = new MenuItem("MenuItems") { TranslatableText = "IDS_ADD_TO_PLAYLIST" };\r
                 addToPlaylist.Clicked += OnAddToPlaylistClick;\r
-                var delete = new MenuItem("MenuItems") { Text = "Delete" };\r
+                var delete = new MenuItem("MenuItems") { TranslatableText = "IDS_DELETE" };\r
                 delete.Clicked += OnDeleteClick;\r
 \r
                 moreMenu.Items = new MenuItem[] { addToPlaylist, delete };\r
index 6c9ecb3420f8ef9945abd1a9a257b87b03317c0a..16554e8c2cbd03b960cc17f70398f2c35f079391 100755 (executable)
@@ -29,13 +29,13 @@ namespace MusicPlayer.Views
 
         public override void UpdateSubContentMoreButtonItems(Menu moreMenu)
         {
-            var addtoPlaylist = new MenuItem("MenuItems") { Text = "Add to playlist" };
+            var addtoPlaylist = new MenuItem("MenuItems") { TranslatableText = "IDS_ADD_TO_PLAYLIST" };
             addtoPlaylist.Clicked += OnAddToPlaylistClick;
 
-            var share = new MenuItem("MenuItems") { Text = "Share" };
+            var share = new MenuItem("MenuItems") { TranslatableText = "IDS_SHARE" };
             share.Clicked += OnShareClick;
 
-            var delete = new MenuItem("MenuItems") { Text = "Delete" };
+            var delete = new MenuItem("MenuItems") { TranslatableText = "IDS_DELETE" };
             delete.Clicked += OnDeleteClick;
 
             moreMenu.Items = new MenuItem[] { addtoPlaylist, share, delete };
index 5d9135b6564935c228b4f6e1ba19c85c374a7210..2b0c1c5469a65a8c6906bce255594f4249b69c0f 100755 (executable)
@@ -78,9 +78,9 @@ namespace MusicPlayer.Views
         {
             if (isTrackListEmpty == false)
             {
-                var addToPlaylist = new MenuItem("MenuItems") { Text = "Add to Playlist" };
+                var addToPlaylist = new MenuItem("MenuItems") { TranslatableText = "IDS_ADD_TO_PLAYLIST" };
                 addToPlaylist.Clicked += OnAddToPlaylistClick;
-                var delete = new MenuItem("MenuItems") { Text = "Delete" };
+                var delete = new MenuItem("MenuItems") { TranslatableText = "IDS_DELETE" };
                 delete.Clicked += OnDeleteClick;
 
                 moreMenu.Items = new MenuItem[] { addToPlaylist, delete };
index 8cb1db03f8306a34032faf74ec0859bdb9dcc6e2..f0b1d32e1677014e5d6c604be30c53c229eda4f7 100755 (executable)
@@ -15,21 +15,17 @@ namespace MusicPlayer.Views
         private Button backButton;
         private Button moreButton;
         private Button searchButton;
-        private Tab tabs;
+        private TabView tabs;
         private BaseContentView baseContentView;
 
         //  TODO these name strings are temporary...once the po files are added
         // need to use Translatable names.
         private static readonly string[] TabNames = new string[]
         {
-            "Playlists",
-            "Tracks",
-            "Albums",
-            "Artists",
-            //"IDS_PLAYLIST",
-            //"IDS_TRACK",
-            //"IDS_ALBUMS",
-            //"IDS_ARTISTS",
+           "IDS_PLAYLISTS",
+            "IDS_TRACKS",
+            "IDS_ALBUMS",
+            "IDS_ARTISTS",
         };
         public BaseView() : base()
         {
@@ -67,7 +63,7 @@ namespace MusicPlayer.Views
                 FontStyle = UIFontStyles.NormalLight,
             };
             topView.Add(titleLabel);
-            titleLabel.SetBinding(TextLabel.TranslatableTextProperty, "Title");
+            titleLabel.SetBinding(TextLabel.TextProperty, "Title");
             RelativeLayout.SetLeftTarget(titleLabel, topView);
             RelativeLayout.SetLeftRelativeOffset(titleLabel, 0.0f);
             RelativeLayout.SetRightTarget(titleLabel, topView);
@@ -84,21 +80,28 @@ namespace MusicPlayer.Views
             FlexLayout.SetFlexGrow(contentView, 1);
             FlexLayout.SetFlexShrink(contentView, 1);
 
-            tabs = new Tab("Tabs")
+            tabs = new TabView()
             {
                 ThemeChangeSensitive = true,
                 Size2D = new Size2D(Window.Instance.Size.Width, 84).SpToPx(),
                 WidthSpecification = LayoutParamPolicies.MatchParent,
                 HeightSpecification = 84.SpToPx(),
             };
+
+            tabs.TabBar.Margin = new Extents(0, 0, 0, 0);
             base.Add(tabs);
+
             for(int i = 0; i<4; ++i)
             {
-                Tab.TabItemData item = new Tab.TabItemData()
+                var button = new TabButton("Tabs")
                 {
-                    Text = TabNames[i],
+                    Text = " ",
+                    HeightSpecification = 84.SpToPx(),
+
                 };
-                tabs.AddItem(item);
+                button.TranslatableText = TabNames[i];
+                var content = new View();
+                tabs.AddTab(button,content);
             }
 
             backButton = null;
@@ -106,15 +109,15 @@ namespace MusicPlayer.Views
             searchButton = null;
         }
 
-        public Tab Tabs
+        public TabView Tabs
         {
             get => tabs;
         }
 
         public string Title
         {
-            get => titleLabel.TranslatableText;
-            set { titleLabel.TranslatableText = value;}
+            get => titleLabel.Text;
+            set { titleLabel.Text = value;}
         }
 
         public bool BackButton
@@ -226,7 +229,7 @@ namespace MusicPlayer.Views
             else
             {
                 BackButton = false;
-                Title = "IDS_MUSIC";
+                Title = "Music";
             }
             contentView.Add(view);
             baseContentView = view;
@@ -302,7 +305,7 @@ namespace MusicPlayer.Views
             if (baseContentView != null)
             {
                 BackButton = false;
-                Title = "IDS_Music";
+                Title = "Music";
                 baseContentView.RemoveSubContentView();
             }
         }
index bf8db5c7a6c9e0da0f0a2de4ec6a6286f69dc287..7815942e6baaf62159fee8deb6429276bd23523b 100755 (executable)
@@ -287,21 +287,21 @@ namespace MusicPlayer.Views
         private void OnMoreButtonClicked(object sender, ClickedEventArgs e)
         {
             Menu moreMenu = CreateMenu();
-            var share = new MenuItem("MenuItems") { Text = "Share" };
+            var share = new MenuItem("MenuItems") { TranslatableText = "IDS_SHARE" };
             share.Clicked += (object o, ClickedEventArgs e) =>
             {
                 moreMenu?.Dismiss();
                 viewModel.OnCurrentTrackShare();
             };
 
-            var delete = new MenuItem("MenuItems") { Text = "Delete" };
+            var delete = new MenuItem("MenuItems") { TranslatableText = "IDS_DELETE" };
             delete.Clicked += (object o, ClickedEventArgs e) =>
             {
                 moreMenu?.Dismiss();
                 OnDeleteClicked();
             };
 
-            var details = new MenuItem("MenuItems") { Text = "Details" };
+            var details = new MenuItem("MenuItems") { TranslatableText = "IDS_DETAILS" };
             details.Clicked += (object o, ClickedEventArgs e) =>
             {
                 moreMenu?.Dismiss();
@@ -331,7 +331,7 @@ namespace MusicPlayer.Views
                 PixelSize = 32.SpToPx(),
                 FontFamily = "BreezeSans",
                 FontStyle = UIFontStyles.AllNormal,
-                Text = "Delete",
+                TranslatableText = "IDS_DELETE",
                 HorizontalAlignment = HorizontalAlignment.Center,
                 VerticalAlignment = VerticalAlignment.Center,
             };
@@ -349,7 +349,7 @@ namespace MusicPlayer.Views
                 PixelSize = 32.SpToPx(),
                 FontFamily = "BreezeSans",
                 FontStyle = UIFontStyles.NormalLight,
-                Text = "This track will be deleted.",
+                TranslatableText = "IDS_THIS_TRACK_WILL_BE_DELETED",
                 HorizontalAlignment = HorizontalAlignment.Center,
                 VerticalAlignment = VerticalAlignment.Center,
                 Margin = new Extents(0, 0, 32, 64).SpToPx(),
@@ -386,7 +386,7 @@ namespace MusicPlayer.Views
             {
                 WidthSpecification = 336.SpToPx(),
                 HeightSpecification = 96.SpToPx(),
-                Text = "Delete",
+                TranslatableText = "IDS_DELETE",
                 PointSize = 16.SpToPx(),
             };
             buttonArea.Add(deleteButton);
index 609f1074382272e96bece3c0a84f545e279612c7..941a485c1884b52e142a6b01c1cd3a15ac2213c9 100755 (executable)
@@ -173,7 +173,7 @@ namespace MusicPlayer.Views
                     HorizontalAlignment = HorizontalAlignment.Begin,
                     VerticalAlignment = VerticalAlignment.Top,
                 },
-                TitleContent = CreateAlertDialogTitle("Create playlist"),
+                TitleContent = CreateAlertDialogTitle("IDS_CREATE_PLAYLIST"),
                 Content = createPlaylistContentArea,
                 ActionContent = createPlaylistButtonArea,
             };
index ff9fe6dac4c18db0871afd9f834ed0e7c5bbec8d..3eec956caecd90818175c1d01f286eb853da3074 100755 (executable)
@@ -107,7 +107,7 @@ namespace MusicPlayer.Views
                 TranslatableText = "IDS_SEARCH",
                 PixelSize = 36.SpToPx(),
                 FontFamily = "BreezeSans",
-                Margin = new Extents(0, 32, 0, 0).SpToPx(),
+                Margin = new Extents(0, 32, 40, 0).SpToPx(),
                 VerticalAlignment = VerticalAlignment.Center,
                 HorizontalAlignment = HorizontalAlignment.Begin,
                 FontStyle = UIFontStyles.NormalLight,
@@ -218,7 +218,7 @@ namespace MusicPlayer.Views
                 {
                     ListItemLayout layout = new ListItemLayout();
                     layout.Icon.SetBinding(ImageView.ResourceUrlProperty, "Thumbnail");
-                    layout.TitleLabel.SetBinding(TextLabel.TranslatableTextProperty, "Title");
+                    layout.TitleLabel.SetBinding(TextLabel.TextProperty, "Title");
                     layout.SubtitleLabel.SetBinding(TextLabel.TextProperty, "SubTitle");
                     return layout;
                 }),
index 9490651385f6d678e85b762850af7d6b05894c0a..f6e89b55c678635e5e840b364e819e819c13a63d 100755 (executable)
@@ -240,7 +240,7 @@ namespace MusicPlayer.Views
             TextLabel selAll = new TextLabel()
             {
                 StyleName ="LabelText",
-                Text = "Select All",
+                TranslatableText = "IDS_SELECT_ALL",
                 HeightSpecification = 48.SpToPx(),
                 PixelSize = 32.SpToPx(),
                 FontFamily = "BreezeSans",
index f1e5a30a44099b7d375d501e36563f53809623ad..e89bce700e992fe13b49290b4fb5d5dbd8ade101 100755 (executable)
@@ -148,7 +148,7 @@ namespace MusicPlayer.Views
                 PixelSize = 40.SpToPx(),
                 FontFamily = "BreezeSans",
                 FontStyle = UIFontStyles.AllNormal,
-                Text = "Details",
+                TranslatableText = "IDS_DETAILS",
             };
             navigationContent.Add(titleLabel);
             return navigationContent;
index 23b893d4356247a12a014d0e77c76ba14cb7e73c..27b6a5f7a47e6a3eb8060ef95ef6210302891fee 100755 (executable)
@@ -136,11 +136,11 @@ namespace MusicPlayer.Views
         {\r
             if (isTrackListEmpty == false)\r
             {\r
-                var addToPlaylist = new MenuItem("MenuItems") { Text = "Add to Playlist" };\r
+                var addToPlaylist = new MenuItem("MenuItems") { TranslatableText = "IDS_ADD_TO_PLAYLIST" };\r
                 addToPlaylist.Clicked += OnAddToPlaylistClick;\r
-                var share = new MenuItem("MenuItems") { Text = "Share" };\r
+                var share = new MenuItem("MenuItems") { TranslatableText = "IDS_SHARE" };\r
                 share.Clicked += OnShareClick;\r
-                var delete = new MenuItem("MenuItems") { Text = "Delete" };\r
+                var delete = new MenuItem("MenuItems") { TranslatableText = "IDS_DELETE" };\r
                 delete.Clicked += OnDeleteClick;\r
 \r
                 moreMenu.Items = new MenuItem[] { addToPlaylist, share, delete };\r
index c75df945a068f849db34e0af2d85b0a876ac0d97..73772ea2fd1bf19c54555d82edff3cde45a740b0 100755 (executable)
@@ -14,7 +14,9 @@ namespace MusicPlayer.Views
     {
         private readonly ViewLibrary viewLibrary;
         private View rootView;
-        private BaseView baseView;      
+
+        private BaseView baseView;
+        private int previousIndex = -1;
         private static readonly  string[] TabNames = new string[]
         {
             "Playlists",
@@ -85,7 +87,7 @@ namespace MusicPlayer.Views
             rootView = new View()
             {
                 StyleName = "AppBackground",
-                Size = new Size(win.Size),               
+                Size = new Size(win.Size),
                 ThemeChangeSensitive = true,
                 Layout = new FlexLayout()
                 {
@@ -113,20 +115,31 @@ namespace MusicPlayer.Views
         {
             baseView = new BaseView()
             {
-                Title = "IDS_MUSIC",
+                Title = "Music",
                 MoreButton = true,
                 SearchButton = true,
             };
             rootview.Add(baseView);
             FlexLayout.SetFlexGrow(baseView, 1);
             FlexLayout.SetFlexShrink(baseView, 1);
-            baseView.Tabs.SelectedItemIndex = (int)ContentViewType.Playlist;
-            baseView.Tabs.ItemChangedEvent += OnTabItemSelect;
+            baseView.Tabs.TabBar.TabButtonSelected += OnTabButtonSelected;
             baseView.GetSearchButton().Clicked += OnSearchIconClicked;
             SetTabItem(-1, (int)ContentViewType.Playlist);
             PlaybackHelper.Instance.AddMiniPlayer += OnMiniPlayerAdd;
         }
 
+        private void OnTabButtonSelected(object sender, TabButtonSelectedEventArgs e)
+        {
+            Tizen.Log.Debug(AppConstants.LogTag, "Tab Item selected: " + TabNames[e.Index]);
+            Tizen.Log.Debug(AppConstants.LogTag, "Tab Item selected: " + "Prev Index: " + previousIndex + ", Curr Index" + e.Index);
+            if (previousIndex == e.Index)
+            {
+                return;
+            }
+            SetTabItem(previousIndex, e.Index);
+            previousIndex = e.Index;
+        }
+
         private void OnMiniPlayerAdd(object sender, EventArgs e)
         {
             PlaybackHelper.Instance.ShowMiniPlayer(rootView);
@@ -181,16 +194,5 @@ namespace MusicPlayer.Views
                 Tizen.Log.Error(AppConstants.LogTag, "Adding " + currentContentView?.Name);
             }
         }
-
-        private void OnTabItemSelect(object sender, Tab.ItemChangedEventArgs e)
-        {
-            Tizen.Log.Debug(AppConstants.LogTag, "Tab Item selected: " + TabNames[e.CurrentIndex]);
-            Tizen.Log.Debug(AppConstants.LogTag, "Tab Item selected: " + "Prev Index: "+e.PreviousIndex+", Curr Index"+e.CurrentIndex);
-            if(e.PreviousIndex == e.CurrentIndex)
-            {
-                return;
-            }
-            SetTabItem(e.PreviousIndex, e.CurrentIndex);
-        }
     }
 }
index aadc82bc51b3de50a14eeaf52305dd7ea118f4f6..7aec85b1b704ec4cb5f0fe2f1509744974f7fec2 100755 (executable)
@@ -230,14 +230,14 @@ Id="DarkTheme">
     </c:ButtonStyle.Icon>
   </c:ButtonStyle>
 
-  <c:TabStyle x:Key="Tabs" BackgroundColor="#000209">
-    <c:TabStyle.Text>
+  <c:TabButtonStyle x:Key="Tabs" BackgroundColor="#000209">
+    <c:TabButtonStyle.Text>
       <TextLabelStyle TextColor="#FFFFFF" ThemeChangeSensitive="true" FontFamily="BreezeSans" PixelSize="24sp"/>
-    </c:TabStyle.Text>
-    <c:TabStyle.UnderLine>
+    </c:TabButtonStyle.Text>
+    <!--<c:TabButtonStyle.UnderLine>
       <ViewStyle BackgroundColor="#FFFFFF" SizeHeight="8sp"/>
-    </c:TabStyle.UnderLine>
-  </c:TabStyle>
+    </c:TabButtonStyle.UnderLine>-->
+  </c:TabButtonStyle>
 
   <c:ButtonStyle x:Key="SearchButton" Size="96sp, 60sp" IsSelectable="false" IsEnabled="true" BackgroundImage="*Resource*/images/dark/search_button_bg.png">
     <c:ButtonStyle.Icon>
index f4ef63c9c869b495e5a4fe2c81cb3df2c627f2e6..7125659a78d646d232913fce97eba81a10c4d93f 100755 (executable)
@@ -230,14 +230,14 @@ Id="LightTheme">
     </c:ButtonStyle.Icon>
   </c:ButtonStyle>
 
-  <c:TabStyle x:Key="Tabs" BackgroundColor="White">
-    <c:TabStyle.Text>
+  <c:TabButtonStyle x:Key="Tabs" BackgroundColor="White">
+    <c:TabButtonStyle.Text>
       <TextLabelStyle TextColor="#000C2B" ThemeChangeSensitive="true" FontFamily="BreezeSans" PixelSize="24sp"/>
-    </c:TabStyle.Text>
-    <c:TabStyle.UnderLine>
+    </c:TabButtonStyle.Text>
+    <!--<c:TabButtonStyle.UnderLine>
       <ViewStyle BackgroundColor="#0A0E4A" SizeHeight="8sp"/>
-    </c:TabStyle.UnderLine>
-  </c:TabStyle>
+    </c:TabButtonStyle.UnderLine>-->
+  </c:TabButtonStyle>
 
   <c:ButtonStyle x:Key="SearchButton" Size="96sp, 60sp" IsSelectable="false" IsEnabled="true" BackgroundImage="*Resource*/images/light/search_button_bg.png">
     <c:ButtonStyle.Icon>
index 246a10d12708e786245806ab63e3922e51fae392..1d986b40d526313867399b481343027532ffd8c7 100755 (executable)
Binary files a/packaging/org.tizen.MusicPlayer-1.0.0.tpk and b/packaging/org.tizen.MusicPlayer-1.0.0.tpk differ