[Eclipse-cvs] CVS update: eclipse/virtual-screen.lisp
Iban Hatchondo
ihatchondo at common-lisp.net
Mon Nov 24 16:42:59 UTC 2003
Update of /project/eclipse/cvsroot/eclipse
In directory common-lisp.net:/tmp/cvs-serv18618
Modified Files:
virtual-screen.lisp
Log Message:
surround the map-or-unmap calls in change-vscreen with a with-server-grabbed to improve a bit performances.
Date: Mon Nov 24 11:42:59 2003
Author: ihatchondo
Index: eclipse/virtual-screen.lisp
diff -u eclipse/virtual-screen.lisp:1.13 eclipse/virtual-screen.lisp:1.14
--- eclipse/virtual-screen.lisp:1.13 Mon Nov 24 08:12:01 2003
+++ eclipse/virtual-screen.lisp Mon Nov 24 11:42:59 2003
@@ -1,5 +1,5 @@
;;; -*- Mode: Lisp; Package: ECLIPSE-INTERNALS -*-
-;;; $Id: virtual-screen.lisp,v 1.13 2003/11/24 13:12:01 ihatchondo Exp $
+;;; $Id: virtual-screen.lisp,v 1.14 2003/11/24 16:42:59 ihatchondo Exp $
;;;
;;; Copyright (C) 2002 Iban HATCHONDO
;;; contact : hatchond at yahoo.fr
@@ -42,6 +42,8 @@
(member :_net_wm_window_type_dock netwm-type)))))))
(defun map-or-unmap-vscreen (fun scr-num)
+ (declare (optimize (speed 3) (safety 0)))
+ (declare (type function fun))
(loop for widget being each hash-value in *widget-table*
when (application-p widget) do
(with-slots (window master) widget
@@ -109,9 +111,10 @@
(when (application-p widget)
(setf (application-wants-focus-p widget) t))))
(xlib:set-input-focus *display* :pointer-root :pointer-root)
- (with-pointer-grabbed (window nil)
- (map-or-unmap-vscreen #'xlib:unmap-window cur)
- (map-or-unmap-vscreen #'xlib:map-window new)))
+ (xlib:with-server-grabbed (*display*)
+ (with-pointer-grabbed (window nil)
+ (map-or-unmap-vscreen #'xlib:unmap-window cur)
+ (map-or-unmap-vscreen #'xlib:map-window new))))
(setf (gnome:win-workspace window) new
(netwm:net-current-desktop window) new)
(when *change-desktop-message-active-p*
More information about the Eclipse-cvs
mailing list