[Openmcl-cvs-notifications] r15263 - in /release/1.8/source: ./ cocoa-ide/cocoa-listener.lisp
rme at clozure.com
rme at clozure.com
Tue Mar 20 19:14:21 CDT 2012
Author: rme
Date: Tue Mar 20 19:14:21 2012
New Revision: 15263
Log:
Fix for listener buffer name conflicts from trunk.
Modified:
release/1.8/source/ (props changed)
release/1.8/source/cocoa-ide/cocoa-listener.lisp
Propchange: release/1.8/source/
---------------------------------------------------------------------------=
---
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Mar 20 19:14:21 2012
@@ -4,4 +4,4 @@
/branches/rme-logops:13875-13886
/branches/working-0711/ccl:7970-13192,13197-13198,13202,13208,13214,13235-=
13236,13239,13263,13277-13278,13290,13293-13294,13302-13306,13331-13332,133=
39,13361-13364,13379,13383,13386,13388,13409,13435-13436,13438,13440-13442,=
13460-13461,13465,13467,13476,13487,13490,13492-13493,13502-13528,13545-135=
47,13549,13557-13558
/release/1.5/source:13667
-/trunk/source:15221-15223,15225-15226,15228,15249,15259
+/trunk/source:15221-15223,15225-15226,15228,15249,15255,15259
Modified: release/1.8/source/cocoa-ide/cocoa-listener.lisp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- release/1.8/source/cocoa-ide/cocoa-listener.lisp (original)
+++ release/1.8/source/cocoa-ide/cocoa-listener.lisp Tue Mar 20 19:14:21 20=
12
@@ -426,7 +426,14 @@
(objc:defmethod (#/isDocumentEdited :<BOOL>) ((self hemlock-listener-docum=
ent))
nil)
=
-
+(defun listener-window-count ()
+ (let ((count 0)
+ (all-windows (#/windows *NSApp*)))
+ (dotimes (i (#/count all-windows) count)
+ (let* ((w (#/objectAtIndex: all-windows i))
+ (wc (#/windowController w)))
+ (when (typep wc 'hemlock-listener-window-controller)
+ (incf count))))))
=
(objc:defmethod #/init ((self hemlock-listener-document))
(let* ((doc (call-next-method)))
@@ -442,7 +449,7 @@
(hi::set-buffer-modeline-fields buffer hemlock::*listener-modeline=
-fields*)))
doc))
=
-(def-cocoa-default *initial-listener-x-pos* :float -100.0f0 "X position of=
upper-left corner of initial listener")
+(def-cocoa-default *initial-listener-x-pos* :float 100.0f0 "X position of =
upper-left corner of initial listener")
=
(def-cocoa-default *initial-listener-y-pos* :float 100.0f0 "Y position of =
upper-left corner of initial listener")
=
@@ -450,9 +457,10 @@
(defloadvar *next-listener-y-pos* nil) ; likewise
=
(objc:defmethod (#/dealloc :void) ((self hemlock-listener-document))
- (if (zerop (decf *cocoa-listener-count*))
+ (when (zerop (listener-window-count))
(setq *next-listener-x-pos* nil
- *next-listener-y-pos* nil))
+ *next-listener-y-pos* nil
+ *cocoa-listener-count* 0))
(let* ((p (hemlock-document-process self)))
(when p
(setf (hemlock-document-process self) nil)
More information about the Openmcl-cvs-notifications
mailing list