37
37
38
38
local dt = require " darktable"
39
39
local du = require " lib/dtutils"
40
+ local log = require " lib/dtutils.log"
40
41
41
42
-- - - - - - - - - - - - - - - - - - - - - - - -
42
43
-- C O N S T A N T S
@@ -96,6 +97,13 @@ log.log_level(DEFAULT_LOG_LEVEL)
96
97
97
98
local auto_snapshot = {}
98
99
100
+ -- - - - - - - - - - - - - - - - - - - - - - - -
101
+ -- P R E F E R E N C E S
102
+ -- - - - - - - - - - - - - - - - - - - - - - - -
103
+
104
+ dt .preferences .register (MODULE , " always_create_snapshot" , " bool" , " always automatically create_snapshot" ,
105
+ " auto_snapshot - create a snapshot even if the image is altered" , false )
106
+
99
107
-- - - - - - - - - - - - - - - - - - - - - - - -
100
108
-- D A R K T A B L E I N T E G R A T I O N
101
109
-- - - - - - - - - - - - - - - - - - - - - - - -
@@ -112,7 +120,10 @@ script_data.destroy = destroy
112
120
113
121
dt .register_event (MODULE , " darkroom-image-loaded" ,
114
122
function (event , clean , image )
115
- if clean then
123
+ local always = dt .preferences .read (MODULE , " always_create_snapshot" , " bool" )
124
+ if clean and always then
125
+ dt .gui .libs .snapshots .take_snapshot ()
126
+ elseif clean and not image .is_altered then
116
127
dt .gui .libs .snapshots .take_snapshot ()
117
128
end
118
129
0 commit comments