diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 15:59:36 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 15:59:36 +0000 |
commit | ec52555862913a23417735f9f7f5402f5230da13 (patch) | |
tree | 5e43a30d289a3daa69dddfbb060216ff6332f197 /docs/Overview.md | |
parent | Initial commit. (diff) | |
download | nautilus-588f9a161e7f1abfdfa41db72a22f3d5b9b20486.tar.xz nautilus-588f9a161e7f1abfdfa41db72a22f3d5b9b20486.zip |
Adding upstream version 3.38.2.upstream/3.38.2upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'docs/Overview.md')
-rw-r--r-- | docs/Overview.md | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/docs/Overview.md b/docs/Overview.md new file mode 100644 index 0000000..9194aa4 --- /dev/null +++ b/docs/Overview.md @@ -0,0 +1,29 @@ += File Ownership = +In the minimal case, a nautilus file is owned by: +- Window slot -> viewed_file +- Window slot -> history list using bookmarks +- Path bar -> button -> file +- Path bar -> button -> nautilus_drag_slot_proxy + +When a file is a bookmark, nautilus application keeps a list with them, so it +also owns those files. + +Window slot is the creator of the file if the file was already not present due +to be a bookmark. + +The window has a queue with information of the closed tabs, owning references +to previous files. + += Directory Ownership = +Every file has a directory associated, that is usually the parent. However, when +the file is a root and has no parent, the file is called self_owned, and the directory +and the file are the same location, but different objects. + +It's better to always deal with files instead of directories, and let the file handle +the ownership of its associated directory. + += View Ownership = +It's owned by: +- Window slot as a strong reference, since the view sinks the floating reference. +So to freed it the window slot needs to destroy it with gtk_widget_destroy () +since it's the container, but also needs to unref it. |