'Disconnect whatever handler we have for an element+event pair.
Does nothing it the handler has already been removed.'

def disconnect(self, element, event):

    signal_id = self._ids.pop((element, event), None)
    if (signal_id is not None):
        element.disconnect(signal_id)
