summaryrefslogtreecommitdiff
path: root/lisp/wid-edit.el
diff options
context:
space:
mode:
authorMiles Bader <miles@gnu.org>2005-08-26 09:51:52 +0000
committerMiles Bader <miles@gnu.org>2005-08-26 09:51:52 +0000
commitd4cccb140682cfa548a8658f905764ceb4a38cb2 (patch)
tree5230af18ee25b37efed50fa38cac1eefb47d03fc /lisp/wid-edit.el
parent5e10f34207ff594cd6570928bc0292a7b53297b8 (diff)
parentf3f01d5df3156fb408b43da0c670796c37ed084f (diff)
downloademacs-d4cccb140682cfa548a8658f905764ceb4a38cb2.tar.gz
Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-78
Merge from emacs--cvs-trunk--0 Patches applied: * emacs--cvs-trunk--0 (patch 514-518) - Update from CVS - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 104-105) - Update from CVS
Diffstat (limited to 'lisp/wid-edit.el')
-rw-r--r--lisp/wid-edit.el19
1 files changed, 9 insertions, 10 deletions
diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el
index 372b068ceaf..b11240addab 100644
--- a/lisp/wid-edit.el
+++ b/lisp/wid-edit.el
@@ -1,6 +1,7 @@
;;; wid-edit.el --- Functions for creating and using widgets -*-byte-compile-dynamic: t;-*-
;;
-;; Copyright (C) 1996,97,1999,2000,01,02,2003, 2004, 2005 Free Software Foundation, Inc.
+;; Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2003,
+;; 2004, 2005 Free Software Foundation, Inc.
;;
;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
;; Maintainer: FSF
@@ -1955,13 +1956,14 @@ the earlier input."
(args (widget-get widget :args))
(explicit (widget-get widget :explicit-choice))
current)
- (if (and explicit (equal value (widget-get widget :explicit-choice-value)))
+ (if explicit
(progn
;; If the user specified the choice for this value,
- ;; respect that choice as long as the value is the same.
+ ;; respect that choice.
(widget-put widget :children (list (widget-create-child-value
widget explicit value)))
- (widget-put widget :choice explicit))
+ (widget-put widget :choice explicit)
+ (widget-put widget :explicit-choice nil))
(while args
(setq current (car args)
args (cdr args))
@@ -2047,13 +2049,10 @@ when he invoked the menu."
(setq this-explicit t)
(widget-choose tag (reverse choices) event))))
(when current
- ;; If this was an explicit user choice,
- ;; record the choice, and the record the value it was made for.
- ;; widget-choice-value-create will respect this choice,
- ;; as long as the value is the same.
+ ;; If this was an explicit user choice, record the choice,
+ ;; so that widget-choice-value-create will respect it.
(when this-explicit
- (widget-put widget :explicit-choice current)
- (widget-put widget :explicit-choice-value (widget-get widget :value)))
+ (widget-put widget :explicit-choice current))
(widget-value-set widget (widget-default-get current))
(widget-setup)
(widget-apply widget :notify widget event)))