mirror of
				https://github.com/liberatedsystems/openCom-Companion.git
				synced 2025-07-08 05:07:21 +02:00 
			
		
		
		
	Added option to disable propagation on direct delivery failure. Updated keyboard shortcuts.
This commit is contained in:
		
							parent
							
								
									d87a58a51b
								
							
						
					
					
						commit
						4a1a5a7038
					
				@ -750,6 +750,7 @@ class SidebandApp(MDApp):
 | 
			
		||||
    def keydown_event(self, instance, keyboard, keycode, text, modifiers):
 | 
			
		||||
        if len(modifiers) > 0 and modifiers[0] == 'ctrl' and (text == "q"):
 | 
			
		||||
            self.quit_action(self)
 | 
			
		||||
        
 | 
			
		||||
        if len(modifiers) > 0 and modifiers[0] == 'ctrl' and (text == "w"):
 | 
			
		||||
            if self.root.ids.screen_manager.current == "conversations_screen":
 | 
			
		||||
                self.quit_action(self)
 | 
			
		||||
@ -757,19 +758,36 @@ class SidebandApp(MDApp):
 | 
			
		||||
                self.object_details_screen.close_action()
 | 
			
		||||
            else:
 | 
			
		||||
                self.open_conversations(direction="right")
 | 
			
		||||
        
 | 
			
		||||
        if len(modifiers) > 0 and modifiers[0] == 'ctrl' and (text == "s" or text == "d"):
 | 
			
		||||
            if self.root.ids.screen_manager.current == "messages_screen":
 | 
			
		||||
                self.message_send_action()
 | 
			
		||||
        
 | 
			
		||||
        if len(modifiers) > 0 and modifiers[0] == 'ctrl' and (text == "l"):
 | 
			
		||||
            self.announces_action(self)
 | 
			
		||||
        
 | 
			
		||||
        if len(modifiers) > 0 and modifiers[0] == 'ctrl' and (text == "m"):
 | 
			
		||||
            self.map_action(self)
 | 
			
		||||
            if self.root.ids.screen_manager.current == "messages_screen":
 | 
			
		||||
                context_dest = self.messages_view.ids.messages_scrollview.active_conversation
 | 
			
		||||
                self.map_show_peer_location(context_dest)
 | 
			
		||||
            else:
 | 
			
		||||
                self.map_action(self)
 | 
			
		||||
        
 | 
			
		||||
        if len(modifiers) > 0 and modifiers[0] == 'ctrl' and (text == "p"):
 | 
			
		||||
            self.settings_action(self)
 | 
			
		||||
        
 | 
			
		||||
        if len(modifiers) > 0 and modifiers[0] == 'ctrl' and (text == "t"):
 | 
			
		||||
            self.telemetry_action(self)
 | 
			
		||||
            if self.root.ids.screen_manager.current == "messages_screen":
 | 
			
		||||
                self.object_details_action(self.messages_view, from_conv=True)
 | 
			
		||||
            else:
 | 
			
		||||
                self.telemetry_action(self)
 | 
			
		||||
 | 
			
		||||
        if len(modifiers) > 0 and modifiers[0] == 'ctrl' and (text == "r"):
 | 
			
		||||
            self.conversations_action(self)
 | 
			
		||||
        
 | 
			
		||||
        if len(modifiers) > 0 and modifiers[0] == 'ctrl' and (text == "g"):
 | 
			
		||||
            self.guide_action(self)
 | 
			
		||||
        
 | 
			
		||||
        if len(modifiers) > 0 and modifiers[0] == 'ctrl' and (text == "n"):
 | 
			
		||||
            if self.root.ids.screen_manager.current == "conversations_screen":
 | 
			
		||||
                if not hasattr(self, "dialog_open") or not self.dialog_open:
 | 
			
		||||
@ -1386,6 +1404,10 @@ class SidebandApp(MDApp):
 | 
			
		||||
                self.sideband.config["propagation_by_default"] = self.settings_screen.ids.settings_lxmf_delivery_by_default.active
 | 
			
		||||
                self.sideband.save_configuration()
 | 
			
		||||
 | 
			
		||||
            def save_lxmf_try_propagation_on_fail(sender=None, event=None):
 | 
			
		||||
                self.sideband.config["lxmf_try_propagation_on_fail"] = self.settings_screen.ids.settings_lxmf_try_propagation_on_fail.active
 | 
			
		||||
                self.sideband.save_configuration()
 | 
			
		||||
 | 
			
		||||
            def save_lxmf_ignore_unknown(sender=None, event=None):
 | 
			
		||||
                self.sideband.config["lxmf_ignore_unknown"] = self.settings_screen.ids.settings_lxmf_ignore_unknown.active
 | 
			
		||||
                self.sideband.save_configuration()
 | 
			
		||||
