diff options
author | Colomban Wendling <[email protected]> | 2021-03-23 17:47:32 +0100 |
---|---|---|
committer | raveit65 <[email protected]> | 2022-07-21 19:33:51 +0200 |
commit | cae1e23b3d9800b78c14300914dc11730c2cf6b6 (patch) | |
tree | 27b48705e63532bc20e149ca23c83169c8c98c09 /libcaja-private/caja-icon-container.c | |
parent | 70e891c66cede8fef74004b6c5740466e4d90eb4 (diff) | |
download | caja-cae1e23b3d9800b78c14300914dc11730c2cf6b6.tar.bz2 caja-cae1e23b3d9800b78c14300914dc11730c2cf6b6.tar.xz |
icon view: Add a directory setting to block moving icons
This is mostly useful on the desktop (which is the main user of the
free-placement icon view) to be able to lock the layout and avoid
unintentionally moving icons around. Especially useful for less
computer-literate users.
Diffstat (limited to 'libcaja-private/caja-icon-container.c')
-rw-r--r-- | libcaja-private/caja-icon-container.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/libcaja-private/caja-icon-container.c b/libcaja-private/caja-icon-container.c index 31a326af..a8d9b603 100644 --- a/libcaja-private/caja-icon-container.c +++ b/libcaja-private/caja-icon-container.c @@ -2610,7 +2610,7 @@ caja_icon_container_move_icon (CajaIconContainer *container, } } - if (!details->auto_layout) + if (!details->auto_layout && !details->lock_icons_position) { if (details->keep_aligned && snap) { @@ -8688,6 +8688,12 @@ caja_icon_container_is_keep_aligned (CajaIconContainer *container) return container->details->keep_aligned; } +gboolean +caja_icon_container_is_lock_icons_position (CajaIconContainer *container) +{ + return container->details->lock_icons_position; +} + static gboolean align_icons_callback (gpointer callback_data) { @@ -8741,6 +8747,15 @@ caja_icon_container_set_keep_aligned (CajaIconContainer *container, } void +caja_icon_container_set_lock_icons_position (CajaIconContainer *container, + gboolean lock_icons_position) +{ + g_return_if_fail (CAJA_IS_ICON_CONTAINER (container)); + + container->details->lock_icons_position = lock_icons_position; +} + +void caja_icon_container_set_layout_mode (CajaIconContainer *container, CajaIconLayoutMode mode) { |