[mcclim-cvs] CVS update: mcclim/Backends/beagle/README.txt
Duncan Rose
drose at common-lisp.net
Thu May 19 22:25:34 UTC 2005
Update of /project/mcclim/cvsroot/mcclim/Backends/beagle
In directory common-lisp.net:/tmp/cvs-serv24047/beagle
Modified Files:
README.txt
Log Message:
Some refactoring of events.lisp; made an effort to trawl for
memory allocations and ensure they're freed appropriately.
Estimate this to be around 70-80% done. Seems to give
performance and stability benefits.
Date: Fri May 20 00:25:33 2005
Author: drose
Index: mcclim/Backends/beagle/README.txt
diff -u mcclim/Backends/beagle/README.txt:1.11 mcclim/Backends/beagle/README.txt:1.12
--- mcclim/Backends/beagle/README.txt:1.11 Wed May 18 22:21:56 2005
+++ mcclim/Backends/beagle/README.txt Fri May 20 00:25:33 2005
@@ -114,9 +114,9 @@
4. -> (load "home:load-clim")
5. -> (load "home:load-clx")
6. -> (load "home:load-beagle")
-7. -> (setf climi::*default-server-path* :clx)
+7. -> (setf climi:*default-server-path* :clx)
8. -> (clim-listener:run-listener)
-9. CL-USER> (setf climi::*default-server-path* :beagle)
+9. CL-USER> (setf climi:*default-server-path* :beagle)
10. CL-USER> (clim-listener:run-listener-process)
I can get both a CLX and a Beagle Listener running simultaneously.
@@ -181,7 +181,8 @@
Actually, this ^^^ seems to work fine, but the highlighting for button
gadgets looks screwy under OS X.
(Think there is a problem with tracking rectangles not being set for
- panes. Investigation needed.)
+ panes. Another alternative relates to the calculation of pointer position
+ in the MOUSE-ENTER/EXIT event generator.)
7. Keyboard events are not handled "properly" as far as any OS X user will
@@ -201,13 +202,6 @@
like to avoid having pixmap caches for mirrors though.
-9. Foreign memory management is non-existent. This is fine whilst running
- in the same thread as the OpenMCL Listener (since we use its autorelease
- pool) but when running in a separate thread lots of warning messages
- are generated. You might find it necessary to force-quit OpenMCL after
- you've finished.
-
-
12. There's some debug output remaining in some corner cases.
@@ -284,6 +278,13 @@
It's still present in the output history, and mousing over it makes
it reappear, but still... not sure why this happens.
+
+29. Event signal-semaphore and consume-semaphore code isn't quite right;
+ if the user generates events whilst Beagle is in the middle of a
+ long-lived operation (generating a big graph, for example), some of
+ those events are 'trapped' in the queue until other events take place.
+ Looking at the code, I don't think this should happen... (but it does).
+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
FIXED STUFF PREVIOUSLY ON THE KNOWN LIMITATIONS / TODO LIST
@@ -317,6 +318,20 @@
FIXED 17.MAY.2005 DAR - the problem was we never invoked
'setf (port-keyboard-input-focus' in handling
the 'did become key' notification.
+
+-9.- Foreign memory management is non-existent. This is fine whilst running
+ in the same thread as the OpenMCL Listener (since we use its autorelease
+ pool) but when running in a separate thread lots of warning messages
+ are generated. You might find it necessary to force-quit OpenMCL after
+ you've finished.
+
+ UPDATE: have made one pass ensuring heap allocated memory (with
+ MAKE-RECORD) is free'd, and that retained objects are released. Things
+ seem much better now but I'm sure I overlooked a few.
+ Moving this to 'resolved' (but keep eyes open for more occurrences ;-)
+
+ Note: this also seems to have given a bit of a speed-boost; perhaps we
+ avoid swapping, or have cut down on GC overhead.
-10.- Text sizes aren't calculated correctly; when multiple lines are output
together, the bottom of one line can be overwritten by the top of the
More information about the Mcclim-cvs
mailing list