-
892da2662a
Keep the stars on screen long enough to click one
dtourolle
2026-08-21 20:29:10 +02:00
-
76a751f125
Measure the grid against the grid, not the whole view
dtourolle
2026-08-21 20:28:12 +02:00
-
3cfa78cde2
Give the app a face and a name on the launcher

dtourolleandClaude Opus 5
2026-08-21 20:22:08 +02:00
-
ca833b6d2b
Give every colour band its own compiled shader

dtourolleandClaude Opus 5
2026-08-18 15:23:04 +02:00
-
f76e024f41
Straighten a portrait frame in the frame the user is looking at

dtourolleandClaude Opus 5
2026-08-18 15:17:54 +02:00
-
f1cd6ed5b3
Make the drop decision a rule that can be tested

dtourolleandClaude Opus 5
2026-08-17 23:12:11 +02:00
-
6acc73a9fa
Drag a collection onto another to nest it

dtourolleandClaude Opus 5
2026-08-17 22:54:50 +02:00
-
edcaf42ded
Show only the photographs taken in the period you are looking at

dtourolleandClaude Opus 5
2026-08-17 22:38:26 +02:00
-
d2d5d6f22b
Keep the selection visible when the grid scrolls under it

dtourolleandClaude Opus 5
2026-08-17 22:30:37 +02:00
-
02d629922f
Draw the date histogram over the collection you are looking at

dtourolleandClaude Opus 5
2026-08-17 22:15:59 +02:00
-
b0206cbc7a
Let a sub-collection stay under its parent through a sync

dtourolleandClaude Opus 5
2026-08-17 21:55:09 +02:00
-
5700c37016
Look before overwriting the file we are asking about

dtourolleandClaude Opus 5
2026-08-17 20:40:36 +02:00
-
18f20170b3
Ask the file, not its folder, why the write was refused

dtourolleandClaude Opus 5
2026-08-17 20:38:48 +02:00
-
6621c11ad6
Diagnose the refused sidecar: the library mount is create-only

dtourolleandClaude Opus 5
2026-08-17 20:19:27 +02:00
-
71554714e7
Log why the server refused a write, in its own words

dtourolleandClaude Opus 5
2026-08-17 20:08:07 +02:00
-
09f6cf8c0f
Name the sidecar the drain could not deliver

dtourolleandClaude Opus 5
2026-08-17 14:21:00 +02:00
-
6a7ed37aed
Say which sidecar the server refused, and where

dtourolleandClaude Opus 5
2026-08-17 14:11:30 +02:00
-
dea826811e
Render a blown highlight white instead of magenta

dtourolleandClaude Opus 5
2026-08-17 13:17:15 +02:00
-
31e20399c8
Read the true white level, and clamp the sensor stage at both ends

dtourolleandClaude Opus 5
2026-08-17 13:13:17 +02:00
-
7d0fb710a6
Bound a readback by time, so a full-resolution export can finish

dtourolleandClaude Opus 5
2026-08-17 13:13:17 +02:00
-
f1f528fc42
Stop rendering a missing white balance as neutral, which came out pink

dtourolleandClaude Opus 5
2026-08-17 13:03:03 +02:00
-
d2024da368
Scroll the develop column as one, histogram and all

dtourolleandClaude Opus 5
2026-08-17 12:53:04 +02:00
-
654c11300e
Pin the framing geometry on pixels, not on the generated shader

dtourolleandClaude Opus 5
2026-08-17 12:46:17 +02:00
-
02ae92ba0d
Tidy what the seven-branch merge left behind

dtourolleandClaude Opus 5
2026-08-17 12:36:15 +02:00
-
c9c5c43aa1
Carry the library across when its home moves

dtourolleandClaude Opus 5
2026-08-17 12:32:20 +02:00
-
4e62b89d17
Merge branch 'android-collections'
dtourolle
2026-08-17 12:27:49 +02:00
-
-
d913e50948
Select photographs with a finger, and take a collection with you

dtourolleandClaude Opus 5
2026-08-17 12:27:29 +02:00
-
76bb6b2847
Merge branch 'worktree-watershed-plateaux'
dtourolle
2026-08-17 12:25:41 +02:00
-
-
0b20436445
Prove the plateau pass does nothing, and stop paying for it

dtourolleandClaude Opus 5
2026-08-17 12:25:28 +02:00
-
b8e9793908
Keep offline work out of a directory Android empties

dtourolleandClaude Opus 5
2026-08-17 12:23:18 +02:00
-
44f0a4971b
Show the folder picker on the platform that needs it most, and upload at once

dtourolleandClaude Opus 5
2026-08-17 12:01:12 +02:00
-
-
-
a8b28136a6
Merge the batch export, and settle the seven-branch merge

dtourolleandClaude Opus 5
2026-08-17 10:11:44 +02:00
-
-
cfff6a3302
Merge branch 'zero-copy-display'
dtourolle
2026-08-17 10:04:14 +02:00
-
-
9fc8721fa8
Merge branch 'histogram'
dtourolle
2026-08-17 10:00:27 +02:00
-
-
7d3c8c521f
Export a whole selection, on a thread that is not the interface's

