Merge pull request #5897 from m-shinder/main

Added ImageShow support for xdg-open
This commit is contained in:
Hugo van Kemenade 2021-12-23 08:32:16 +02:00 committed by GitHub
commit 1510efb647
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 0 deletions

View File

@ -17,6 +17,7 @@ All default viewers convert the image to be shown to PNG format.
The following viewers may be registered on Unix-based systems, if the given command is found:
.. autoclass:: PIL.ImageShow.XDGViewer
.. autoclass:: PIL.ImageShow.DisplayViewer
.. autoclass:: PIL.ImageShow.GmDisplayViewer
.. autoclass:: PIL.ImageShow.EogViewer

View File

@ -186,6 +186,16 @@ class UnixViewer(Viewer):
return 1
class XDGViewer(UnixViewer):
"""
The freedesktop.org ``xdg-open`` command.
"""
def get_command_ex(self, file, **options):
command = executable = "xdg-open"
return command, executable
class DisplayViewer(UnixViewer):
"""
The ImageMagick ``display`` command.
@ -233,6 +243,8 @@ class XVViewer(UnixViewer):
if sys.platform not in ("win32", "darwin"): # unixoids
if shutil.which("xdg-open"):
register(XDGViewer)
if shutil.which("display"):
register(DisplayViewer)
if shutil.which("gm"):