Updating taskbar UI as per new UX. 12/302712/2 accepted/tizen/unified/20231214.164936 accepted/tizen/unified/riscv/20231220.131730
authorShivam Varshney/Core S/W Group /SRI-Delhi/Engineer/Samsung Electronics <shivam.v2@samsung.com>
Tue, 12 Dec 2023 10:24:22 +0000 (15:54 +0530)
committerShivam Varshney/Core S/W Group /SRI-Delhi/Engineer/Samsung Electronics <shivam.v2@samsung.com>
Wed, 13 Dec 2023 08:43:02 +0000 (14:13 +0530)
Fixing JIRA Issues -> [5543], [5544], [5545], [5546], [5547]

Change-Id: Id6916a4ac009295b8c85fb1c76837b76cc5e5a78
Signed-off-by: Shivam Varshney/Core S/W Group /SRI-Delhi/Engineer/Samsung Electronics <shivam.v2@samsung.com>
TaskBar/Common/Resources.cs
TaskBar/Models/AppInfoModel.cs
TaskBar/ViewModels/ApplicationsViewModel.cs
TaskBar/Views/AppItemView.cs
TaskBar/Views/ApplicationsView.cs [deleted file]
TaskBar/Views/BaseView.cs
TaskBar/Views/CustomMenu.cs
TaskBar/Views/MainView.cs
TaskBar/Views/QuickAccessView.cs [deleted file]
TaskBar/Views/UninstallConfirmationView.cs
packaging/org.tizen.taskbar-1.0.0.tpk

index acf0d201dbd9cbf3610e21ff9e5283a3e8a9809f..2ceb49f1d51496f83786aef238e802c74bebcbe0 100644 (file)
@@ -26,16 +26,14 @@ namespace TaskBar.Common
         private static bool IsLightTheme => ThemeManager.PlatformThemeId == LightPlatformThemeId;
 
         public static Color TaskbarBackgroundColor => IsLightTheme ? new Color("rgba(255, 254, 254, 0.3)") : new Color("rgba(22, 19, 26, 0.3)");
+        public static Color DisabledTaskbarBackgroundColor => IsLightTheme ? new Color("rgba(255, 254, 254, 0.15)") : new Color("rgba(22, 19, 26, 0.15)");
         public static Color MenuBackgroundColor => IsLightTheme ? new Color("rgba(250, 250, 250, 0.5)") : new Color("rgba(22, 19, 26, 0.5)");
         public static Color PopupBackgroundColor => IsLightTheme ? new Color("#FAFAFA") : new Color("#16131A");
         public static Color TaskbarTextColor => IsLightTheme ? new Color("#090E21") : new Color("#FDFDFD");
         public static Color FillButtonTextColor => IsLightTheme ? new Color("#16131A") : new Color("#FDFDFD");
         public static Color FillButtonColor => IsLightTheme ? new Color("#FF6200") : new Color("#FF8A00");
-        public static Color DisabledButtonTextColor => IsLightTheme ? new Color("#CACACA") : new Color("#666666");
-        public static Color NormalButtonTextColor => IsLightTheme ? new Color("#FF6200") : new Color("#FF8A00");
-        public static Color PressedButtonTextColor => IsLightTheme ? new Color("#FFA166") : new Color("#CC6E00");
         public static Color NormalMenuItemTextColor => IsLightTheme ? new Color("#090E21") : new Color("#FDFDFD");
-        public static Color PressedMenuItemTextColor => new Color("#1473E6");
+        public static Color PressedMenuItemTextColor => new Color("#FF6200");
         public static Color UninstallMenuItemTextColor => new Color("#A40404");
         public static Color DisabledMenuItemTextColor => IsLightTheme ? new Color("#CACACA") : new Color("#666666");
 
@@ -50,12 +48,9 @@ namespace TaskBar.Common
         public const int SingleItemCornerRadius = 8;
         public const int ButtonBorderlineWidth = 2;
 
+        public static Size2D MinimumMenuSize = new Size2D(220, 44);
         public static Size2D PopupButtonSize = new Size2D(252, 48);
         public static Size2D IndicatorSize = new Size2D(20, 4);
