call gtk.gdk.window.focus() with current timestamp rather than 0. This fixes some WM issues.
This commit is contained in:
parent
abba30b439
commit
17f17267ea
|
@ -2527,7 +2527,7 @@ class Interface:
|
||||||
self.roster.draw_contact(jid, account)
|
self.roster.draw_contact(jid, account)
|
||||||
if w:
|
if w:
|
||||||
w.set_active_tab(ctrl)
|
w.set_active_tab(ctrl)
|
||||||
w.window.window.focus()
|
w.window.window.focus(gtk.get_current_event_time())
|
||||||
# Using isinstance here because we want to catch all derived types
|
# Using isinstance here because we want to catch all derived types
|
||||||
if isinstance(ctrl, ChatControlBase):
|
if isinstance(ctrl, ChatControlBase):
|
||||||
tv = ctrl.conv_textview
|
tv = ctrl.conv_textview
|
||||||
|
|
|
@ -27,6 +27,7 @@
|
||||||
##
|
##
|
||||||
|
|
||||||
import gobject
|
import gobject
|
||||||
|
import gtk
|
||||||
import os
|
import os
|
||||||
|
|
||||||
from common import gajim
|
from common import gajim
|
||||||
|
@ -377,7 +378,7 @@ class SignalObject(dbus.service.Object):
|
||||||
win = gajim.interface.msg_win_mgr.get_window(jid,
|
win = gajim.interface.msg_win_mgr.get_window(jid,
|
||||||
connected_account).window
|
connected_account).window
|
||||||
if win.get_property('visible'):
|
if win.get_property('visible'):
|
||||||
win.window.focus()
|
win.window.focus(gtk.get_current_event_time())
|
||||||
return DBUS_BOOLEAN(True)
|
return DBUS_BOOLEAN(True)
|
||||||
return DBUS_BOOLEAN(False)
|
return DBUS_BOOLEAN(False)
|
||||||
|
|
||||||
|
@ -507,7 +508,7 @@ class SignalObject(dbus.service.Object):
|
||||||
win.present()
|
win.present()
|
||||||
# preserve the 'steal focus preservation'
|
# preserve the 'steal focus preservation'
|
||||||
if self._is_first():
|
if self._is_first():
|
||||||
win.window.focus()
|
win.window.focus(gtk.get_current_event_time())
|
||||||
else:
|
else:
|
||||||
win.window.focus(long(time()))
|
win.window.focus(long(time()))
|
||||||
|
|
||||||
|
|
|
@ -2929,7 +2929,7 @@ class RosterWindow:
|
||||||
if gc_control:
|
if gc_control:
|
||||||
mw = gajim.interface.msg_win_mgr.get_window(jid, account)
|
mw = gajim.interface.msg_win_mgr.get_window(jid, account)
|
||||||
mw.set_active_tab(gc_control)
|
mw.set_active_tab(gc_control)
|
||||||
mw.window.window.focus()
|
mw.window.window.focus(gtk.get_current_event_time())
|
||||||
return
|
return
|
||||||
ctrl = gajim.interface.minimized_controls[account][jid]
|
ctrl = gajim.interface.minimized_controls[account][jid]
|
||||||
mw = gajim.interface.msg_win_mgr.get_window(jid, account)
|
mw = gajim.interface.msg_win_mgr.get_window(jid, account)
|
||||||
|
@ -2939,7 +2939,7 @@ class RosterWindow:
|
||||||
ctrl.parent_win = mw
|
ctrl.parent_win = mw
|
||||||
mw.new_tab(ctrl)
|
mw.new_tab(ctrl)
|
||||||
mw.set_active_tab(ctrl)
|
mw.set_active_tab(ctrl)
|
||||||
mw.window.window.focus()
|
mw.window.window.focus(gtk.get_current_event_time())
|
||||||
self.remove_groupchat(jid, account)
|
self.remove_groupchat(jid, account)
|
||||||
|
|
||||||
def on_edit_account(self, widget, account):
|
def on_edit_account(self, widget, account):
|
||||||
|
|
Loading…
Reference in New Issue