dtourolleandClaude Opus 5
2026-08-17 09:59:57 +02:00
-
-
0233df4bf2
See what the highlights are doing: a live histogram (FR-DSP-7)

dtourolleandClaude Opus 5
2026-08-17 09:55:40 +02:00
-
-
-
cf8f5b632f
Show the develop frame itself, instead of a photocopy of it

dtourolleandClaude Opus 5
2026-08-17 09:54:00 +02:00
-
-
4b36ca66aa
Render an export into the colour space its file will claim

dtourolleandClaude Opus 5
2026-08-17 09:34:57 +02:00
-
1c16ca3d27
Merge branch 'colour-managed-export'
dtourolle
2026-08-17 09:28:22 +02:00
-
-
8e330a24e9
Merge branch 'undo-redo'
dtourolle
2026-08-17 09:26:23 +02:00
-
-
c26b6082a2
Merge branch 'local-libraries'
dtourolle
2026-08-17 09:26:03 +02:00
-
-
9f577ed6a2
Merge branch 'xtrans-demosaic'
dtourolle
2026-08-17 09:25:28 +02:00
-
-
8ea92545df
Stop the export folder forgetting itself, and let Android reach one

dtourolleandClaude Opus 5
2026-08-17 09:25:15 +02:00
-
-
-
914d14ec0d
Tell the shader which colour space it is encoding for

dtourolleandClaude Opus 5
2026-08-17 09:04:04 +02:00
-
-
-
7f524d2fd0
Give a mis-drag a way back

dtourolleandClaude Opus 5
2026-08-17 09:03:34 +02:00
-
-
-
bb71f141e7
Let a folder on this machine be scanned into the catalog

dtourolleandClaude Opus 5
2026-08-17 08:59:17 +02:00
-
-
-
1c0994c807
Demosaic a Fujifilm sensor instead of refusing it

dtourolleandClaude Opus 5
2026-08-17 08:46:28 +02:00
-
-
2330ed25e9
Let a grouped slider be dragged, by flattening the panel that drew it

dtourolleandClaude Opus 5
2026-08-17 07:23:01 +02:00
-
40d4e439a9
Drop the parameter the offline sidecar writer never used

dtourolleandClaude Opus 5
2026-08-17 07:17:31 +02:00
-
cb1d2be240
Choose the export folder by walking the server, not by typing it

dtourolleandClaude Opus 5
2026-08-17 07:12:01 +02:00
-
e00c99b864
Let a photograph leave: an export button, and a cache to leave from

dtourolleandClaude Opus 5
2026-08-16 23:58:17 +02:00
-
23f0c4b76a
Let a declared node ask for a widget, and write down how

dtourolleandClaude Opus 5
2026-08-16 23:54:10 +02:00
-
5e4b8de18d
Stop the mixer's bands from dividing one budget between them

dtourolleandClaude Opus 5
2026-08-16 23:36:52 +02:00
-
69b12e327f
Let framing say it wants the canvas, instead of the panel knowing

dtourolleandClaude Opus 5
2026-08-16 23:29:23 +02:00
-
0a331c717e
Give the controls a vocabulary, and let a node ask for one

dtourolleandClaude Opus 5
2026-08-16 23:21:35 +02:00
-
e7130ff891
Give the library header somewhere to put six buttons

dtourolleandClaude Opus 5
2026-08-16 23:04:06 +02:00
-
9e47133304
Run the formatter over the shard-naming change

dtourolleandClaude Opus 5
2026-08-16 22:29:28 +02:00
-
151dcc3c02
Make a file out of a photograph

dtourolleandClaude Opus 5
2026-08-16 22:26:37 +02:00
-
d7aeafaf84
Move to wgpu 29, the version Slint can share a device with

dtourolleandClaude Opus 5
2026-08-16 21:34:04 +02:00
-
b08e94405c
Give the activity row a name Slint will accept

dtourolleandClaude Opus 5
2026-08-16 21:33:45 +02:00
-
3b0950c39b
Regenerate the matrix that dr-thumbs moved out from under

dtourolleandClaude Opus 5
2026-08-16 21:19:51 +02:00
-
9a51cc88d6
Give a shard's remote name the client that wrote it

dtourolleandClaude Opus 5
2026-08-16 21:15:12 +02:00
-
f7e8cc99b1
Call them marks, not glyphs, now that they are drawn

dtourolleandClaude Opus 5
2026-08-16 21:14:58 +02:00
-
7c57f490fe
Declare a develop operation in YAML, and generate the rest

dtourolleandClaude Opus 5
2026-08-16 21:08:16 +02:00
-
65e6a96a65
Say what the application is doing, in one bar and one list

dtourolleandClaude Opus 5
2026-08-16 18:32:09 +02:00
-
70435b712e
Walk the grid with the arrow keys, and open with Return