@ -1473,6 +1495,9 @@ class SidebandApp(MDApp):
 | 
			
		||||
            self.settings_screen.ids.settings_lxmf_delivery_by_default.active = self.sideband.config["propagation_by_default"]
 | 
			
		||||
            self.settings_screen.ids.settings_lxmf_delivery_by_default.bind(active=save_lxmf_delivery_by_default)
 | 
			
		||||
 | 
			
		||||
            self.settings_screen.ids.settings_lxmf_try_propagation_on_fail.active = self.sideband.config["lxmf_try_propagation_on_fail"]
 | 
			
		||||
            self.settings_screen.ids.settings_lxmf_try_propagation_on_fail.bind(active=save_lxmf_try_propagation_on_fail)
 | 
			
		||||
 | 
			
		||||
            self.settings_screen.ids.settings_lxmf_ignore_unknown.active = self.sideband.config["lxmf_ignore_unknown"]
 | 
			
		||||
            self.settings_screen.ids.settings_lxmf_ignore_unknown.bind(active=save_lxmf_ignore_unknown)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -368,6 +368,8 @@ class SidebandCore():
 | 
			
		||||
            self.config["lxmf_ignore_unknown"] = False
 | 
			
		||||
        if not "lxmf_sync_interval" in self.config:
 | 
			
		||||
            self.config["lxmf_sync_interval"] = 43200
 | 
			
		||||
        if not "lxmf_try_propagation_on_fail" in self.config:
 | 
			
		||||
            self.config["lxmf_try_propagation_on_fail"] = True
 | 
			
		||||
        if not "notifications_on" in self.config:
 | 
			
		||||
            self.config["notifications_on"] = True
 | 
			
		||||
        if not "print_command" in self.config:
 | 
			
		||||
@ -902,7 +904,7 @@ class SidebandCore():
 | 
			
		||||
                if debug:
 | 
			
		||||
                    RNS.loglevel = 7
 | 
			
		||||
                else:
 | 
			
		||||
                    RNS.loglevel = 2                
 | 
			
		||||
                    RNS.loglevel = 2
 | 
			
		||||
                return True
 | 
			
		||||
            else:
 | 
			
		||||
                try:
 | 
			
		||||
@ -2681,7 +2683,8 @@ class SidebandCore():
 | 
			
		||||
            lxm.register_failed_callback(self.message_notification)
 | 
			
		||||
 | 
			
		||||
            if self.message_router.get_outbound_propagation_node() != None:
 | 
			
		||||
                lxm.try_propagation_on_fail = True
 | 
			
		||||
                if self.config["lxmf_try_propagation_on_fail"]:
 | 
			
		||||
                    lxm.try_propagation_on_fail = True
 | 
			
		||||
 | 
			
		||||
            self.message_router.handle_outbound(lxm)
 | 
			
		||||
            self.lxm_ingest(lxm, originator=True)
 | 
			
		||||
 | 
			
		||||
@ -1726,6 +1726,22 @@ MDScreen:
 | 
			
		||||
                            pos_hint: {"center_y": 0.3}
 | 
			
		||||
                            active: False
 | 
			
		||||
 | 
			
		||||
                    MDBoxLayout:
 | 
			
		||||
                        orientation: "horizontal"
 | 
			
		||||
                        size_hint_y: None
 | 
			
		||||
                        padding: [0,0,dp(24),dp(0)]
 | 
			
		||||
                        height: dp(48)
 | 
			
		||||
                        
 | 
			
		||||
                        MDLabel:
 | 
			
		||||
                            text: "Try Propagation Node on direct delivery failure"
 | 
			
		||||
                            font_style: "H6"
 | 
			
		||||
 | 
			
		||||
                        MDSwitch:
 | 
			
		||||
                            id: settings_lxmf_try_propagation_on_fail
 | 
			
		||||
                            pos_hint: {"center_y": 0.3}
 | 
			
		||||
                            disabled: False
 | 
			
		||||
                            active: False
 | 
			
		||||
 | 
			
		||||
                    MDBoxLayout:
 | 
			
		||||
                        orientation: "horizontal"
 | 
			
		||||
                        size_hint_y: None
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user