Giter Club home page Giter Club logo

qimgv's Introduction

❗ Updates may be slow due to war in Ukraine 🌻 🌻 🌻

qimgv | Current version: 1.0.2

Image viewer. Fast, easy to use. Optional video support.

Screenshots

Main window & panel Folder view Settings window
img1 img2 img3

Key features:

  • Simple UI

  • Fast

  • Easy to use

  • Fully configurable, including themes, shortcuts

  • High quality scaling

  • Basic image editing: Crop, Rotate and Resize

  • Ability to quickly copy / move images to different folders

  • Experimental video playback via libmpv

  • Folder view mode

  • Ability to run shell scripts

Default control scheme:

Action Shortcut
Next image Right arrow / MouseWheel
Previous image Left arrow / MouseWheel
Goto first image Home
Goto last image End
Zoom in Ctrl+MouseWheel / Crtl+Up
Zoom out Ctrl+MouseWheel / Crtl+Down
Zoom (alt. method) Hold right mouse button & move up / down
Fit mode: window 1
Fit mode: width 2
Fit mode: 1:1 (no scaling) 3
Switch fit modes Space
Toggle fullscreen mode DoubleClick / F / F11
Exit fullscreen mode Esc
Show EXIF panel I
Crop image X
Resize image R
Rotate left Ctrl+L
Rotate Right Ctrl+R
Open containing directory Ctrl+D
Slideshow mode ~
Shuffle mode Ctrl+~
Quick copy C
Quick move M
Move to trash Delete
Delete file Shift+Delete
Save Ctrl+S
Save As Ctrl+Shift+S
Folder view Enter / Backspace
Open Ctrl+O
Print / Export PDF Ctrl+P
Settings P
Exit application Esc / Ctrl+Q / Alt+X / MiddleClick

... and more.

Note: you can configure every shortcut by going to Settings > Controls

User interface

The idea is to have a uncluttered, simple and easy to use UI. You can see UI elements only when you need them.

There is a pull-down panel with thumbnails, as well as folder view. You can also bring up a context menu via right click.

Using quick copy / quick move panels

Bring up the panel with C or M shortcut. You will see 9 destination directories, click on the folder icon to change them.

With panel visible, use 1 - 9 keys to copy/move current image to corresponding directory.

When you are done press C or M again to hide the panel.

Running scripts

You can run custom scripts on a current image.

Open Settings > Scripts. Press Add. Here you can choose between a shell command and a shell script.

Example of a command:

convert %file% %file%_.pdf

Example of a shell script file ($1 will be image path):

#!/bin/bash
gimp "$1"

