Gamut Masking: storing masks in .kra files

Mock History

Current Revision

Mock Description

Mockup for T9652

amedonosova created Gamut Masking: storing masks in .kra files.Oct 12 2018, 4:45 PM
amedonosova added a project: Krita.

Is there a situation when someone specifically doesn't want this information saved to the KRA document?

Pretty much with all our KRA saving stuff, it just happens and people don't have to click any buttons -- or even think about it.

My vote would be to just always save the gamut mask information to the KRA file and get rid of any options in the docker. Maybe other artists have an opinion

I would personally prefer solution 2, with storing enabled by default. I will explain why I added those controls, maybe we can come up with better workflow which would not need them. Solution 1 does not have those problems, but it is rather manual and therefore error-prone.

1, The option to turn off mask storing/updates.

Currently when you select a mask in the docker, it goes through the resource manager to the selectors (it works as other dockers and you don't need another button for 'set to selector'). Selecting a mask would also automatically store it in the document in the future. But you also need to select a mask to edit it or delete. In that case you might not want to mess with the mask already stored in the active document, or add one.

However, it means that you have to be careful enough to unset mask storing before starting to manage the masks. Or be ready to repair it afterwards.

2, The option to unlink the mask.

You can make a mistake and store a mask if you do not want it. The storing feature will also include restoration of the mask and several other related things in the color selectors. If there is no option to unlink the mask, you will end up with your selectors changed and mask applied in a way that you do not like with no way to undo it.

Maybe this problem would be better solved with a button to unset the mask, which would unset it in the selectors and also unlink from the active document. Currently there is no option to do this in the UI. There is only the toggle button in the masking toolbar in selectors, which just temporarily disable the mask in the current selector.

@amedonosova I think your personal preference would be find if saving to KRA by default. I have noticed in general people like everything to be saved, so they can open a document and it resumes the exact state it was before. I think if there is an option to manually disable, that would be ok if someone really wants to disable it.

@scottpetrovic Thanks for your feedback. I will go with the most automatic way with the smallest amount of buttons and other controls I will find, starting with solution 2. I will proceed to writing code, so we can evaluate it in action.

I'm trying something different, to address non-trivial UX issues that arose from having masks both in document and on disk.

The idea is to separate clearly "Active mask" (or masks, if there is need for more than one in the document), which is in document, and "Template" residing on disk.

The artist can select a template as the active mask, edit it, add some notes and also save the active mask as template (Tab 1: Active mask).

The artist can also manage their templates, without messing with the active mask (Tab 2: Templates).

Tab 3: Edit contains the edit controls, so when the artist edits a mask, the docker switches to this tab instead of the controls appearing at the bottom. That way the docker does not change it's height much (a thing I hate in the current implementation).