Philipp Hörist pushed to branch master at gajim / gajim

Commits:

2 changed files:

Changes:

  • gajim/gtk/contact_info.py
    ... ... @@ -272,7 +272,7 @@ def _set_os_info(self, task: Task) -> None:
    272 272
                 result = task.finish()
    
    273 273
             except Exception as err:
    
    274 274
                 log.warning('Could not retrieve software version: %s', err)
    
    275
    -            return
    
    275
    +            result = None
    
    276 276
     
    
    277 277
             resource = task.get_user_data()
    
    278 278
             device_grid = self._devices[resource]
    
    ... ... @@ -285,7 +285,7 @@ def _set_entity_time(self, task: Task) -> None:
    285 285
                 entity_time = task.finish()
    
    286 286
             except Exception as err:
    
    287 287
                 log.warning('Could not retrieve entity time: %s', err)
    
    288
    -            return
    
    288
    +            entity_time = None
    
    289 289
     
    
    290 290
             resource = task.get_user_data()
    
    291 291
     
    
    ... ... @@ -464,22 +464,24 @@ def __init__(self, contact: ResourceContact) -> None:
    464 464
         def widget(self) -> Gtk.Grid:
    
    465 465
             return self._ui.devices_grid
    
    466 466
     
    
    467
    -    def set_entity_time(self, entity_time: str) -> None:
    
    468
    -        self._ui.time_value.set_text(entity_time)
    
    469
    -        self._ui.time_value.show()
    
    470
    -        self._ui.time_label.show()
    
    467
    +    def set_entity_time(self, entity_time: Optional[str]) -> None:
    
    468
    +        if entity_time is not None:
    
    469
    +            self._ui.time_value.set_text(entity_time)
    
    470
    +            self._ui.time_value.show()
    
    471
    +            self._ui.time_label.show()
    
    471 472
     
    
    472 473
             self._check_complete()
    
    473 474
     
    
    474
    -    def set_software(self, software: SoftwareVersionResult) -> None:
    
    475
    -        software_string = '%s %s' % (software.name, software.version)
    
    476
    -        self._ui.software_value.set_text(software_string)
    
    477
    -        self._ui.software_value.show()
    
    478
    -        self._ui.software_label.show()
    
    479
    -        if software.os is not None:
    
    480
    -            self._ui.system_value.set_text(software.os)
    
    481
    -            self._ui.system_value.show()
    
    482
    -            self._ui.system_label.show()
    
    475
    +    def set_software(self, software: Optional[SoftwareVersionResult]) -> None:
    
    476
    +        if software is not None:
    
    477
    +            software_string = '%s %s' % (software.name, software.version)
    
    478
    +            self._ui.software_value.set_text(software_string)
    
    479
    +            self._ui.software_value.show()
    
    480
    +            self._ui.software_label.show()
    
    481
    +            if software.os is not None:
    
    482
    +                self._ui.system_value.set_text(software.os)
    
    483
    +                self._ui.system_value.show()
    
    484
    +                self._ui.system_label.show()
    
    483 485
     
    
    484 486
             self._check_complete()
    
    485 487
     
    

  • gajim/gtk/menus.py
    ... ... @@ -407,29 +407,25 @@ def get_conv_uri_context_menu(account: str, uri: URI) -> Optional[Gtk.Menu]:
    407 407
     
    
    408 408
     
    
    409 409
     def get_roster_menu(account: str, jid: str, gateway: bool = False) -> Gio.Menu:
    
    410
    +
    
    411
    +    block_label = _('Block…')
    
    410 412
         if jid_is_blocked(account, jid):
    
    411 413
             block_label = _('Unblock')
    
    412
    -    else:
    
    413
    -        block_label = _('Block…')
    
    414
    -    menu_items = [
    
    415
    -        ('contact-info', _('Information')),
    
    416
    -        ('execute-command', _('Execute Command…')),
    
    417
    -        ('block-contact', block_label),
    
    418
    -        ('remove-contact', _('Remove…')),
    
    414
    +
    
    415
    +    value = f'"{jid}"'
    
    416
    +
    
    417
    +    menuitems: MenuItemListT = [
    
    418
    +        (_('Information'), f'win.contact-info-{account}', value),
    
    419
    +        (_('Execute Command…'), f'win.execute-command-{account}', value),
    
    420
    +        (block_label, f'win.block-contact-{account}', value),
    
    421
    +        (_('Remove…'), f'win.remove-contact-{account}', value),
    
    419 422
         ]
    
    420
    -    if gateway:
    
    421
    -        menu_items.insert(1, ('modify-gateway', _('Modify Gateway…')))
    
    422 423
     
    
    423
    -    menu = Gio.Menu()
    
    424
    -    for item in menu_items:
    
    425
    -        action, label = item
    
    426
    -        action = f'win.{action}-{account}'
    
    427
    -        menuitem = Gio.MenuItem.new(label, action)
    
    428
    -        variant = GLib.Variant('s', jid)
    
    429
    -        menuitem.set_action_and_target_value(action, variant)
    
    430
    -        menu.append_item(menuitem)
    
    424
    +    if gateway:
    
    425
    +        menuitems.insert(
    
    426
    +            1, (_('Modify Gateway…'), f'win.modify-gateway-{account}', value))
    
    431 427
     
    
    432
    -    return menu
    
    428
    +    return make_menu(menuitems)
    
    433 429
     
    
    434 430
     
    
    435 431
     def get_subscription_menu(account: str, jid: JID) -> Gio.Menu: