mirror of
				https://github.com/yggdrasil-network/yggdrasil-android.git
				synced 2025-11-04 03:05:08 +03:00 
			
		
		
		
	Fixed possibility to add duplicate servers in DNS settings.
This commit is contained in:
		
							parent
							
								
									4b8e6cf922
								
							
						
					
					
						commit
						49ac5ada93
					
				
					 3 changed files with 22 additions and 11 deletions
				
			
		| 
						 | 
					@ -60,13 +60,17 @@ class DnsActivity : AppCompatActivity() {
 | 
				
			||||||
            builder.setTitle(getString(R.string.dns_add_server_dialog_title))
 | 
					            builder.setTitle(getString(R.string.dns_add_server_dialog_title))
 | 
				
			||||||
            builder.setView(view)
 | 
					            builder.setView(view)
 | 
				
			||||||
            builder.setPositiveButton(getString(R.string.add)) { dialog, _ ->
 | 
					            builder.setPositiveButton(getString(R.string.add)) { dialog, _ ->
 | 
				
			||||||
                servers.add(input.text.toString())
 | 
					                val server = input.text.toString()
 | 
				
			||||||
 | 
					                if (!servers.contains(server)) {
 | 
				
			||||||
 | 
					                    servers.add(server)
 | 
				
			||||||
                    preferences.edit().apply {
 | 
					                    preferences.edit().apply {
 | 
				
			||||||
                        putString(KEY_DNS_SERVERS, servers.joinToString(","))
 | 
					                        putString(KEY_DNS_SERVERS, servers.joinToString(","))
 | 
				
			||||||
                        commit()
 | 
					                        commit()
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                dialog.dismiss()
 | 
					 | 
				
			||||||
                    updateConfiguredServers()
 | 
					                    updateConfiguredServers()
 | 
				
			||||||
 | 
					                } else {
 | 
				
			||||||
 | 
					                    Toast.makeText(this, R.string.dns_already_added_server, Toast.LENGTH_SHORT).show()
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            builder.setNegativeButton(getString(R.string.cancel)) { dialog, _ ->
 | 
					            builder.setNegativeButton(getString(R.string.cancel)) { dialog, _ ->
 | 
				
			||||||
                dialog.cancel()
 | 
					                dialog.cancel()
 | 
				
			||||||
| 
						 | 
					@ -158,12 +162,17 @@ class DnsActivity : AppCompatActivity() {
 | 
				
			||||||
            addButton.tag = server
 | 
					            addButton.tag = server
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            addButton.setOnClickListener { button ->
 | 
					            addButton.setOnClickListener { button ->
 | 
				
			||||||
                servers.add(button.tag as String)
 | 
					                val serverString = button.tag as String
 | 
				
			||||||
 | 
					                if (!servers.contains(serverString)) {
 | 
				
			||||||
 | 
					                    servers.add(serverString)
 | 
				
			||||||
                    preferences.edit().apply {
 | 
					                    preferences.edit().apply {
 | 
				
			||||||
                        this.putString(KEY_DNS_SERVERS, servers.joinToString(","))
 | 
					                        this.putString(KEY_DNS_SERVERS, servers.joinToString(","))
 | 
				
			||||||
                        this.commit()
 | 
					                        this.commit()
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                    updateConfiguredServers()
 | 
					                    updateConfiguredServers()
 | 
				
			||||||
 | 
					                } else {
 | 
				
			||||||
 | 
					                    Toast.makeText(this, R.string.dns_already_added_server, Toast.LENGTH_SHORT).show()
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            view.setOnLongClickListener {
 | 
					            view.setOnLongClickListener {
 | 
				
			||||||
                val builder: AlertDialog.Builder = AlertDialog.Builder(this)
 | 
					                val builder: AlertDialog.Builder = AlertDialog.Builder(this)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -22,6 +22,7 @@
 | 
				
			||||||
    <string name="dns_one_server">1 сервер</string>
 | 
					    <string name="dns_one_server">1 сервер</string>
 | 
				
			||||||
    <string name="dns_many_servers">%d сервера/серверов</string>
 | 
					    <string name="dns_many_servers">%d сервера/серверов</string>
 | 
				
			||||||
    <string name="dns_remove_title">Убрать %s?</string>
 | 
					    <string name="dns_remove_title">Убрать %s?</string>
 | 
				
			||||||
 | 
					    <string name="dns_already_added_server">Этот сервер уже добавлен.</string>
 | 
				
			||||||
    <string name="main_no_connectivity">Включено (Нет подключения)</string>
 | 
					    <string name="main_no_connectivity">Включено (Нет подключения)</string>
 | 
				
			||||||
    <string name="main_enabled">Подключено</string>
 | 
					    <string name="main_enabled">Подключено</string>
 | 
				
			||||||
    <string name="main_disabled">Выключено</string>
 | 
					    <string name="main_disabled">Выключено</string>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -22,6 +22,7 @@
 | 
				
			||||||
    <string name="dns_one_server">1 server</string>
 | 
					    <string name="dns_one_server">1 server</string>
 | 
				
			||||||
    <string name="dns_many_servers">%d server</string>
 | 
					    <string name="dns_many_servers">%d server</string>
 | 
				
			||||||
    <string name="dns_remove_title">Remove %s?</string>
 | 
					    <string name="dns_remove_title">Remove %s?</string>
 | 
				
			||||||
 | 
					    <string name="dns_already_added_server">This server is already added.</string>
 | 
				
			||||||
    <string name="main_no_connectivity">Enabled (No connectivity)</string>
 | 
					    <string name="main_no_connectivity">Enabled (No connectivity)</string>
 | 
				
			||||||
    <string name="main_enabled">Connected</string>
 | 
					    <string name="main_enabled">Connected</string>
 | 
				
			||||||
    <string name="main_disabled">Not enabled</string>
 | 
					    <string name="main_disabled">Not enabled</string>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue