Identical patches to this one have been written a few times and are strewn about Phabricator and ReviewBoard (defunct), but all suffer similar problems:
- The blur setting should be part of the Konsole profile (where the transparency options are) and the blur feature implemented there, so that users of the KPart don't need to implement the blur feature redundantly.
- That means multiple KPart instances within the same host window need to collaborate on setting the blur region.
- Without clobbering what else the hosting process does to the blur region of the window, i.e. reading it back and doing a union.
Well, only if you consider blur to be a property of console itself, not the whole terminal window.
Yakuake also supports transparency in its skins, so if you do it in the console profile only, you don't get the blur behind the UI elements.
I still feel pretty strongly that any correct version of this patch wouldn't actually add any code to Yakuake.
I also don't see any code handling the scenario of multiple terminals within the window (i.e. splits) using different profile settings.
@hein is right, splitting panes and using one profile with and one without the blur setting active is problematic. It is in Konsole, too, however.
This makes me think there is actually a bit of a design problem, because it's mixing the window's state with the profile's state here. As such, I think the blur setting actually shouldn't be part of the Profile settings.
We should probably see what @hindenburg and other Konsole devs think about this situation. Maybe there's a chance we can move the blur setting elsewhere. Besides resolving this conflict, I can see a good argument
for having my Konsole's background blurry, but my Yakuake's background opaque.
For now I would suggest copying Konsole's behavior, which enables/disables the blur effect depending on which pane is currently active/focused. I think this patch would actually behave the same.