Krita Split Panes and other tweaks

Fixed the crash issue. Added v1.1.0 downloads link again on Github.

(edit: patched release for a minor cosmetic css style fix)

(edit2: patched release with some more cosmetic fixes, mainly related to when rulers/scrollbars are shown to look a bit better)

(edit3: patched again with another minor style tweak, literally just touching up a few pixels here and there)

1 Like

Thought it might be of interest. I have been trying to keep the plugin working on the Krita Qt6 builds as well. I hadn’t checked it in a while so quite a few of the previous releases won’t work, but I have I just pushed some changes in the main development branch to fix the remaining Qt6 compatibility issues.

1 Like

Couldn’t this be integrated natively into Krita? :smiley: I think it would be very beneficial, although it would certainly be more difficult since Krita is written in C, if I remember correctly :thinking:

Hi,

It could be implemented (Krita is mostly c++), not sure if it will be more difficult or easier, I think for some things it might be easier because plugin scripts are limited in some ways so you have to find workarounds. It crossed my mind to implement a native extension but I chose the “easy” option to bypass having to potentially build Krita each time.

When I originally started working on this I was just trying to fulfill my own needs. My first version had a lot of issues but because I shared it here it pushed me to make it better.

I think if there is enough interest I could help with a native version. I am not sure how the Krita developers feel about this feature, if they even had something similar like this planned for some point in the future. If you have any more info you are welcome to reach out to me.

I just saw the Qt6 beta release announcement. I did not realize it would happen so soon.

Created v1.1.1 release with the fixes I mentioned yesterday.

Release notes:

  • Qt6 compatibility
  • Drag and drop files into Krita: Fix edge case dropping onto empty split areas, and opening dropped images in the correct split pane. (this is just mainly to augment what Krita already does when dropping onto the canvas but for when you want to drop onto an empty pane).
2 Likes

@SchrodingerCat I have been thinking some more about this today. I spent some time digging into the Krita code base. Maybe I will reach out to the Krita development team at some point when I am ready.

1 Like

Do you know about the talking in that topic to find a solution closely to window\tabs behavior of CSP?

I have not read that topic before, but yes, it is the same thing as my plugin does. I think it can be done, though if its built natively in Krita the actual code implementation would be different from my plugin because of what I mentioned in my previous comment “plugin scripts are limited in some ways so you have to find workarounds”. It would have to be done in a much cleaner and “correct” way than my plugin. That being said, I now have a very good idea how to go about it and could help build it or at least make a demo version of it to start with.

4 Likes

Thanks so much for this plugin! Loving it!

I’m using it as a way to have my work-in-progress in one tab, with my resource image in a smaller tab.

The resource image contains various assets I’ve already drawn, which I can copy and paste into the main drawing. And once I’ve drawn something in the main drawing that might be an asset for a future drawing, I clip and paste that into the resource drawing.

What a useful plugin!

–-

I have a question, followed by a related question…

  1. Is there even the remotest possibility to detach a tab from the Krita page, and drag it off into a separate monitor? (This would allow me to have my main drawing as the only image on my display tablet, which makes it easy to export the canvas to OBS Studio when I’m drawing live online, with the resource image open on a different screen, meaning it wouldn’t be present in the OBS stream.)
  2. Is there a way to mark a tab as “primary”, for purposes of using Krita’s screen record function ONLY on that tab? In other words, I only want to record the main drawing without recording the reource image changes. Hmmm. I might be under-thinking this… I can probably choose to record or not record each open tab.

Okay – I’ve answered my second question in real-time… Each tab can be recorded or not independently of all the others.

Once again… Thanks for this superbly useful plugin!

1 Like

Hi,

For point 1. Can you first check this workflow that already exists in Krita, maybe it works fine:

If you have a window open with Documents A,B,C.

From the window menu you can click “Window > New Window”.

Then from that new window you can click “Window > New View > choose A,B,C” and it will open that image in the other window and you can work on it there.

So you don’t really need to drag tabs around. They are already available in the other window if you know where to look.

1 Like

Thanks vurentjie.

Hmmmm. I’ve just tried that. But it’s causing Krita to crash for some reason.

But let me just be sure I understand what the workflow is that you’re suggesting.

Am I right in assuming that “new window” should be opening a second instance of Krita?

If so, then you’re most likely saying I open one image in instance 1 of Krita, and the other in instance 2. Then I just pop the instance on whichever monitor I prefer?

Ah. Yes. That would work perfectly!

Thanks!

(Having trouble right now getting two instances of Krita to run side by side. Probably an appimage problem in Linux.)

Some quick feedback…

Yes! Your solution works! (But your splitter tool would work better. With two instances of Krita running, I can’t force one window to obey the tool choice of the other window.)

I managed to get a second instance of Krita to open by having only one tab open. When the split view is open, Krita crashes for me when I open a new window.

In case this has anything to do with your tool, here are my versions…

Krita 5.2.15

Linux – Zorin 17.3 Core

Krita UI Tweaks 1.1.0

Once again… massive thanks for the tweaks. It’s a must-have plugin!

I will look into a bit later today. Most likely a bug. I would like the plugin to work in multiple windows.

2 Likes

@RoyBlumenthal

Created v1.1.2 on GitHub with fixes.

  • Fixed the crash issue
  • Added an option if you right click the tab, select "Open in window ", you can choose a window or create a new one.

You can also use the workflow from my previous comment.

Let me know if this works. Hopefully I didn’t introduce any new bugs.

(edit:

I just re-read your other comment and noticed this part :
“With two instances of Krita running, I can’t force one window to obey the tool choice of the other window”.

I will work on this tomorrow, I think it is possible to add this but will need to check a few things.
)

1 Like

@RoyBlumenthal

I actually patched v1.1.2 release now.

These are the additional changes:

  • Fix issue with tool actions with multiple windows open
  • Added new option: Do not change the active tool when switching windows. Disabled by default.

If you want to use the same tool in all windows, you need to enable that new option.

Let me know if there is any issue.

(edit: there is one more small thing to address, will post back a bit later, will need to patch again)

Patched v1.1.2 release again.

I actually found a really annoying bug, not sure how long it has been around, both of these options in the config would have not worked properly if you were switching tools from the toolbox docker.

  • Do not change the active tool when switching documents

  • Do not change the active tool when switching windows

I generally have a custom layout and quite often switch tools from shortcuts or from the toolbars (not the toolbox), so I didn’t notice that it had broken. But it is fixed now.

2 Likes