Note: The script file must be an executable. Also, "shebang" (#!/bin/bash) needs to be present.

When you've created your script go to Settings > Controls > Add, then select it and assign a shortcut like for any regular action.

HiDPI (Linux / MacOS only)

If qimgv appears too small / too big on your display, you can override the scale factor. Example:

QT_SCALE_FACTOR="1.5" qimgv /path/to/image.png

You can put it in qimgv.desktop file to make it permanent. Using values less than 1.0 is not supported.

qimgv should also obey the global scale factor set in KDE's systemsettings.

High quality scaling

qimgv supports nicer scaling filters when compiled with opencv support (ON by default, but might vary depending on your linux distribution). Filter options are available in Settings > Scaling. Bicubic or bilinear+sharpen is recommended.

Additional image formats

qimgv can open some extra formats via third-party image plugins. All of them are included with windows package.

Format Plugin
JPEG-XL github.com/novomesk/qt-jpegxl-image-plugin
AVIF github.com/novomesk/qt-avif-image-plugin
APNG github.com/Skycoder42/QtApng
HEIF / HEIC github.com/jakar/qt-heif-image-plugin
RAW https://gitlab.com/mardy/qtraw

Installation

Windows builds

Grab the latest release here

Windows builds are portable (everything is contained within install folder). Installer additionally sets up file associations.

NOTE: -video variants include mpv for video support

GNU+Linux

Arch Linux / Manjaro / etc.

AUR package:

qimgv-git

Ubuntu / Linux Mint / Pop!_OS / etc.

sudo add-apt-repository ppa:easymodo/qimgv
sudo apt update
sudo apt install qimgv

Alternative package with kde support:

sudo apt install qimgv-kde

Fedora

sudo dnf install qimgv

OpenSUSE

zypper install qimgv

Gentoo

emerge qimgv

Void linux

xbps-install -S qimgv

Alpine Linux

apk add qimgv

This list may be incomplete.

Compiling from source

See Compiling qimgv from source on the wiki

Donate

If you wish to give me a few bucks, please consider donating to the Ukrainian Army instead:

https://savelife.in.ua/en/donate-en/#donate-army-card-once

https://u24.gov.ua/

This directly increases the chances of me being able to work on this in future

qimgv's People

Contributors

adonais avatar data-man avatar digitaldragon64 avatar e5ten avatar easymodo avatar eugenevert avatar fiso64 avatar gcorrad avatar geneishouko avatar heroin-moose avatar kamiyaa avatar lgbaldoni avatar maxice8 avatar mjunix avatar novomesk avatar sevoan avatar srirams avatar terminalforlife avatar thejaredwilcurt avatar tim77 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qimgv's Issues

libmpv / mpv support with portable build?

Hey...

I've been testing this one here for a while: qimgv64-portable-0.6.2.exe (on Windows 10 x64 FCU).

First of all, I really like the program so far.
Nice minimalist design, very fast and responsive. Kudos to you 😄 .

Just a quick question:
In the settings menu there are options to choose a path for a mpv binary, but all these options are greyed out / deactivated. Is this intentional? Or do I have to set a specific property in the config?

Video controls

In qimgv 0.6.3 on Windows, videos just play looped over and over. It'd be nice to have some basic controls, like a progress bar, play/pause, skip forwards and backwards (as buttons on screen and/or keyboard shortcuts).

RAM memory leak

Try switch between huge images (for example, few times) and take a look to the ram memory (linux issue). My images sizes over 2.9 mb.

Some issues with files

Just a couple of improvements / bugs:

  • qimgv will not detect images without an extension in folders - consider using libmagic to determine type of files?
  • Periodically (on image change?) rescan image folder for changes - currently does not pick up new files / deleted files / changes to files in the same folder.

Open file location

Adding the ability to open a file manager/explorer window with the currently opened file selected.

Loving this so far! Excited to try this out as my main image viewer. This is the one thing I'm really going to miss having though. Very useful for when you need to get to a specific file in a collection.

[Unnecessary features request] ;)

-I'd find it useful to have a different color of background in and out of full-screen
-The ability to lock to common aspect ratios when cropping would be useful, e.g. Free, Original, 1:1, 16:9 and 18:9 (And although not necessary due to being able to rotate outside of crop, maybe a rotation button here too for the portrait equivalents)

  • A proper name, one that will intrigue into trying this BUT NOTHING CHEESY!

Again though, this is by far the best image viewer I've used and I'm just trying to find things to suggest.
I love it.

WebM/MP4 playback issues

Using Solus Linux / qimgv master, attempting to playback video files fails without the MPV executable installed. If this is intended, I recommend adding mpv to the list of dependencies in the README.

When MPV is installed, the file plays very small (~1/4 size) in the lower-left hand corner of the screen and without zoom, though it does scale somewhat when entering fullscreen.

Sort order

I think that an important feature is missing - ability to sort image list by mtime, file size etc.

'=' doesn't bind properly

Steps to reproduce:

  1. Under Preferences->Controls, create a new control and map it to '='.
  2. Close qimgv, re-open qimgv, new control binding is gone.

Linux-4.18.3, qimgv 7dd7e08, qt-5.9.6

[ENH] Folder navigation in the folder view

I just came across this program a few days ago, and I've already replaced feh with this as my default image viewer, love the speed and design choices!

The only features that I found myself wanting were that I would want to be able to navigate my file system more easily (and another one that someone else already opened).

I imagined that there would be two approaches to this, which is to replace the default file picker with a more keyboard friendly one, or to leverage the custom folder viewer that is already built into the program, which is the folderView/gallery and just surface folders in there so that we can descend/ascend. The simplest implementation would be to just add a .. and show the current folders, and maybe have an option for hiding/showing hidden folders, but that's probably not necessary.

Fullscreen

Hello,
How to disable a fullscreen on startup?

