From ec52555862913a23417735f9f7f5402f5230da13 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 27 Apr 2024 17:59:36 +0200 Subject: Adding upstream version 3.38.2. Signed-off-by: Daniel Baumann --- docs/Overview.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 docs/Overview.md (limited to 'docs/Overview.md') 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. -- cgit v1.2.3