Improve wallpaper.el docs for recent changes

* lisp/image/wallpaper.el: Fix documentation to better reflect that no
external command is needed on Haiku.
* etc/NEWS: Update entry on wallpaper.el.
This commit is contained in:
Stefan Kangas 2022-09-14 11:10:10 +02:00
parent bfafe4aacc
commit 41a3155319
2 changed files with 32 additions and 11 deletions

View file

@ -1991,9 +1991,16 @@ This is done via 'image-converter-add-handler'.
---
*** New library wallpaper.el.
This library contains the command `wallpaper-set', which uses an
external command to set the desktop background. The new user option
`wallpaper-commands' controls which command is being used.
This library contains the command `wallpaper-set', which sets the
desktop background.
On GNU/Linux and other Unix-like systems, it uses an external command
(such as "swaybg", "gm", "display" or "xloadimage"). A suitable
command should be detected automatically in most cases, but can also
be customized manually with the new user option `wallpaper-commands'.
On Haiku, it uses the new function `haiku-set-wallpaper', which does
not rely on any external command.
** Image-Dired

View file

@ -1,4 +1,4 @@
;;; wallpaper.el --- Set wallpaper using external command -*- lexical-binding: t; -*-
;;; wallpaper.el --- Set desktop wallpaper from Emacs -*- lexical-binding: t; -*-
;; Copyright (C) 2022 Free Software Foundation, Inc.
@ -22,13 +22,20 @@
;;; Commentary:
;; This library provides the command `wallpaper-set', which uses an
;; external command to set the desktop background. This is obviously
;; a bit tricky to get right, as there is no lack of platforms, window
;; managers, desktop environments and tools.
;; This library provides the command `wallpaper-set', which sets the
;; desktop background.
;;
;; If this doesn't work in your environment, customize the user option
;; `wallpaper-commands'.
;; On GNU/Linux and other Unix-like systems, it uses an external
;; command to set the desktop background.
;;
;; On Haiku, it uses the `haiku-set-wallpaper' function, which does
;; not rely on any external commands.
;;
;; Finding an external command to use is obviously a bit tricky to get
;; right, as there is no lack of platforms, window managers, desktop
;; environments and tools. However, it should be detected
;; automatically in most cases. If it doesn't work in your
;; environment, customize the user option `wallpaper-commands'.
;;; Code:
@ -130,7 +137,14 @@ See also `wallpaper-default-width'.")
(read-number (format "Wallpaper %s in pixels: " desc) default)))
(defun wallpaper-set (file)
"Set the desktop background to FILE in a graphical environment."
"Set the desktop background to FILE in a graphical environment.
On GNU/Linux and other Unix-like systems, this relies on an
external command. Which command is being used depends on the
user option `wallpaper-commands'.
On Haiku, no external command is needed, so the value of
`wallpaper-commands' is ignored."
(interactive (list (and
(display-graphic-p)
(read-file-name "Set desktop background to: "