cortile icon indicating copy to clipboard operation
cortile copied to clipboard

Allow caching to be controlled in the config file (and in a more fine-grained way)

Open mark-cooke opened this issue 1 year ago • 0 comments

Hi there @leukipp - Happy New Year! - I'd appreciate it if you'd accept all, or at least part of, this PR!

When starting up from a saved Desktop session: Caching window positions has been unreliable for things like browser windows (e.g Firefox). They will all have the same WM_CLASS and window title on start-up, updating multiple times thereafter, so will not match cortile's cached values when it sees them. This means windows get placed on the wrong workspace, or worse, assumed to be on a workspace they are not so layouts end up with "holes" in them.

Disabling the cache entirely is an option but having the workspace tiling settings, proportions, etc remembered is a really nice feature that I don't want to have to lose.

This PR adds cache_workspaces and cache_windows to the config to individually control what gets cached, but still allow the command-line flag to override the settings and disable the cache entirely.

There's 2 commits in it:

  1. 72877b1 - Makes the 2 config values available in the config file.
  2. 6a4df90 - Make them optional, with defaults set into the config struct before decoding, to allow them to be left out.

mark-cooke avatar Jan 01 '25 16:01 mark-cooke