[polari/wip/fmuellner/design-review: 3/5] connectionDetails: Don't allow to remove required parameters



commit c945f2c710975c0f43b3c126a053e58a4f210831
Author: Florian Müllner <fmuellner gnome org>
Date:   Mon Feb 22 18:48:18 2016 +0100

    connectionDetails: Don't allow to remove required parameters
    
    We currently prevent users from removing non-optional parameters by
    only making the "Apply" button available when required parameters
    are set. However we are about to change the dialog to a standard
    properties dialog without action buttons, so this will no longer
    work - instead, fall back to the previous value for missing required
    parameters.

 src/connections.js |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)
---
diff --git a/src/connections.js b/src/connections.js
index 5ccb10c..db8d675 100644
--- a/src/connections.js
+++ b/src/connections.js
@@ -365,9 +365,16 @@ const ConnectionDetails = new Lang.Class({
     },
 
     _updateAccount: function() {
-        let params = this._getParams();
         let account = this._account;
         let oldDetails = account.dup_parameters_vardict().deep_unpack();
+
+        // Don't allow removing non-optional parameters
+        let params = this._getParams();
+        if (!params.server)
+            params.server = this._savedServer;
+        if (!params.account)
+            params.account = this._savedNick;
+
         let [details, removed] = this._detailsFromParams(params, oldDetails);
         let vardict = GLib.Variant.new('a{sv}', details);
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]