From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.devel Subject: Re: set-frame-parameter a child-frame's 'parent-frame error on macOS ? Date: Fri, 12 Jan 2018 19:47:53 +0100 Message-ID: <5A5902D9.9070801@gmx.at> References: <3341a4c3.36ca.160e851bdbd.Coremail.tumashu@163.com> <5A5876A3.10402@gmx.at> <87fu7b6zsj.fsf@163.com> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: blaine.gmane.org 1515782902 28616 195.159.176.226 (12 Jan 2018 18:48:22 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Fri, 12 Jan 2018 18:48:22 +0000 (UTC) Cc: emacs-devel@gnu.org To: Feng Shu Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jan 12 19:48:17 2018 Return-path: Envelope-to: ged-emacs-devel@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 1ea4N3-0006Gg-Cn for ged-emacs-devel@m.gmane.org; Fri, 12 Jan 2018 19:48:05 +0100 Original-Received: from localhost ([::1]:59144 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ea4P3-0001FQ-38 for ged-emacs-devel@m.gmane.org; Fri, 12 Jan 2018 13:50:09 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:46846) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ea4N6-000883-4c for emacs-devel@gnu.org; Fri, 12 Jan 2018 13:48:09 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ea4N1-0001n8-8u for emacs-devel@gnu.org; Fri, 12 Jan 2018 13:48:08 -0500 Original-Received: from mout.gmx.net ([212.227.17.22]:50851) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ea4N0-0001kZ-Vc for emacs-devel@gnu.org; Fri, 12 Jan 2018 13:48:03 -0500 Original-Received: from [192.168.1.100] ([46.125.249.101]) by mail.gmx.com (mrgmx101 [212.227.17.168]) with ESMTPSA (Nemesis) id 0LgMCe-1fExZ9482u-00nl0V; Fri, 12 Jan 2018 19:47:56 +0100 In-Reply-To: <87fu7b6zsj.fsf@163.com> X-Provags-ID: V03:K0:5rblQEOJJaTXdN/1+fa7GA57FNEzZASS/jTB5rDmAwKg/VbLEc+ vYu0QlRBcdw3caBmoJME1U/EpJsfJFh4gK9xnHwa89+iWmN7gMveiD7IynyL5eMjXTQHAsA /Aeu6V2L39qxxtD6DN7UguMrWer8StRmIi0+6D+QEjfESbLba6EyvKF1xWHZkBjdzl4EzH0 SG2UlpbfdUDCKpV5J5mmw== X-UI-Out-Filterresults: notjunk:1;V01:K0:eYPgYPsKWhE=:wJnwRhjCXQjEMLpHr8eosF 9UuDKLDXQJKR7cX+PLSDIEUJKysbcif0/LmPZumq38JlCFrPQUkyQXiR412ufx3Z03lcDQSTE EtMAGTp9oMuZg2ybM5pcxA0qAm8MQufDFiyYg9CmqEYCS1Xc5pjP5SA11Rn7C3BLnbh8Axkd2 zcoz6b/1xxfPbSrtDKVk+tGOX1+QbMDx8/1hP26eVTDFCvB8MSyumXW30ZOf5yGW0kys0lAVH J9usp7hGjWvRibqXS9Npw9fwoIY2ucAA6EI9trb5Ie5RkES1fhWwrG2ESq7QGty8mccAn9Ju3 YhGrEU2tnEOl07cajf+HjNLv7FYEnr19+uVKF0LOTVWrXB3M9lelGcAH61nwU+XJEnOuEKygI QERQKVvi3r3is1tiaEldic4wFQMumHdpEncx6LFGkb60FqsSRy6gG4zqxzVHyUN9wbGyZSRzh MOsvFSemQf3aNvCkssquvHieNlnSa+yLOyVpmfoACshX0qhMDT3z2pPZIWtbA2UcOF/hiA6zY YTyeDK4qQo2RjCSTOibv/AmiJuEqD4dottMAVwpQlN1sdPMzWZ7cGnQbD1g51GTiMKAzBMlY+ UkR1qTOMXBbCixpCPGQmFmpboNWfmfK/CJTAtf0D8Rx1rV3G7R2/J0kJH5EhC6thREQJnFdao DnIZMI+fyR++8fTOyaH14ZVSokMHDGuslax4AI9J6jB3fhGLG6HwHH/wGeJvNJFZlRHC4Ft/j xJPiH/64OCuiwBAAo3Zf7q2ye8r4SHpUq/0+FA7n6P1T59j7FTrdUb4rAp3lCngN+/itkGLc X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 212.227.17.22 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:221898 Archived-At: >>> (let ((test (let ((after-make-frame-functions nil)) >>> (make-frame >>> `((parent-frame . ,(window-frame)) >>> (width . 10) >>> (height . 10)))))) >>> (set-frame-parameter test 'parent-frame (window-frame))) >>> ---------- >> >> I'm not sure what this code is supposed to do. First you make a new >> child frame named 'test' with the selected frame as its parent. Then >> you want to set the parent frame of 'test' to the selected frame. >> > > The above just a example to show bug. OK. But setting the parent frame two times for the same frame makes it difficult to say which instance causes the bug. Anyway, can you try the trivial patch to nsterm.m below? Thanks, martin diff --git a/src/nsterm.m b/src/nsterm.m index 5798f4f..1a6066f 100644 --- a/src/nsterm.m +++ b/src/nsterm.m @@ -1932,7 +1932,7 @@ so some key presses (TAB) are swallowed by the system. */ if (!NILP (new_value) && (!FRAMEP (new_value) || !FRAME_LIVE_P (p = XFRAME (new_value)) - || !FRAME_X_P (p))) + || !FRAME_NS_P (p))) { store_frame_param (f, Qparent_frame, old_value); error ("Invalid specification of `parent-frame'");