aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Ingebrigtsen2018-04-15 22:36:16 +0200
committerLars Ingebrigtsen2018-04-15 22:36:16 +0200
commitf262b10b46c0f7daef9e433e95ce565191e6841d (patch)
treefbbce4f89c28597320873b3416171ebd44f7fbd2
parenta37a14e0a8ee16b7ae53b4dba9b60329e3b4308d (diff)
downloademacs-f262b10b46c0f7daef9e433e95ce565191e6841d.tar.gz
emacs-f262b10b46c0f7daef9e433e95ce565191e6841d.zip
Tweak the look of the cookie buffer after cookie deletion
* lisp/url/url-cookie.el (url-cookie--generate-buffer): Factor out into its own function. (url-cookie-delete): Use it to make the buffer look consistent after deleting a cookie.
-rw-r--r--lisp/url/url-cookie.el27
1 files changed, 17 insertions, 10 deletions
diff --git a/lisp/url/url-cookie.el b/lisp/url/url-cookie.el
index 29487e83c6f..535a98c9c7d 100644
--- a/lisp/url/url-cookie.el
+++ b/lisp/url/url-cookie.el
@@ -404,6 +404,11 @@ Use \\<url-cookie-mode-map>\\[url-cookie-delete] to remove cookies."
404 (error "No cookies are defined")) 404 (error "No cookies are defined"))
405 405
406 (pop-to-buffer "*url cookies*") 406 (pop-to-buffer "*url cookies*")
407 (url-cookie-mode)
408 (url-cookie--generate-buffer)
409 (goto-char (point-min)))
410
411(defun url-cookie--generate-buffer ()
407 (let ((inhibit-read-only t) 412 (let ((inhibit-read-only t)
408 (domains (sort 413 (domains (sort
409 (copy-sequence 414 (copy-sequence
@@ -414,7 +419,6 @@ Use \\<url-cookie-mode-map>\\[url-cookie-delete] to remove cookies."
414 (domain-length 0) 419 (domain-length 0)
415 start name format domain) 420 start name format domain)
416 (erase-buffer) 421 (erase-buffer)
417 (url-cookie-mode)
418 (dolist (elem domains) 422 (dolist (elem domains)
419 (setq domain-length (max domain-length (length (car elem))))) 423 (setq domain-length (max domain-length (length (car elem)))))
420 (setq format (format "%%-%ds %%-20s %%s" domain-length) 424 (setq format (format "%%-%ds %%-20s %%s" domain-length)
@@ -426,16 +430,15 @@ Use \\<url-cookie-mode-map>\\[url-cookie-delete] to remove cookies."
426 (lambda (c1 c2) 430 (lambda (c1 c2)
427 (string< (url-cookie-name c1) 431 (string< (url-cookie-name c1)
428 (url-cookie-name c2))))) 432 (url-cookie-name c2)))))
429 (setq start (point) 433 (setq start (point)
430 name (url-cookie-name cookie)) 434 name (url-cookie-name cookie))
431 (when (> (length name) 20) 435 (when (> (length name) 20)
432 (setq name (substring name 0 20))) 436 (setq name (substring name 0 20)))
433 (insert (format format domain name 437 (insert (format format domain name
434 (url-cookie-value cookie)) 438 (url-cookie-value cookie))
435 "\n") 439 "\n")
436 (setq domain "") 440 (setq domain "")
437 (put-text-property start (1+ start) 'url-cookie cookie))) 441 (put-text-property start (1+ start) 'url-cookie cookie)))))
438 (goto-char (point-min))))
439 442
440(defun url-cookie-delete () 443(defun url-cookie-delete ()
441 "Delete the cookie on the current line." 444 "Delete the cookie on the current line."
@@ -459,7 +462,11 @@ Use \\<url-cookie-mode-map>\\[url-cookie-delete] to remove cookies."
459 (delete-region (line-beginning-position) 462 (delete-region (line-beginning-position)
460 (progn 463 (progn
461 (forward-line 1) 464 (forward-line 1)
462 (point))))) 465 (point)))
466 (let ((point (point)))
467 (erase-buffer)
468 (url-cookie--generate-buffer)
469 (goto-char point))))
463 470
464(defvar url-cookie-mode-map 471(defvar url-cookie-mode-map
465 (let ((map (make-sparse-keymap))) 472 (let ((map (make-sparse-keymap)))