[Bug] Deleting .gifs or other animated media has no effect.

This feels fairly broad, however, I haven't found a circumstance where it hasn't happened.

• If you attempt to delete a .gif or .webm, it doesn't have any effect on the actual file itself. It remains in the folder qimgv is viewing.

• If you attempt to move a .gif or .webm, it instead duplicates the file to the new location.

APNG support

Would be nice to have APNG support.
Most browsers now support it, no reason to not have it in an image viewer.

[Feature Request] Get absolute path of current file (or copy image to clipboard)

I often find myself going through my photos using qimgv and searching for a photo to upload. Currently, after finding the image, I need to find it again using the file picker or get the absolute path through file browser.

I think the ability to copy the absolute path of the current image will really help. Or copy the image into clipboard since many app (e.g. Signal, whatsapp) can handle pasting image from clipboard too.

Happy to take a stab at it! Thanks

Few usability suggestions

First of all, this is the first image viewer in quite some time that I'm excited about. I've tried a bunch (basically all of them in AUR) and currently use Xviewer because it does almost everything right from the UX perspective. But qimgv is faster and I love the coming webm support! Here's few things that are currently missing from qimgv and I'd hope to be able to customize (in order of my personal importance):

  1. Delete/trash support. Would be great if you could move files to trash with a Del key (basically, I wish there was a way to bind a key to "gio trash").

  2. Stretching and shrinking of images so they fill the window by default. It would be great to have an option for qimgv to fill the available space by default. If the image is bigger than the window, it should be shrunk into the available space and if it's smaller, it should be zoomed so it fills width or height and maintains perspective. Pressing something like Ctrl+0 would bring it to 100%. Pretty much all GTK viewers have something like this (and web browsers too).

  3. Pressing the Esc key while in full-screen should drop the viewer into windowed mode. Pressing it again should quit the viewer. This is how a lot of other viewers and video players handle this change. It would be great if qimgv maintained this consistency.

  4. Zoom in/Zoom out with a scroll key - currently, zooming in and zooming out with a mouse does not use mouse pointer as the origin of zoom. Also, wish there was more zoom levels and wish it used a better algo for upscaling... EWA Lanczos maybe? (this part is something that Xviewer does the best).

Anyway, this is an awesome project and I love it. It's by far the most promising image viewer I've seen in a while. Will continue using it and check its progress. Thank you so much for releasing it!

Implement image map overlay

Draw a small overlay in corner showing image rect. and whats currently showing on the window. Sort of like in gwenview/honeyview.

Detect file change

qimgv seems to keep adjacent files in its buffer. (Probably to speed up switching back and forth between two images.) This is useful, except in one scenario: when an external program modifies an image.

Suggestions:

  • When a file's datestamp changes, trigger its buffer as invalid.
  • If a file's buffer is invalidated, reread the image from disk the next time the file is viewed.

mp4 support

Hey, would you mind adding mp4 support, should be no problem as you use mpv for the webm/gif support anyway right?

Thank you for creating this application, i appreciate it! :)

Command line presets

Many of the features people are asking for can be done with a bit of CLI manipulating. If there were command line presets (similar to the 'quick copy/move' function) that the currently open file could be ran through, that would be excellent.

webm not working

Hi, I'm running Windows 10 Enterprise

Opening a webm just gives me a black screen, regular images work fine. Does qimgv rely on windows media player? because I don't have that.

Is there a possibility to utilize MPV for webm display?

[Question] Refreshing images

I use qimgv extensively when viewing my images while also use a RAW editing software that overwrites the JPG file. I noticed that after a while the photo is automatically updated to what has been recently written, but since it's automatic, I am having trouble figuring out whether I'm looking at what I have just processed, or the old version.

Is there a way to force a reload of the current image? Or any workaround context isn't lost (i.e. So user won't need to find the image again)

Thank you! 🙂

[Feature Request] Option to always show the Thumbnail Panel

As I am using the thumbnail panel to navigate big image collections, I would find it useful to have an option to always show the thumbnail panel, like in Eye of Gnome or Gwenview when windowed. This would save a bit time and the panel wouldn't vanish if i accidentally move my mouse cursor away from it.

Show video controls checkbox bug

