1. 28 Jan, 2023 2 commits
  2. 27 Jan, 2023 2 commits
  3. 26 Jan, 2023 1 commit
  4. 25 Jan, 2023 2 commits
  5. 24 Jan, 2023 6 commits
  6. 23 Jan, 2023 3 commits
  7. 20 Jan, 2023 3 commits
  8. 19 Jan, 2023 1 commit
  9. 16 Jan, 2023 11 commits
  10. 15 Jan, 2023 4 commits
  11. 14 Jan, 2023 2 commits
    • António Fernandes's avatar
      view-model: Stop crashing on sort-directories-first change · 43478c41
      António Fernandes authored
      Toggling sort directories first in list view causes a crash.
      This is a regression in commit b9ac68eb
      
      gtk_sort_list_model_set_sorter() first unrefs the old sorter, then refs
      the new sorter. The crash happens because the new sorter is the new
      sorter. It gets destroyed by the unref, and therefore we crash when
      trying to ref a destroyed object. (It's arguably a GTK API bug too.)
      
      The solution (from our side) is for us to hold a temporary reference to
      keep the object alive.
      43478c41
    • António Fernandes's avatar
      view-model: Remove moved item from old store · e13e08a9
      António Fernandes authored
      When an item is moved, we are still showing it in the old location as a
      regression caused by commit 510a4202
      
      With the introduction of tree model, we maintain multiple list stores
      (one for each TreeListRow when the TreeListRow is a directory) and the
      item is associated with a directory store upon creation by checking
      nautilus_file_get_parent(). When removing an item, we again find the
      directory store to remove from, by checking directory_reverse_map for
      the parent file.
      
      But, when an item has been moved, the parent file is no longer the same
      as when it was added. This means we try to remove the file from the new
      parent instead of the old one.
      
      Fortunately we already have a solution for this from the old list view:
      NautilusFilesView.remove_file() gets passed the directory to remove the
      file from. Let's use it instead of the current parent.
      
      Heavily based on diagnosis and commit message from patch by Corey Berla
      
      Fixes #2784
      e13e08a9
  12. 13 Jan, 2023 3 commits
    • Athul Iddya's avatar
      grid-cell: Set tooltip values using text, not markup · 60bd0613
      Athul Iddya authored
      Tooltips are not showing up for long file names that have Pango markup
      characters. This is happening because the cell widget label is set using
      `set_text`, but is retrieved in the `query-tooltip` signal handler using
      `get_label`. While `get_label` can return Pango markup, it is not
      guaranteed to return text with markup characters escaped. Avoid this
      problem by fetching the file name from label and setting tooltip using
      text.
      60bd0613
    • Ondrej Holy's avatar
      application: Export FileManager1 iface from dbus_register vfunc · 2293e813
      Ondrej Holy authored and António Fernandes's avatar António Fernandes committed
      The `org/freedesktop/FileManager1` interface is not currently exported
      from the `dbus_register` vfunc. This causes issues for projects (e.g.
      desktop-icons extension) that want to use all the Nautilus intefaces
      over the `org.gnome.Nautilus` connection. Let's use the already established
      connection and export the `FileManager1` interface from the `dbus_register`
      vfunc.
      
      https://bugzilla.redhat.com/show_bug.cgi?id=2150894
      2293e813
    • Ondrej Holy's avatar
      Revert "freedesktop-dbus: Defer D-Bus property setting" · bf615805
      Ondrej Holy authored and António Fernandes's avatar António Fernandes committed
      This reverts commit 3014f694 and part of
      the commit a1751d3d. This extra handling
      was needed because `NautilusFreedesktopDBus` methods might be called before
      establishing its own D-Bus connection. The follow-up commit is going to use
      the already established connection from the `dbus_register` vfunc. It
      should be ensured that the `dbus_register` vfunc is called before the
      `window_added`, `window_removed`, or `startup` vfunc. Consequently, this
      extra handling is going to be redundant. Let's remove it as a preparation
      for the next commit.
      bf615805