D18550: Evaluate window rules when a shell client is mapped

Vlad Zagorodniy <[email protected]>
Newsgroups gmane.comp.kde.devel.kwin
Message-ID <[email protected]>
zzag created this revision.
zzag added a reviewer: KWin.
Herald added a project: KWin.
Herald added a subscriber: kwin.
zzag requested review of this revision.

REVISION SUMMARY
  When a ShellClient is created, KWayland has't processed any requests
  from the client. So, there won't be useful information that can be
  used to match window rules against the client, e.g. app id or the title.
  
  The worst part is that the xdg-shell spec doesn't have restrictions on
  when a client can change its app id, i.e nothing prevents a client from
  changing its app id while it's still mapped! The proposed change
  addresses that issue by applying rules like Apply or Remember only when
  the client is unmapped.
  
  This is still not the complete solution. The Size and Maximize rules will
  shape further the implementation of window rules for ShellClient. We'd
  like to delay sending initial configure request as well compress all state
  and size changes caused by window rules.
  
  BUG: 403305

TEST PLAN
  testShellClientRules passes now.

REPOSITORY
  R108 KWin

BRANCH
  fix-remember-rules

REVISION DETAIL
  https://phabricator.kde.org/D18550

AFFECTED FILES
  shell_client.cpp
  shell_client.h

To: zzag, #kwin
Cc: kwin, jraleigh, GB_2, mkulinski, ragreen, jackyalcine, Pitel, iodelay, bwowk, ZrenBot, ngraham, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol, mart
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.