dtourolleandClaude Opus 5
2026-08-16 16:25:13 +02:00
-
9b2ee0d0eb
Show the colour mixer as three runs of twelve, each row a colour

dtourolleandClaude Opus 5
2026-08-16 16:14:13 +02:00
-
ab4a7e00e7
Leave the adjust panel somewhere to scroll from

dtourolleandClaude Opus 5
2026-08-16 15:54:57 +02:00
-
67c0237ddd
Make one slider, and take the lids off the develop column

dtourolleandClaude Opus 5
2026-08-16 15:38:23 +02:00
-
489465faf0
Show the photograph the way it was taken

dtourolleandClaude Opus 5
2026-08-16 15:37:05 +02:00
-
b044a8c067
Build the Android CI image in CI, not on a laptop

dtourolleandClaude Opus 5
2026-08-16 14:59:57 +02:00
-
fe66eba87f
Write down the trash requirement the code already implements

dtourolleandClaude Opus 5
2026-08-16 14:48:31 +02:00
-
03326242a1
Make the CI checks say what they mean, and format the workspace

dtourolleandClaude Opus 5
2026-08-16 12:02:51 +02:00
-
94a2686dcb
Fit the interface to the system bars, the finger and the back key

dtourolleandClaude Opus 5
2026-08-16 11:59:31 +02:00
-
4d78041d1d
Many imorovments
dtourolle
2026-08-12 22:16:15 +02:00
-
fa12afed18
Keep originals on this device, by pin and by use

dtourolleandClaude Opus 5
2026-08-11 21:12:01 +02:00
-
cd75e5a4c6
Run the library from local data when the server is unreachable

dtourolleandClaude Opus 5
2026-08-11 20:36:50 +02:00
-
f6a100863e
Place the timeline marker where the pointer actually is

dtourolleandClaude Opus 5
2026-08-11 20:08:32 +02:00
-
8b7c1e7f10
Open the sign-in URL through an ACTION_VIEW Intent on Android

dtourolleandClaude Opus 5
2026-08-09 22:35:38 +02:00
-
0876977133
Report a missing browser launcher instead of faking success

dtourolleandClaude Opus 5
2026-08-09 22:22:00 +02:00
-
d49b4b41de
Add thumbnail size classes and grid zoom; fix the scrub ordinal

dtourolleandClaude Opus 5
2026-08-09 21:58:32 +02:00
-
75ce3846c3
Render draft frames while a gesture is still moving
dtourolle
2026-08-09 21:56:44 +02:00
-
250ff1e327
Poll the adjust readback instead of parking the UI thread
dtourolle
2026-08-09 21:52:59 +02:00
-
31dd86d8c0
Coalesce develop renders instead of rendering per input event
dtourolle
2026-08-09 21:49:43 +02:00
-
b4c1645c7a
Address trash moves and deletes by path, not fileid

dtourolleandClaude Opus 5
2026-08-09 21:39:35 +02:00
-
9a24623e35
Fix the workspace build off-device
dtourolle
2026-08-09 21:15:53 +02:00
-
2a7a319d6c
Depend on slint directly in the Android app
dtourolle
2026-08-09 21:12:26 +02:00
-
8ad5c86ff9
Add the library, collections, and trash views; theme from style.yaml
dtourolle
2026-08-09 21:11:38 +02:00
-
7900184383
Point the Android Java build at the installed SDK jar
dtourolle
2026-08-09 21:11:10 +02:00
-
5dc1279429
Add the Android app shell; cap cross-build parallelism
dtourolle
2026-08-09 21:10:00 +02:00
-
170252cfc9
Locate embedded previews by parsing the container header
dtourolle
2026-08-09 21:09:47 +02:00
-
9f5e9955d5
Add sidecar serialisation for the edit graph
dtourolle
2026-08-09 21:09:31 +02:00
-
5786977a51
Develop a JPEG through the same pipeline as a RAW
dtourolle
2026-08-09 21:07:20 +02:00
-
050dcff5bb
Add viewport zoom to the framing
dtourolle
2026-08-09 20:55:57 +02:00
-
81e89de7ea
Add remote move and mkdir; distinguish 403 from 401
dtourolle
2026-08-09 20:55:04 +02:00
-
57f8d42a5c
Record directory ETags only after actually listing them
dtourolle
2026-08-09 20:42:39 +02:00
-
d5b1f6bff5
Add collections, ratings, and soft delete to the catalog
dtourolle
2026-08-09 20:42:13 +02:00
-
d6ddd0703b
Add dr-thumbs: a sharded, syncable thumbnail store
dtourolle
2026-08-09 20:38:12 +02:00
-
b6a5c0f090
Make selectors serialisable
dtourolle
2026-08-09 20:37:02 +02:00
-
02b66ddfcf
Document trash, collections, thumbnails, and the UI direction

dtourolleandClaude Opus 5
2026-08-09 20:36:23 +02:00