mirror of
				https://github.com/liberatedsystems/Sideband_CE.git
				synced 2024-09-03 04:13:27 +02:00 
			
		
		
		
	Added interface mode settings when transport is active
This commit is contained in:
		
							parent
							
								
									a55143d2c8
								
							
						
					
					
						commit
						4593286589
					
				@ -10,7 +10,7 @@ source.exclude_patterns = app_storage/*,venv/*,Makefile,./Makefil*,requirements,
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
version.regex = __version__ = ['"](.*)['"]
 | 
					version.regex = __version__ = ['"](.*)['"]
 | 
				
			||||||
version.filename = %(source.dir)s/main.py
 | 
					version.filename = %(source.dir)s/main.py
 | 
				
			||||||
android.numeric_version = 20221016
 | 
					android.numeric_version = 20221018
 | 
				
			||||||
 | 
					
 | 
				
			||||||
requirements = python3==3.9.5,hostpython3==3.9.5,cryptography,cffi,pycparser,kivy==2.1.0,pygments,sdl2,sdl2_ttf==2.0.15,pillow,lxmf==0.1.9,netifaces,libbz2,pydenticon,usb4a,usbserial4a
 | 
					requirements = python3==3.9.5,hostpython3==3.9.5,cryptography,cffi,pycparser,kivy==2.1.0,pygments,sdl2,sdl2_ttf==2.0.15,pillow,lxmf==0.1.9,netifaces,libbz2,pydenticon,usb4a,usbserial4a
 | 
				
			||||||
p4a.local_recipes = ../Others/python-for-android/pythonforandroid/recipes
 | 
					p4a.local_recipes = ../Others/python-for-android/pythonforandroid/recipes
 | 
				
			||||||
 | 
				
			|||||||
@ -1,6 +1,6 @@
 | 
				
			|||||||
__debug_build__ = False
 | 
					__debug_build__ = False
 | 
				
			||||||
__disable_shaders__ = True
 | 
					__disable_shaders__ = True
 | 
				
			||||||
__version__ = "0.2.4"
 | 
					__version__ = "0.2.5"
 | 
				
			||||||
__variant__ = "beta"
 | 
					__variant__ = "beta"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import sys
 | 
					import sys
 | 
				
			||||||
@ -1044,6 +1044,9 @@ class SidebandApp(MDApp):
 | 
				
			|||||||
            def con_collapse_serial(collapse=True):
 | 
					            def con_collapse_serial(collapse=True):
 | 
				
			||||||
                self.widget_hide(self.root.ids.connectivity_serial_fields, collapse)
 | 
					                self.widget_hide(self.root.ids.connectivity_serial_fields, collapse)
 | 
				
			||||||
                
 | 
					                
 | 
				
			||||||
 | 
					            def con_collapse_transport(collapse=True):
 | 
				
			||||||
 | 
					                self.widget_hide(self.root.ids.connectivity_transport_fields, collapse)
 | 
				
			||||||
 | 
					                
 | 
				
			||||||
            def save_connectivity(sender=None, event=None):
 | 
					            def save_connectivity(sender=None, event=None):
 | 
				
			||||||
                self.sideband.config["connect_transport"] = self.root.ids.connectivity_enable_transport.active
 | 
					                self.sideband.config["connect_transport"] = self.root.ids.connectivity_enable_transport.active
 | 
				
			||||||
                self.sideband.config["connect_local"] = self.root.ids.connectivity_use_local.active
 | 
					                self.sideband.config["connect_local"] = self.root.ids.connectivity_use_local.active
 | 
				
			||||||
@ -1071,6 +1074,13 @@ class SidebandApp(MDApp):
 | 
				
			|||||||
                self.sideband.config["connect_modem_ifac_netname"] = self.root.ids.connectivity_modem_ifac_netname.text
 | 
					                self.sideband.config["connect_modem_ifac_netname"] = self.root.ids.connectivity_modem_ifac_netname.text
 | 
				
			||||||
                self.sideband.config["connect_modem_ifac_passphrase"] = self.root.ids.connectivity_modem_ifac_passphrase.text
 | 
					                self.sideband.config["connect_modem_ifac_passphrase"] = self.root.ids.connectivity_modem_ifac_passphrase.text
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                self.sideband.config["connect_ifmode_local"] = self.root.ids.connectivity_local_ifmode.text.lower()
 | 
				
			||||||
 | 
					                self.sideband.config["connect_ifmode_tcp"] = self.root.ids.connectivity_tcp_ifmode.text.lower()
 | 
				
			||||||
 | 
					                self.sideband.config["connect_ifmode_i2p"] = self.root.ids.connectivity_i2p_ifmode.text.lower()
 | 
				
			||||||
 | 
					                self.sideband.config["connect_ifmode_rnode"] = self.root.ids.connectivity_rnode_ifmode.text.lower()
 | 
				
			||||||
 | 
					                self.sideband.config["connect_ifmode_modem"] = self.root.ids.connectivity_modem_ifmode.text.lower()
 | 
				
			||||||
 | 
					                self.sideband.config["connect_ifmode_serial"] = self.root.ids.connectivity_serial_ifmode.text.lower()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                con_collapse_local(collapse=not self.root.ids.connectivity_use_local.active)
 | 
					                con_collapse_local(collapse=not self.root.ids.connectivity_use_local.active)
 | 
				
			||||||
                con_collapse_tcp(collapse=not self.root.ids.connectivity_use_tcp.active)
 | 
					                con_collapse_tcp(collapse=not self.root.ids.connectivity_use_tcp.active)
 | 
				
			||||||
                con_collapse_i2p(collapse=not self.root.ids.connectivity_use_i2p.active)
 | 
					                con_collapse_i2p(collapse=not self.root.ids.connectivity_use_i2p.active)
 | 
				
			||||||
@ -1078,6 +1088,7 @@ class SidebandApp(MDApp):
 | 
				
			|||||||
                con_collapse_bluetooth(collapse=not self.root.ids.connectivity_use_bluetooth.active)
 | 
					                con_collapse_bluetooth(collapse=not self.root.ids.connectivity_use_bluetooth.active)
 | 
				
			||||||
                con_collapse_modem(collapse=not self.root.ids.connectivity_use_modem.active)
 | 
					                con_collapse_modem(collapse=not self.root.ids.connectivity_use_modem.active)
 | 
				
			||||||
                con_collapse_serial(collapse=not self.root.ids.connectivity_use_serial.active)
 | 
					                con_collapse_serial(collapse=not self.root.ids.connectivity_use_serial.active)
 | 
				
			||||||
 | 
					                con_collapse_transport(collapse=not self.sideband.config["connect_transport"])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                self.sideband.save_configuration()
 | 
					                self.sideband.save_configuration()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -1115,6 +1126,37 @@ class SidebandApp(MDApp):
 | 
				
			|||||||
                if not sender.focus:
 | 
					                if not sender.focus:
 | 
				
			||||||
                    save_connectivity(sender, event)
 | 
					                    save_connectivity(sender, event)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            def ifmode_validate(sender=None, event=None):
 | 
				
			||||||
 | 
					                if not sender.focus:
 | 
				
			||||||
 | 
					                    all_valid = True
 | 
				
			||||||
 | 
					                    iftypes = ["local", "tcp", "i2p", "rnode", "modem", "serial"]
 | 
				
			||||||
 | 
					                    for iftype in iftypes:
 | 
				
			||||||
 | 
					                        element = self.root.ids["connectivity_"+iftype+"_ifmode"]
 | 
				
			||||||
 | 
					                        modes = ["full", "gateway", "access point", "roaming", "boundary"]
 | 
				
			||||||
 | 
					                        value = element.text.lower()
 | 
				
			||||||
 | 
					                        if value in ["", "f"] or value.startswith("fu"):
 | 
				
			||||||
 | 
					                            value = "full"
 | 
				
			||||||
 | 
					                        elif value in ["g", "gw"] or value.startswith("ga"):
 | 
				
			||||||
 | 
					                            value = "gateway"
 | 
				
			||||||
 | 
					                        elif value in ["a", "ap", "a p", "accesspoint", "access point", "ac", "acc", "acce", "acces"] or value.startswith("access"):
 | 
				
			||||||
 | 
					                            value = "access point"
 | 
				
			||||||
 | 
					                        elif value in ["r"] or value.startswith("ro"):
 | 
				
			||||||
 | 
					                            value = "roaming"
 | 
				
			||||||
 | 
					                        elif value in ["b", "edge"] or value.startswith("bo"):
 | 
				
			||||||
 | 
					                            value = "boundary"
 | 
				
			||||||
 | 
					                        else:
 | 
				
			||||||
 | 
					                            value = "full"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        if value in modes:
 | 
				
			||||||
 | 
					                            element.text = value.capitalize()
 | 
				
			||||||
 | 
					                            element.error = False
 | 
				
			||||||
 | 
					                        else:
 | 
				
			||||||
 | 
					                            element.error = True
 | 
				
			||||||
 | 
					                            all_valid = False
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    if all_valid:
 | 
				
			||||||
 | 
					                        save_connectivity(sender, event)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            if RNS.vendor.platformutils.get_platform() == "android":
 | 
					            if RNS.vendor.platformutils.get_platform() == "android":
 | 
				
			||||||
                if not self.sideband.getpersistent("service.is_controlling_connectivity"):
 | 
					                if not self.sideband.getpersistent("service.is_controlling_connectivity"):
 | 
				
			||||||
                    info =  "Sideband is connected via a shared Reticulum instance running on this system.\n\n"
 | 
					                    info =  "Sideband is connected via a shared Reticulum instance running on this system.\n\n"
 | 
				
			||||||
@ -1128,7 +1170,6 @@ class SidebandApp(MDApp):
 | 
				
			|||||||
                    info += "For changes to connectivity to take effect, you must shut down and restart Sideband.\n"
 | 
					                    info += "For changes to connectivity to take effect, you must shut down and restart Sideband.\n"
 | 
				
			||||||
                    self.root.ids.connectivity_info.text = info
 | 
					                    self.root.ids.connectivity_info.text = info
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                    self.root.ids.connectivity_enable_transport.active = self.sideband.config["connect_transport"]
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_use_local.active = self.sideband.config["connect_local"]
 | 
					                    self.root.ids.connectivity_use_local.active = self.sideband.config["connect_local"]
 | 
				
			||||||
                    con_collapse_local(collapse=not self.root.ids.connectivity_use_local.active)
 | 
					                    con_collapse_local(collapse=not self.root.ids.connectivity_use_local.active)
 | 
				
			||||||
                    self.root.ids.connectivity_local_groupid.text = self.sideband.config["connect_local_groupid"]
 | 
					                    self.root.ids.connectivity_local_groupid.text = self.sideband.config["connect_local_groupid"]
 | 
				
			||||||
@ -1156,7 +1197,6 @@ class SidebandApp(MDApp):
 | 
				
			|||||||
                    self.root.ids.connectivity_use_bluetooth.active = False
 | 
					                    self.root.ids.connectivity_use_bluetooth.active = False
 | 
				
			||||||
                    con_collapse_bluetooth(collapse=not self.root.ids.connectivity_use_bluetooth.active)
 | 
					                    con_collapse_bluetooth(collapse=not self.root.ids.connectivity_use_bluetooth.active)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_use_modem.active = self.sideband.config["connect_modem"]
 | 
					                    self.root.ids.connectivity_use_modem.active = self.sideband.config["connect_modem"]
 | 
				
			||||||
                    con_collapse_modem(collapse=not self.root.ids.connectivity_use_modem.active)
 | 
					                    con_collapse_modem(collapse=not self.root.ids.connectivity_use_modem.active)
 | 
				
			||||||
                    self.root.ids.connectivity_modem_ifac_netname.text = self.sideband.config["connect_modem_ifac_netname"]
 | 
					                    self.root.ids.connectivity_modem_ifac_netname.text = self.sideband.config["connect_modem_ifac_netname"]
 | 
				
			||||||
@ -1167,47 +1207,53 @@ class SidebandApp(MDApp):
 | 
				
			|||||||
                    self.root.ids.connectivity_serial_ifac_netname.text = self.sideband.config["connect_serial_ifac_netname"]
 | 
					                    self.root.ids.connectivity_serial_ifac_netname.text = self.sideband.config["connect_serial_ifac_netname"]
 | 
				
			||||||
                    self.root.ids.connectivity_serial_ifac_passphrase.text = self.sideband.config["connect_serial_ifac_passphrase"]
 | 
					                    self.root.ids.connectivity_serial_ifac_passphrase.text = self.sideband.config["connect_serial_ifac_passphrase"]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_enable_transport.active = self.sideband.config["connect_transport"]
 | 
				
			||||||
 | 
					                    con_collapse_transport(collapse=not self.sideband.config["connect_transport"])
 | 
				
			||||||
                    self.root.ids.connectivity_enable_transport.bind(active=save_connectivity)
 | 
					                    self.root.ids.connectivity_enable_transport.bind(active=save_connectivity)
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_local_ifmode.text = self.sideband.config["connect_ifmode_local"].capitalize()
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_tcp_ifmode.text = self.sideband.config["connect_ifmode_tcp"].capitalize()
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_i2p_ifmode.text = self.sideband.config["connect_ifmode_i2p"].capitalize()
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_rnode_ifmode.text = self.sideband.config["connect_ifmode_rnode"].capitalize()
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_modem_ifmode.text = self.sideband.config["connect_ifmode_modem"].capitalize()
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_serial_ifmode.text = self.sideband.config["connect_ifmode_serial"].capitalize()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                    self.root.ids.connectivity_use_local.bind(active=save_connectivity)
 | 
					                    self.root.ids.connectivity_use_local.bind(active=save_connectivity)
 | 
				
			||||||
                    self.root.ids.connectivity_local_groupid.bind(on_text_validate=save_connectivity)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_local_ifac_netname.bind(on_text_validate=save_connectivity)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_local_ifac_passphrase.bind(on_text_validate=save_connectivity)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_use_tcp.bind(active=save_connectivity)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_tcp_host.bind(on_text_validate=save_connectivity)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_tcp_port.bind(on_text_validate=save_connectivity)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_tcp_ifac_netname.bind(on_text_validate=save_connectivity)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_tcp_ifac_passphrase.bind(on_text_validate=save_connectivity)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_use_i2p.bind(active=save_connectivity)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_i2p_b32.bind(on_text_validate=save_connectivity)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_i2p_ifac_netname.bind(on_text_validate=save_connectivity)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_i2p_ifac_passphrase.bind(on_text_validate=save_connectivity)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_rnode_ifac_netname.bind(on_text_validate=save_connectivity)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_rnode_ifac_passphrase.bind(on_text_validate=save_connectivity)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_use_bluetooth.bind(active=save_connectivity)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_use_rnode.bind(active=serial_connectivity_save)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_use_modem.bind(active=serial_connectivity_save)
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_use_serial.bind(active=serial_connectivity_save)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                    self.root.ids.connectivity_local_groupid.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_local_groupid.bind(focus=focus_save)
 | 
				
			||||||
                    self.root.ids.connectivity_local_ifac_netname.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_local_ifac_netname.bind(focus=focus_save)
 | 
				
			||||||
                    self.root.ids.connectivity_local_ifac_passphrase.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_local_ifac_passphrase.bind(focus=focus_save)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_use_tcp.bind(active=save_connectivity)
 | 
				
			||||||
                    self.root.ids.connectivity_tcp_host.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_tcp_host.bind(focus=focus_save)
 | 
				
			||||||
                    self.root.ids.connectivity_tcp_port.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_tcp_port.bind(focus=focus_save)
 | 
				
			||||||
                    self.root.ids.connectivity_tcp_ifac_netname.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_tcp_ifac_netname.bind(focus=focus_save)
 | 
				
			||||||
                    self.root.ids.connectivity_tcp_ifac_passphrase.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_tcp_ifac_passphrase.bind(focus=focus_save)
 | 
				
			||||||
 | 
					                    
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_use_i2p.bind(active=save_connectivity)
 | 
				
			||||||
                    self.root.ids.connectivity_i2p_b32.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_i2p_b32.bind(focus=focus_save)
 | 
				
			||||||
                    self.root.ids.connectivity_i2p_ifac_netname.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_i2p_ifac_netname.bind(focus=focus_save)
 | 
				
			||||||
                    self.root.ids.connectivity_i2p_ifac_passphrase.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_i2p_ifac_passphrase.bind(focus=focus_save)
 | 
				
			||||||
 | 
					                    
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_use_rnode.bind(active=serial_connectivity_save)
 | 
				
			||||||
                    self.root.ids.connectivity_rnode_ifac_netname.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_rnode_ifac_netname.bind(focus=focus_save)
 | 
				
			||||||
                    self.root.ids.connectivity_rnode_ifac_passphrase.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_rnode_ifac_passphrase.bind(focus=focus_save)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_use_modem.bind(active=serial_connectivity_save)
 | 
				
			||||||
                    self.root.ids.connectivity_modem_ifac_netname.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_modem_ifac_netname.bind(focus=focus_save)
 | 
				
			||||||
                    self.root.ids.connectivity_modem_ifac_passphrase.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_modem_ifac_passphrase.bind(focus=focus_save)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_use_serial.bind(active=serial_connectivity_save)
 | 
				
			||||||
                    self.root.ids.connectivity_serial_ifac_netname.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_serial_ifac_netname.bind(focus=focus_save)
 | 
				
			||||||
                    self.root.ids.connectivity_serial_ifac_passphrase.bind(focus=focus_save)
 | 
					                    self.root.ids.connectivity_serial_ifac_passphrase.bind(focus=focus_save)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_local_ifmode.bind(focus=ifmode_validate)
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_tcp_ifmode.bind(focus=ifmode_validate)
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_i2p_ifmode.bind(focus=ifmode_validate)
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_rnode_ifmode.bind(focus=ifmode_validate)
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_modem_ifmode.bind(focus=ifmode_validate)
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_serial_ifmode.bind(focus=ifmode_validate)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    self.root.ids.connectivity_use_bluetooth.bind(active=save_connectivity)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            else:
 | 
					            else:
 | 
				
			||||||
                info = ""
 | 
					                info = ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -208,6 +208,13 @@ class SidebandCore():
 | 
				
			|||||||
        self.config["connect_modem"] = False
 | 
					        self.config["connect_modem"] = False
 | 
				
			||||||
        self.config["connect_modem_ifac_netname"] = ""
 | 
					        self.config["connect_modem_ifac_netname"] = ""
 | 
				
			||||||
        self.config["connect_modem_ifac_passphrase"] = ""
 | 
					        self.config["connect_modem_ifac_passphrase"] = ""
 | 
				
			||||||
 | 
					        self.config["connect_ifmode_local"] = "full"
 | 
				
			||||||
 | 
					        self.config["connect_ifmode_tcp"] = "full"
 | 
				
			||||||
 | 
					        self.config["connect_ifmode_i2p"] = "full"
 | 
				
			||||||
 | 
					        self.config["connect_ifmode_rnode"] = "full"
 | 
				
			||||||
 | 
					        self.config["connect_ifmode_modem"] = "full"
 | 
				
			||||||
 | 
					        self.config["connect_ifmode_serial"] = "full"
 | 
				
			||||||
 | 
					        self.config["connect_ifmode_bluetooth"] = "full"
 | 
				
			||||||
        # Hardware
 | 
					        # Hardware
 | 
				
			||||||
        self.config["hw_rnode_frequency"] = None
 | 
					        self.config["hw_rnode_frequency"] = None
 | 
				
			||||||
        self.config["hw_rnode_modulation"] = "LoRa"
 | 
					        self.config["hw_rnode_modulation"] = "LoRa"
 | 
				
			||||||
@ -264,6 +271,7 @@ class SidebandCore():
 | 
				
			|||||||
            self.config["lxmf_sync_interval"] = 43200
 | 
					            self.config["lxmf_sync_interval"] = 43200
 | 
				
			||||||
        if not "notifications_on" in self.config:
 | 
					        if not "notifications_on" in self.config:
 | 
				
			||||||
            self.config["notifications_on"] = True
 | 
					            self.config["notifications_on"] = True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if not "connect_transport" in self.config:
 | 
					        if not "connect_transport" in self.config:
 | 
				
			||||||
            self.config["connect_transport"] = False
 | 
					            self.config["connect_transport"] = False
 | 
				
			||||||
        if not "connect_rnode" in self.config:
 | 
					        if not "connect_rnode" in self.config:
 | 
				
			||||||
@ -284,6 +292,22 @@ class SidebandCore():
 | 
				
			|||||||
            self.config["connect_modem_ifac_netname"] = ""
 | 
					            self.config["connect_modem_ifac_netname"] = ""
 | 
				
			||||||
        if not "connect_modem_ifac_passphrase" in self.config:
 | 
					        if not "connect_modem_ifac_passphrase" in self.config:
 | 
				
			||||||
            self.config["connect_modem_ifac_passphrase"] = ""
 | 
					            self.config["connect_modem_ifac_passphrase"] = ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if not "connect_ifmode_local" in self.config:
 | 
				
			||||||
 | 
					            self.config["connect_ifmode_local"] = "full"
 | 
				
			||||||
 | 
					        if not "connect_ifmode_tcp" in self.config:
 | 
				
			||||||
 | 
					            self.config["connect_ifmode_tcp"] = "full"
 | 
				
			||||||
 | 
					        if not "connect_ifmode_i2p" in self.config:
 | 
				
			||||||
 | 
					            self.config["connect_ifmode_i2p"] = "full"
 | 
				
			||||||
 | 
					        if not "connect_ifmode_rnode" in self.config:
 | 
				
			||||||
 | 
					            self.config["connect_ifmode_rnode"] = "full"
 | 
				
			||||||
 | 
					        if not "connect_ifmode_modem" in self.config:
 | 
				
			||||||
 | 
					            self.config["connect_ifmode_modem"] = "full"
 | 
				
			||||||
 | 
					        if not "connect_ifmode_serial" in self.config:
 | 
				
			||||||
 | 
					            self.config["connect_ifmode_serial"] = "full"
 | 
				
			||||||
 | 
					        if not "connect_ifmode_bluetooth" in self.config:
 | 
				
			||||||
 | 
					            self.config["connect_ifmode_bluetooth"] = "full"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if not "hw_rnode_frequency" in self.config:
 | 
					        if not "hw_rnode_frequency" in self.config:
 | 
				
			||||||
            self.config["hw_rnode_frequency"] = None
 | 
					            self.config["hw_rnode_frequency"] = None
 | 
				
			||||||
        if not "hw_rnode_modulation" in self.config:
 | 
					        if not "hw_rnode_modulation" in self.config:
 | 
				
			||||||
 | 
				
			|||||||
@ -520,7 +520,6 @@ MDNavigationLayout:
 | 
				
			|||||||
                                font_size: dp(24)
 | 
					                                font_size: dp(24)
 | 
				
			||||||
                                # disabled: True
 | 
					                                # disabled: True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
                        MDBoxLayout:
 | 
					                        MDBoxLayout:
 | 
				
			||||||
                            orientation: "horizontal"
 | 
					                            orientation: "horizontal"
 | 
				
			||||||
                            padding: [0,0,dp(24),0]
 | 
					                            padding: [0,0,dp(24),0]
 | 
				
			||||||
@ -539,6 +538,84 @@ MDNavigationLayout:
 | 
				
			|||||||
                                pos_hint: {"center_y": 0.3}
 | 
					                                pos_hint: {"center_y": 0.3}
 | 
				
			||||||
                                # disabled: True
 | 
					                                # disabled: True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        MDBoxLayout:
 | 
				
			||||||
 | 
					                            id: connectivity_transport_fields
 | 
				
			||||||
 | 
					                            orientation: "vertical"
 | 
				
			||||||
 | 
					                            size_hint_y: None
 | 
				
			||||||
 | 
					                            height: self.minimum_height
 | 
				
			||||||
 | 
					                            padding: [0, 0, 0, dp(32)]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                            # MDLabel:
 | 
				
			||||||
 | 
					                            #     id: connectivity_modes_info
 | 
				
			||||||
 | 
					                            #     markup: True
 | 
				
			||||||
 | 
					                            #     text: "With Transport enabled, you can configure the interface modes for any enabled interfaces. Changing interface modes affects how Reticulum processes traffic and announces. For more information, refer to the Reticulum Manual."
 | 
				
			||||||
 | 
					                            #     size_hint_y: None
 | 
				
			||||||
 | 
					                            #     text_size: self.width, None
 | 
				
			||||||
 | 
					                            #     height: self.texture_size[1]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                            MDBoxLayout:
 | 
				
			||||||
 | 
					                                orientation: "horizontal"
 | 
				
			||||||
 | 
					                                spacing: "24dp"
 | 
				
			||||||
 | 
					                                size_hint_y: None
 | 
				
			||||||
 | 
					                                height: self.minimum_height
 | 
				
			||||||
 | 
					                                padding: [dp(0), dp(12), dp(0), dp(12)]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                MDTextField:
 | 
				
			||||||
 | 
					                                    id: connectivity_local_ifmode
 | 
				
			||||||
 | 
					                                    hint_text: "Local Interface Mode"
 | 
				
			||||||
 | 
					                                    text: ""
 | 
				
			||||||
 | 
					                                    font_size: dp(24)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                MDTextField:
 | 
				
			||||||
 | 
					                                    id: connectivity_tcp_ifmode
 | 
				
			||||||
 | 
					                                    hint_text: "TCP Interface Mode"
 | 
				
			||||||
 | 
					                                    text: ""
 | 
				
			||||||
 | 
					                                    font_size: dp(24)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                            MDBoxLayout:
 | 
				
			||||||
 | 
					                                orientation: "horizontal"
 | 
				
			||||||
 | 
					                                spacing: "24dp"
 | 
				
			||||||
 | 
					                                size_hint_y: None
 | 
				
			||||||
 | 
					                                height: self.minimum_height
 | 
				
			||||||
 | 
					                                padding: [dp(0), dp(12), dp(0), dp(12)]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                MDTextField:
 | 
				
			||||||
 | 
					                                    id: connectivity_i2p_ifmode
 | 
				
			||||||
 | 
					                                    hint_text: "I2P Mode"
 | 
				
			||||||
 | 
					                                    text: ""
 | 
				
			||||||
 | 
					                                    font_size: dp(24)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                MDTextField:
 | 
				
			||||||
 | 
					                                    id: connectivity_rnode_ifmode
 | 
				
			||||||
 | 
					                                    hint_text: "RNode Mode"
 | 
				
			||||||
 | 
					                                    text: ""
 | 
				
			||||||
 | 
					                                    font_size: dp(24)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                            MDBoxLayout:
 | 
				
			||||||
 | 
					                                orientation: "horizontal"
 | 
				
			||||||
 | 
					                                spacing: "24dp"
 | 
				
			||||||
 | 
					                                size_hint_y: None
 | 
				
			||||||
 | 
					                                height: self.minimum_height
 | 
				
			||||||
 | 
					                                padding: [dp(0), dp(12), dp(0), dp(12)]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                MDTextField:
 | 
				
			||||||
 | 
					                                    id: connectivity_modem_ifmode
 | 
				
			||||||
 | 
					                                    hint_text: "Modem Mode"
 | 
				
			||||||
 | 
					                                    text: ""
 | 
				
			||||||
 | 
					                                    font_size: dp(24)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                MDTextField:
 | 
				
			||||||
 | 
					                                    id: connectivity_serial_ifmode
 | 
				
			||||||
 | 
					                                    hint_text: "Serial Mode"
 | 
				
			||||||
 | 
					                                    text: ""
 | 
				
			||||||
 | 
					                                    font_size: dp(24)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                            # MDTextField:
 | 
				
			||||||
 | 
					                            #     id: connectivity_bluetooth_ifmode
 | 
				
			||||||
 | 
					                            #     hint_text: "Bluetooth Mode"
 | 
				
			||||||
 | 
					                            #     text: ""
 | 
				
			||||||
 | 
					                            #     font_size: dp(24)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
        MDScreen:
 | 
					        MDScreen:
 | 
				
			||||||
            name: "guide_screen"
 | 
					            name: "guide_screen"
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user