emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master d3188196cc 3/3: Add new command image-mode-wallpaper-set


From: Stefan Kangas
Subject: master d3188196cc 3/3: Add new command image-mode-wallpaper-set
Date: Wed, 14 Sep 2022 09:02:32 -0400 (EDT)

branch: master
commit d3188196cca68f79a18a6d8a331fd98d4b18c22c
Author: Stefan Kangas <stefankangas@gmail.com>
Commit: Stefan Kangas <stefankangas@gmail.com>

    Add new command image-mode-wallpaper-set
    
    * lisp/image-mode.el (wallpaper): Require.
    (image-mode-wallpaper-set): New command.
    (image-mode-map): Bind above new command to "W".
---
 etc/NEWS           |  9 +++++++--
 lisp/image-mode.el | 15 +++++++++++++++
 2 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/etc/NEWS b/etc/NEWS
index 0023d5e2eb..a529279994 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -1954,6 +1954,11 @@ up as necessary.  Unlike 'image-transform-fit-both', 
this does not
 only scale the image down, but up as well.  It is bound to "s w" in
 Image Mode by default.
 
+---
+*** New command 'image-mode-wallpaper-set'.
+This command sets the desktop background to the current image.  It is
+bound to "W" by default.
+
 +++
 *** 'image-transform-fit-to-(height|width)' are now obsolete.
 Use the new command 'image-transform-fit-to-window' instead.
@@ -2048,8 +2053,8 @@ associated with Image-Dired.
 
 ---
 *** New command 'image-dired-wallpaper-set'.
-This command sets the wallpaper to the image at point in the thumbnail
-buffer.  It is bound to 'W' by default.
+This command sets the desktop background to the image at point in the
+thumbnail buffer.  It is bound to 'W' by default.
 
 ---
 *** 'image-dired-slideshow-start' is now bound to 'S'.
diff --git a/lisp/image-mode.el b/lisp/image-mode.el
index d27462ff0a..f2ffbd8944 100644
--- a/lisp/image-mode.el
+++ b/lisp/image-mode.el
@@ -45,6 +45,7 @@
 (require 'image)
 (require 'exif)
 (require 'dired)
+(require 'wallpaper)
 (eval-when-compile (require 'cl-lib))
 
 ;;; Image mode window-info management.
@@ -523,6 +524,9 @@ image as text, when opening such images in `image-mode'."
   "S-SPC"   #'image-scroll-down
   "DEL"     #'image-scroll-down
 
+  ;; Misc
+  "W"       #'image-mode-wallpaper-set
+
   ;; Remapped
   "<remap> <forward-char>"           #'image-forward-hscroll
   "<remap> <backward-char>"          #'image-backward-hscroll
@@ -1387,7 +1391,18 @@ If no such buffer exists, it will be opened."
   (prog1 (bookmark-default-handler bmk)
     (when (not (string= image-type (bookmark-prop-get bmk 'image-type)))
       (image-toggle-display))))
+
+
+;;; Setting the wallpaper
+
+(defun image-mode-wallpaper-set ()
+  "Set the desktop background to the current image.
+This uses `wallpaper-set' (which see)."
+  (interactive nil image-mode)
+  (wallpaper-set buffer-file-name))
+
 
+;;; Image transformation
 
 (defsubst image-transform-width (width height)
   "Return the bounding box width of a rotated WIDTH x HEIGHT rectangle.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]