Simplify send or insert newline logic.

This commit is contained in:
Tomasz Miąsko 2017-01-24 12:28:55 +01:00
parent 18a3258cb5
commit ffeeb8f9f5

View file

@ -687,30 +687,18 @@ class ChatControlBase(MessageControl, ChatCommandProcessor, CommandTools):
message = message_buffer.get_text(start_iter, end_iter, False) message = message_buffer.get_text(start_iter, end_iter, False)
xhtml = self.msg_textview.get_xhtml() xhtml = self.msg_textview.get_xhtml()
if gajim.config.get('send_on_ctrl_enter'): is_ctrl_enter = bool(event_state & Gdk.ModifierType.CONTROL_MASK)
if event_state & Gdk.ModifierType.CONTROL_MASK: # CTRL + ENTER send_message = is_ctrl_enter == gajim.config.get('send_on_ctrl_enter')
send_message = True
else:
end_iter = message_buffer.get_end_iter()
message_buffer.insert_at_cursor('\n')
send_message = False
else: # send on Enter, do newline on Ctrl Enter if send_message and gajim.connections[self.account].connected < 2:
if event_state & Gdk.ModifierType.CONTROL_MASK: # Ctrl + ENTER
end_iter = message_buffer.get_end_iter()
message_buffer.insert_at_cursor('\n')
send_message = False
else: # ENTER
send_message = True
if gajim.connections[self.account].connected < 2 and send_message:
# we are not connected # we are not connected
dialogs.ErrorDialog(_('A connection is not available'), dialogs.ErrorDialog(_('A connection is not available'),
_('Your message can not be sent until you are connected.')) _('Your message can not be sent until you are connected.'))
send_message = False elif send_message:
self.send_message(message, xhtml=xhtml)
else:
message_buffer.insert_at_cursor('\n')
if send_message:
self.send_message(message, xhtml=xhtml) # send the message
return True return True
elif event.keyval == Gdk.KEY_z: # CTRL+z elif event.keyval == Gdk.KEY_z: # CTRL+z
if event_state & Gdk.ModifierType.CONTROL_MASK: if event_state & Gdk.ModifierType.CONTROL_MASK: