Resolve 'Scan' and 'AddNetwork' buttons displaying when wifi off 58/298558/2
authorAkash Kumar <akash1.kumar@samsung.com>
Sat, 9 Sep 2023 05:34:20 +0000 (11:04 +0530)
committerAkash Kumar <akash1.kumar@samsung.com>
Sat, 9 Sep 2023 08:05:41 +0000 (13:35 +0530)
This patch resolves:
Jira issue:  https://code.sec.samsung.net/jira/browse/TEIGHT-5152

Change-Id: Id7437e6af7e67f80606c6250a3b21f37b7b0c6ba
Signed-off-by: Akash Kumar <akash1.kumar@samsung.com>
SettingWiFi/SettingWiFi/view/MainPage.cs
packaging/org.tizen.cssetting-wifi-1.1.4.rpk

index 783870da4fc8381c871835b9bb486bed3247a341..60228969b1f01e4f114ddd60c8de89faf245fb61 100755 (executable)
@@ -16,9 +16,7 @@ namespace SettingWiFi
     {
         private WiFi mWifi;
         private APSource mApSource;
-
-        private static readonly int itemCount = 3;
-        private MenuItem[] menuItems = new MenuItem[itemCount];
+        private Button mScanButton, mAddNetwork;
 
         public override string ProvideIconPath() => GetResourcePath("main-menu-wifi-icon.svg");
         public override Color ProvideIconColor() => new Color(ThemeManager.PlatformThemeId == "org.tizen.default-light-theme" ? "#FF6200" : "#FF8A00");
@@ -93,21 +91,40 @@ namespace SettingWiFi
 
         public override IEnumerable<View> ProvideMoreActions()
         {
-            var scanButton = new Button()
+            bool? active = GetWifiState();
+            bool wifiState = active.HasValue && active.Value;
+
+            ViewStyle viewStyle = GetButtonViewStyle();
+
+            mScanButton = new Button()
             {
                 Text = Resources.IDS_WIFI_BUTTON_SCAN,
-                IsEnabled = GetWifiState().HasValue,
+                IsEnabled = wifiState,
             };
-            scanButton.Clicked += OnScanClicked;
+            mScanButton.Clicked += OnScanClicked;
+            mScanButton.ApplyStyle(viewStyle);
 
-            var addNetwork = new Button()
+            mAddNetwork = new Button()
             {
                 Text = Resources.IDS_ST_BODY_ADD_NETWORK,
-                IsEnabled = GetWifiState().HasValue,
+                IsEnabled = wifiState,
             };
-            addNetwork.Clicked += OnAddNetworkClicked;
+            mAddNetwork.Clicked += OnAddNetworkClicked;
+            mAddNetwork.ApplyStyle(viewStyle);
 
-            return new View[] { scanButton, addNetwork };
+            return new View[] { mScanButton, mAddNetwork };
+        }
+
+        private ViewStyle GetButtonViewStyle()
+        {
+            ViewStyle viewStyle = new ViewStyle();
+            viewStyle.Opacity = new Selector<float?>()
+            {
+                Normal = 1.0f,
+                Disabled = 0.0f
+            };
+
+            return viewStyle;
         }
 
         protected override View OnCreate()
@@ -361,6 +378,7 @@ namespace SettingWiFi
                     await mWifi.Activate();
                 }
                 /* TODO: auto connect */
+                UpdateMainPageButtonState(true);
                 mApSource.UpdateGroupTitle(Resources.IDS_ST_HEADER_AVAILABLE_NETWORKS);
                 ScanAP();
             }
@@ -372,9 +390,16 @@ namespace SettingWiFi
                 }
                 mApSource.RemoveScanList();
                 mApSource.UpdateGroupTitle("");
+                UpdateMainPageButtonState(false);
             }
         }
 
+        private void UpdateMainPageButtonState(bool isEnabled)
+        {
+            mScanButton.IsEnabled = isEnabled;
+            mAddNetwork.IsEnabled = isEnabled;
+        }
+
         private void OnScanClicked(object sender, ClickedEventArgs e)
         {
             Debug("OnScanClicked");
index bf19d36f10b990cd63e9986d44b1e3bb21da55ad..d9d407d827ab664f637a1ac81a8315bedd532ca9 100644 (file)
Binary files a/packaging/org.tizen.cssetting-wifi-1.1.4.rpk and b/packaging/org.tizen.cssetting-wifi-1.1.4.rpk differ