Using saved parent location: http://bzr.savannah.gnu.org/r/emacs/trunk/ Now on revision 99533. ------------------------------------------------------------ revno: 99533 committer: Nick Roberts branch nick: trunk timestamp: Fri 2010-02-19 17:55:31 +1300 message: Accommodate change of disassemble output in GDB 7.1. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2010-02-19 02:36:10 +0000 +++ lisp/ChangeLog 2010-02-19 04:55:31 +0000 @@ -1,3 +1,8 @@ +2010-02-19 Nick Roberts + + * progmodes/gdb-ui.el (gdb-assembler-handler): Accommodate change + of disassemble output in GDB 7.1. + 2010-02-19 Glenn Morris * progmodes/f90.el (f90-electric-insert): Give it a delete-selection === modified file 'lisp/progmodes/gdb-ui.el' --- lisp/progmodes/gdb-ui.el 2010-01-14 18:59:31 +0000 +++ lisp/progmodes/gdb-ui.el 2010-02-19 04:55:31 +0000 @@ -3573,18 +3573,24 @@ (setq gdb-pending-triggers (delq 'gdb-invalidate-assembler gdb-pending-triggers)) - (let ((buf (gdb-get-buffer 'gdb-assembler-buffer))) - (and buf - (with-current-buffer buf - (let* ((window (get-buffer-window buf 0)) - (p (window-point window)) - (buffer-read-only nil)) - (erase-buffer) - (insert-buffer-substring (gdb-get-buffer-create + (let ((buf (gdb-get-buffer 'gdb-partial-output-buffer))) + (with-current-buffer buf + (goto-char (point-min)) + ;; The disassemble command in GDB 7.1 onwards displays an overlay arrow. + (while (re-search-forward "\\(^ 0x\\|=> 0x\\)" nil t) + (replace-match "0x" nil nil)))) + (let ((buf (gdb-get-buffer 'gdb-assembler-buffer))) + (and buf + (with-current-buffer buf + (let* ((window (get-buffer-window buf 0)) + (p (window-point window)) + (buffer-read-only nil)) + (erase-buffer) + (insert-buffer-substring (gdb-get-buffer-create 'gdb-partial-output-buffer)) - (set-window-point window p))))) - ;; put customisation here - (gdb-assembler-custom)) + (set-window-point window p))))) + ;; put customisation here + (gdb-assembler-custom)) (defun gdb-assembler-custom () (let ((buffer (gdb-get-buffer 'gdb-assembler-buffer)) ------------------------------------------------------------ revno: 99532 committer: Glenn Morris branch nick: trunk timestamp: Thu 2010-02-18 18:36:10 -0800 message: Close bug#5593. * progmodes/f90.el (f90-electric-insert): Give it a delete-selection property. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2010-02-18 19:55:41 +0000 +++ lisp/ChangeLog 2010-02-19 02:36:10 +0000 @@ -1,3 +1,8 @@ +2010-02-19 Glenn Morris + + * progmodes/f90.el (f90-electric-insert): Give it a delete-selection + property. (Bug#5593) + 2010-02-18 Sam Steingold * vc-cvs.el (vc-cvs-merge-news): Yet another fix of message parsing. === modified file 'lisp/progmodes/f90.el' --- lisp/progmodes/f90.el 2010-02-07 20:23:20 +0000 +++ lisp/progmodes/f90.el 2010-02-19 02:36:10 +0000 @@ -1356,6 +1356,8 @@ (if auto-fill-function (f90-do-auto-fill) ; also updates line (f90-update-line))) +;; Behave like self-insert-command for delete-selection-mode (bug#5593). +(put 'f90-electric-insert 'delete-selection t) (defun f90-get-correct-indent () "Get correct indent for a line starting with line number. ------------------------------------------------------------ revno: 99531 committer: Glenn Morris branch nick: trunk timestamp: Thu 2010-02-18 18:32:36 -0800 message: * trouble.texi: Revert grammar change from previous change. diff: === modified file 'doc/emacs/trouble.texi' --- doc/emacs/trouble.texi 2010-02-18 09:04:46 +0000 +++ doc/emacs/trouble.texi 2010-02-19 02:32:36 +0000 @@ -1023,7 +1023,7 @@ rest of Emacs. The development version of Emacs can be downloaded from the -repository, where it is actively maintained by a group of developers. +repository where it is actively maintained by a group of developers. See the Emacs project page @url{http://savannah.gnu.org/projects/emacs/} for details. ------------------------------------------------------------ revno: 99530 committer: Sam Steingold branch nick: trunk timestamp: Thu 2010-02-18 14:55:41 -0500 message: (vc-cvs-merge-news): Yet another fix of message parsing. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2010-02-18 18:52:36 +0000 +++ lisp/ChangeLog 2010-02-18 19:55:41 +0000 @@ -1,3 +1,7 @@ +2010-02-18 Sam Steingold + + * vc-cvs.el (vc-cvs-merge-news): Yet another fix of message parsing. + 2010-02-18 Stefan Monnier Use abbreviated file names in bookmarks (bug#5591). === modified file 'lisp/vc-cvs.el' --- lisp/vc-cvs.el 2010-01-13 08:35:10 +0000 +++ lisp/vc-cvs.el 2010-02-18 19:55:41 +0000 @@ -459,8 +459,8 @@ (if (re-search-forward (concat "^\\([CMUP] \\)?" (regexp-quote - (substring file (length (expand-file-name - "." default-directory)))) + (substring file (1+ (length (expand-file-name + "." default-directory))))) "\\( already contains the differences between \\)?") nil t) (cond ------------------------------------------------------------ revno: 99529 committer: Stefan Monnier branch nick: trunk timestamp: Thu 2010-02-18 13:52:36 -0500 message: Use abbreviated file names in bookmarks (bug#5591). * bookmark.el (bookmark-maybe-load-default-file): Remove redundant calls to expand-file-name. (bookmark-relocate): Use abbreviated file names in bookmarks. (bookmark-load): Use abbreviated file names in messages. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2010-02-18 10:08:48 +0000 +++ lisp/ChangeLog 2010-02-18 18:52:36 +0000 @@ -1,3 +1,11 @@ +2010-02-18 Stefan Monnier + + Use abbreviated file names in bookmarks (bug#5591). + * bookmark.el (bookmark-maybe-load-default-file): Remove redundant + calls to expand-file-name. + (bookmark-relocate): Use abbreviated file names in bookmarks. + (bookmark-load): Use abbreviated file names in messages. + 2010-02-18 Michael Albinus * net/tramp.el (tramp-handle-directory-files): When FULL, do not @@ -25,8 +33,8 @@ 2010-02-16 Michael Albinus - * net/tramp.el (tramp-do-copy-or-rename-file-out-of-band): Fix - errors in copying directories. + * net/tramp.el (tramp-do-copy-or-rename-file-out-of-band): + Fix errors in copying directories. (tramp-handle-add-name-to-file, tramp-handle-copy-directory) (tramp-do-copy-or-rename-file, tramp-handle-delete-directory) (tramp-handle-delete-file) @@ -52,8 +60,7 @@ * cedet/srecode.el (srecode): * cedet/semantic.el (semantic): Put in tools and extensions group. - * nxml/nxml-mode.el (nxml-faces): Remove from font-lock-faces - group. + * nxml/nxml-mode.el (nxml-faces): Remove from font-lock-faces group. * textmodes/flyspell.el (flyspell-word): Obey the offset specified by ispell-parse-output (Bug#5575). @@ -170,8 +177,7 @@ 2010-02-08 Jose E. Marchesi * progmodes/ada-mode.el (ada-in-numeric-literal-p): New function. - (ada-adjust-case): Don't adjust case in hexadecimal number - literals. + (ada-adjust-case): Don't adjust case in hexadecimal number literals. 2010-02-08 Kenichi Handa === modified file 'lisp/bookmark.el' --- lisp/bookmark.el 2010-02-10 20:02:54 +0000 +++ lisp/bookmark.el 2010-02-18 18:52:36 +0000 @@ -958,14 +958,14 @@ (and ;; Possibly the old bookmark file, "~/.emacs-bkmrks", needs ;; to be renamed. - (file-exists-p (expand-file-name bookmark-old-default-file)) - (not (file-exists-p (expand-file-name bookmark-default-file))) - (rename-file (expand-file-name bookmark-old-default-file) - (expand-file-name bookmark-default-file))) + (file-exists-p bookmark-old-default-file) + (not (file-exists-p bookmark-default-file)) + (rename-file bookmark-old-default-file + bookmark-default-file)) ;; return t so the `and' will continue... t) - (file-readable-p (expand-file-name bookmark-default-file)) + (file-readable-p bookmark-default-file) (bookmark-load bookmark-default-file t t) (setq bookmarks-already-loaded t))) @@ -1152,10 +1152,11 @@ (bookmark-maybe-historicize-string bookmark) (bookmark-maybe-load-default-file) (let* ((bmrk-filename (bookmark-get-filename bookmark)) - (newloc (expand-file-name - (read-file-name - (format "Relocate %s to: " bookmark) - (file-name-directory bmrk-filename))))) + (newloc (abbreviate-file-name + (expand-file-name + (read-file-name + (format "Relocate %s to: " bookmark) + (file-name-directory bmrk-filename)))))) (bookmark-set-filename bookmark newloc) (setq bookmark-alist-modification-count (1+ bookmark-alist-modification-count)) @@ -1432,7 +1433,7 @@ ;;but there's no better default, and ;;I guess it's better than none at all. "~/" bookmark-default-file 'confirm))) - (setq file (expand-file-name file)) + (setq file (abbreviate-file-name (expand-file-name file))) (if (not (file-readable-p file)) (error "Cannot read bookmark file %s" file) (if (null no-msg) @@ -1453,7 +1454,8 @@ (setq bookmark-alist-modification-count (1+ bookmark-alist-modification-count))) (if (string-equal - (expand-file-name bookmark-default-file) + (abbreviate-file-name + (expand-file-name bookmark-default-file)) file) (setq bookmarks-already-loaded t)) (bookmark-bmenu-surreptitiously-rebuild-list)) ------------------------------------------------------------ revno: 99528 committer: Stefan Monnier branch nick: trunk timestamp: Thu 2010-02-18 12:02:24 -0500 message: (fatal): Add a final \n if needed (bug#5596). diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2010-02-18 07:21:15 +0000 +++ src/ChangeLog 2010-02-18 17:02:24 +0000 @@ -1,3 +1,7 @@ +2010-02-18 Stefan Monnier + + * term.c (fatal): Add a final \n if needed (bug#5596). + 2010-02-18 Chong Yidong * nsterm.m (ns_ring_bell): Revert last change (Bug#5569). @@ -8,15 +12,15 @@ 2010-02-18 Kazuhiro Ito (tiny change) - * coding.c (record_conversion_result): Handle - CODING_RESULT_INSUFFICIENT_DST. + * coding.c (record_conversion_result): + Handle CODING_RESULT_INSUFFICIENT_DST. (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on memory allocation error. 2010-02-17 Kenichi Handa - * coding.c (decode_coding_ccl): Don't setup ccl program here. Fix - for the case that the output buffer is fullfilled. + * coding.c (decode_coding_ccl): Don't setup ccl program here. + Fix for the case that the output buffer is fullfilled. (decode_coding): Setup ccl program here. Keep looping when the decoder stopped because the output buffer is fullfilled (bug#5534). @@ -27,7 +31,7 @@ * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK, bug #5571. - (XTflash): Use Gdk-routines if USE_GTK so scroll bars doesn't get + (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get overdrawn. 2010-02-10 Jan Djärv === modified file 'src/term.c' --- src/term.c 2010-01-13 08:35:10 +0000 +++ src/term.c 2010-02-18 17:02:24 +0000 @@ -3938,6 +3938,8 @@ va_start (ap, str); fprintf (stderr, "emacs: "); vfprintf (stderr, str, ap); + if (!(strlen (str) > 0 && str[strlen (str) - 1] == '\n')) + fprintf (stderr, "\n"); va_end (ap); fflush (stderr); exit (1); ------------------------------------------------------------ revno: 99527 committer: Michael Albinus branch nick: trunk timestamp: Thu 2010-02-18 11:08:48 +0100 message: (tramp-handle-directory-files): When FULL, do not expand "." and "..". Reported by Thierry Volpiatto . diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2010-02-18 10:03:12 +0000 +++ lisp/ChangeLog 2010-02-18 10:08:48 +0000 @@ -1,5 +1,11 @@ 2010-02-18 Michael Albinus + * net/tramp.el (tramp-handle-directory-files): When FULL, do not + expand "." and "..". Reported by Thierry Volpiatto + . + +2010-02-18 Michael Albinus + * net/tramp.el (tramp-handle-insert-file-contents): Set always the permissions of the temporary file to "0600". In case the remote file has no read permissions for the owner, there might be === modified file 'lisp/net/tramp.el' --- lisp/net/tramp.el 2010-02-18 10:03:12 +0000 +++ lisp/net/tramp.el 2010-02-18 10:08:48 +0000 @@ -3142,7 +3142,7 @@ "Like `directory-files' for Tramp files." ;; FILES-ONLY is valid for XEmacs only. (when (file-directory-p directory) - (setq directory (expand-file-name directory)) + (setq directory (file-name-as-directory (expand-file-name directory))) (let ((temp (nreverse (file-name-all-completions "" directory))) result item) @@ -3150,13 +3150,13 @@ (setq item (directory-file-name (pop temp))) (when (and (or (null match) (string-match match item)) (or (null files-only) - ;; files only + ;; Files only. (and (equal files-only t) (file-regular-p item)) - ;; directories only + ;; Directories only. (file-directory-p item))) - (push (if full (expand-file-name item directory) item) + (push (if full (concat directory item) item) result))) - result))) + (if nosort result (sort result 'string<))))) (defun tramp-handle-directory-files-and-attributes (directory &optional full match nosort id-format) ------------------------------------------------------------ revno: 99526 committer: Michael Albinus branch nick: trunk timestamp: Thu 2010-02-18 11:03:12 +0100 message: (tramp-handle-insert-file-contents): Set always the permissions of the temporary file to "0600". In case the remote file has no read permissions for the owner, there might be problems otherwise. Reported by Ole Laursen . diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2010-02-18 06:05:45 +0000 +++ lisp/ChangeLog 2010-02-18 10:03:12 +0000 @@ -1,4 +1,11 @@ -2010-02-18 Glenn Morris +2010-02-18 Michael Albinus + + * net/tramp.el (tramp-handle-insert-file-contents): Set always the + permissions of the temporary file to "0600". In case the remote + file has no read permissions for the owner, there might be + problems otherwise. Reported by Ole Laursen . + +22010-02-18 Glenn Morris * emacs-lisp/authors.el (authors-renamed-files-alist): Add entries for INSTALL.CVS. === modified file 'lisp/net/tramp.el' --- lisp/net/tramp.el 2010-02-16 16:03:29 +0000 +++ lisp/net/tramp.el 2010-02-18 10:03:12 +0000 @@ -4781,12 +4781,16 @@ tramp-temp-buffer-file-name) (t (file-local-copy filename))))) + ;; When the file is not readable for the owner, it + ;; cannot be inserted, even it is redable for the group + ;; or for everybody. + (set-file-modes local-copy (tramp-octal-to-decimal "0600")) + (when (and (null remote-copy) (tramp-get-method-parameter method 'tramp-copy-keep-tmpfile)) ;; We keep the local file for performance reasons, ;; useful for "rsync". - (set-file-modes local-copy (tramp-octal-to-decimal "0600")) (setq tramp-temp-buffer-file-name local-copy) (put 'tramp-temp-buffer-file-name 'permanent-local t)) @@ -8584,26 +8588,26 @@ ;; equivalent of the emacsclient -eval option in order to make this ;; reasonably unproblematic. And maybe trampclient should have some ;; way of passing credentials, like by using an SSL socket or -;; something. (David Kastrup) +;; something. (David Kastrup) ;; * Reconnect directly to a compliant shell without first going -;; through the user's default shell. (Pete Forman) +;; through the user's default shell. (Pete Forman) ;; * Make `tramp-default-user' obsolete. ;; * How can I interrupt the remote process with a signal -;; (interrupt-process seems not to work)? (Markus Triska) +;; (interrupt-process seems not to work)? (Markus Triska) ;; * Avoid the local shell entirely for starting remote processes. If ;; so, I think even a signal, when delivered directly to the local ;; SSH instance, would correctly be propagated to the remote process ;; automatically; possibly SSH would have to be started with -;; "-t". (Markus Triska) +;; "-t". (Markus Triska) ;; * It makes me wonder if tramp couldn't fall back to ssh when scp -;; isn't on the remote host. (Mark A. Hershberger) -;; * Use lsh instead of ssh. (Alfred M. Szmidt) +;; isn't on the remote host. (Mark A. Hershberger) +;; * Use lsh instead of ssh. (Alfred M. Szmidt) ;; * Implement a general server-local-variable mechanism, as there are ;; probably other variables that need different values for different ;; servers too. The user could then configure a variable (such as ;; tramp-server-local-variable-alist) to define any such variables ;; that they need to, which would then be let bound as appropriate -;; in tramp functions. (Jason Rumney) +;; in tramp functions. (Jason Rumney) ;; * Optimize out-of-band copying, when both methods are scp-like (not ;; rsync). ;; * Keep a second connection open for out-of-band methods like scp or @@ -8613,7 +8617,7 @@ ;; Unicode in Dired file names by default. Is it possible to ;; improve Tramp to set LC_ALL to "C" only for commands where Tramp ;; expects English? Or just to set LC_MESSAGES to "C" if Tramp -;; expects only English messages? (Juri Linkov) +;; expects only English messages? (Juri Linkov) ;; * Make shadowfile.el grok Tramp filenames. (Bug#4526, Bug#4846) ;; * Do not handle files with drive letter as remote. (Bug#5447) ;; * Load Tramp subpackages only when needed. (Bug#1529, Bug#5448) ------------------------------------------------------------ revno: 99525 committer: Glenn Morris branch nick: trunk timestamp: Thu 2010-02-18 01:14:12 -0800 message: * mh-acros.el: Comment fixes. diff: === modified file 'lisp/mh-e/mh-acros.el' --- lisp/mh-e/mh-acros.el 2010-01-13 08:35:10 +0000 +++ lisp/mh-e/mh-acros.el 2010-02-18 09:14:12 +0000 @@ -26,12 +26,12 @@ ;;; Commentary: ;; This file contains all macros that are used in more than one file. -;; If you run "make recompile" in CVS Emacs and see the message +;; If you run "make recompile" in Bazaar Emacs and see the message ;; "Source is newer than compiled," it is a sign that macro probably ;; needs to be moved here. ;; Historically, it was so named with a silent "m" so that it would be -;; compiled first. Otherwise, "make recompile" in CVS Emacs would use +;; compiled first. Otherwise, "make recompile" in Bazaar Emacs would use ;; compiled files with stale macro definitions. Later, no-byte-compile ;; was added to the Local Variables section to avoid this problem and ;; because it's pointless to compile a file full of macros. But we ------------------------------------------------------------ revno: 99524 committer: Glenn Morris branch nick: trunk timestamp: Thu 2010-02-18 01:11:18 -0800 message: * README: Minor fixes. diff: === modified file 'admin/README' --- admin/README 2010-01-13 08:35:10 +0000 +++ admin/README 2010-02-18 09:11:18 +0000 @@ -1,5 +1,5 @@ -Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 - Free Software Foundation, Inc. +Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, + 2010 Free Software Foundation, Inc. See the end of the file for license conditions. @@ -44,7 +44,7 @@ Install emacs quickly (`incrementally'). -** alloc-color.c +** alloc-colors.c A utility program that allocates a given number of colors on X. Can be used to debug Emacs with dense colormaps (PseudoColor). @@ -61,10 +61,6 @@ Show files added/removed between two tar files. -** revdiff - -Get CVS diffs of files. - Brief description of sub-directories: ------------------------------------------------------------ revno: 99523 committer: Glenn Morris branch nick: trunk timestamp: Thu 2010-02-18 01:08:37 -0800 message: * loadup.el: Comment fix. diff: === modified file 'lisp/loadup.el' --- lisp/loadup.el 2010-01-13 08:35:10 +0000 +++ lisp/loadup.el 2010-02-18 09:08:37 +0000 @@ -125,8 +125,8 @@ (load "case-table") (load "international/characters") (load "composite") -;; This file doesn't exist when building Emacs from CVS. It is -;; generated just after temacs is build. +;; This file doesn't exist when building a development version of Emacs +;; from the repository. It is generated just after temacs is built. (load "international/charprop.el" t) ;; Load language-specific files. ------------------------------------------------------------ revno: 99522 committer: Glenn Morris branch nick: trunk timestamp: Thu 2010-02-18 01:04:46 -0800 message: * trouble.texi (Contributing): Repository is no longer CVS. diff: === modified file 'doc/emacs/ChangeLog' --- doc/emacs/ChangeLog 2010-02-14 17:31:34 +0000 +++ doc/emacs/ChangeLog 2010-02-18 09:04:46 +0000 @@ -1,3 +1,7 @@ +2010-02-18 Glenn Morris + + * trouble.texi (Contributing): Repository is no longer CVS. + 2010-02-08 Glenn Morris * buffers.texi (Uniquify): Must explicitly load library. (Bug#5529) === modified file 'doc/emacs/trouble.texi' --- doc/emacs/trouble.texi 2010-01-21 04:37:44 +0000 +++ doc/emacs/trouble.texi 2010-02-18 09:04:46 +0000 @@ -1022,8 +1022,8 @@ possible to suggest ways to make your extension fit in better with the rest of Emacs. -The development version of Emacs can be downloaded from the CVS -repository where it is actively maintained by a group of developers. +The development version of Emacs can be downloaded from the +repository, where it is actively maintained by a group of developers. See the Emacs project page @url{http://savannah.gnu.org/projects/emacs/} for details. ------------------------------------------------------------ revno: 99521 committer: Glenn Morris branch nick: trunk timestamp: Thu 2010-02-18 01:02:04 -0800 message: * fileio.c: Comment fix. diff: === modified file 'src/fileio.c' --- src/fileio.c 2010-01-31 04:49:28 +0000 +++ src/fileio.c 2010-02-18 09:02:04 +0000 @@ -1408,8 +1408,9 @@ bugs _are_ found, it might be of interest to look at the old code and see what did it do in the relevant situation. - Don't remove this code: it's true that it will be accessible via CVS, - but a few years from deletion, people will forget it is there. */ + Don't remove this code: it's true that it will be accessible + from the repository, but a few years from deletion, people will + forget it is there. */ /* Changed this DEFUN to a DEAFUN, so as not to confuse `make-docfile'. */ DEAFUN ("expand-file-name", Fexpand_file_name, Sexpand_file_name, 1, 2, 0, ------------------------------------------------------------ revno: 99520 committer: Chong Yidong branch nick: trunk timestamp: Thu 2010-02-18 02:21:15 -0500 message: * nsterm.m (ns_ring_bell): Revert last change (Bug#5569). diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2010-02-18 06:35:21 +0000 +++ src/ChangeLog 2010-02-18 07:21:15 +0000 @@ -1,3 +1,7 @@ +2010-02-18 Chong Yidong + + * nsterm.m (ns_ring_bell): Revert last change (Bug#5569). + 2010-02-18 Glenn Morris * callint.c (Finteractive): Doc fix. === modified file 'src/nsterm.m' --- src/nsterm.m 2010-01-31 05:23:09 +0000 +++ src/nsterm.m 2010-02-18 07:21:15 +0000 @@ -808,58 +808,23 @@ view = FRAME_NS_VIEW (frame); if (view != nil) { - /* Get the bounds of our NSView */ - NSRect viewBounds = [view bounds]; - - /* Height of each line to flash. */ - int flash_height = FRAME_LINE_HEIGHT (frame); - int width = FRAME_PIXEL_WIDTH (frame) - - NS_SCROLL_BAR_WIDTH (frame); - - /* Get the GraphicsContext */ - CGContextRef ctxt = [[NSGraphicsContext currentContext] graphicsPort]; - CGRect lowerLine, upperLine; - lowerLine = - CGRectMake(viewBounds.origin.x, viewBounds.origin.y, - width + NS_SCROLL_BAR_WIDTH(frame), - flash_height + FRAME_INTERNAL_BORDER_WIDTH (frame)); - upperLine = - CGRectMake(viewBounds.origin.x, - viewBounds.origin.y + viewBounds.size.height - - (flash_height + FRAME_INTERNAL_BORDER_WIDTH (frame)), - width, - flash_height + FRAME_INTERNAL_BORDER_WIDTH (frame)); - - /* Invert the colors using a difference blend. */ - CGContextSetBlendMode(ctxt, kCGBlendModeDifference); - CGContextSetGrayFillColor(ctxt, 1, 1); - - /* If window is tall, flash top and bottom line. */ - if (viewBounds.size.height > 3 * FRAME_LINE_HEIGHT (frame)) - { - CGContextFillRect(ctxt, upperLine); - CGContextFillRect(ctxt, lowerLine); - } - else - /* If it is short, flash it all. */ - CGContextFillRect(ctxt, NSRectToCGRect([view bounds])); - - /* Bounce Dock icon. Maybe we can allow some configuration here. */ - [NSApp requestUserAttention: NSInformationalRequest]; - + NSRect r, surr; + NSPoint dim = NSMakePoint (128, 128); + + r = [view bounds]; + r.origin.x += (r.size.width - dim.x) / 2; + r.origin.y += (r.size.height - dim.y) / 2; + r.size.width = dim.x; + r.size.height = dim.y; + surr = NSInsetRect (r, -2, -2); + ns_focus (frame, &surr, 1); + [[view window] cacheImageInRect: [view convertRect: surr toView:nil]]; + [ns_lookup_indexed_color (NS_FACE_FOREGROUND + (FRAME_DEFAULT_FACE (frame)), frame) set]; + NSRectFill (r); [[view window] flushWindow]; ns_timeout (150000); - - /* If window is tall, flash top and bottom line. */ - if (viewBounds.size.height > 3 * FRAME_LINE_HEIGHT (frame)) - { - CGContextFillRect(ctxt, upperLine); - CGContextFillRect(ctxt, lowerLine); - } - else - /* If it is short, flash it all. */ - CGContextFillRect(ctxt, NSRectToCGRect([view bounds])); - + [[view window] restoreCachedImage]; [[view window] flushWindow]; ns_unfocus (frame); }