From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.bugs Subject: bug#31650: 26.1; Desktop mode adds wm stickiness to emacs windows. Date: Thu, 31 May 2018 15:55:42 +0200 Message-ID: <5B0FFEDE.2090309@gmx.at> References: <87zi0idk0c.fsf@pointsman.de> <5B0E4778.9030708@gmx.at> <87wovle7ow.fsf@pointsman.de> <5B0E9B14.4040707@gmx.at> <87tvqpdwr3.fsf@pointsman.de> <5B0FA40A.1060902@gmx.at> <87po1cdlom.fsf@pointsman.de> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1527774909 30230 195.159.176.226 (31 May 2018 13:55:09 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 31 May 2018 13:55:09 +0000 (UTC) Cc: 31650@debbugs.gnu.org To: Rolf Ade Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu May 31 15:55:05 2018 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fOO2i-0007gZ-9x for geb-bug-gnu-emacs@m.gmane.org; Thu, 31 May 2018 15:55:04 +0200 Original-Received: from localhost ([::1]:44285 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fOO4p-0001wj-3O for geb-bug-gnu-emacs@m.gmane.org; Thu, 31 May 2018 09:57:15 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:35396) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fOO4g-0001vr-8q for bug-gnu-emacs@gnu.org; Thu, 31 May 2018 09:57:07 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fOO4c-0000sG-Bp for bug-gnu-emacs@gnu.org; Thu, 31 May 2018 09:57:06 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:48189) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fOO4c-0000s5-7U for bug-gnu-emacs@gnu.org; Thu, 31 May 2018 09:57:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1fOO4c-0004mJ-0I for bug-gnu-emacs@gnu.org; Thu, 31 May 2018 09:57:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: martin rudalics Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 31 May 2018 13:57:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 31650 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 31650-submit@debbugs.gnu.org id=B31650.152777496318301 (code B ref 31650); Thu, 31 May 2018 13:57:01 +0000 Original-Received: (at 31650) by debbugs.gnu.org; 31 May 2018 13:56:03 +0000 Original-Received: from localhost ([127.0.0.1]:56086 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fOO3f-0004l6-8r for submit@debbugs.gnu.org; Thu, 31 May 2018 09:56:03 -0400 Original-Received: from mout.gmx.net ([212.227.15.15]:37275) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fOO3b-0004kh-91 for 31650@debbugs.gnu.org; Thu, 31 May 2018 09:56:01 -0400 Original-Received: from [192.168.1.101] ([46.125.250.74]) by mail.gmx.com (mrgmx003 [212.227.17.190]) with ESMTPSA (Nemesis) id 0MGSgq-1fbXCa2YVs-00DF6K; Thu, 31 May 2018 15:55:52 +0200 In-Reply-To: <87po1cdlom.fsf@pointsman.de> X-Provags-ID: V03:K1:iuJ5qXwn12u32mVOiFYI38GHWZgtgfzKClNH446P9r7GkJtIM/c hcDUHIf1PD/2y2aywJyGEDrklEbqJ5IjnUWLjdM41YfXrtAjxT++l0ofIwD/Q//l8Bbzojd yk+NBzRgrjJMVyViTZdcIeQy7TfOcDs0dUcMkn3KLjj/mQ/CTyCWzLuN8rSRIbGNz8xYoEe rTbE0WcCAxwA0qEPG/bcw== X-UI-Out-Filterresults: notjunk:1;V01:K0:M8HP84bJSjc=:wH/xoErfOYu1IW49M62emS uP0+TfRrrS9YybMS1IBh1dYxoNN9ukGj+26MHh8sJBEqBEKfmQHqDcvOFTQKyAIAxC8MTokAr h3GjI5Tve1QIWEJ746jnO4iH2ZZPx5eysancw1bebjQcBmOQoto7MdrLEf41Rl8L5FxZ1n1HI 7s4FxOKvEpy7ox/mzJclPJGaJW0WRyL5uTd0AlkpWNrJKJPT9kbmXC0C84F920/stDbDEhhri PlWUiAGcCURcOwJF5Zc+TFFVBXRXtyxqhX30pm+eHUe8aoMnT+lkNq5xPSq+O1YOQqXVC8xl3 QLqVMPZSpJ5SVw5NOLXdaGliSHNLeb5J6nVhd9uioGxLVOlVP1KFuu82A12uHRbGMY8mcbAiD esJeccQfrOKwWuQJSUyMBCJyGWq+XIdueMqXecObpjAwWsrj0GXbH8hSdplTtMntYM4R17F31 QJBwaGRyJGwdIRRVKuDvghnoGz+3riYOIYQwMmIPYu4ikXCWcO+gy8D1GuAKlhqkEPakmFT/l FlCUS+6C1DvMTV4ev8vUH8mnAOspxqGVawAneLgQy0Pl0R0ivb8jH36yHfaUcABUZYgStcDrK oUZKHxGizCipWB2HozINvEx6bv9laluFmH5odcvbL9fa3+lFYANSBxJci2yRM7nUzQiXArRwN W1T+Vz2RNBum9o1kSfsWJWQugBFwMRXDhqNk+5C7/ZG5oQ+IrFVQLzpUKqfFQaIjS1x9R87KZ vWF6G1czoPJC8JecWgls8OzpnJ6bjdVkCtXB4tFtJaEiCHoGV6FHbSiptZ1YyZb3sfg9s5U+ X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:146775 Archived-At: > - It's not about desktop-mode, it's about set-frame-parameter, which > doesn't seem to work correctly at least with some windows managers.= If worse comes to worst we can avoid setting the parameter when the stored value alreay equals the requested value by writing something like: void x_set_sticky (struct frame *f, Lisp_Object new_value, Lisp_Object old_val= ue) { Lisp_Object frame; struct x_display_info *dpyinfo =3D FRAME_DISPLAY_INFO (f); if (!EQ (new_value, old_value)) { XSETFRAME (frame, f); set_wm_state (frame, !NILP (new_value), dpyinfo->Xatom_net_wm_state_sticky, None); } } This might be even the right thing to do if, for example, the WM decides that making a non-sticky frame non-sticky is a silly request and the application probably wants a sticky frame instead. > - Seems to be windows manager specific (you don't see it with xfwm4, I= > do with fvwm2 2.6.4). We would have to hear from others. Anyone? With emacs -Q evaluate (set-frame-parameter nil 'sticky nil) and look whether your frame starts to appear on all your desktops. > I'll try to build fvwm2 2.6.7 (which seems to be the latest) and check= > if it shows the same (mis-)behaviour. Though, that has to wait for > tomorrow. > > If there is anything else I could to do help analyzing the problem jus= t > let me know. You have done a lot already. But there are two things that might be interesting to get the full picture: Put a brakpoint in xterm.c in get_current_wm_state at the line else if (a =3D=3D dpyinfo->Xatom_net_wm_state_sticky) and look what value gets assigned here after you set stickyness on/off via the window manager or via =E2=80=98set-frame-parameter=E2=80=99 - tha= t means four cases to check. The second is to not use USE_XCB (_if you do_) by simply replacing USE_XCB by 0 (zero) in all occurrences of this symbol in get_current_wm_state - only if you can recompile, obviously. I expect both of these not to change a thing in the actual behavior since these are just the values reported to us by the WM but I'd like to be sure that the WM behaves consistently in this regard. And you could try to build Emacs without toolkit support (Lucid or Motif would be better but may require to download some development libraries) and look whether the problem persists. Then we would know that the problem is or is not toolkit dependent, where the former would consitute a step forward. Many thanks, martin