diff options
author | Razvan Chitu <razvan.ch95@gmail.com> | 2015-12-22 14:56:20 +0200 |
---|---|---|
committer | Carlos Soriano <csoriano@gnome.org> | 2015-12-22 15:40:09 +0100 |
commit | 0eef08686f520caf3700bff4f9b371fa780dba88 (patch) | |
tree | 832aa90591634e1e86bfbb15b914d41c4ca6b8b8 /libnautilus-private | |
parent | 1c6e94d38995a37727b17da14fd3dbc2edca6163 (diff) | |
download | nautilus-0eef08686f520caf3700bff4f9b371fa780dba88.tar.gz |
files-view: add optional menu item for creating links
The menu item for creating links was removed in previous versions of nautilus
since it exposes a concept of the file system that is not really clear.
However, we don't have a working solution yet for the use cases that creating
links is a workaround, so we didn't remove the functionality altogether.
We were allowing link creation with a shortcut and with the middle button while
performing a drag and drop operation. However, some users would need to use a
context menu action instead of a drag and drop operation, which usually is less
convenient and prone to errors.
Since this is demanded, implement the menu action for it and add a gsetting
preference to show it in the context menu for those users who like to have it
there.
Also the new implementation uses the code that is already used for other
operations, improving the implementation compared to the previous one.
In an upcoming patch we add the UI for the preference dialog.
https://bugzilla.gnome.org/show_bug.cgi?id=745575
Diffstat (limited to 'libnautilus-private')
-rw-r--r-- | libnautilus-private/nautilus-clipboard-monitor.c | 10 | ||||
-rw-r--r-- | libnautilus-private/nautilus-clipboard-monitor.h | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/libnautilus-private/nautilus-clipboard-monitor.c b/libnautilus-private/nautilus-clipboard-monitor.c index 9ae66f6c2..891401a4a 100644 --- a/libnautilus-private/nautilus-clipboard-monitor.c +++ b/libnautilus-private/nautilus-clipboard-monitor.c @@ -205,6 +205,16 @@ nautilus_clipboard_monitor_get_clipboard_info (NautilusClipboardMonitor *monitor return monitor->details->info; } +gboolean +nautilus_clipboard_monitor_is_cut (NautilusClipboardMonitor *monitor) +{ + NautilusClipboardInfo *info; + + info = nautilus_clipboard_monitor_get_clipboard_info (monitor); + + return info != NULL ? info->cut : FALSE; +} + void nautilus_clear_clipboard_callback (GtkClipboard *clipboard, gpointer user_data) diff --git a/libnautilus-private/nautilus-clipboard-monitor.h b/libnautilus-private/nautilus-clipboard-monitor.h index 8aa4788a5..7d1e6faf4 100644 --- a/libnautilus-private/nautilus-clipboard-monitor.h +++ b/libnautilus-private/nautilus-clipboard-monitor.h @@ -65,6 +65,7 @@ NautilusClipboardMonitor * nautilus_clipboard_monitor_get (void); void nautilus_clipboard_monitor_set_clipboard_info (NautilusClipboardMonitor *monitor, NautilusClipboardInfo *info); NautilusClipboardInfo * nautilus_clipboard_monitor_get_clipboard_info (NautilusClipboardMonitor *monitor); +gboolean nautilus_clipboard_monitor_is_cut (NautilusClipboardMonitor *monitor); void nautilus_clipboard_monitor_emit_changed (void); void nautilus_clear_clipboard_callback (GtkClipboard *clipboard, |