The Show video controls checkbox doesn't seem to do anything right now, and doesn't save its state after you close the window.
Using v0.7.3 video on windows.

As a side note, it would be great if there was a toggle to mute/unmute videos with sound in the video controls. Being able to toggle between having a video scale to fit the window and/or zooming would also be great but I understand if that might be pushing the scope of this project.

Mirror images?

First: great viewer, exactly what I need to browse a directory of images, make some minor changes. and save them back without much hassle.

My usecase? I have cupboard full of 20+ year old slides, finally got a slide scanner, and after that thing drops a few hundred images into some directory, i need to scroll through them quickly and possibly rotate them. And if I insert a slide the wrong way, I need to flip/mirror it as well.

However - It doesn't seem like mirroring is in the GUI somewhere. utils/imagelib.cpp has flipH and flipV methods, so I guess this should be easy; but those methods don't seem to be called from anywhere. Could you please add this to a future version?


On a side note, the current version doesn't compile on Ubuntu 16.04, since that comes with qt 5.5.1, and qimgv seems to need qt5.6. A few patches here and there fix this, at the expense of high dpi scaling and device pixel ratios. Could you try to detect these in the configure script, and possibly use some #ifdef-s to not use these features on qt 5.5? 16.04 is the current Ubuntu Long Term release, and probably won't go away for a while even when the next LTS (18.04) comes out, so there will probably a good amount of people who appreciate that. Thanks!

Detect added files

Sometimes I will have an open image viewer, and then I'll add/modify files in current working directory. Is there any way to add support for detecting such changes?

Otherwise, this app is very nice!

