Skip to content

Commit

Permalink
move cursor gtk bits to gtk superclass, move clobber flag to x11 seam…
Browse files Browse the repository at this point in the history
…less server

git-svn-id: https://xpra.org/svn/Xpra/trunk@12970 3bb7dfac-3a0b-4e04-842a-767bc560f471
  • Loading branch information
totaam committed Jul 9, 2016
1 parent 290c6bb commit 37916fe
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 20 deletions.
14 changes: 14 additions & 0 deletions src/xpra/server/gtk_server_base.py
Original file line number Diff line number Diff line change
Expand Up @@ -88,8 +88,22 @@ def get_ui_info(self, proto, *args):
"display" : gtk.gdk.display_get_default().get_name(),
"root_window_size" : self.get_root_window_size(),
})
info.setdefault("cursor", {}).update(self.get_ui_cursor_info())
return info

def get_ui_cursor_info(self):
#(from UI thread)
#now cursor size info:
display = gtk.gdk.display_get_default()
pos = display.get_default_screen().get_root_window().get_pointer()[:2]
cinfo = {"position" : pos}
for prop, size in {"default" : display.get_default_cursor_size(),
"max" : display.get_maximal_cursor_size()}.items():
if size is None:
continue
cinfo["%s_size" % prop] = size
return cinfo

def do_get_info(self, proto, *args):
start = time.time()
info = ServerBase.do_get_info(self, proto, *args)
Expand Down
19 changes: 2 additions & 17 deletions src/xpra/x11/server.py
Original file line number Diff line number Diff line change
Expand Up @@ -183,10 +183,11 @@ class XpraServer(gobject.GObject, X11ServerBase):
}

def __init__(self, clobber):
self.clobber = clobber
self.root_overlay = None
self.repaint_root_overlay_due = None
gobject.GObject.__init__(self)
X11ServerBase.__init__(self, clobber)
X11ServerBase.__init__(self)

def init(self, opts):
self.xsettings_enabled = opts.xsettings
Expand Down Expand Up @@ -315,29 +316,13 @@ def get_ui_info(self, proto, wids=None, *args):
wm = self._wm
if wm:
info.setdefault("state", {})["window-manager-name"] = wm.get_net_wm_name()
info.setdefault("cursor", {}).update(self.get_ui_cursor_info())
return info

def get_ui_cursor_info(self):
#(from UI thread)
#now cursor size info:
display = gtk.gdk.display_get_default()
pos = display.get_default_screen().get_root_window().get_pointer()[:2]
cinfo = {"position" : pos}
for prop, size in {"default" : display.get_default_cursor_size(),
"max" : display.get_maximal_cursor_size()}.items():
if size is None:
continue
cinfo["%s_size" % prop] = size
return cinfo


def get_window_info(self, window):
info = X11ServerBase.get_window_info(self, window)
info.update({
"focused" : self._has_focus and self._window_to_id.get(window, -1)==self._has_focus,
"grabbed" : self._has_grab and self._window_to_id.get(window, -1)==self._has_grab,
"geometry" : window.get_property("geometry"),
"shown" : self._desktop_manager.is_shown(window),
})
try:
Expand Down
2 changes: 1 addition & 1 deletion src/xpra/x11/shadow_x11_server.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ class ShadowX11Server(GTKShadowServerBase, X11ServerBase):

def __init__(self):
GTKShadowServerBase.__init__(self)
X11ServerBase.__init__(self, False)
X11ServerBase.__init__(self)

def init(self, opts):
GTKShadowServerBase.init(self, opts)
Expand Down
4 changes: 2 additions & 2 deletions src/xpra/x11/x11_server_base.py
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,7 @@ class X11ServerBase(GTKServerBase):
(see XpraServer or XpraX11ShadowServer for actual implementations)
"""

def __init__(self, clobber):
self.clobber = clobber
def __init__(self):
self.screen_number = gtk.gdk.display_get_default().get_default_screen().get_number()
self.root_window = gtk.gdk.get_default_root_window()
GTKServerBase.__init__(self)
Expand Down Expand Up @@ -253,6 +252,7 @@ def do_get_info(self, proto, server_sources, window_ids):
def get_window_info(self, window):
info = GTKServerBase.get_window_info(self, window)
info["XShm"] = window.uses_XShm()
info["geometry"] = window.get_property("geometry")
return info


Expand Down

0 comments on commit 37916fe

Please sign in to comment.