2007-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
+ * button.el (make-text-button): Add explicit `button' property.
+ (default-button): Don't put a `button' property on it.
+
* progmodes/python.el (python-mode): Skip comments when parsing.
* vc-arch.el (vc-with-current-file-buffer): New macro.
;; Prevent insertions adjacent to the text-property buttons from
;; inheriting its properties.
(put 'default-button 'rear-nonsticky t)
-;; Text property buttons don't have a `button' property of their own, so
-;; they inherit this.
-(put 'default-button 'button t)
;; A `category-symbol' property for the default button type
(put 'button 'button-category-symbol 'default-button)
(setcar (cdr type-entry)
(button-category-symbol (car (cdr type-entry))))))
;; Now add all the text properties at once
- (add-text-properties beg end properties)
+ (add-text-properties beg end
+ ;; Each button should have a non-eq `button'
+ ;; property so that next-single-property-change can
+ ;; detect boundaries reliably.
+ (cons 'button (cons (list t) properties)))
;; Return something that can be used to get at the button.
beg)