Update of /project/mcclim/cvsroot/mcclim/Drei In directory clnet:/tmp/cvs-serv23932/Drei
Modified Files: drei-redisplay.lisp lr-syntax.lisp views.lisp Log Message: Fixed obscure Lisp syntax redisplay issue that could cause trouble with literal objects.
--- /project/mcclim/cvsroot/mcclim/Drei/drei-redisplay.lisp 2008/02/16 10:30:10 1.66 +++ /project/mcclim/cvsroot/mcclim/Drei/drei-redisplay.lisp 2008/02/17 14:54:47 1.67 @@ -442,8 +442,7 @@ (unless (stroke-modified stroke) (incf (stroke-start-offset stroke) line-change) (incf (stroke-end-offset stroke) line-change) - (when (or (null (stroke-start-offset stroke)) - (/= (stroke-start-offset stroke) offset)) + (when (/= (stroke-start-offset stroke) offset) (invalidate-stroke stroke :modified t))) (prog1 (stroke-pump view stroke pump-state) (incf (line-stroke-count line)) --- /project/mcclim/cvsroot/mcclim/Drei/lr-syntax.lisp 2008/02/11 22:50:05 1.18 +++ /project/mcclim/cvsroot/mcclim/Drei/lr-syntax.lisp 2008/02/17 14:54:47 1.19 @@ -559,6 +559,9 @@ (line-end-offset (end-offset line))) (flet ((finish (new-offset symbol &optional stroke-drawing-options sticky-p) (setf start-symbol symbol) + (loop until (> (frame-end-offset (first drawing-options)) + new-offset) + do (pop drawing-options)) (unless (null stroke-drawing-options) (push (if (frame-sticky-p (first drawing-options)) (make-drawing-options-frame --- /project/mcclim/cvsroot/mcclim/Drei/views.lisp 2008/02/16 10:30:10 1.41 +++ /project/mcclim/cvsroot/mcclim/Drei/views.lisp 2008/02/17 14:54:47 1.42 @@ -1088,7 +1088,8 @@ for (start . end) in invalid-regions do (as-region (start end) (when (overlaps start end top-offset bot-offset) - (invalidate-strokes-in-region view start end :modified t))))) + (invalidate-strokes-in-region view start end + :modified t :to-line-end t)))))
(defmethod display-drei-view-contents :around (stream (view textual-drei-syntax-view)) (let ((invalid-regions (invalidate-strokes view (syntax view))))