Daniel Brötzmann pushed to branch master at gajim / gajim

Commits:

1 changed file:

Changes:

  • gajim/gtk/pep_config.py
    ... ... @@ -34,6 +34,8 @@
    34 34
     
    
    35 35
     from gajim.gtk.builder import get_builder
    
    36 36
     from gajim.gtk.dataform import DataFormWidget
    
    37
    +from gajim.gtk.dialogs import ConfirmationDialog
    
    38
    +from gajim.gtk.dialogs import DialogButton
    
    37 39
     from gajim.gtk.dialogs import ErrorDialog
    
    38 40
     from gajim.gtk.dialogs import WarningDialog
    
    39 41
     from gajim.gtk.util import EventHelper
    
    ... ... @@ -143,15 +145,26 @@ def _on_delete_button_clicked(self, _widget: Gtk.Button) -> None:
    143 145
             selection = self._ui.services_treeview.get_selection()
    
    144 146
             if not selection:
    
    145 147
                 return
    
    148
    +
    
    146 149
             model, iter_ = selection.get_selected()
    
    147 150
             assert isinstance(model, Gtk.ListStore)
    
    148 151
             assert iter_
    
    149 152
             node = model[iter_][0]
    
    150 153
     
    
    151
    -        self._client.get_module('PubSub').delete(
    
    152
    -            node,
    
    153
    -            callback=self._on_node_delete,
    
    154
    -            user_data=node)
    
    154
    +        def _delete():
    
    155
    +            self._client.get_module('PubSub').delete(
    
    156
    +                node,
    
    157
    +                callback=self._on_node_delete,
    
    158
    +                user_data=node)
    
    159
    +
    
    160
    +        ConfirmationDialog(
    
    161
    +            _('Delete'),
    
    162
    +            _('Delete PEP node?'),
    
    163
    +            _('Do you really want to delete this PEP node?'),
    
    164
    +            [DialogButton.make('Cancel'),
    
    165
    +             DialogButton.make('Delete',
    
    166
    +                               callback=_delete)],
    
    167
    +            transient_for=self).show()
    
    155 168
     
    
    156 169
         def _on_node_delete(self, task: Task) -> None:
    
    157 170
             node = task.get_user_data()