Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Improve the workaround for native GdkWindows | Přemysl Eric Janouch | 2022-07-17 | 1 | -1/+1 |
| | | | | | Overshooting caused the image to be one pixel taller/wider, due to using ceil() within get_display_dimensions(). | ||||
* | Work around a mysterious no-image zoom issue | Přemysl Eric Janouch | 2022-07-17 | 1 | -2/+8 |
| | |||||
* | Center zoom around pointer or middle of the view | Přemysl Eric Janouch | 2022-07-17 | 1 | -16/+53 |
| | |||||
* | Let FivView take care of its drag gesture | Přemysl Eric Janouch | 2022-07-17 | 2 | -77/+79 |
| | | | | Making the GtkScrolledWindow's scrollbars draggable again. | ||||
* | Implement GtkScrollable in FivView | Přemysl Eric Janouch | 2022-07-17 | 2 | -33/+147 |
| | | | | | This fixes rendering and positioning behaviour when dragging on X11, where we aim to use a native GdkWindow. | ||||
* | Simplify view dragging code a bit | Přemysl Eric Janouch | 2022-07-16 | 1 | -26/+16 |
| | |||||
* | Support dragging the view | Přemysl Eric Janouch | 2022-07-15 | 2 | -2/+91 |
| | | | | | | | | | It would also be possible to handle this through press/motion/release event handlers, though GtkGestureDrag is more convenient for hacking in support for dragging to widgets not supporting GtkScrollable (yet). There may be some undesired interactions lurking, besides the jarring movements when dragging native GdkWindows (these are a pain). | ||||
* | Make the browser scroll with touchpad on Wayland | Přemysl Eric Janouch | 2022-07-15 | 2 | -3/+37 |
| | | | | And generally clear up scroll handling. | ||||
* | Discard the inner sidebar's size request | Přemysl Eric Janouch | 2022-07-14 | 1 | -1/+6 |
| | | | | | It used to create a hole when there weren't enough bookmarks to fill that space. | ||||
* | Use GPatternSpec rather than fnmatch() | Přemysl Eric Janouch | 2022-07-14 | 1 | -12/+24 |
| | | | | | Fixing a portability issue on Windows, where we still aim to use the shared-mime-info database. | ||||
* | Add a context menu to breadcrumbs | Přemysl Eric Janouch | 2022-07-04 | 1 | -2/+34 |
| | |||||
* | Move the browser's popup menu to its own file | Přemysl Eric Janouch | 2022-07-04 | 4 | -183/+222 |
| | |||||
* | Decode bitmap thumbnails through LibRaw as well | Přemysl Eric Janouch | 2022-06-10 | 1 | -1/+72 |
| | |||||
* | Generate TIFF structs/enums from a text file | Přemysl Eric Janouch | 2022-06-10 | 4 | -504/+531 |
| | | | | This is to make the tables much easier to maintain. | ||||
* | Build tools with Meson as well | Přemysl Eric Janouch | 2022-06-10 | 5 | -21/+17 |
| | |||||
* | Downscale embedded thumbnails within minions | Přemysl Eric Janouch | 2022-06-08 | 3 | -67/+76 |
| | | | | Otherwise the UI would become unresponsive during loading. | ||||
* | Employ embedded thumbnail extraction | Přemysl Eric Janouch | 2022-06-08 | 1 | -12/+39 |
| | | | | | | | | | | | | And store all direct thumbnailer output in the browser's cache-- low-quality thumbnails will always be regenerated, as is desired, and we'll reload faster on devices where we don't store thumbnails. This change improves latency at the cost of overall efficiency, seeing as images with thumbnails will be spent cycles on twice. Keeping this out-of-process avoids undesired lock-ups. Moreover, embedded thumbnails can be fairly expensive to decode. | ||||
* | Add a command line option to extract thumbnails | Přemysl Eric Janouch | 2022-06-08 | 4 | -71/+161 |
| | | | | | Only use LibRaw for now, which probably has the most impact using the least amount of effort. | ||||
* | Add flags to the serialization protocol | Přemysl Eric Janouch | 2022-06-08 | 3 | -6/+11 |
| | | | | | | | | | It still needs no versioning, as it's not really used by anyone. An alternative method of passing a "low-quality" flag would be perusing fiv_thumbnail_key_lq from fiv-thumbnail.c, which would create a circular dependency, unless fiv_io_{de,}serialize*() were moved to fiv-thumbnail.c. | ||||
* | Clean up | Přemysl Eric Janouch | 2022-06-05 | 10 | -48/+48 |
| | | | | Use gchar when memory is allocated through GLib. | ||||
* | Get rid of our spng dependency | Přemysl Eric Janouch | 2022-06-04 | 6 | -140/+189 |
| | | | | Thumbnails can be properly loaded using Wuffs now. | ||||
* | Bump Wuffs, support partial PNGs through it | Přemysl Eric Janouch | 2022-06-04 | 3 | -11/+12 |
| | |||||
* | Cache thumbnails across reloads | Přemysl Eric Janouch | 2022-06-04 | 1 | -7/+34 |
| | | | | | | | | | This will speed up sort changes, as well as simple reloads, at the cost of an extra hash map from URIs to Cairo surface references. It seems unnecessary to provide an explicit option to flush this cache, as it may be cleared by changing either the directory or the current thumbnail size. | ||||
* | Attach mtime to the browser's rescaled thumbnails | Přemysl Eric Janouch | 2022-06-04 | 1 | -1/+14 |
| | |||||
* | Use the model's mtime for validating thumbnails | Přemysl Eric Janouch | 2022-06-04 | 4 | -21/+15 |
| | | | | | Saves a syscall, generalizes fiv_thumbnail_lookup(), wastes a tiny bit of memory per entry. | ||||
* | Expose the mtime of the model's entries | Přemysl Eric Janouch | 2022-06-04 | 5 | -41/+42 |
| | |||||
* | Plug two memory leaks | Přemysl Eric Janouch | 2022-06-04 | 2 | -6/+6 |
| | |||||
* | Fix sort changes taking way too much time | Přemysl Eric Janouch | 2022-06-02 | 1 | -2/+8 |
| | | | | | | All thumbnails were reloaded five times on each change. GTK+/GObject's behaviour doesn't make a lot of sense, but such is life. | ||||
* | Bump spng wrap | Přemysl Eric Janouch | 2022-04-20 | 1 | -4/+4 |
| | |||||
* | Fix loading huge JPEGs | Přemysl Eric Janouch | 2022-03-09 | 2 | -0/+31 |
| | | | | | | | | They fell back to gdk-pixbuf, then misrendered in the thumbnailer, and crashed the program when loaded directly. The second best we can do is scale them down, right after tiling, which is a complex feature to add. | ||||
* | Prevent thumbnailing from disrupting mouse clicks | Přemysl Eric Janouch | 2022-02-24 | 1 | -9/+9 |
| | |||||
* | Turn the browser into a DnD source | Přemysl Eric Janouch | 2022-02-22 | 1 | -14/+99 |
| | | | | | | The destination does all the work of handling file operations. Also, add some missing logic for horizontal scrolling. | ||||
* | Use the X-GNOME-FullName desktop file key | Přemysl Eric Janouch | 2022-02-21 | 3 | -2/+5 |
| | |||||
* | Avoid g_app_info_should_show() in context menus | Přemysl Eric Janouch | 2022-02-21 | 1 | -4/+2 |
| | | | | We were hiding our own JPEG cropper. | ||||
* | Clean up | Přemysl Eric Janouch | 2022-02-21 | 1 | -13/+8 |
| | |||||
* | Try to thumbnail everything we can | Přemysl Eric Janouch | 2022-02-21 | 1 | -25/+75 |
| | |||||
* | Clean up | Přemysl Eric Janouch | 2022-02-20 | 1 | -3/+3 |
| | |||||
* | Make thumbnailers pass back raw images | Přemysl Eric Janouch | 2022-02-20 | 6 | -36/+137 |
| | |||||
* | Implement wide thumbnail cache invalidation | Přemysl Eric Janouch | 2022-02-20 | 4 | -4/+198 |
| | |||||
* | Use natural sort order | Přemysl Eric Janouch | 2022-02-20 | 1 | -12/+9 |
| | | | | This is exposed in GLib through collate key construction. | ||||
* | Show application icons in context menu items | Přemysl Eric Janouch | 2022-02-20 | 1 | -2/+20 |
| | |||||
* | Simplify sidebar DnD | Přemysl Eric Janouch | 2022-02-19 | 1 | -4/+1 |
| | |||||
* | fiv-jpegcrop: avoid negatively sized crop regions | Přemysl Eric Janouch | 2022-02-19 | 1 | -4/+5 |
| | |||||
* | Don't mention gdk-pixbuf as a direct dependency | Přemysl Eric Janouch | 2022-02-19 | 2 | -2/+2 |
| | | | | It's a similar case to Cairo. | ||||
* | Add a lossless JPEG cropper | Přemysl Eric Janouch | 2022-02-19 | 4 | -1/+443 |
| | | | | This is more of an MVP, as metadata probably need adjustments. | ||||
* | Add a TODO comment | Přemysl Eric Janouch | 2022-02-18 | 1 | -0/+1 |
| | | | | WebP can't save all JPEGs, because WEBP_MAX_DIMENSION is only 16383. | ||||
* | Make the view a drop target | Přemysl Eric Janouch | 2022-02-17 | 1 | -0/+24 |
| | |||||
* | Add a missing header file include | Přemysl Eric Janouch | 2022-02-14 | 1 | -2/+3 |
| | |||||
* | Open items on mouse button release, not press | Přemysl Eric Janouch | 2022-02-14 | 1 | -25/+31 |
| | | | | | | | | At least the left and middle mouse buttons seem to behave similarly in other programs and systems. Context menus are opened on button release on Windows and with some GTK+ widgets (popovers in GtkPlacesSidebar). | ||||
* | Scroll to selection when returning from the viewer | Přemysl Eric Janouch | 2022-02-13 | 1 | -2/+15 |
| |