From: Akash Kumar Date: Tue, 18 Apr 2023 11:24:20 +0000 (+0530) Subject: Resolve issue of AddNetwork page items detail update. X-Git-Tag: accepted/tizen/unified/20230426.062758~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a0f2a25804410655cc7f74ef08bf6af3aaa61bd7;p=profile%2Fiot%2Fapps%2Fdotnet%2Fsetting-wifi.git Resolve issue of AddNetwork page items detail update. This patches resolves following issues: - Items on Add network page gets updated based on RadioButton selected. - Secure APs can be connected with entering password. Change-Id: Iee18d2965f4f017a404fbf924ac8781c55925e72 Signed-off-by: Akash Kumar --- diff --git a/SettingWiFi/SettingWiFi/view/AddNetwork.cs b/SettingWiFi/SettingWiFi/view/AddNetwork.cs index 15844ca..03a2c0c 100644 --- a/SettingWiFi/SettingWiFi/view/AddNetwork.cs +++ b/SettingWiFi/SettingWiFi/view/AddNetwork.cs @@ -22,7 +22,6 @@ namespace SettingWiFi private WiFi mWifi; private APSource mApSource; private AP mAp; - private string mPassword; private AddNetworkItem mNetworkItem; CheckBox mShowAdvancedButton; @@ -34,11 +33,10 @@ namespace SettingWiFi CollectionView mAdvancedViewCollection; CollectionView mNetworkDetailsCollection; - Window mWindow = NUIApplication.GetDefaultWindow(); internal AddNetwork(WiFi wifi) { mWifi = wifi; - mNetworkItem = new AddNetworkItem("None", "DHCP", "None"); + mNetworkItem = new AddNetworkItem(Resources.IDS_ST_BODY_NONE, "DHCP", Resources.IDS_ST_BODY_NONE); } internal void CreateComponents(APSource apSource) @@ -211,7 +209,7 @@ namespace SettingWiFi { OnIPSettingsClicked(sender, e); } - else if (info.InfoTitle == Resources.IDS_ST_SBODY_PROXY_ADDRESS) + else if (info.InfoTitle == Resources.IDS_WIFI_BODY_PROXY) { OnProxyClicked(sender, e); } @@ -251,11 +249,11 @@ namespace SettingWiFi string[] options = new string[] { - "DHCP", "Static", + "DHCP", }; - var page = new AddNetworkInfoInputPage(mNetworkItem, mNetworkDetailsInfoSource); + var page = new AddNetworkInfoInputPage(mNetworkItem, mAddNetworkInfoSource); page.CreateRadioComponents(Resources.IDS_WIFI_BODY_IP_SETTINGS, options); NUIApplication.GetDefaultWindow().GetDefaultNavigator().Push(page); } @@ -278,8 +276,8 @@ namespace SettingWiFi "Manual", }; - var page = new AddNetworkInfoInputPage(mNetworkItem, mNetworkDetailsInfoSource); - page.CreateRadioComponents(Resources.IDS_ST_SBODY_PROXY_ADDRESS, options); + var page = new AddNetworkInfoInputPage(mNetworkItem, mAddNetworkInfoSource); + page.CreateRadioComponents(Resources.IDS_WIFI_BODY_PROXY, options); NUIApplication.GetDefaultWindow().GetDefaultNavigator().Push(page); } @@ -357,4 +355,3 @@ namespace SettingWiFi } } } - diff --git a/SettingWiFi/SettingWiFi/view/AddNetworkInfoInputPage.cs b/SettingWiFi/SettingWiFi/view/AddNetworkInfoInputPage.cs index 25c34ce..564db59 100644 --- a/SettingWiFi/SettingWiFi/view/AddNetworkInfoInputPage.cs +++ b/SettingWiFi/SettingWiFi/view/AddNetworkInfoInputPage.cs @@ -14,13 +14,11 @@ namespace SettingWiFi private TextField mValueField; private RadioButton[] mRadioButtons; private RadioButtonGroup mGroup; - private ButtonStyle mRadioButtonStyle; - private string mTitle; private int mCount; private string mImagesPath; private string[] mOptionNames; - + private int mSelectedIndex; internal AddNetworkInfoInputPage(AddNetworkItem item, AddNetworkInfoSource infoSource) { @@ -44,11 +42,19 @@ namespace SettingWiFi HeightSpecification = LayoutParamPolicies.WrapContent, }; - mValueField = new TextField() + if(mTitle == Resources.IDS_WIFI_HEADER_PASSWORD) { - WidthSpecification = 600, - PlaceholderText = value, - }; + mValueField = CreatePasswordField(); + } + else + { + mValueField = new TextField() + { + WidthSpecification = 600, + PlaceholderText = value, + }; + } + infoView.Add(mValueField); var cancelButton = new Button() @@ -58,7 +64,7 @@ namespace SettingWiFi cancelButton.Clicked += OnCancelClicked; var okButton = new Button() { - Text = "OK", + Text = Resources.IDS_WIFI_SK2_OK, }; okButton.Clicked += OnOkClicked; @@ -70,6 +76,25 @@ namespace SettingWiFi }; } + internal TextField CreatePasswordField() + { + Debug(""); + var passwordField = new TextField() + { + WidthSpecification = 600, + BackgroundColor = Color.Silver, + PlaceholderText = Resources.IDS_WIFI_HEADER_PASSWORD, + }; + + var hiddenInput = new Tizen.NUI.Text.HiddenInput(); + hiddenInput.Mode = HiddenInputModeType.ShowLastCharacter; + hiddenInput.SubstituteCharacter = '*'; + hiddenInput.SubstituteCount = 0; + hiddenInput.ShowLastCharacterDuration = 1000; + passwordField.SetHiddenInput(hiddenInput); + + return passwordField; + } internal void CreateRadioComponents(string title, string[] options) { Debug("CreateRadioComponents" + title); @@ -77,8 +102,8 @@ namespace SettingWiFi mOptionNames = options; mCount = options.Length; mRadioButtons = new RadioButton[mCount]; + getSelectedIndex(); - CreateRadioButtonStyle(); var optionView = new View() { Layout = new LinearLayout() @@ -96,7 +121,7 @@ namespace SettingWiFi okButton.Clicked += OnRadioOkClicked; CreateRadioOptions(optionView); - mRadioButtons[0].IsSelected = true; + mRadioButtons[mSelectedIndex].IsSelected = true; Content = new AlertDialog() { Title = mTitle, @@ -104,10 +129,59 @@ namespace SettingWiFi Actions = new View[] { okButton }, }; } + + private void getSelectedIndex() + { + Debug(""); + mSelectedIndex = 0; + if (mTitle == Resources.IDS_ST_BUTTON_SECURITY_ABB) + { + switch (mAddItem.SecurityType) + { + case "None": + mSelectedIndex = 0; + break; + case "WEP": + mSelectedIndex = 1; + break; + case "WPA PSK": + mSelectedIndex = 2; + break; + case "WPA2 PSK": + mSelectedIndex = 3; + break; + } + } + else if (mTitle == Resources.IDS_WIFI_BODY_IP_SETTINGS) + { + switch (mAddItem.IPSettings) + { + case "Static": + mSelectedIndex = 0; + break; + case "DHCP": + mSelectedIndex = 1; + break; + } + } + else if (mTitle == Resources.IDS_WIFI_BODY_PROXY) + { + switch (mAddItem.ProxyType) + { + case "None": + mSelectedIndex = 0; + break; + case "Manual": + mSelectedIndex = 1; + break; + } + } + } private void CreateRadioOptions(View optionView) { for (int i = 0; i < mCount; i++) { + int index = i; var childView = new View() { Layout = new GridLayout() @@ -119,15 +193,16 @@ namespace SettingWiFi }, }; mRadioButtons[i] = new RadioButton(); + var buttonStyle = mRadioButtons[i].Style; + CreateRadioButtonStyle(buttonStyle); mRadioButtons[i].SelectedChanged += (object sender, SelectedChangedEventArgs args) => { - OnSelectionChanged(sender, args, i); + OnSelectionChanged(sender, args, index); }; - mRadioButtons[i].ApplyStyle(mRadioButtonStyle); + mRadioButtons[i].ApplyStyle(buttonStyle); mRadioButtons[i].Size = new Size(48, 48); mRadioButtons[i].Icon.Size = new Size(48, 48); mGroup.Add(mRadioButtons[i]); - var nameLabel = new TextLabel(mOptionNames[i]); nameLabel.WidthSpecification = 150; childView.Add(nameLabel); @@ -135,19 +210,19 @@ namespace SettingWiFi optionView.Add(childView); } } - void CreateRadioButtonStyle() + void CreateRadioButtonStyle(ButtonStyle buttonStyle) { - mRadioButtonStyle = new ButtonStyle(); - mRadioButtonStyle.Icon.Opacity = new Selector + Debug(""); + buttonStyle.Icon.Opacity = new Selector { Normal = 1.0f, Selected = 1.0f, Disabled = 0.4f, DisabledSelected = 0.4f }; - mRadioButtonStyle.Icon.BackgroundImage = ""; + buttonStyle.Icon.BackgroundImage = ""; - mRadioButtonStyle.Icon.ResourceUrl = new Selector + buttonStyle.Icon.ResourceUrl = new Selector { Normal = mImagesPath + "controller_btn_radio_off.png", Selected = mImagesPath + "controller_btn_radio_on.png", @@ -158,21 +233,26 @@ namespace SettingWiFi void OnSelectionChanged(object sender, SelectedChangedEventArgs e, int i) { - Debug($"Left {i}th Utility RadioButton's IsSelected is changed to {e.IsSelected}."); - // To Do + Debug($"{i}th RadioButton's IsSelected is changed to {e.IsSelected}."); + if (e.IsSelected) + { + mSelectedIndex = i; + Debug("Selected index: " + mSelectedIndex); + } } private void OnRadioOkClicked(object source, ClickedEventArgs args) { Debug("OnRadioOkClicked"); + mInfoSource.Clear(); + UpdateInfo(mTitle, mOptionNames[mSelectedIndex]); NUIApplication.GetDefaultWindow().GetDefaultNavigator().Pop(); } private void OnOkClicked(object sender, ClickedEventArgs e) { Debug("OnOkClicked " + mValueField.Text + " : " + mTitle); - UpdateInfo(mTitle, mValueField.Text); mInfoSource.Clear(); - mInfoSource.ShowNetworkInfo(); + UpdateInfo(mTitle, mValueField.Text); NUIApplication.GetDefaultWindow().GetDefaultNavigator().Pop(); } @@ -188,23 +268,33 @@ namespace SettingWiFi if (fieldName == Resources.IDS_WIFI_BODY_NETWORK_NAME) { + Debug("Name: Updating value to " + value + " from " + mAddItem.NetworkName); mAddItem.NetworkName = value; - Debug("Name after: " + mAddItem.NetworkName); + mInfoSource.ShowNetworkInfo(); } else if (fieldName == Resources.IDS_ST_BUTTON_SECURITY_ABB) { + Debug("Security: Updating value to " + value + " from " + mAddItem.SecurityType); mAddItem.SecurityType = value; + mInfoSource.ShowNetworkInfo(); } else if (fieldName == Resources.IDS_WIFI_BODY_IP_SETTINGS) { + Debug("IP: Updating value to " + value + " from " + mAddItem.IPSettings); mAddItem.IPSettings = value; + mInfoSource.ShowAdvancedInfo(); } - else if (fieldName == Resources.IDS_ST_SBODY_PROXY_ADDRESS) + else if (fieldName == Resources.IDS_WIFI_BODY_PROXY) { + Debug("Proxy: Updating value to " + value + " from " + mAddItem.ProxyType); mAddItem.ProxyType = value; - }else if (fieldName == Resources.IDS_WIFI_HEADER_PASSWORD) + mInfoSource.ShowAdvancedInfo(); + } + else if (fieldName == Resources.IDS_WIFI_HEADER_PASSWORD) { + Debug("Password: Updating value to " + value + " from " + mAddItem.Password); mAddItem.Password = value; + mInfoSource.ShowNetworkInfo(); } } } diff --git a/SettingWiFi/SettingWiFi/view/AddNetworkInfoSource.cs b/SettingWiFi/SettingWiFi/view/AddNetworkInfoSource.cs index 4aa413d..e524681 100644 --- a/SettingWiFi/SettingWiFi/view/AddNetworkInfoSource.cs +++ b/SettingWiFi/SettingWiFi/view/AddNetworkInfoSource.cs @@ -3,7 +3,6 @@ using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using Tizen.NUI.Components; -using SettingWiFi.res.locale; using static SettingWiFi.Logger; namespace SettingWiFi @@ -23,9 +22,9 @@ namespace SettingWiFi Debug("ShowNetworkInfo"); Add(new AddNetworkInfoText(Resources.IDS_WIFI_BODY_NETWORK_NAME, mNetworkItem.NetworkName, null)); Add(new AddNetworkInfoText(Resources.IDS_ST_BUTTON_SECURITY_ABB, mNetworkItem.SecurityType, null)); - if(mNetworkItem.SecurityType != "None") + if(mNetworkItem.SecurityType != Resources.IDS_ST_BODY_NONE) { - Add(new AddNetworkInfoText(Resources.IDS_WIFI_HEADER_PASSWORD, "...", null)); + Add(new AddNetworkInfoText(Resources.IDS_WIFI_HEADER_PASSWORD, "*****", null)); } } @@ -33,7 +32,7 @@ namespace SettingWiFi { Debug("ShowAdvancedInfo"); Add(new AddNetworkInfoText(Resources.IDS_WIFI_BODY_IP_SETTINGS, mNetworkItem.IPSettings, null)); - Add(new AddNetworkInfoText(Resources.IDS_ST_SBODY_PROXY_ADDRESS, mNetworkItem.ProxyType, null)); + Add(new AddNetworkInfoText(Resources.IDS_WIFI_BODY_PROXY, mNetworkItem.ProxyType, null)); } } @@ -128,4 +127,3 @@ namespace SettingWiFi } } } - diff --git a/SettingWiFi/SettingWiFi/view/Resources.cs b/SettingWiFi/SettingWiFi/view/Resources.cs index e821237..4043fb6 100755 --- a/SettingWiFi/SettingWiFi/view/Resources.cs +++ b/SettingWiFi/SettingWiFi/view/Resources.cs @@ -129,5 +129,6 @@ static public string IDS_WIFI_BODY_SHOW_ADVANCED_OPTIONS = "Show advanced options"; static public string IDS_WIFI_BODY_NETWORK_NAME = "Network name"; static public string IDS_WIFI_BODY_IP_SETTINGS = "IP settings"; + static public string IDS_WIFI_BODY_PROXY = "Proxy"; } } diff --git a/packaging/org.tizen.cssetting-wifi-1.1.3.rpk b/packaging/org.tizen.cssetting-wifi-1.1.3.rpk index 3355427..93d1801 100644 Binary files a/packaging/org.tizen.cssetting-wifi-1.1.3.rpk and b/packaging/org.tizen.cssetting-wifi-1.1.3.rpk differ