1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-06 06:20:55 -08:00
Commit graph

222 commits

Author SHA1 Message Date
Stefan Kangas
9aab258b80 Add missing builtin package declarations
* lisp/finder.el (finder--builtins-alist): Add new package
directories 'leim' and 'obsolete' as part of the 'emacs' package.
Add new package directory 'use-package' as part of the
'use-package' package.
* lisp/net/eudc-capf.el:
* lisp/net/eudcb-ecomplete.el:
* lisp/net/eudcb-macos-contacts.el:
* lisp/net/eudcb-mailabbrev.el: Declare library as part of the
'eudc' package.
* lisp/mail/ietf-drums-date.el: Declare library as part of the
'ietf-drums' package.
* lisp/image/image-dired-dired.el:
* lisp/image/image-dired-external.el:
* lisp/image/image-dired-tags.el:
* lisp/image/image-dired-util.el: Declare library as part of the
'image-dired' package.
* lisp/emacs-lisp/oclosure.el:
* lisp/keymap.el:
* lisp/progmodes/c-ts-common.el: Declare library as part of the
'emacs' package.  (Bug#62751)

(cherry picked from commit 94b1de2774)
2023-09-18 01:55:28 +02:00
Eli Zaretskii
6a2863ca01 Fix handling of sliced images
* lisp/image.el (image-slice-map): New keymap, without some
bindings that make no sense with sliced images.
(insert-image, insert-sliced-image): Use it.
(insert-sliced-image): Make the 'keymap' property rear-nonsticky,
to prevent calling image commands when point is to the right of
the slice.  (Bug#62679)

* lisp/image/image-crop.el (image-cut, image-crop): Doc fixes.
(image-crop): Don't try using stock MS-Widows convert.exe
program.  Use 'image--get-image' to support sliced images.
2023-04-08 12:43:34 +03:00
Manuel Giraud
eb2ab52fb0 Defaults to zero for image-dired--number-of-thumbnails
* lisp/image/image-dired.el (image-dired--number-of-thumbnails):
Defaults zero to avoid wrong type argument error.  (Bug#61734)
2023-02-28 15:25:07 +02:00
Manuel Giraud
1f4886fdb0 Do not error out on non image file (bug#61639)
* lisp/image/image-dired.el
(image-dired-display-thumbs): Do not insert non image file and do not
display image-dired buffer if it is empty.
2023-02-22 15:20:45 +02:00
Stefan Kangas
068b53500e ; Improve image-dired-thumbnail-storage docstring
* lisp/image/image-dired.el (image-dired-thumbnail-storage):
Improve docstring.
2023-02-19 17:30:53 +01:00
Manuel Giraud
c61a30e160 Update thumbnail buffer's header more
* lisp/image/image-dired.el (image-dired-display-thumbs): Call
image-dired--update-header-line.  (Bug#61508)
2023-02-19 08:24:52 +02:00
Stefan Kangas
4da398d8b5 ; Fix typos 2023-02-12 03:23:41 +01:00
Eli Zaretskii
074008ee2d ; Fix doc strings in lisp/image/ directory
* lisp/image/wallpaper.el (wallpaper-setter)
(wallpaper--find-command, wallpaper--x-monitor-name)
(wallpaper--format-arg):
* lisp/image/image-dired-util.el
(image-dired-associated-dired-buffer)
(image-dired--with-dired-buffer):
* lisp/image/image-dired-tags.el (image-dired--with-db-file)
(image-dired-remove-tag, image-dired-list-tags)
(image-dired-tag-files, image-dired-write-comments)
(image-dired-update-property):
* lisp/image/image-dired-external.el (image-dired-cmd-pngnq-options)
(image-dired-cmd-pngcrush-program)
(image-dired-cmd-pngcrush-options)
(image-dired-cmd-optipng-options)
(image-dired-cmd-create-standard-thumbnail-options)
(image-dired-cmd-rotate-original-program)
(image-dired-cmd-rotate-original-options)
(image-dired-cmd-write-exif-data-options, image-dired-queue)
(image-dired-queue-active-limit, image-dired-pngnq-thumb)
(image-dired-pngcrush-thumb, image-dired-optipng-thumb)
(image-dired-thumb-queue-run, image-dired-get-exif-file-name)
(image-dired-thumbnail-set-image-description):
* lisp/image/image-dired.el (image-dired-thumbnail-storage)
(image-dired-tags-db-file)
(image-dired-rotate-original-ask-before-overwrite)
(image-dired-line-up-method, image-dired-track-movement)
(image-dired-display-properties-format)
(image-dired-external-viewer)
(image-dired-show-all-from-dir-max-files)
(image-dired-insert-image)
(image-dired-dired-with-window-configuration)
(image-dired-restore-window-configuration)
(image-dired-track-original-file)
(image-dired-toggle-movement-tracking)
(image-dired-format-properties-string)
(image-dired--on-file-in-dired-buffer)
(image-dired-thumbnail-display-external)
(image-dired-display-image, image-dired-copy-filename-as-kill):
* lisp/image/image-dired-dired.el
(image-dired-dired-toggle-marked-thumbs)
(image-dired-dired-after-readin-hook)
(image-dired-next-line-and-display)
(image-dired-previous-line-and-display)
(image-dired-mark-and-display-next, image-dired-track-thumbnail)
(image-dired-dired-next-line, image-dired-dired-previous-line)
(image-dired-dired-display-external)
(image-dired-copy-with-exif-file-name)
(image-dired-mark-tagged-files)
(image-dired-dired-display-properties):
* lisp/image/image-crop.el (image-crop-exif-rotate)
(image-crop-resize-command, image-crop-cut-command)
(image-crop-crop-command, image-crop-rotate-command)
(image-crop-buffer-text-function, image-cut-color):
* lisp/image/image-converter.el (image-converter)
(image-convert-to-format, image-converter-regexp)
(image-converter--converters, image-convert-p, image-convert)
(image-converter--value, image-converter--probe)
(image-converter--find-converter, image-converter--convert)
(image-converter-add-handler):
* lisp/image/exif.el (exif-parse-buffer, exif-field)
(exif-orientation, exif--direct-ascii-value)
(exif--process-value, exif--read-chunk, exif--read-number-be)
(exif--read-number-le, exif--read-number): Fix doc strings.
2023-02-11 16:49:54 +02:00
Eli Zaretskii
900f7e0727 ; Remove extraneous local variables from image-dired-*.el files
These cause annoying prompts when visiting these files, and evidently
belong to a third-party package.
* lisp/image/image-dired-external.el:
* lisp/image/image-dired-tags.el:
* lisp/image/image-dired-dired.el:
* lisp/image/image-dired-util.el: Remove unsafe local-variables.
2023-02-11 11:48:48 +02:00
Eli Zaretskii
cae528457c ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
Stefan Kangas
db2ed9f333 ; Fix several symbol name typos 2022-10-26 23:04:23 +02:00
Stefan Kangas
5e83c0117e Fix setting the wallpaper with "swaybg" and "wbg"
* lisp/image/wallpaper.el (wallpaper-setter): Add 'init-action'
and 'detach' fields to structure.
(wallpaper--init-action-kill): New helper function.
(wallpaper--default-setters): Use above new fields for "swaybg" and
"wbg", to start/restart the corresponding processes as needed.
(wallpaper-default-set-function): Call 'init-action' function if
there is one.  If 'detach', use 'call-process' instead of
'start-process'.  (Bug#57781)

* test/lisp/image/wallpaper-tests.el (wallpaper--find-setter)
(wallpaper--find-setter/call-predicate)
(wallpaper--find-setter/set-current-setter)
(wallpaper-set/runs-command, wallpaper-set/runs-command/detach)
(wallpaper-set/calls-init-action)
(wallpaper-set/calls-wallpaper-set-function): New tests.
2022-10-07 22:07:09 +02:00
Stefan Kangas
55bd6a5cd4 ; Make wallpaper--format-arg more resilient
* lisp/image/wallpaper.el (wallpaper--format-arg): Make more
resilient to errors.
2022-10-07 10:53:55 +02:00
Stefan Kangas
d9bd14975b image-dired: Shorten several long names
* lisp/image/image-dired.el (image-dired-image-mode-map)
(image-dired-image-mode): Rename from
'image-dired-display-image-mode-map' and
'image-dired-display-image-mode'.  Update all uses and make old
names into obsolete aliases.
(image-dired-display-this, image-dired-display-next)
(image-dired-display-previous): Rename from
'image-dired-display-thumbnail-original-image',
'image-dired-display-next-thumbnail-original', and
'image-dired-display-previous-thumbnail-original'.  Update all uses
and make old names into obsolete aliases.
* doc/emacs/dired.texi (Image-Dired): Update documentation for the
above changes, and improve indexing.
2022-10-04 17:36:09 +02:00
Stefan Kangas
f4252f3171 image-dired: Fix arrow keys in thumbs buffer
* lisp/image/image-dired.el (image-dired-thumbnail-mode-map): Also
remap 'left-char' and 'right-char'.
2022-10-04 16:18:20 +02:00
Peter Münster
d4f56e9666 Delete thumbs in image-dired-do-flagged-delete after confirmation
* lisp/image/image-dired.el (image-dired-do-flagged-delete): Remove
thumbnails only after confirming deletion of the files.  (Bug#58255)
2022-10-02 20:16:37 +02:00
Eli Zaretskii
a577b12d64 ; * lisp/image/wallpaper.el (wallpaper--x-monitor-name): Doc fix. 2022-09-29 20:03:51 +03:00
Stefan Kangas
696c528379 Fix loading wallpaper.el on MS-Windows
* lisp/image/wallpaper.el (wallpaper--find-command)
(wallpaper--find-command-args): Avoid backtrace when
'wallpaper--find-setter' returns nil, e.g. on MS-Windows.
(Bug#58167)
2022-09-29 18:44:03 +02:00
Peter Münster
21fc2b04e9 New command image-dired-do-flagged-delete
* lisp/image/image-dired.el (image-dired-delete-marked): Remove command,
because it was too buggy.
(image-dired-do-flagged-delete): New command that does almost the same
as the above removed command but with flagged images.
(image-dired-thumbnail-mode-map): Bind "x" to
'image-dired-do-flagged-delete'.
2022-09-29 16:32:49 +02:00
Peter Münster
1457c231b5 image-dired-delete-char: Don't disturb formatting
* lisp/image/image-dired.el (image-dired-delete-char): Don't disturb
the expected formatting of the thumbnail buffer (always one
space/newline after a thumbnail).
2022-09-29 16:31:03 +02:00
Stefan Kangas
2c331dbb4e wallpaper-set: Get monitor name on non-graphical display
* lisp/image/wallpaper.el
(wallpaper--format-arg): Break out function from here...
(wallpaper--x-monitor-name): ...to here.  Try to get the monitor name
non-graphical displays, and prompt if that doesn't work.
(wallpaper-default-set-function): Improve debugging output.
Ref. https://lists.gnu.org/r/emacs-devel/2022-09/msg01910.html
2022-09-29 16:10:27 +02:00
Stefan Kangas
b71241742c Prompt for wallpaper width/height only when needed
* lisp/image/wallpaper.el (wallpaper--format-arg): Don't prompt for
width and height unless the values are actually used.
2022-09-29 15:39:58 +02:00
Stefan Kangas
26ef0f1221 ; image-dired: Fix last change
* test/lisp/image/image-dired-util-tests.el
(image-dired-thumb-name/per-directory):
* lisp/image/image-dired-util.el (image-dired-thumb-name): Fix
last change.
2022-09-28 14:29:11 +02:00
Stefan Kangas
ca043773db ; Fix debugging image-dired-dired-toggle-marked-thumbs
* lisp/image/image-dired-dired.el
(image-dired-dired-toggle-marked-thumbs): Fix debugging.
2022-09-28 12:36:42 +02:00
Stefan Kangas
6cffaa3b6d image-dired: End thumbnail file names with ".jpg"
* lisp/image/image-dired-util.el (image-dired-thumb-name): Always
end thumbnail name in ".jpg" and simplify naming to just use the
SHA-1 hash.  (Bug#57961)
* test/lisp/image/image-dired-util-tests.el
(image-dired-thumb-name/image-dired): Adjust test for the above
change.
* etc/NEWS: Announce the above change.
2022-09-28 12:36:42 +02:00
Stefan Kangas
adaa2fc90e ; * lisp/image/image-dired.el: Fix typo. 2022-09-27 23:28:28 +02:00
Stefan Kangas
9e0c21ea73 Make image-dired-dired-toggle-marked-thumbs faster
* lisp/image/image-dired-dired.el
(image-dired-dired-toggle-marked-thumbs): Don't show progress, since
it makes things slower.
2022-09-27 23:26:07 +02:00
Stefan Kangas
42290bf823 image-dired: Fix header line when file is missing
* lisp/image/image-dired.el
(image-dired-format-properties-string): Don't error when file has
been deleted.
2022-09-27 22:59:42 +02:00
Stefan Kangas
49d40cd953 ; Simplify wallpaper--format-arg with let-alist
* lisp/image/wallpaper.el (wallpaper--format-arg): Use let-alist.
2022-09-27 16:12:40 +02:00
Stefan Kangas
1e4f40db3a ; * lisp/image/wallpaper.el (wallpaper--format-arg): Fix typo. 2022-09-27 15:33:09 +02:00
Stefan Kangas
a27e483213 Fix OBOE in image-dired--with-marked
* lisp/image/image-dired.el (image-dired--with-marked): Fix off-by-one
error.
2022-09-27 02:14:54 +02:00
Stefan Kangas
93b9cf4184 Get rid of default wallpaper-setter constructor
* lisp/image/wallpaper.el (wallpaper-setter): Actually get rid of
the default constructor.
2022-09-26 21:32:55 +02:00
Stefan Kangas
bb9df76dc9 Set XFCE wallpaper also in single-workspace-mode
This fixes setting the wallpaper on XFCE whether or not the
"/backdrop/single-workspace-mode" setting is true or false.
That XFCE setting controls whether or not the same wallpaper is used
on all workspaces or not.

* lisp/image/wallpaper.el (wallpaper-setter)
(wallpaper-command-args, wallpaper-default-set-function): Allow
using a function for getting the command line arguments.
(wallpaper-xfce-command-args): New function.
(wallpaper--default-setters): Use above new function for XFCE.
2022-09-26 21:26:50 +02:00
Eli Zaretskii
6d0fec5ae0 ; * lisp/image/wallpaper.el (cl-macs): Require, to avoid warnings. 2022-09-26 19:29:47 +03:00
Stefan Kangas
2ec061bf9c Display a message when wallpaper was set
* lisp/image/wallpaper.el (wallpaper-default-set-function): Display a
message when the wallpaper was successfully set.
2022-09-26 17:41:39 +02:00
Stefan Kangas
b0289e7f6d Fix setting the wallpaper in XFCE
* lisp/image/wallpaper.el  (wallpaper-command-args)
(wallpaper-default-set-function): Support new format specifiers
%S for screen, %W for workspace, and %M for monitor.
(wallpaper--default-setters): Use above new specifiers for XFCE.
(wallpaper--format-arg): New defun broken out from...
(wallpaper-default-set-function): ...here.
(wallpaper--get-height-or-width): Support noninteractive use.
* test/lisp/image/wallpaper-tests.el (wallpaper--format-arg/filename)
(wallpaper--format-arg/filename-hex)
(wallpaper--format-arg/width, wallpaper--format-arg/screen)
(wallpaper--format-arg/monitor, wallpaper--format-arg/workspace):
New tests.
2022-09-26 17:41:37 +02:00
Stefan Kangas
35d5ad713e Rewrite wallpaper.el to use a cl-defstruct
* lisp/image/wallpaper.el
(wallpaper--default-commands): Delete variable.
(wallpaper-setter): New cl-defstruct.
(wallpaper--default-methods-create): New macro.
(wallpaper--default-setters):
(wallpaper--current-setter): New variables.
(wallpaper--find-setter): New defun to pick a wallpaper-setter.
(wallpaper--find-command, wallpaper--find-command-args):
Use 'wallpaper--find-setter'.
(wallpaper-command): Doc fix.

* test/lisp/image/wallpaper-tests.el
(wallpaper--find-command/return-string)
(wallpaper--find-command-args/return-list)
(wallpaper--image-file-regexp/return-string): New tests.
2022-09-26 17:41:09 +02:00
Stefan Kangas
9b73c9edda Autoload image-dired-thumbnail-storage :safe property
* lisp/image/image-dired.el (image-dired-thumbnail-storage):
Autoload :safe property.
2022-09-26 15:36:22 +02:00
Stefan Kangas
e0565e3896 Refactor system specific code in wallpaper.el
* lisp/image/wallpaper.el (wallpaper-set-function): New defvar
containing system specific function for setting wallpaper.
(wallpaper-default-set-function): Factor out function from...
(wallpaper-set): ...here.  Use above new defvar.

(wallpaper-default-file-name-regexp): Delete defvar.
(wallpaper-image-file-extensions): New defvar.
(wallpaper--image-file-regexp): New defun that returns a regexp to
match for completion purposes.

(wallpaper--use-default-set-function-p): New defun.
(wallpaper--find-command, wallpaper--find-command-arguments):
Do nothing on MS-Windows and Haiku.
2022-09-25 17:28:04 +02:00
Stefan Kangas
ad88e3e0b5 Add reasonable default to wallpaper-set
* lisp/image/wallpaper.el
(wallpaper-default-file-name-regexp): New variable.
(wallpaper--get-default-file): New function.
(wallpaper-set): Use above new function to set a default.
* test/lisp/image/wallpaper-tests.el: New file.
2022-09-25 16:16:51 +02:00
Stefan Kangas
3502fd9831 wallpaper: URI-encode gsettings argument
* lisp/image/wallpaper.el (wallpaper--default-commands)
(wallpaper-command-args, wallpaper-set): URI-encode gsettings
argument.
2022-09-25 15:05:43 +02:00
Stefan Kangas
a256f49f08 Make image-dired-thumb-name more portable
* lisp/image/image-dired-util.el
(image-dired-thumb-name): Create file names in a portable manner.
* test/lisp/image/image-dired-util-tests.el
(image-dired-thumb-name/standard)
(image-dired-thumb-name/image-dired)
(image-dired-thumb-name/per-directory): Expand tests.
2022-09-25 14:27:51 +02:00
Stefan Kangas
97d7f8c737 Add new command image-dired-copy-filename-as-kill
* lisp/image/image-dired.el
(image-dired-copy-filename-as-kill): New command.
(image-dired-thumbnail-mode-map): Bind above new command to "w".
2022-09-25 12:50:12 +02:00
Stefan Kangas
5e26d5f527 ; Simplify image-dired-forward-image
* lisp/image/image-dired.el (image-dired-forward-image): Simplify.
2022-09-24 20:33:00 +02:00
Stefan Kangas
0e6c15bbaf image-dired: Add faces for header line
* lisp/image/image-dired.el (image-dired-thumb-header-file-name)
(image-dired-thumb-header-directory-name)
(-image-dired-thumb-header-file-size)
(image-dired-thumb-header-image-count): New faces.
(image-dired-format-properties-string): Use above new faces.
(image-dired-thumb-mark, image-dired-thumb-flagged): Move
definition further down.
2022-09-24 20:33:00 +02:00
Stefan Kangas
573f31db96 image-dired: Add new %-format specifiers for header line
* lisp/image/image-dired.el
(image-dired-format-properties-string): Add new specifiers "%n", "%d",
and "%s".
(image-dired-display-properties-format): Change default format to use
above new specifiers.
(image-dired--number-of-thumbnails): New variable.
(image-dired-insert-thumbnail, image-dired-display-thumbs): Keep
track of file number when appending it into the thumbnail buffer.
(image-dired--update-header-line): Support above new format
specifiers.  Rename from 'image-dired-update-header-line' and
update callers.
* lisp/image/image-dired-dired.el
(image-dired-dired-display-properties): Support above new format
specifiers.
2022-09-24 20:18:46 +02:00
Stefan Kangas
3a0a0d616e image-dired: Move menu definitions to keymaps
* lisp/image/image-dired.el (image-dired-thumbnail-mode-menu):
* lisp/image/image-dired-dired.el (image-dired-minor-mode-menu):
Delete variables and move menus to...
* lisp/image/image-dired.el (image-dired-thumbnail-mode-map):
* lisp/image/image-dired-dired.el(image-dired-minor-mode-map):
...here.
2022-09-24 18:27:35 +02:00
Stefan Kangas
5be35812ac image-dired: Prefer command remapping
* lisp/image/image-dired.el (image-dired-thumbnail-mode-map):
Prefer command remapping to binding keys directly.
2022-09-24 14:07:57 +02:00
Stefan Kangas
0bca1b4d03 image-dired: Fix C-a/C-e in thumbnail buffer
* lisp/image/image-dired.el
(image-dired--movement-ensure-point-pos): New function, and...
(image-dired--movement-command): ...new macros broken out from...
(image-dired-next-line, image-dired-previous-line)
(image-dired-beginning-of-buffer, image-dired-end-of-buffer):
...here.
(image-dired-move-beginning-of-line)
(image-dired-move-end-of-line): New commands.
(image-dired-thumbnail-mode-map): Remap 'move-beginning-of-line'
and 'move-beginning-of-line' to above new commands.
2022-09-24 14:07:57 +02:00
Stefan Kangas
95d4f5d691 image-dired: Regenerate old thumbnails when needed
* lisp/image/image-dired.el
(image-dired--get-create-thumbnail-file): Rename from
'image-dired-get-thumbnail-image'.  Update callers and make old
name into an obsolete alias.
(image-dired-display-thumbs): Use above function to simplify and
regenerate the thumbnail if it's outdated.
2022-09-24 14:07:57 +02:00