using Tizen.NUI.Binding;
using Tizen.NUI.Components;
using SettingCore;
-//using SettingWiFi.res.locale;
using static SettingWiFi.Logger;
using System;
using System.Linq;
private WiFi mWifi;
private APSource mApSource;
private Button mScanButton, mAddNetwork;
+ private List<MoreMenuItem> mMenus;
+ private MoreMenuItem mHiddenMenuItem, mWifiDirectMenuItem;
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");
public override IEnumerable<MoreMenuItem> ProvideMoreMenu()
{
- var menus = new List<MoreMenuItem>();
+ mMenus = new List<MoreMenuItem>();
bool? active = GetWifiState();
if (active.HasValue && active.Value)
{
- menus.Add(new MoreMenuItem
+ mHiddenMenuItem = new MoreMenuItem
{
Text = Resources.IDS_WIFI_BUTTON_FIND_HIDDEN_NETWORK,
- Action = () => {
+ Action = () =>
+ {
OnHiddenNetworkClicked();
},
- });
- menus.Add(new MoreMenuItem
+ };
+ mMenus.Add(mHiddenMenuItem);
+
+ mMenus.Add(new MoreMenuItem
{
Text = Resources.IDS_ST_BODY_ADVANCED,
Action = () => { },
});
- menus.Add(new MoreMenuItem
+
+ mWifiDirectMenuItem = new MoreMenuItem
{
Text = Resources.IDS_WIFI_BODY_WI_FI_DIRECT_ABB,
Action = () => { },
- });
+ };
+ mMenus.Add(mWifiDirectMenuItem);
}
else
{
- menus.Add(new MoreMenuItem
+ mMenus.Add(new MoreMenuItem
{
Text = Resources.IDS_ST_BODY_ADVANCED,
Action = () => { },
});
}
- return menus;
+ return mMenus;
}
public override IEnumerable<View> ProvideMoreActions()
UpdateMainPageButtonState(true);
mApSource.UpdateGroupTitle(Resources.IDS_ST_HEADER_AVAILABLE_NETWORKS);
ScanAP();
+ UpdateMoreMenuItems(true);
}
else
{
mApSource.RemoveScanList();
mApSource.UpdateGroupTitle("");
UpdateMainPageButtonState(false);
+ UpdateMoreMenuItems(false);
}
}
mAddNetwork.IsEnabled = isEnabled;
}
+ private void UpdateMoreMenuItems(bool isWiFiEnabled)
+ {
+ if (isWiFiEnabled)
+ {
+ mMenus.Insert(0, mHiddenMenuItem);
+ mMenus.Insert(2, mWifiDirectMenuItem);
+ }
+ else
+ {
+ mMenus.RemoveAt(2);
+ mMenus.RemoveAt(0);
+ }
+ }
+
private void OnScanClicked(object sender, ClickedEventArgs e)
{
Debug("OnScanClicked");