Bug 392504 - The channels docker/layer properties dialog does not show the locked channels properly
Summary: The channels docker/layer properties dialog does not show the locked channels...
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: General (show other bugs)
Version: git master (please specify the git hash!)
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-03-29 21:16 UTC by Halla Rempt
Modified: 2018-04-03 11:46 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Halla Rempt 2018-03-29 21:16:48 UTC
For this file, the channels docker/layer properties dialog does not reflect the actual channel lock settings: https://drive.google.com/file/d/1xQtDR2jzmddVoL_T20AyHVJYYAvMUmdL/view?usp=sharing

I am not sure whether the original author saved the file with certain channels locked, but the file contains this:

   <layer y="-307" nodetype="paintlayer" name="classic rake.jpg" colorspacename="RGBA" channelflags="" channellockflags="1011" selected="true" onionskin="0" uuid="{22b1a997-901c-4b97-9368-f1c8e215126c}" locked="0" collapsed="0" compositeop="normal" colorlabel="0" filename="layer3" opacity="255" intimeline="0" visible="1" x="-1827"/>

And it is certainly loaded like this.
Comment 1 Halla Rempt 2018-03-30 07:37:18 UTC
Git commit 7a27f04cbe093ff1880a261f38504c2dfa0800d1 by Boudewijn Rempt.
Committed on 30/03/2018 at 07:33.
Pushed by rempt into branch 'master'.

Do not save and load channel lock flags to .kra

Until the channel docker was made to work on the projection in

    commit 365d0eb775cbff3bf6afda3f9b703741dbd68710
    Author: Boudewijn Rempt <boud@valdyas.org>
    Date:   Mon Sep 30 09:02:41 2013 +0200

    Start making the channel docker work on the projection, not the layer

We could lock channels and painting on them would be disabled. Except
for some remnants in libqml, that is no longer possible. However, we
would still load and save the channel lock flags. Maybe in the future
we should add the channel lock flags to the layer properties dialog
instead and restore this code.

I'm still not sure how the file in the bug report was created, unless
it originated in Krita Gemini.

M  +0    -82   libs/libqml/plugins/kritasketchplugin/models/LayerModel.cpp
M  +0    -16   libs/libqml/plugins/kritasketchplugin/models/LayerModel.h
M  +0    -49   libs/libqml/qml/panels/EditLayerPage.qml
M  +0    -3    plugins/impex/libkra/kis_kra_loader.cpp
M  +0    -5    plugins/impex/libkra/kis_kra_savexml_visitor.cpp
M  +0    -1    plugins/impex/libkra/kis_kra_tags.h

https://commits.kde.org/krita/7a27f04cbe093ff1880a261f38504c2dfa0800d1
Comment 2 Halla Rempt 2018-04-03 11:46:28 UTC
Git commit c8103fa9f264405e95c481bfeda102561da216c7 by Boudewijn Rempt.
Committed on 03/04/2018 at 11:20.
Pushed by rempt into branch 'krita/4.0'.

Do not save and load channel lock flags to .kra

Until the channel docker was made to work on the projection in

    commit 365d0eb775cbff3bf6afda3f9b703741dbd68710
    Author: Boudewijn Rempt <boud@valdyas.org>
    Date:   Mon Sep 30 09:02:41 2013 +0200

    Start making the channel docker work on the projection, not the layer

We could lock channels and painting on them would be disabled. Except
for some remnants in libqml, that is no longer possible. However, we
would still load and save the channel lock flags. Maybe in the future
we should add the channel lock flags to the layer properties dialog
instead and restore this code.

I'm still not sure how the file in the bug report was created, unless
it originated in Krita Gemini.
(cherry picked from commit 7a27f04cbe093ff1880a261f38504c2dfa0800d1)

M  +0    -82   libs/libqml/plugins/kritasketchplugin/models/LayerModel.cpp
M  +0    -16   libs/libqml/plugins/kritasketchplugin/models/LayerModel.h
M  +0    -49   libs/libqml/qml/panels/EditLayerPage.qml
M  +0    -3    plugins/impex/libkra/kis_kra_loader.cpp
M  +0    -5    plugins/impex/libkra/kis_kra_savexml_visitor.cpp
M  +0    -1    plugins/impex/libkra/kis_kra_tags.h

https://commits.kde.org/krita/c8103fa9f264405e95c481bfeda102561da216c7