From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Drew Adams" Newsgroups: gmane.emacs.bugs Subject: bug#8856: 24.0.50; regression: special-display-frame is no longer dedicated Date: Tue, 21 Jun 2011 17:15:10 -0700 Message-ID: <31769215C0FF4E1E89F9F641C5843E91@us.oracle.com> References: <853BDEF1AA9646ACB90724066E1A5951@us.oracle.com><4DF65024.20305@gmx.at><0C191F638279437BADFCC697A5389F9E@us.oracle.com><4DF726A1.7020804@gmx.at><8E7452317D5B4FD183FD24E0FAA14F6F@us.oracle.com><4DFB6BBF.3080504@gmx.at><6FAF5DFD0E094823A512C3E0E87B6DF5@us.oracle.com><4DFE09A7.10500@gmx.at><0137606B527A48C69E3D6C704C5C6595@us.oracle.com><4DFF1709.3010409@gmx.at><309F7428711D4BEBB6063C60808D8069@us.oracle.com><4E00C54C.5080108@gmx.at> <7AF0B637CAE14034973FBCC658AFEBD9@us.oracle.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_0116_01CC3036.C78940D0" X-Trace: dough.gmane.org 1308701790 21368 80.91.229.12 (22 Jun 2011 00:16:30 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 22 Jun 2011 00:16:30 +0000 (UTC) Cc: 8856@debbugs.gnu.org To: "'martin rudalics'" Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Jun 22 02:16:26 2011 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QZB7J-0006Rn-QS for geb-bug-gnu-emacs@m.gmane.org; Wed, 22 Jun 2011 02:16:26 +0200 Original-Received: from localhost ([::1]:48542 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QZB7J-0002jH-0Y for geb-bug-gnu-emacs@m.gmane.org; Tue, 21 Jun 2011 20:16:25 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:44704) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QZB6z-0002in-0E for bug-gnu-emacs@gnu.org; Tue, 21 Jun 2011 20:16:06 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QZB6x-0004SB-7S for bug-gnu-emacs@gnu.org; Tue, 21 Jun 2011 20:16:04 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:33352) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QZB6x-0004S6-19 for bug-gnu-emacs@gnu.org; Tue, 21 Jun 2011 20:16:03 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.69) (envelope-from ) id 1QZB6w-000227-FS; Tue, 21 Jun 2011 20:16:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: "Drew Adams" Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 22 Jun 2011 00:16:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 8856 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 8856-submit@debbugs.gnu.org id=B8856.13087017297285 (code B ref 8856); Wed, 22 Jun 2011 00:16:02 +0000 Original-Received: (at 8856) by debbugs.gnu.org; 22 Jun 2011 00:15:29 +0000 Original-Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1QZB6O-0001tS-Lc for submit@debbugs.gnu.org; Tue, 21 Jun 2011 20:15:28 -0400 Original-Received: from rcsinet10.oracle.com ([148.87.113.121]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1QZB6N-0001lD-8M for 8856@debbugs.gnu.org; Tue, 21 Jun 2011 20:15:27 -0400 Original-Received: from rtcsinet22.oracle.com (rtcsinet22.oracle.com [66.248.204.30]) by rcsinet10.oracle.com (Switch-3.4.4/Switch-3.4.2) with ESMTP id p5M0FJwY011661 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Wed, 22 Jun 2011 00:15:21 GMT Original-Received: from acsmt357.oracle.com (acsmt357.oracle.com [141.146.40.157]) by rtcsinet22.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id p5M0FIPX025913 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 22 Jun 2011 00:15:19 GMT Original-Received: from abhmt004.oracle.com (abhmt004.oracle.com [141.146.116.13]) by acsmt357.oracle.com (8.12.11.20060308/8.12.11) with ESMTP id p5M0FD62029462; Tue, 21 Jun 2011 19:15:13 -0500 Original-Received: from dradamslap1 (/10.159.50.205) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Tue, 21 Jun 2011 17:15:08 -0700 X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <7AF0B637CAE14034973FBCC658AFEBD9@us.oracle.com> Thread-Index: AcwwMJAJgbB4AcwWRUKQOUT5Wc2+IgABpU7gAA6Nv/A= X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6109 X-Source-IP: rtcsinet22.oracle.com [66.248.204.30] X-CT-RefId: str=0001.0A090202.4E013419.00E5:SCFSTAT5015188, ss=1, re=-6.300, fgs=0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list Resent-Date: Tue, 21 Jun 2011 20:16:02 -0400 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:47396 Archived-At: This is a multi-part message in MIME format. ------=_NextPart_000_0116_01CC3036.C78940D0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit > 3. I do not see the read-only-error problem I reported > earlier today from using my full setup, so this pared-down > test is no longer sufficient to get that. I also do not see > that error if I use the original recipe, with just hexrgb.el > and oneonone.el. So I'll have to start again from my full > setup and pare down to something smaller. I cannot do that > right away, however. OK, I've now pared down from my full setup again. Took quite a while. Use the attached file, starting Emacs, as before, this way, where the first load file is your latest window.el: runemacs.exe -Q --debug-init -l "window-2011-06-21a-MARTIN.el" -l "throw-three.el" -f "1on1-emacs" Then, as before (but no need to exit to top level before typing more chars): M-x f TAB o When you hit TAB, *Completions* is shown in its frame, as expected. As soon as you hit the second char (`o'), you get the read-only error. Note: In the file, both of these two lines are necessary, to cause the error: (add-hook 'post-command-hook '1on1-fit-minibuffer-frame) (setq w32-grab-focus-on-raise nil) The second is of course Windows-specific. If I comment that out then the error is not raised, but instead when I hit `o' the focus just changes to the minibuffer (no `o' char appears in the minibuffer at this point). I can tell that the focus changes because the frame border shows that (the active frame border is a diff color from inactive frame borders - this is a window mgr thing, not an Emacs thing). Then, if I hit `o' a second time it (a single `o' is inserted in the minibuffer. Thx/HTH. ------=_NextPart_000_0116_01CC3036.C78940D0 Content-Type: application/octet-stream; name="throw-three.el" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="throw-three.el" (setq debug-on-error t)=0A= =0A= (load-file "c:/drews-lisp-20/hexrgb.el")=0A= (load-file "c:/drews-lisp-20/fit-frame.el")=0A= =0A= =0A= ;;; Minibuffer frame: ********************************=0A= ;;;=0A= (defvar 1on1-minibuffer-frame nil "")=0A= =0A= (defcustom 1on1-minibuffer-frame-alist=0A= (list=0A= (assq 'foreground-color minibuffer-frame-alist)=0A= (or (assq 'background-color minibuffer-frame-alist)=0A= (cons 'background-color "LightBlue"))=0A= (assq 'font minibuffer-frame-alist)=0A= (assq 'mouse-color minibuffer-frame-alist)=0A= (assq 'cursor-color minibuffer-frame-alist)=0A= (or (assq 'menu-bar-lines minibuffer-frame-alist)=0A= (cons 'menu-bar-lines 0))=0A= (or (assq 'left minibuffer-frame-alist)=0A= (cons 'left 0))=0A= (or (assq 'height minibuffer-frame-alist)=0A= (cons 'height 2))=0A= (or (assq 'icon-type minibuffer-frame-alist)=0A= (cons 'icon-type (< emacs-major-version 21))) ; `t' for Emacs 21 = too?=0A= (or (assq 'minibuffer minibuffer-frame-alist)=0A= (cons 'minibuffer 'only))=0A= (or (assq 'user-position minibuffer-frame-alist)=0A= (cons 'user-position t))=0A= (or (assq 'vertical-scroll-bars minibuffer-frame-alist) ; No scroll = bar.=0A= (cons 'vertical-scroll-bars nil))=0A= (or (assq 'name minibuffer-frame-alist)=0A= (cons 'name "Emacs Minibuffer")))=0A= ""=0A= :type '(repeat (cons :format "%v" (symbol :tag "Frame Parameter") = (sexp :tag "Value")))=0A= :group 'One-On-One)=0A= =0A= ;;; *Completions* frame: ********************************=0A= (defcustom 1on1-default-frame-alist=0A= (list=0A= (assq 'foreground-color default-frame-alist)=0A= (or (assq 'background-color default-frame-alist)=0A= (cons 'background-color "LightBlue"))=0A= (assq 'font default-frame-alist)=0A= (assq 'mouse-color default-frame-alist)=0A= (assq 'cursor-color default-frame-alist)=0A= (assq 'cursor-type default-frame-alist)=0A= (or (assq 'menu-bar-lines default-frame-alist)=0A= (cons 'menu-bar-lines 1))=0A= (or (assq 'top default-frame-alist)=0A= (cons 'top 0))=0A= (or (assq 'left default-frame-alist)=0A= (cons 'left 0))=0A= (or (assq 'width default-frame-alist)=0A= (cons 'width 80))=0A= (or (assq 'height default-frame-alist)=0A= (cons 'height 35))=0A= (or (assq 'minibuffer default-frame-alist)=0A= (cons 'minibuffer nil))=0A= (or (assq 'user-position default-frame-alist)=0A= (cons 'user-position t))=0A= (or (assq 'vertical-scroll-bars default-frame-alist)=0A= (cons 'vertical-scroll-bars 'right))=0A= (or (assq 'icon-type default-frame-alist)=0A= (cons 'icon-type (< emacs-major-version 21))) ; `t' for Emacs 21 = too?=0A= (or (assq 'tool-bar-lines default-frame-alist)=0A= (cons 'tool-bar-lines 1)) ; Emacs 21+=0A= (if (cdr (assq 'left-fringe default-frame-alist))=0A= (assq 'left-fringe default-frame-alist)=0A= (cons 'left-fringe 0)) ; Emacs 21+=0A= (if (cdr (assq 'right-fringe default-frame-alist))=0A= (assq 'right-fringe default-frame-alist)=0A= (cons 'right-fringe 0)) ; Emacs 21+=0A= (or (assq 'fringe default-frame-alist)=0A= (cons 'fringe 0))) ; Emacs 21, but not 21.3.50 - = REMOVE after 22.x=0A= ""=0A= :type '(repeat (cons :format "%v" (symbol :tag "Frame Parameter") = (sexp :tag "Value")))=0A= :group 'frames)=0A= =0A= ;;; Special-display frames=0A= (defcustom 1on1-special-display-frame-alist=0A= (list=0A= (assq 'font special-display-frame-alist)=0A= (or (assq 'width special-display-frame-alist)=0A= (cons 'width 80))=0A= (or (assq 'height special-display-frame-alist)=0A= (cons 'height 20))=0A= (assq 'mouse-color special-display-frame-alist)=0A= (assq 'cursor-color special-display-frame-alist)=0A= (or (assq 'menu-bar-lines special-display-frame-alist)=0A= (cons 'menu-bar-lines 1))=0A= (assq 'foreground-color special-display-frame-alist)=0A= (or (assq 'background-color special-display-frame-alist)=0A= (cons 'background-color "LightSteelBlue"))=0A= (or (assq 'top special-display-frame-alist)=0A= (cons 'top 0))=0A= (or (assq 'left special-display-frame-alist)=0A= (cons 'left 0))=0A= (or (assq 'unsplittable special-display-frame-alist)=0A= (cons 'unsplittable t))=0A= (or (assq 'user-position special-display-frame-alist)=0A= (cons 'user-position t))=0A= (or (assq 'vertical-scroll-bars special-display-frame-alist)=0A= (cons 'vertical-scroll-bars 'right)))=0A= ""=0A= :type '(repeat (cons :format "%v" (symbol :tag "Frame Parameter") = (sexp :tag "Value")))=0A= :group 'frames)=0A= =0A= (defun 1on1-emacs ()=0A= ""=0A= (interactive)=0A= (unless (if (fboundp 'display-graphic-p) (display-graphic-p) = window-system)=0A= (error "Use `1on1-emacs' only with a graphics display, not with a = text terminal"))=0A= (setq default-frame-alist (append 1on1-default-frame-alist = default-frame-alist)=0A= special-display-frame-alist (append = 1on1-special-display-frame-alist=0A= special-display-frame-alist))=0A= (add-to-list ; *Help* frame=0A= 'special-display-buffer-names=0A= (list "*Help*" '1on1-display-*Help*-frame=0A= (list (cons 'background-color "Thistle")=0A= '(height . 40))))=0A= (add-to-list ; *Completions* frame=0A= 'special-display-buffer-names=0A= `("*Completions*" 1on1-display-*Completions*-frame=0A= ((background-color . "LavenderBlush2")=0A= (menu-bar-lines . 0) (tool-bar-lines . 0)=0A= (width . 100))))=0A= (setq pop-up-frames t)=0A= ;; Minibuffer frame=0A= (setq minibuffer-frame-alist (append 1on1-minibuffer-frame-alist=0A= minibuffer-frame-alist))=0A= (if 1on1-minibuffer-frame=0A= (modify-frame-parameters 1on1-minibuffer-frame = 1on1-minibuffer-frame-alist)=0A= (setq 1on1-minibuffer-frame=0A= (make-frame 1on1-minibuffer-frame-alist)))=0A= (set-frame-width 1on1-minibuffer-frame 150)=0A= (modify-frame-parameters 1on1-minibuffer-frame `((top ,@ -50)))=0A= (setq minibuffer-auto-raise t)=0A= =0A= ;; Hooks.=0A= ;; @@@=0A= (add-hook 'post-command-hook '1on1-fit-minibuffer-frame)=0A= (setq w32-grab-focus-on-raise nil)=0A= ;; @@@=0A= )=0A= =0A= (defun 1on1-display-*Help*-frame (buf &optional args)=0A= ""=0A= (let (return-window)=0A= (setq return-window (select-window (funcall special-display-function = buf args)))=0A= (raise-frame)=0A= return-window))=0A= =0A= (defun 1on1-display-*Completions*-frame (buf &optional args)=0A= ""=0A= (let (return-window)=0A= (setq return-window (select-window (funcall special-display-function = buf args)))=0A= (raise-frame)=0A= (when (boundp '1on1-minibuffer-frame)=0A= (redirect-frame-focus (selected-frame) 1on1-minibuffer-frame))=0A= return-window))=0A= =0A= ;; @@@=0A= (defun 1on1-fit-minibuffer-frame ()=0A= ""=0A= (interactive)=0A= (when (and (active-minibuffer-window)=0A= (save-selected-window=0A= (select-window (minibuffer-window))=0A= (one-window-p nil 'selected-frame)))=0A= (let* ((frame (save-selected-window=0A= (select-window (minibuffer-window)) = (selected-frame)))=0A= (frame-height (frame-height frame)))=0A= (cond=0A= ((eq last-command '1on1-fit-minibuffer-frame)=0A= (set-frame-height frame (1+ (frame-height frame)))=0A= (modify-frame-parameters 1on1-minibuffer-frame `((top ,@ -50)))=0A= (condition-case nil (scroll-down (frame-height frame)) (error = nil)))=0A= (t=0A= (let ((window-min-height 2))=0A= (modify-frame-parameters 1on1-minibuffer-frame `((top ,@ = -50)))=0A= (condition-case nil (scroll-down (frame-height frame)) (error = nil))))))))=0A= =0A= ;; @@@=0A= =0A= =0A= =0C=0A= (load-file "c:/drews-lisp-20/window-2011-06-21a-MARTIN.el")=0A= ------=_NextPart_000_0116_01CC3036.C78940D0--