-        public static Size2D MenuItemSize = new Size2D(220, 44);
-
-        public static readonly Vector4 TopItemCornerRadius = new Vector4(8, 8, 0, 0);
-        public static readonly Vector4 BottomItemCornerRadius = new Vector4(0, 0, 8, 8);
 
         public static string GetImagePath()
         {
index f700caa5db10995a234aede60274a77be5f3a7d5..c5aec1cd49ebce4ea108cbf49bf815bc865a1a42 100644 (file)
@@ -17,7 +17,6 @@
 using System;
 using System.Collections.Generic;
 using System.Windows.Input;
-using Tizen.NUI;
 using Tizen.NUI.Binding;
 using TaskBar.Common;
 using TaskBar.Core;
@@ -26,9 +25,6 @@ namespace TaskBar.Models
 {
     class AppInfoModel : PropertyNotifier
     {
-        private ImageVisual defaultVisual;
-        private GradientVisual gradientVisual;
-
         public event Action PinAppClicked;
         public event Action UnpinAppClicked;
         public event Action UninstallAppClicked;
@@ -77,13 +73,6 @@ namespace TaskBar.Models
             set => SetProperty(ref isRunning, value);
         }
 
-        private PropertyMap iconBackground;
-        public PropertyMap IconBackground
-        {
-            get => iconBackground;
-            set => SetProperty(ref iconBackground, value);
-        }
-
         private ICommand appSelectCommand;
         public ICommand AppSelectCommand
         {
@@ -146,106 +135,6 @@ namespace TaskBar.Models
             }
         }
 
-        private void SetDefaultImageVisual()
-        {
-            defaultVisual = new ImageVisual()
-            {
-                URL = Resources.GetImagePath() + "default_gradient.png",
-                CornerRadius = new Vector4(12, 12, 12, 12),
-            };
-        }
-
-        private void SetGradientVisual(PropertyArray stopColor)
-        {
-            gradientVisual = new GradientVisual()
-            {
-                StartPosition = new Vector2(0.0f, -1.0f),
-                EndPosition = new Vector2(0.0f, 1.0f),
-                StopColor = stopColor,
-                SpreadMethod = GradientVisualSpreadMethodType.Pad,
-                CornerRadius = new Vector4(12, 12, 12, 12),
-            };
-        }
-
-        private PropertyArray GetGradientStopColors(Palette palette)
-        {
-            PropertyArray propertyArray = new PropertyArray();
-            if (palette == null)
-            {
-                Tizen.Log.Error(Resources.LogTag, "Color palette from background is null");
-                return propertyArray;
-            }
-
-            Palette.Swatch lightMutedSwatch = palette.GetLightMutedSwatch();
-            Palette.Swatch darkMutedSwatch = palette.GetDarkMutedSwatch();
-            if (lightMutedSwatch != null && darkMutedSwatch != null)
-            {
-                propertyArray.PushBack(new PropertyValue(lightMutedSwatch.GetRgb()));
-                propertyArray.PushBack(new PropertyValue(darkMutedSwatch.GetRgb()));
-                return propertyArray;
-            }
-
-            Palette.Swatch lightVibrantSwatch = palette.GetLightVibrantSwatch();
-            Palette.Swatch darkVibrantSwatch = palette.GetDarkVibrantSwatch();
-            if (lightVibrantSwatch != null && darkVibrantSwatch != null)
-            {
-                propertyArray.PushBack(new PropertyValue(lightVibrantSwatch.GetRgb()));
-                propertyArray.PushBack(new PropertyValue(darkVibrantSwatch.GetRgb()));
-                return propertyArray;
-            }
-
-            Palette.Swatch mutedSwatch = palette.GetMutedSwatch();
-            Palette.Swatch vibrantSwatch = palette.GetVibrantSwatch();
-            if (mutedSwatch != null && vibrantSwatch != null)
-            {
-                propertyArray.PushBack(new PropertyValue(mutedSwatch.GetRgb()));
-                propertyArray.PushBack(new PropertyValue(vibrantSwatch.GetRgb()));
-                return propertyArray;
-            }
-
-            IReadOnlyCollection<Palette.Swatch> swatches = palette.GetSwatches();
-            foreach (Palette.Swatch swatch in swatches)
-            {
-                if (propertyArray.Count() >= 2)
-                {
-                    return propertyArray;
-                }
-                if (swatch != null)
-                {
-                    propertyArray.PushBack(new PropertyValue(swatch.GetRgb()));
-                }
-            }
-            return propertyArray;
-        }
-
-        public void SetExtractedBackground(string path)
-        {
-            Tizen.Log.Debug(Resources.LogTag, "Path for the color image thumbnail" + path);
-            PixelBuffer pixelBuffer = ImageLoader.LoadImageFromFile(path);
-            Palette palette = null;
-            try
-            {
-                palette = Palette.Generate(pixelBuffer);
-            }
-            catch (ArgumentNullException e)
-            {
-                Tizen.Log.Error(Resources.LogTag, "ArgumentNullException: " + e.Message);
-            }
-            PropertyArray stopColor = GetGradientStopColors(palette);
-            if (stopColor.Count() < 2)
-            {
-                Tizen.Log.Info(Resources.LogTag, "Palette or palatte values not valid, adding default gradient");
-                SetDefaultImageVisual();
-                IconBackground = defaultVisual.OutputVisualMap;
-            }
-            else
-            {
-                Tizen.Log.Info(Resources.LogTag, "setting palette color");
-                SetGradientVisual(stopColor);
-                IconBackground = gradientVisual.OutputVisualMap;
-            }
-        }
-
         public void CreateUserApplicationsMoreMenu()
         {
             List<string> menuItems = new List<string>
@@ -257,13 +146,6 @@ namespace TaskBar.Models
 
         ~AppInfoModel()
         {
-            Tizen.Log.Info(Resources.LogTag, "Clearing NUI PropertyMap resources");
-            defaultVisual?.Dispose();
-            defaultVisual = null;
-            gradientVisual?.Dispose();
-            gradientVisual = null;
-            IconBackground?.Dispose();
-            IconBackground = null;
             if (Name == "back")
             {
                 InputGeneratorBase.FinalizeInputGenerator();
index 931053147f2172341c14b9bf9cf9552e4b12e0b1..c4543eee9c88ced47db06be90aa8828646c6ea80 100644 (file)
@@ -155,7 +155,6 @@ namespace TaskBar.ViewModels
             AppInfoModel appInfoModel = new AppInfoModel(appInfo.Label, appId, appInfo.IconPath);
             appInfoModel.IsRunning = ApplicationManager.IsRunning(appId);
             appInfoModel.IsPinned = pinnedAppsInfo.ContainsKey(appId);
-            appInfoModel.SetExtractedBackground(appInfoModel.IconUrl);
             appInfoModel.CreateUserApplicationsMoreMenu();
             appInfoModel.PinAppClicked += () =>
             {
index 25638ed5d54a06ab95dd0ed2b4160c961889c6cf..d4a7560ebe455ef3cf5f6b948a25774b52f52746 100644 (file)
@@ -14,6 +14,7 @@
  * limitations under the License.
  */
 
+using System;
 using System.Collections.Generic;
 using System.Windows.Input;
 using Tizen.NUI;
@@ -68,6 +69,9 @@ namespace TaskBar.Views
         },
         defaultValueCreator: (bindable) => (bindable as AppItemView).menuItemSelectCommand);
 
+        public event Action<AppItemView> MoreMenuAdded;
+        public event Action<AppItemView> MoreMenuRemoved;
+
         public AppItemView() : base()
         {
             WidthSpecification = IconSize.SpToPx();
@@ -93,7 +97,6 @@ namespace TaskBar.Views
         {
             UpdateTheme();
         }
-
         private void UpdateTheme()
         {
             UpdateMenuTheme();
@@ -110,9 +113,9 @@ namespace TaskBar.Views
                 return;
             }
             var menuItems = moreMenu.Items as List<MenuItem>;
+            moreMenu.BackgroundColor = Resources.MenuBackgroundColor;
             foreach (MenuItem item in menuItems)
             {
-                item.BackgroundColor = Resources.MenuBackgroundColor;
                 ColorSelector colors = new ColorSelector()
                 {
                     Pressed = Resources.PressedMenuItemTextColor,
@@ -211,10 +214,13 @@ namespace TaskBar.Views
             {
                 MenuStyle moreMenuStyle = new MenuStyle()
                 {
-                    BackgroundColor = Color.Transparent,
+                    CornerRadius = Resources.SingleItemCornerRadius.SpToPx(),
+                    MinimumSize = Resources.MinimumMenuSize.SpToPx(),
                 };
                 Tizen.Log.Info(Resources.LogTag, "Custom Menu");
                 moreMenu = new CustomMenu(moreMenuStyle);
+                moreMenu.AddedToWindow += (object sender, EventArgs e) => { MoreMenuAdded?.Invoke(this); };
+                moreMenu.RemovedFromWindow += (object sender, EventArgs e) => { MoreMenuRemoved?.Invoke(this); };
             }
             moreMenu.Position2D = new Position2D(moreMenuPositionX, moreMenuPositionY);
             moreMenu.VisibilityChanged += (object sender, VisibilityChangedEventArgs e) =>
@@ -239,7 +245,7 @@ namespace TaskBar.Views
                 {
                     ButtonStyle buttonStyle = new ButtonStyle()
                     {
-                        Size = Resources.MenuItemSize.SpToPx(),
+                        SizeHeight = Resources.MenuItemHeight.SpToPx(),
                         Padding = new Extents(10, 10, 0, 0).SpToPx(),
                         Text = new TextLabelStyle()
                         {
@@ -262,15 +268,6 @@ namespace TaskBar.Views
                     Tizen.Log.Info(Resources.LogTag, "more menu Item: " + menuItemName);
                 }
             }
-            if (menuItemsList.Count > 1)
-            {
-                menuItemsList[0].CornerRadius = Resources.TopItemCornerRadius;
-                menuItemsList[^1].CornerRadius = Resources.BottomItemCornerRadius;
-            }
-            else if (menuItemsList.Count == 1)
-            {
-                menuItemsList[0].CornerRadius = Resources.SingleItemCornerRadius.SpToPx();
-            }
             if (moreMenu != null)
             {
                 moreMenu.Items = menuItemsList;
@@ -298,6 +295,7 @@ namespace TaskBar.Views
                     item.Clicked -= OnItemClicked;
                 }
                 moreMenuList.Clear();
+                moreMenu.Items = null;
             }
         }
 
diff --git a/TaskBar/Views/ApplicationsView.cs b/TaskBar/Views/ApplicationsView.cs
deleted file mode 100644 (file)
index c25e5db..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright (c) 2023 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Tizen.NUI.BaseComponents;
-using Tizen.NUI.Binding;
-using Tizen.NUI.Components;
-using TaskBar.Common;
-
-namespace TaskBar.Views
-{
-    class ApplicationsView : BaseView
-    {
-        public ApplicationsView() : base()
-        {
-            Name = "ApplicationsView";
-            Tizen.Log.Info(Resources.LogTag, "ApplicationsView");
-        }
-
-        protected override void UpdateApps()
-        {
-            if (apps == null)
-            {
-                return;
-            }
-
-            foreach (AppItemView item in apps)
-            {
-                item.BindingContext = null;
-                item.Dispose();
-                Remove(item);
-            }
-            apps.Clear();
-
-            foreach (var item in AppList)
-            {
-                AppItemView appItemView = new AppItemView();
-                Add(appItemView);
-                apps.Add(appItemView);
-                appItemView.BindingContext = item;
-                appItemView.AppIcon.Icon.SetBinding(ImageView.ResourceUrlProperty, "IconUrl");
-                appItemView.AppIcon.SetBinding(Control.CommandProperty, "AppSelectCommand");
-                appItemView.AppIcon.SetBinding(BackgroundProperty, "IconBackground");
-                appItemView.SetBinding(AppItemView.ShowIndicatorProperty, "IsRunning");
-                appItemView.SetBinding(AppItemView.MenuItemNamesProperty, "MoreMenuItems");
-                appItemView.SetBinding(AppItemView.MenuItemSelectCommandProperty, "MenuItemSelectCommand");
-            }
-            Tizen.Log.Info(Resources.LogTag, "Buttons Added");
-        }
-    }
-}
index d2c11ad6707de4e8e7d904b4505d6c5c8d3c96d5..9fef9e396e3423fc44e8695b4c44f5c98abfa148 100644 (file)
  * limitations under the License.
  */
 
+using System;
 using System.Collections;
 using System.Collections.Generic;
 using Tizen.NUI;
 using Tizen.NUI.BaseComponents;
 using Tizen.NUI.Binding;
+using Tizen.NUI.Components;
 using TaskBar.Common;
 
 namespace TaskBar.Views
 {
-    abstract class BaseView : View
+    class BaseView : View
     {
 
         protected List<AppItemView> apps;
@@ -46,6 +48,8 @@ namespace TaskBar.Views
         },
         defaultValueCreator: (bindable) => (bindable as BaseView).appList);
 
+        public event Action<AppItemView, bool> MenuUpdated;
+
         public BaseView()
         {
             Name = "BaseView";
@@ -70,6 +74,22 @@ namespace TaskBar.Views
             }
         }
 
+        public void UpdateOpacity(View selectedItem, bool isMenuAdded)
+        {
+            if (apps == null)
+            {
+                return;
+            }
+            foreach (AppItemView item in apps)
+            {
+                if (selectedItem == item)
+                {
+                    continue;
+                }
+                item.Opacity = isMenuAdded ? 0.5f : 1.0f;
+            }
+        }
+
         private IEnumerable appList;
         public IEnumerable AppList
         {
@@ -77,7 +97,37 @@ namespace TaskBar.Views
             set => SetValue(AppListProperty, value);
         }
 
-        protected abstract void UpdateApps();
+        private void UpdateApps()
+        {
+            if (apps == null)
+            {
+                return;
+            }
+
+            foreach (AppItemView item in apps)
+            {
+                item.BindingContext = null;
+                item.Dispose();
+                Remove(item);
+            }
+            apps.Clear();
+
+            foreach (var item in AppList)
+            {
+                AppItemView appItemView = new AppItemView();
+                Add(appItemView);
+                apps.Add(appItemView);
+                appItemView.BindingContext = item;
+                appItemView.AppIcon.Icon.SetBinding(ImageView.ResourceUrlProperty, "IconUrl");
+                appItemView.AppIcon.SetBinding(Control.CommandProperty, "AppSelectCommand");
+                appItemView.SetBinding(AppItemView.ShowIndicatorProperty, "IsRunning");
+                appItemView.SetBinding(AppItemView.MenuItemNamesProperty, "MoreMenuItems");
+                appItemView.SetBinding(AppItemView.MenuItemSelectCommandProperty, "MenuItemSelectCommand");
+                appItemView.MoreMenuAdded += (AppItemView sender) => { MenuUpdated?.Invoke(sender, true); };
+                appItemView.MoreMenuRemoved += (AppItemView sender) => { MenuUpdated?.Invoke(sender, false); };
+            }
+            Tizen.Log.Info(Resources.LogTag, "Buttons Added");
+        }
 
         protected override void Dispose(DisposeTypes type)
         {
index beb3b55051b4c80aed3edc384b918fe5215e9694..986f96bae309f1d7cf575ccd6533d6054440bf7a 100644 (file)
@@ -14,7 +14,6 @@
  * limitations under the License.
  */
 
-using Tizen.NUI;
 using Tizen.NUI.Components;
 using TaskBar.Common;
 
@@ -39,7 +38,6 @@ namespace TaskBar.Views
 
         public void SetScrimAttributes()
         {
-            Scrim.BackgroundColor = new Color(0, 0, 0, 0.3f);
             Scrim.AllowOnlyOwnTouch = true;
         }
     }
index 588fc41b7b3d10b682c50092bfa135551a5560e3..52085ac94f53b4cc55178238c6a54f3697562bde 100644 (file)
@@ -29,7 +29,7 @@ namespace TaskBar.Views
     {
         private ApplicationsViewModel applicationsViewModel;
         private QuickAccessViewModel quickAccessViewModel;
-        private ApplicationsView applicationsView;
+        private BaseView applicationsView;
         private View addPinnedAppsView;
         private Button addPinnedAppsButton;
         private CustomMenu addButtonMoreMenu;
@@ -38,7 +38,7 @@ namespace TaskBar.Views
         private int moreMenuPositionX;
         private int moreMenuPositionY;
         private LongPressGestureDetector addAppsLongPressDetector;
-        private QuickAccessView quickAccessView;
+        private BaseView quickAccessView;
 
         private const int AddButtonSize = 48;
 
@@ -56,23 +56,36 @@ namespace TaskBar.Views
                 CellPadding = new Size2D(8, 0).SpToPx(),
             };
             applicationsViewModel = new ApplicationsViewModel();
-            applicationsView = new ApplicationsView();
+            applicationsView = new BaseView();
             Add(applicationsView);
             applicationsView.BindingContext = applicationsViewModel;
+            applicationsView.MenuUpdated += OnMenuUpdated;
             applicationsView.SetBinding(BaseView.AppListProperty, "ButtonsInfo");
 
             CreateAddPinnedAppsView();
             Add(addPinnedAppsView);
 
             quickAccessViewModel = new QuickAccessViewModel();
-            quickAccessView = new QuickAccessView();
+            quickAccessView = new BaseView();
             Add(quickAccessView);
             quickAccessView.BindingContext = quickAccessViewModel;
+            quickAccessView.MenuUpdated += OnMenuUpdated;
             quickAccessView.SetBinding(BaseView.AppListProperty, "ButtonsInfo");
             UpdateTheme();
             ThemeManager.ThemeChanged += OnThemeUpdated;
         }
 
+        private void OnMenuUpdated(View sender, bool isMenuAdded)
+        {
+            applicationsView.UpdateOpacity(sender, isMenuAdded);
+            quickAccessView.UpdateOpacity(sender, isMenuAdded);
+            if (sender != addPinnedAppsButton)
+            {
+                addPinnedAppsView.Opacity = isMenuAdded ? 0.5f : 1.0f;
+            }
+            BackgroundColor = isMenuAdded ? Resources.DisabledTaskbarBackgroundColor : Resources.TaskbarBackgroundColor;
+        }
+
         public void UpdateView()
         {
             WidthSpecification = DeviceInfo.Instance.DisplayWidth;
@@ -105,9 +118,9 @@ namespace TaskBar.Views
                 return;
             }
             var menuItems = addButtonMoreMenu.Items as List<MenuItem>;
+            addButtonMoreMenu.BackgroundColor = Resources.MenuBackgroundColor;
             foreach (MenuItem item in menuItems)
             {
-                item.BackgroundColor = Resources.MenuBackgroundColor;
                 ColorSelector colors = new ColorSelector()
                 {
                     Pressed = Resources.PressedMenuItemTextColor,
@@ -181,9 +194,12 @@ namespace TaskBar.Views
                 MenuStyle moreMenuStyle = new MenuStyle()
                 {
                     Position = new Position2D(moreMenuPositionX, moreMenuPositionY),
-                    BackgroundColor = Color.Transparent,
+                    MinimumSize = Resources.MinimumMenuSize.SpToPx(),
+                    CornerRadius = Resources.SingleItemCornerRadius.SpToPx(),
                 };
                 addButtonMoreMenu = new CustomMenu(moreMenuStyle);
+                addButtonMoreMenu.AddedToWindow += (object sender, System.EventArgs e) => { OnMenuUpdated(addPinnedAppsButton, true); };
+                addButtonMoreMenu.RemovedFromWindow += (object sender, System.EventArgs e) => { OnMenuUpdated(addPinnedAppsButton, false); };
             }
             addButtonMoreMenu.VisibilityChanged += (object sender, VisibilityChangedEventArgs e) =>
             {
@@ -195,7 +211,7 @@ namespace TaskBar.Views
             };
             ButtonStyle buttonStyle = new ButtonStyle()
             {
-                Size = Resources.MenuItemSize.SpToPx(),
+                SizeHeight = Resources.MenuItemHeight.SpToPx(),
                 Padding = new Extents(10, 10, 0, 0).SpToPx(),
                 Text = new TextLabelStyle()
                 {
@@ -205,7 +221,6 @@ namespace TaskBar.Views
                     VerticalAlignment = VerticalAlignment.Center,
                     Text = "Add Apps",
                 },
-                CornerRadius = Resources.SingleItemCornerRadius.SpToPx(),
                 IsSelectable = false,
             };
             MenuItem item = new MenuItem(buttonStyle);
@@ -247,6 +262,7 @@ namespace TaskBar.Views
                 ThemeManager.ThemeChanged -= OnThemeUpdated;
                 DisposeMoreMenu();
 
+                applicationsView.MenuUpdated -= OnMenuUpdated;
                 applicationsView.BindingContext = null;
                 Remove(applicationsView);
                 applicationsView?.Dispose();
@@ -267,6 +283,7 @@ namespace TaskBar.Views
                 addPinnedAppsView?.Dispose();
                 addPinnedAppsView = null;
 
+                quickAccessView.MenuUpdated -= OnMenuUpdated;
                 quickAccessView.BindingContext = null;
                 Remove(quickAccessView);
                 quickAccessView?.Dispose();
diff --git a/TaskBar/Views/QuickAccessView.cs b/TaskBar/Views/QuickAccessView.cs
deleted file mode 100644 (file)
index 887a91c..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (c) 2023 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Tizen.NUI.BaseComponents;
-using Tizen.NUI.Binding;
-using Tizen.NUI.Components;
-using TaskBar.Common;
-
-namespace TaskBar.Views
-{
-    class QuickAccessView : BaseView
-    {
-        public QuickAccessView() : base()
-        {
-            Name = "QuickAccessView";
-            Tizen.Log.Info(Resources.LogTag, "QuickAccessView");
-        }
-
-        protected override void UpdateApps()
-        {
-            if (apps == null)
-            {
-                return;
-            }
-
-            foreach (AppItemView item in apps)
-            {
-                item.BindingContext = null;
-                item.Dispose();
-                Remove(item);
-            }
-            apps.Clear();
-
-            foreach (var item in AppList)
-            {
-                AppItemView appItemView = new AppItemView();
-                Add(appItemView);
-                apps.Add(appItemView);
-                appItemView.BindingContext = item;
-                appItemView.AppIcon.Icon.SetBinding(ImageView.ResourceUrlProperty, "IconUrl");
-                appItemView.AppIcon.SetBinding(Control.CommandProperty, "AppSelectCommand");
-                appItemView.SetBinding(AppItemView.ShowIndicatorProperty, "IsRunning");
-                appItemView.SetBinding(AppItemView.MenuItemNamesProperty, "MoreMenuItems");
-                appItemView.SetBinding(AppItemView.MenuItemSelectCommandProperty, "MenuItemSelectCommand");
-            }
-            Tizen.Log.Info(Resources.LogTag, "Buttons Added");
-        }
-    }
-}
index 70b1fb1a0b67e1d508832c23c56d0e8bf78d73a4..0ebff45876ee7050b078b2112ae6d190c35e3e9d 100644 (file)
@@ -32,7 +32,6 @@ namespace TaskBar.Views
             Tizen.Log.Info(Resources.LogTag, "Popup Added");
             baseView = new View()
             {
-                BackgroundColor = new Color(0, 0, 0, 0.3f),
                 AllowOnlyOwnTouch = true,
             };
             Window.Instance.Add(baseView);
index aa43efd4373bbed83b876eb2e82b81b5397e0613..d910662ec5fe5b94209af90d0aef4794d47e843a 100644 (file)
Binary files a/packaging/org.tizen.taskbar-1.0.0.tpk and b/packaging/org.tizen.taskbar-1.0.0.tpk differ