- 11 May, 2022 1 commit
-
-
The master branch introduces incompatible API changes in the thumbnailing component. The previously cherry-picked patch has been reverted because it shouldn't have been applied to the stable branch. Instead, in order to pass the pipeline, use stable dependency. Fixes #2237 (cherry picked from commit ca306b56)
-
- 10 May, 2022 1 commit
-
-
Files are flagged as remote in file->details->filesystem_remote through directory-async as folders are browsed. nautilus_file_get_filesystem_remote() incorrectly returns FALSE for child directories that have not been processed by directory-async on a remote filesystem. This causes the "Count Number of Files in Folders" options to not work correctly when set to "On This Computer Only". Rather than unnecessarily process all of the child folders, check whether filesystem_info_is_up_to_date==TRUE. If not, check whether the parent is remote instead. This issue was introduced in 99f55748. Previously the prefix of the URI was checked to match a hardcoded list. Fixes: #2035 (cherry picked from commit 2ab0fcbd)
-
- 19 Mar, 2022 7 commits
-
-
António Fernandes authored
-
When doing a DnD operation from outside Nautilus into one of its windows, if the window is in "iconview mode", Nautilus is able to detect when the origin and the destination folders are in the same disk volume and do a move in that case, or do a copy when they are in different volumes. Unfortunately, when the window is in "treeview mode", this operation doesn't work as expected, and always copy the file(s), no matter if the origin and destination folders are or not in the same volume. After tracking the bug, I found that, in "treeview mode", the NautilusFile object with the destination folder doesn't have defined the filesystem_id property. This makes fail the check_same_fs() function, which always returns FALSE. In "iconview mode", instead, the object does have that property defined, and that's why there it works. I did a fix proposal, and although it was a safe workaround, António Fernandes found a better way to fix it, which is this patch. Fix #2170 (cherry picked from commit 222bb41f)
-
The difference between @borders and @unfocused_borders colors is barely noticeable with the regular stylesheet, but marked with high contrast. The same is true for @theme_bg_color vs. @theme_unfocused_bg_color. So, under the Adwaita spreadsheet, this change is barely noticeable, despite being correct and indeed a bugfix. The main purpose of this patch is to improve HighContrast support.
-
HighContrast and HighContrastInverse have been poorly supported in this app for a long time because we ship many custom styles. However, nowadays HighContrast and HighContrastInverse stylesheets are derived from Adwaita stylesheet, so the same custom styles can be applied cleanly. Let's do that. Fixes #1614 and fixes #1469
-
Sometimes, after having called gtk_drag_get_data() on ::drag-motion, we only get the data after ::drag-leave. This is fine if the ::drag-leave is followed by ::drag-drop. Otherwise, as ::drag-leave is responsible for cleanup, data arriving afterwards is leaking into the next time content is dragged hover the widget, even if the dragged content is no longer the same. Instead, keep track of the hover status and don't save data that's no longer relevant.
-
When data retrieval fails, ::drag-data-received is emitted with a selection of negative length. We have been treating this case as invalid data, but we never actually call gdk_drag_finish() which is mandatory after a drop. Instead, reset drag_info->have_data to FALSE in this case, and let slot_proxy_handle_drop() handle the rest.
-
Each time ::drag-motion is emitted, we call gtk_drag_get_data() if we don't have data yet. If the drag source doesn't provide the data right away, we can end up calling gtk_drag_get_data() multiple times. Later, when the data is retrieved, we get multiple ::drag-data-received emissions. Not only is this wasteful, it also breaks an assertion, causing crashes. Instead, make sure gtk_drag_get_data() is called only once. Fixes #1535
-
- 16 Mar, 2022 1 commit
-
-
- 10 Mar, 2022 1 commit
-
-
- 19 Feb, 2022 2 commits
-
-
- 11 Feb, 2022 1 commit
-
-
Ondrej Holy authored
The `autoar_compressor_set_passphrase` function is always called currently regardless the fact whether password is set, or not. Consequently, the "autoar_compressor_set_passphrase: assertion 'self->format == AUTOAR_FORMAT_ZIP' failed" critical is printed. Let's call that function only if the passphrase is really wanted. (cherry picked from commit 807ff3d7)
-
- 30 Jan, 2022 2 commits
-
-
- 29 Jan, 2022 1 commit
-
-
- 23 Jan, 2022 1 commit
-
-
- 12 Jan, 2022 2 commits
-
-
Ondrej Holy authored
-
-
- 19 Nov, 2021 1 commit
-
-
The templates submenu in the current location popover is recreated every time the menu model is updated, but the old widgetry is never destroyed. This results in a memory leak and many warnings in the terminal output. I couldn't find the root cause, after many investigations. However, I've found that unsetting the model actually removes the old widgetry. Let's do that as a workaround. Fixes #1705 (cherry picked from commit c56e90ed)
-
- 17 Nov, 2021 1 commit
-
-
- 14 Nov, 2021 1 commit
-
-
"Copy To" or "Move To" dialog starting from the current location. However, if the current location is starred://, GtkFileChooserDialog prompts an error message "The specified location is not supported". Instead, while in the Starred location, use the actual parent of the selected item as a starting location for the "Copy To" dialog. Fixes: #1243 (cherry picked from commit e6c0b65c)
-
- 08 Nov, 2021 2 commits
-
-
António Fernandes authored
Under X11, GTK3 cannot draw a GtkPopover outside of the main window area. This means the popover for compress formats is clipped under X11. As a workaround, make the window twice as tal when the popover is shown. Fixes #2018
-
António Fernandes authored
Changes in libportal main branch break the CI and require dependency changes which we shouldn't make on stable branch.
-
- 06 Nov, 2021 1 commit
-
-
- 03 Nov, 2021 2 commits
-
-
- 30 Oct, 2021 6 commits
-
-
Ondrej Holy authored
-
Ondrej Holy authored
-
Use autocleanup. Remove empty lines. Rename symbols. Rearrange early return.
-
Same rationale as for Templates. But, in this case, we don't have a cache ready to use. So, keep a cache of the menu model in the private instance data. No need for a GObject property in this case. Also, remove scripts_present boolean, now that we can directly check whether the scripts_menu is present (i.e., not NULL).
-
Menus are updated very frequently. Each time, we read the Templates directory tree and recreate a menu model from which we generate the New Document menu that's shared between the background context menu and the current location menu in the pathbar. This is wasteful and may cause noticeable UI lag if the Templates directory has got a lot of files and subdirectories. We already have a file monitor in place which notifies us when the content of the Templates directory actually changes, so we can rely on it to know when we need to read the directory again, and, in the remaining situations, we can use the cached menu model. Fixes #1069 Relates to #1705
-
If the templates dir is set to Home, then it should not be used. We set the priv->templates_present boolean to FALSE in that case, but forget to set the :templates-menu property to NULL too. Fix that corner case issue. Also, drop the useless boolean and just check directly whether the menu is present (i.e. not NULL).
-
- 27 Oct, 2021 1 commit
-
-
António Fernandes authored
The subtitle label is long and may be even longer in some locales. As a result, a wide minimum width is forced on the whole window, which is not desirable. So, make it ellipsize and also add a tooltip. Fixes #2012
-
- 26 Oct, 2021 2 commits
-
-
The positional argument was being silently ignored until meson 0.60.0 where it fails with "ERROR: Function does not take positional arguments". See: https://github.com/mesonbuild/meson/issues/9441
-
The "Apply this action to all files and folders" checkbox works only with the "Replace" action, not the "Rename" action. Indeed, if the rename field is expanded, the checkbox is greyed out. However, if the checkbox is checked, when unchecking it changes the main action to Rename, despite the rename field being obviously hidden (otherwise the checkbox wouldn't be checked). That's wrong. It's a regression from 15d59cd1 When the checkbox is unchecked, the action is already "Replace", so there is no need to change it. Fixes #1889
-
- 25 Oct, 2021 3 commits
-
-
-
Ondrej Holy authored
I think that this code is a quite stable after 13 years of production, so this TODO statement can be probably removed :-D
-
Ondrej Holy authored
The progress is wrong when extracting multiple files and some of them are skipped. Let's try to fix this.
-