The property client.tabGroup is always undefined, which means that currently handling tabgroups is only possible with really ugly hacks. Reproducible: Always Steps to Reproduce: workspace.clientAdded.connect(function(client) { client.tabGroupChanged.connect(function() { print("Client", client.resourceClass.toString(), "changed tabgroup"); print(client.tabGroup); }); }); Actual Results: Client dolphin changed tabgroup undefined Expected Results: Client dolphin changed tabgroup <object>
tabGroup is a TabGroup* and TabGroup is not QObject. It should either not be exported to scripting or somehow end there as long integer (pointer being an unique ID) eg. Q_PROPERTY(long uint tabGroupId READ tabGroupId NOTIFY tabGroupChanged SCRIPTABLE false) long uint tabGroupId() { return static_cast<long uint>(tabGroup()); }
The latter would be okay for my case - I just need to find out which clients are tabbed together so that tiling doesn't try to pull them apart. The former I've got right now, and it's not pretty (https://github.com/faho/kwin-tiling/blob/master/contents/code/tilelist.js#L256), but seems to work.
Thank you for the bug report. As this report hasn't seen any changes in 5 years or more, we ask if you can please confirm that the issue still persists. If this bug is no longer persisting or relevant please change the status to resolved.
KWin hasn't supported tab groups in a long time