(Similar to #42)

Build issue - error: call to deleted constructor of 'QImageReader'

Hi.

Trying import qimgv into OpenMandriva repository but I got a building error.

CMakeFiles/qimgv.dir/utils/imagefactory.cpp.o -c /builddir/build/BUILD/qimgv-0.7.1/utils/imagefactory.cpp
DEBUG util.py:498: BUILDSTDERR: /builddir/build/BUILD/qimgv-0.7.1/sourcecontainers/documentinfo.cpp:110:49: error: call to deleted constructor of 'QImageReader'
DEBUG util.py:498: BUILDSTDERR: const QImageReader& reader = (mExtension) ? QImageReader(path, mExtension) : QImageReader(path);
DEBUG util.py:498: BUILDSTDERR: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
DEBUG util.py:498: BUILDSTDERR: /usr/include/qt5/QtGui/qimagereader.h:149:20: note: 'QImageReader' has been explicitly marked deleted here
DEBUG util.py:498: BUILDSTDERR: Q_DISABLE_COPY(QImageReader)
DEBUG util.py:498: BUILDSTDERR: ^
DEBUG util.py:498: BUILDSTDERR: 1 error generated.

Full build log here: https://paste.ubuntu.com/p/HgsqpfK2PW/

Building on OpenMandriva Cooker, qt5.11.
Any idea?

Compiling on Xubuntu 18.04

Hi,

when compiling on Xubuntu (Ubuntu) 18.04, I get the following message when compiling (at step 2a) :

~/Builds/qimgv/build$ cmake -DCMAKE_INSTALL_PREFIX=/usr/ -DCMAKE_BINARY_DIR=${DIR}/ .. && make -j4
-- The C compiler identification is GNU 7.3.0
-- The CXX compiler identification is GNU 7.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/red/Builds/qimgv/build
Scanning dependencies of target qimgv_autogen
[ 1%] Automatic MOC and UIC for target qimgv
[ 1%] Built target qimgv_autogen
[ 2%] Generating qrc_resources.cpp
Scanning dependencies of target qimgv
[ 3%] Building CXX object CMakeFiles/qimgv.dir/appversion.cpp.o
[ 4%] Building CXX object CMakeFiles/qimgv.dir/core.cpp.o
[...]
[ 87%] Building CXX object CMakeFiles/qimgv.dir/gui/panels/sidepanel/sidepanel.cpp.o
/home/red/Builds/qimgv/gui/panels/croppanel/croppanel.cpp: In member function ‘void CropPanel::onAspectRatioSelected()’:
/home/red/Builds/qimgv/gui/panels/croppanel/croppanel.cpp:103:44: error: ‘screenAt’ is not a member of ‘QGuiApplication’
QScreen* screen = QGuiApplication::screenAt(mapToGlobal(ui->ARcomboBox->geometry().topLeft()));
^~~~~~~~
CMakeFiles/qimgv.dir/build.make:1959: recipe for target 'CMakeFiles/qimgv.dir/gui/panels/croppanel/croppanel.cpp.o' failed
make[2]: *** [CMakeFiles/qimgv.dir/gui/panels/croppanel/croppanel.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/qimgv.dir/all' failed
make[1]: *** [CMakeFiles/qimgv.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

Any idea what the problem might be ?

Thank you !

Install in Fedora

Sorry if I'm just being really dumb but could you add a method that explains how to install this in Fedora (If its possible).

I haven't tried it yet but this looks great!

Transparency does not persist

Transparency fails to persist after setting it in settings, then closing qimgv and re-opening it.
On wayland on swaywm.

Image rotation data from exif is not taken into account

Hi,

Quite often I notice that the image orientation of most of the images that I take with my phone is wrong when viewed with qimgv. I've narrowed it down to image orientation metadata. Apparently, most phones encode the image off a sensor in the same orientation and then they just encode the orientation into the exif.

Example pic: https://my.mixtape.moe/prbxhn.jpg

Pic above will look properly oriented in all web browsers and most viewers but not with qimgv. It contains Rotate 270 CW as Orientation parameter.

http://leancrew.com/all-this/2009/04/derotating-jpegs-with-exiftool/
https://sno.phy.queensu.ca/~phil/exiftool/exiftool_pod.html

[Feature request] "Show image info" in non-fullscreen

As the title describes, I'd like to be able to enable "Show Image Info" when not in fullscreen mode, possibly with a keybind for toggling but perhaps that's for another ticket.

As a previously Honeyview user, this is the closest thing on Linux and I love it. <3

To clarify what option I'm talking about:
pref window

Two issues: cropping and renaming

Hi,

I've been using qimgv for a couple of years now and I really prefer the old way of cropping to this new one. Before, you could just drag the mouse from anywhere and create the crop region. Newer version forces you to hunt for handles in the corners of the screen (which can activate hot corners if you have those set up) and it's just generally less convenient since you have to move the mouse all across the screen. I understand why the drag handles are there but maybe the compromise would be to still allow arbitrarily drawing the crop region when the user doesn't click on the drag handles and just move the corner that's closes to the position where the user clicked? Or just let the user draw the crop region and when you detect the click that's not on the handle?

One other issue is that I find myself often renaming image files and then moving them to a permanent location. I can write a script and pop-up a rename box from a script but I have no way of letting the qimgv know that the name has changed and then you can't move it. And since qimgv doesn't monitor folders for file changes, I have to restart qimgv for it to see changes. Maybe there could be a builtin rename feature? 😄 Alternatively, maybe a way to watch folders for file changes with QFileSystemWatcher?

Thanks so much for qimgv... even after all this time I still use it daily and it's still the best!

Can't build on musl libc

/builddir/qimgv-0.7/core.cpp: In constructor 'Core::Core()':
/builddir/qimgv-0.7/core.cpp:22:13: error: 'M_MMAP_THRESHOLD' was not declared in this scope
     mallopt(M_MMAP_THRESHOLD, 64000);
             ^~~~~~~~~~~~~~~~
/builddir/qimgv-0.7/core.cpp:22:5: error: 'mallopt' was not declared in this scope
     mallopt(M_MMAP_THRESHOLD, 64000);
     ^~~~~~~
/builddir/qimgv-0.7/core.cpp:22:5: note: suggested alternative: 'malloc'
     mallopt(M_MMAP_THRESHOLD, 64000);
     ^~~~~~~
     malloc
make[2]: *** [CMakeFiles/qimgv.dir/build.make:155: CMakeFiles/qimgv.dir/core.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
[  9%] Building CXX object CMakeFiles/qimgv.dir/components/actionmanager/actionmanager.cpp.o
make[1]: *** [CMakeFiles/Makefile2:73: CMakeFiles/qimgv.dir/all] Error 2
make: *** [Makefile:130: all] Error 2

Compiling on Ubuntu 16.04 LTS

I'm getting following error while compiling qimgv on 16.04:

[ 69%] Building CXX object gui/viewers/CMakeFiles/viewers.dir/mpvwidget.cpp.o
cd /build/qimgv-0.6/obj-x86_64-linux-gnu/gui/viewers && /usr/bin/x86_64-linux-gnu-g++ -DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_WIDGETS_LIB -I/build/qimgv-0.6/obj-x86_64-linux-gnu/gui/viewers -I/build/qimgv-0.6/gui/viewers -I/build/qimgv-0.6 -I/build/qimgv-0.6/res -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtWidgets -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -isystem /usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -fPIC -std=c++11 -O3 -DNDEBUG -fPIC -o CMakeFiles/viewers.dir/mpvwidget.cpp.o -c /build/qimgv-0.6/gui/viewers/mpvwidget.cpp
/build/qimgv-0.6/gui/viewers/mpvwidget.cpp: In member function 'void MpvWidget::command(const QVariant&)':
/build/qimgv-0.6/gui/viewers/mpvwidget.cpp:62:5: error: 'command' is not a member of 'mpv::qt'
mpv::qt::command(mpv, params);
^
/build/qimgv-0.6/gui/viewers/mpvwidget.cpp: In member function 'void MpvWidget::setProperty(const QString&, const QVariant&)':
/build/qimgv-0.6/gui/viewers/mpvwidget.cpp:66:5: error: 'set_property' is not a member of 'mpv::qt'
mpv::qt::set_property(mpv, name, value);
^
/build/qimgv-0.6/gui/viewers/mpvwidget.cpp: In member function 'QVariant MpvWidget::getProperty(const QString&) const':
/build/qimgv-0.6/gui/viewers/mpvwidget.cpp:70:12: error: 'get_property' is not a member of 'mpv::qt'
return mpv::qt::get_property(mpv, name);

A few suggestions

Не хватает выпадающей панели задач и кнопки свернуть.
Надпись сверху слишком яркая, нужна настройка цвета.
Не показывать уведомление об удалении файла.
Добавить миниатюры видео.
Добавить в контекстное меню: «Открыть папку с файлом» (Открывается папка с выделенным файлом), Копировать (Чтобы потом вставить в документ или сообщение).

Have `--help` text

It would be really nice to have a bit of help text when you run qimgv --help at a command line, since that's what I - and I feel like others - do with programs that they don't use often and forget how to use. Even though it's not intended for command line use, it's certainly much more helpful to have that than to just launch the program and display an error saying that there is no file called '--help'.

Even literally copy-pasting the "Default control scheme" from the README.md would be perfect, since there's also no man page or anything :)

qimgv doesn't open image files without extension

Seems like this code doesn't work

fileType FileInfo::guessType() {
    QString ext = getExtension(fileInfo.filePath());
    if(ext == "webm" || ext == "gifv") { // case sensitivity?
        return VIDEO;
    }

    QFile file(fileInfo.filePath());
    file.open(QIODevice::ReadOnly);
    //read first 2 bytes to determine file format
    QByteArray startingBytes= file.read(2).toHex();
    file.close();

    if(startingBytes=="4749") {

        return GIF;
    }
    else {
        return STATIC;
    }
}

Steps to reproduce: Open program, press ctrl+o, select image file without extension. Voila! Nothing happened.

human friendly config file

at the moment, qimgv keeps rewriting the config file every time it's executed, undoing any formatting or hand editing you might have done to it. it also seems to store stuff that changes on every run like savedPaths

it would be nice if we had a human friendly config file for scripts and keybinds that is at least properly formatted and doesn't change randomly, that way you could cleanly commit it to a git repo like a lot of people do with their dotfiles

i personally much prefer to just edit a text file than click through buttons to rebind stuff, so as long as it doesn't randomly overwrite the config file on me unless i use the gui configurator I'd be happy

Panel Position Option not working

If I change the Panel Position in the settings menu to bottom it is still at the top. Removing all config files or reinstalling qimgv does not solve the issue.

Software I used:

  • qimgv git from today
  • qt 5.12
  • Gnome 3.30.2

metadata preview

would it be possible to have metadata displayed on demand? is such option planned?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.