Sync QWindow flag WindowDoesNotAcceptFocus to wayland plasmashell interface
ClosedPublic

Authored by davidedmundson on Dec 22 2019, 11:16 AM.

Details

Summary

Currently the widget explorer relied on some QML code calling
KWindowSystem::forceActiveWindow which on plasma implicitly set this
hint.

This works for the first show, but the order of events is somewhat
unreliable. It's invoked from QML when the window is ready, but for the
second show this is before the wl_surface is created and it no-ops.

By syncing the flags in applyType() we can guarantee we call this both
when setFlags is called and when the wl_surface is created in the
correct order.

BUG: 415124
BUG: 401172

Test Plan

Ran plasmashell
Opened widget explorer twice
Had focus each time

Diff Detail

Repository
R242 Plasma Framework (Library)
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
Restricted Application added a project: Frameworks. · View Herald TranscriptDec 22 2019, 11:16 AM
Restricted Application added a subscriber: kde-frameworks-devel. · View Herald Transcript
davidedmundson requested review of this revision.Dec 22 2019, 11:16 AM
davidedmundson edited the summary of this revision. (Show Details)Dec 22 2019, 11:24 AM
romangg accepted this revision.Dec 22 2019, 11:28 AM
This revision is now accepted and ready to land.Dec 22 2019, 11:28 AM
This revision was automatically updated to reflect the committed changes.