Received: (at 58271) by debbugs.gnu.org; 25 Nov 2022 01:26:28 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Nov 24 20:26:28 2022 Received: from localhost ([127.0.0.1]:60890 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1oyNU3-0000XX-RZ for submit <at> debbugs.gnu.org; Thu, 24 Nov 2022 20:26:28 -0500 Received: from mail-oa1-f51.google.com ([209.85.160.51]:44865) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <stefankangas@HIDDEN>) id 1oyNU2-0000XI-U0 for 58271 <at> debbugs.gnu.org; Thu, 24 Nov 2022 20:26:27 -0500 Received: by mail-oa1-f51.google.com with SMTP id 586e51a60fabf-142306beb9aso3575988fac.11 for <58271 <at> debbugs.gnu.org>; Thu, 24 Nov 2022 17:26:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date :mime-version:references:in-reply-to:from:from:to:cc:subject:date :message-id:reply-to; bh=I8mj+8Dw/L1CTUK1lpeW9SiP3c4DS09cLu/G68i3QCw=; b=lVohL1E8epq7yK04W4YMEWxxcuexbp5w8hhK8bmrXveXIMAu5PDUFiRSppieKEZbUm I8NwZQvDFkuPDWss9IoTHVk16INkhTRs7aD/d0thhmiO4NHqE0jWCjPrdHI6pyqygNhl vprdqIPH4yraQVcerQDYiYZwH6rgUY8rfhKYtQF96FO9PSR1D8RL1aX2Ub3SBA7ZrNnY YliON+jrhjY8Ow684Qg3rRoZE6Gh6rX3KrcDDLRwxWqsAVd8x85B8mIguOhozMz8uCQX VCmiFkQqz3xm1Aaqyds9ZqSGsl9m8D0EEvbp/FGg2Jo61Yy2YrvFtiiUS0y8nOTYxj3/ cMjQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date :mime-version:references:in-reply-to:from:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=I8mj+8Dw/L1CTUK1lpeW9SiP3c4DS09cLu/G68i3QCw=; b=SUBwWjSs9Jz2La6o9apSCxt5KRLUXkT1LVv8EVmrqmCsui1P8RYEAWJb5knzbsTacn 76SYxICvyWdt9ht7iOef0abxGARCyKFnNS8XW/62OtyXHc639APmT+bRqKFJopzX5dwa 8b9ir//qdzyAc+ebIR6AfB+U0rxmtB5m4Bf6ASRIWiQvqb5lAulT29AKNhyflnbtMzZu VL1x3lx/H1jXmJ9HYj1tN3c8jBvKNIXoSwT+1J1DQ/9WsM4XxW9xYsVoiZyVc5AOAs9P x0r0wMY1cAxf85/4vQzH5JTSqNPSuYhzFcnwGS/5TyOWvz2snx+mgz+TbqRNMm3ETudq yr6A== X-Gm-Message-State: ANoB5pkjbvem5GdpvxGX98+6te6cfpsyQ19bjyjFdyaEIsGZK1k5OISN fU9o6g4IFfH3m8T9IhADouEWKIgGtqjVvuOqUSQ= X-Google-Smtp-Source: AA0mqf6/egU3fE7UC3kaDtSe29Suy1LZXOsywlD9Qbz5Xg3Nf/ep+KME3AYN0wqIx42rsoa0jw5mfGEW209ObECXKuE= X-Received: by 2002:a05:6870:4995:b0:143:522a:ebcc with SMTP id ho21-20020a056870499500b00143522aebccmr2906948oab.199.1669339581263; Thu, 24 Nov 2022 17:26:21 -0800 (PST) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Thu, 24 Nov 2022 17:26:20 -0800 From: Stefan Kangas <stefankangas@HIDDEN> In-Reply-To: <D75F5E89-B57D-4018-839A-222B6BDF000B@HIDDEN> (Sungbin Jo's message of "Tue, 4 Oct 2022 11:03:28 +0900") References: <3B2D7E85-0137-4460-B182-F7F5F39A192E@HIDDEN> <87czb86b4g.fsf@HIDDEN> <87r0zo1l5e.fsf@HIDDEN> <D75F5E89-B57D-4018-839A-222B6BDF000B@HIDDEN> X-Hashcash: 1:20:221125:larsi@HIDDEN::IP+3tUTew5Ttw1hg:6kUF MIME-Version: 1.0 Date: Thu, 24 Nov 2022 17:26:20 -0800 Message-ID: <CADwFkmkEcYF02NCztz=cZqQ=tXmEpPCvaxqTtu8Oc4cZcgn3JA@HIDDEN> Subject: Re: bug#58271: 29.0.50; [PATCH] Handle sharing Cocoa xwidgets more gracefully To: Sungbin Jo <goranmoomin@HIDDEN> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 58271 Cc: Po Lu <luangruo@HIDDEN>, 58271 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Sungbin Jo <goranmoomin@HIDDEN> writes: > 2022. 10. 4. =EC=98=A4=EC=A0=84 9:34, Po Lu <luangruo@HIDDEN> =EC=9E= =91=EC=84=B1: > >> Thanks; since you seem to be the original author of the xwidget code on >> Mac OS, could you please fix the crash there when an xwidget is deleted >> but remains on-screen? > > I=E2=80=99ve continued on this (with some questions) on emacs-devel. > >> Some minor formatting comments on the patch below: > > Updated patch attached. Po Lu, is this patch good to go? It seems like your comments were all addressed? Thanks in advance.
bug-gnu-emacs@HIDDEN
:bug#58271
; Package emacs
.
Full text available.Received: (at 58271) by debbugs.gnu.org; 11 Nov 2022 13:27:56 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Nov 11 08:27:56 2022 Received: from localhost ([127.0.0.1]:45318 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1otU4a-0002nQ-0Z for submit <at> debbugs.gnu.org; Fri, 11 Nov 2022 08:27:56 -0500 Received: from mail-oa1-f51.google.com ([209.85.160.51]:37617) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <stefankangas@HIDDEN>) id 1otU4Y-0002nC-96 for 58271 <at> debbugs.gnu.org; Fri, 11 Nov 2022 08:27:54 -0500 Received: by mail-oa1-f51.google.com with SMTP id 586e51a60fabf-12c8312131fso5414363fac.4 for <58271 <at> debbugs.gnu.org>; Fri, 11 Nov 2022 05:27:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date :mime-version:references:in-reply-to:from:from:to:cc:subject:date :message-id:reply-to; bh=M6Kqlb4jxzm2iYu9cMU+BtoxQvcgsyFlrU/hvlx9lnI=; b=psyAvfSUEmt7l/y0WUU0AvNKZOjpwzZoGawsf97pu9lGmMgK9yLqmYPOz3WGw8BTwO GpUjguvwsGPakFRrTCTHEeEuKhwD18nfdKrpEXv44HnoUcG7W8DQzfLICwq+Zzqni30J tam3tzSATfX5QhR+f83Bq4pWNvaQy9PgDXW9T0gty0lbXSVX/F1h++PEz7NFOzh9DvNC pW9rCdNhNLF6Gd4RG4ZYlibDW+DcdlthXGpZPAbkzx8SGbty/RvqwB3N23ygdHRn6qPX D1C9mxsXmo2n3D+ZvwxYTNafVOdVUlrfmzb0+pvZ+Pbld45AYU4eR21ZDvPYQyI8jLz6 CzJg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date :mime-version:references:in-reply-to:from:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=M6Kqlb4jxzm2iYu9cMU+BtoxQvcgsyFlrU/hvlx9lnI=; b=H4yzp2oKQlqpyWuSyrZ/hAIGp+RqN+Cw8DK0f82gTTcQtPiVX83cLAQiDna/4EhnSd mBDQFjzhYcmh3i5EiGFrGt7DjdXqiVJiycsDvzk7jlWdE13oKBZ+ghyqFoCdlqV+AR1I /K2krHgwry8PMPjDD1dUm1/cTxNRQEqlGbPyX2Ofw9MGbUzma5QQJM811OwbqUYT0SGU uOqOpFPP+9+q+bZtGCLepEC6j+nVpo32rCfAyhhLCiHothduTyzocyq5aHKIoHc/yFFr GHEoDN69baHtiqS/ave42ZANIGzSu2woGKvJw2FynGfno1hxdQlpiqG9rVwLWn9/CMXv WEQg== X-Gm-Message-State: ANoB5plKOqardwZVYe7TSz4XaeTVMMeKW0VxFIRx0meW2BiasDWsfjqU Da3g5rx0pb0oLk98aOMgbYTq4fiF6Lkuii7FAHU= X-Google-Smtp-Source: AA0mqf4JoaP3ByFB97jhotfJ1iaN6BGwM0cVW7LVtBWFVh6zn8YrokWfn4H4kTZpmOPyoj2fhxFqGBUW5CHW6UGqxG0= X-Received: by 2002:a05:6871:480a:b0:12b:fbe7:b793 with SMTP id qc10-20020a056871480a00b0012bfbe7b793mr826254oab.92.1668173268699; Fri, 11 Nov 2022 05:27:48 -0800 (PST) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Fri, 11 Nov 2022 05:27:48 -0800 From: Stefan Kangas <stefankangas@HIDDEN> In-Reply-To: <07098357-A63E-441F-B428-8AEB948882E6@HIDDEN> (Sungbin Jo's message of "Tue, 4 Oct 2022 16:25:11 +0900") References: <87czb86b4g.fsf@HIDDEN> <276AB2FF-9AD1-48C4-BD87-FD2890E82762@HIDDEN> <87v8p04h11.fsf@HIDDEN> <83o7usw0cv.fsf@HIDDEN> <07098357-A63E-441F-B428-8AEB948882E6@HIDDEN> X-Hashcash: 1:20:221111:eliz@HIDDEN::/Upe2xEQMKGnPHqb:45nm MIME-Version: 1.0 Date: Fri, 11 Nov 2022 05:27:48 -0800 Message-ID: <CADwFkmnquPkYWjDGa63re_5U05xOK=mjgcZN_VZeVxcTY3Ewsw@HIDDEN> Subject: Re: bug#58271: 29.0.50; [PATCH] Handle sharing Cocoa xwidgets more gracefully To: Sungbin Jo <goranmoomin@HIDDEN> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58271 Cc: 58271 <at> debbugs.gnu.org, Po Lu <luangruo@HIDDEN>, Lars Ingebrigtsen <larsi@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Sungbin Jo <goranmoomin@HIDDEN> writes: > 2022. 10. 4. =EC=98=A4=ED=9B=84 3:48, Eli Zaretskii <eliz@HIDDEN> =EC=9E= =91=EC=84=B1: > >> I agree, but would you please inform copyright-clerk@HIDDEN of your >> new email address? > > Done. > > 2022. 10. 4. =EC=98=A4=ED=9B=84 1:42, Stefan Kangas <stefankangas@HIDDEN= om> =EC=9E=91=EC=84=B1: > >> You could also consider adding an entry to the .mailmap file. > > Would it be acceptable for me to add the entry on this patch? If that=E2= =80=99s > the case, I=E2=80=99d like to do on my next patch. (Sorry; it seems that I missed replying to this part.) I think it's better to separate out the .mailmap change, so feel free to send a patch for that. Thanks.
bug-gnu-emacs@HIDDEN
:bug#58271
; Package emacs
.
Full text available.Received: (at 58271) by debbugs.gnu.org; 4 Oct 2022 07:25:42 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Oct 04 03:25:42 2022 Received: from localhost ([127.0.0.1]:52276 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ofcJC-0004hH-57 for submit <at> debbugs.gnu.org; Tue, 04 Oct 2022 03:25:42 -0400 Received: from mail-smail-vm101.daum.net ([211.231.106.176]:53918 helo=mail-smail-vm101.hanmail.net) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <goranmoomin@HIDDEN>) id 1ofcJ9-0004h1-1w for 58271 <at> debbugs.gnu.org; Tue, 04 Oct 2022 03:25:40 -0400 Received: from dmail-hmailsmtp-ayvm01 ([10.93.105.31]) by mail-smail-vm101.hanmail.net (8.13.8/8.9.1) with SMTP id 2947PMlT032763; Tue, 4 Oct 2022 16:25:22 +0900 X-Kakaomail-MID: Cl1pHwAAK+QAAAGDoeKL0QAD9mM= X-Hermes-Message-Id: q94GPMDA2542155523 X-Originating-IP: 147.46.174.125 Received: from mail-qpsmtp-vm17 ([10.61.241.164]) by hermes of dmail-hmailsmtp-ayvm01 (10.93.105.31) with ESMTP id q94GPMDA2542155523; Tue, 04 Oct 2022 16:25:22 +0900 (KST) Received: from [147.46.174.125] (HELO smtpclient.apple) (147.46.174.125) by (8.12.9/8.9.1) with ESMTPA; Tue, 04 Oct 2022 16:25:22 +0900 Authentication-Results: mail-qpsmtp-vm17; auth=pass (plain) smtp.auth=goranmoomin@HIDDEN Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.200.92\)) Subject: Re: bug#58271: 29.0.50; [PATCH] Handle sharing Cocoa xwidgets more gracefully From: Sungbin Jo <goranmoomin@HIDDEN> In-Reply-To: <83o7usw0cv.fsf@HIDDEN> Date: Tue, 4 Oct 2022 16:25:11 +0900 Content-Transfer-Encoding: quoted-printable Message-Id: <07098357-A63E-441F-B428-8AEB948882E6@HIDDEN> References: <87czb86b4g.fsf@HIDDEN> <276AB2FF-9AD1-48C4-BD87-FD2890E82762@HIDDEN> <87v8p04h11.fsf@HIDDEN> <83o7usw0cv.fsf@HIDDEN> To: 58271 <at> debbugs.gnu.org X-Mailer: Apple Mail (2.3731.200.92) X-HM-UT: FhzuMO7fDyY9Q9TRl8Wl2jOPNRA+bHyTw3HQj6tM3jc= X-Spam-Score: 1.3 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: 2022. 10. 4. 오후 3:48, Eli Zaretskii 작성: > I agree, but would you please inform copyright-clerk@HIDDEN of your > new email address? Done. Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 1.3 RCVD_IN_VALIDITY_RPBL RBL: Relay in Validity RPBL, https://senderscore.org/blocklistlookup/ [211.231.106.176 listed in bl.score.senderscore.com] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (goranmoomin[at]daum.net) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record X-Debbugs-Envelope-To: 58271 Cc: Po Lu <luangruo@HIDDEN>, Lars Ingebrigtsen <larsi@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, Stefan Kangas <stefankangas@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 0.3 (/) 2022. 10. 4. =EC=98=A4=ED=9B=84 3:48, Eli Zaretskii <eliz@HIDDEN> = =EC=9E=91=EC=84=B1: > I agree, but would you please inform copyright-clerk@HIDDEN of your > new email address? Done. 2022. 10. 4. =EC=98=A4=ED=9B=84 1:42, Stefan Kangas = <stefankangas@HIDDEN> =EC=9E=91=EC=84=B1: > You could also consider adding an entry to the .mailmap file. Would it be acceptable for me to add the entry on this patch? If = that=E2=80=99s the case, I=E2=80=99d like to do on my next patch.=
bug-gnu-emacs@HIDDEN
:bug#58271
; Package emacs
.
Full text available.Received: (at 58271) by debbugs.gnu.org; 4 Oct 2022 06:48:30 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Oct 04 02:48:30 2022 Received: from localhost ([127.0.0.1]:52190 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ofbjC-0003kO-6Y for submit <at> debbugs.gnu.org; Tue, 04 Oct 2022 02:48:30 -0400 Received: from eggs.gnu.org ([209.51.188.92]:50992) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1ofbjA-0003kB-HD for 58271 <at> debbugs.gnu.org; Tue, 04 Oct 2022 02:48:28 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:34940) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1ofbj4-0008W4-4h; Tue, 04 Oct 2022 02:48:22 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=0P+ooAg6sR36QefQpbYpxjSOJpHKtgjYv0BlpLBZ1BU=; b=GYCFbo6LI3eQ1AKsieyT K1cUYCfkLoMndQQIi6dAybEVx2blsT8zRIk0v45xkSXh1tOL3W1WBRb4R15ziRLwnWmjnZpduB0bV duf8VtI4S7FlN1NKcIVvQvJ6W8sTro39tF7ed8MLa9gs25He4q+6SwYna7JLRk3C7Hzo8ZxXNwpIr C0yUcFdQ6U8R1/SSWq+vBRfCmVM31rL6CVmoaAE8ClqmmnLxuUewFZY4wbZQUFPspC2wC3DH4tPmd svrEr3CiA5+JFxz8R9n6CRcdSmy3G6iafxSZ2wOyotJcMx391kcQU+Uso8YMXfRLvZTNQr5bbE/vh ySa2xF3XGNU4UQ==; Received: from [87.69.77.57] (port=2584 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1ofbj2-000181-HQ; Tue, 04 Oct 2022 02:48:20 -0400 Date: Tue, 04 Oct 2022 09:48:16 +0300 Message-Id: <83o7usw0cv.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Lars Ingebrigtsen <larsi@HIDDEN> In-Reply-To: <87v8p04h11.fsf@HIDDEN> (message from Lars Ingebrigtsen on Tue, 04 Oct 2022 01:35:38 +0200) Subject: Re: bug#58271: 29.0.50; [PATCH] Handle sharing Cocoa xwidgets more gracefully References: <87czb86b4g.fsf@HIDDEN> <276AB2FF-9AD1-48C4-BD87-FD2890E82762@HIDDEN> <87v8p04h11.fsf@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58271 Cc: goranmoomin@HIDDEN, 58271 <at> debbugs.gnu.org, luangruo@HIDDEN X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > Cc: 58271 <at> debbugs.gnu.org, Po Lu <luangruo@HIDDEN> > From: Lars Ingebrigtsen <larsi@HIDDEN> > Date: Tue, 04 Oct 2022 01:35:38 +0200 > > goranmoomin@HIDDEN writes: > > > I’ve signed the paper, though I’ve used a different email address before. (I’m > > Sungbin Jo <pcr910303 <at> icloud.com> who contributed the original Cocoa > > xwidget patch in bug#29565.) > > > > Would changing my email address require going through the process again? > > No, that's not necessary, but it would be convenient if the patch > carried the name "Sungbin Jo" somewhere. (That's not really necessary, > either, so long as we know who's who, but it would be convenient.) I agree, but would you please inform copyright-clerk@HIDDEN of your new email address? That doesn't require anything else from you, but they will update their records, and people who look you up in the list will have fewer doubts. TIA
bug-gnu-emacs@HIDDEN
:bug#58271
; Package emacs
.
Full text available.Received: (at 58271) by debbugs.gnu.org; 4 Oct 2022 04:42:22 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Oct 04 00:42:22 2022 Received: from localhost ([127.0.0.1]:52103 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ofZl8-0006Xl-GC for submit <at> debbugs.gnu.org; Tue, 04 Oct 2022 00:42:22 -0400 Received: from mail-oo1-f42.google.com ([209.85.161.42]:46592) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <stefankangas@HIDDEN>) id 1ofZl6-0006XV-7y for 58271 <at> debbugs.gnu.org; Tue, 04 Oct 2022 00:42:20 -0400 Received: by mail-oo1-f42.google.com with SMTP id r136-20020a4a378e000000b004755953bc6cso8072584oor.13 for <58271 <at> debbugs.gnu.org>; Mon, 03 Oct 2022 21:42:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date :mime-version:references:in-reply-to:from:from:to:cc:subject:date; bh=praVYga2TWaivdWPVW7p9vvU7zN4VmbwbxPHHXtUoUk=; b=mtZ5g/TJ8q3l4nlNgFmg09v3jAEL/Lhz5MshCVaEFRnU6FuJ/ohJ+dRuriuPbfu4PB 2NYRXArM3/+CzcDiWsvUKzgXLH4kdKcIC2d73EFpyiQ9TH+ggKNyPFrNLVLDmNSEaCxT vDy4qjnDbgmqIkZCx6AkLL/AKJhUPgJ2qsppUMiVb67zJmTP8vVmea/HqUbaxX5Ufp50 4wuCOp0hkCAUkuATR3vQGY6qxFAFFMvd2aQEpeFqYvFnmjLQuCYmRxypTaptClTy94zK kMVarFT5h/GY7IcON3BwD96TfOILpl1XkV0bWkQQYABXEnYsZ0asB1aInW5WxjCnNzaw 7QnQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date :mime-version:references:in-reply-to:from:x-gm-message-state:from:to :cc:subject:date; bh=praVYga2TWaivdWPVW7p9vvU7zN4VmbwbxPHHXtUoUk=; b=8FrBJPQNNcutLCikZ5gnJ2sOnri69r+2jv794n2wuEwi/IN0AvflV8jopGMu9JPx7G LRvLGqVcfOWJ/fke97Tf+zy7wxZ/vtKmh3y72taUciDsTLVRSdWQCVXPknoxRJOExj8N 5OwffaYAp7/L6lNe3JrkoXE8pBuBU+j9Ln+xGxE7Vjsngzap17tjHtBZdpoGRMMzOV5K 60Loz4goHHZslEemGPF8xQMqLL7WRwHAGfBc67A4joMzDkkv9dzN9UzXIfpdl2y3bQ8j 5x/gQCv+lZYZIVH1R/TdBUXyp6gJ1yfDg79FU4TCWS6I6LN38NSlnMcvJtMX1VtmWLo4 MTJQ== X-Gm-Message-State: ACrzQf2jvs8wkYhRMjLt0Ybey74kUSUMECMEP36H9HjRH/pY87uvu9+q cS4FsK7P0jOAKqyDAjUyLPW23E9SLGSVzW29ov4= X-Google-Smtp-Source: AMsMyM56M+5OXGAhJm88S1GM7sGeK2zKrF+bL1f+8NpNVPfbMpX2aaYO5ZM4GZWkVlNoIPERApcbPE7Wr5R/2Poxh50= X-Received: by 2002:a9d:7c89:0:b0:655:dfb1:331c with SMTP id q9-20020a9d7c89000000b00655dfb1331cmr8883991otn.224.1664858533454; Mon, 03 Oct 2022 21:42:13 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Tue, 4 Oct 2022 06:42:12 +0200 From: Stefan Kangas <stefankangas@HIDDEN> In-Reply-To: <87v8p04h11.fsf@HIDDEN> References: <87czb86b4g.fsf@HIDDEN> <276AB2FF-9AD1-48C4-BD87-FD2890E82762@HIDDEN> <87v8p04h11.fsf@HIDDEN> X-Hashcash: 1:20:221004:luangruo@HIDDEN::fbk1EulaQqY8EL/d:2Ctd MIME-Version: 1.0 Date: Tue, 4 Oct 2022 06:42:12 +0200 Message-ID: <CADwFkmkr-wHXDPn9yYNLQvEXztyUPfksN194MpsdAHzuvTbBwg@HIDDEN> Subject: Re: bug#58271: 29.0.50; [PATCH] Handle sharing Cocoa xwidgets more gracefully To: Lars Ingebrigtsen <larsi@HIDDEN>, goranmoomin@HIDDEN Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58271 Cc: 58271 <at> debbugs.gnu.org, Po Lu <luangruo@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Lars Ingebrigtsen <larsi@HIDDEN> writes: > goranmoomin@HIDDEN writes: > >> I=E2=80=99ve signed the paper, though I=E2=80=99ve used a different emai= l address before. (I=E2=80=99m >> Sungbin Jo <pcr910303 <at> icloud.com> who contributed the original Coco= a >> xwidget patch in bug#29565.) >> >> Would changing my email address require going through the process again? > > No, that's not necessary, but it would be convenient if the patch > carried the name "Sungbin Jo" somewhere. (That's not really necessary, > either, so long as we know who's who, but it would be convenient.) You could also consider adding an entry to the .mailmap file.
bug-gnu-emacs@HIDDEN
:bug#58271
; Package emacs
.
Full text available.Received: (at 58271) by debbugs.gnu.org; 4 Oct 2022 02:03:50 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Oct 03 22:03:50 2022 Received: from localhost ([127.0.0.1]:52022 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ofXHh-0002dS-Um for submit <at> debbugs.gnu.org; Mon, 03 Oct 2022 22:03:50 -0400 Received: from mail-smail-vm103.daum.net ([211.231.106.178]:3346 helo=mail-smail-vm103.hanmail.net) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <goranmoomin@HIDDEN>) id 1ofXHf-0002dD-8R for 58271 <at> debbugs.gnu.org; Mon, 03 Oct 2022 22:03:48 -0400 Received: from dmail-hmailsmtp-ayvm01 ([10.93.105.31]) by mail-smail-vm103.hanmail.net (8.13.8/8.9.1) with SMTP id 29423dme005130; Tue, 4 Oct 2022 11:03:39 +0900 X-Kakaomail-MID: Cl1pHwAAK+QAAAGDoLv/1QADo+M= X-Hermes-Message-Id: q94B3cpXv801673404 X-Originating-IP: 147.46.174.125 Received: from mail-qpsmtp-vm13 ([10.61.241.143]) by hermes of dmail-hmailsmtp-ayvm01 (10.93.105.31) with ESMTP id q94B3cpXv801673404; Tue, 04 Oct 2022 11:03:38 +0900 (KST) Received: from [147.46.174.125] (HELO smtpclient.apple) (147.46.174.125) by (8.12.9/8.9.1) with ESMTPA; Tue, 04 Oct 2022 11:03:38 +0900 Authentication-Results: mail-qpsmtp-vm13; auth=pass (plain) smtp.auth=goranmoomin@HIDDEN From: Sungbin Jo <goranmoomin@HIDDEN> Message-Id: <D75F5E89-B57D-4018-839A-222B6BDF000B@HIDDEN> Content-Type: multipart/mixed; boundary="Apple-Mail=_E88D47C8-CBFC-4A6A-B4B7-AA2E835F3386" Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.200.92\)) Subject: Re: bug#58271: 29.0.50; [PATCH] Handle sharing Cocoa xwidgets more gracefully Date: Tue, 4 Oct 2022 11:03:28 +0900 In-Reply-To: <87r0zo1l5e.fsf@HIDDEN> To: Po Lu <luangruo@HIDDEN> References: <3B2D7E85-0137-4460-B182-F7F5F39A192E@HIDDEN> <87czb86b4g.fsf@HIDDEN> <87r0zo1l5e.fsf@HIDDEN> X-Mailer: Apple Mail (2.3731.200.92) X-HM-UT: FhzuMO7fDyYQlIw+JNz/4TOPNRA+bHyTw3HQj6tM3jc= X-Spam-Score: 1.3 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: 2022. 10. 4. 오전 9:34, Po Lu 작성: > Thanks; since you seem to be the original author of the xwidget code on > Mac OS, could you please fix the crash there when an xwidget is deleted > but remains on-screen? Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 1.3 RCVD_IN_VALIDITY_RPBL RBL: Relay in Validity RPBL, https://senderscore.org/blocklistlookup/ [211.231.106.178 listed in bl.score.senderscore.com] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (goranmoomin[at]daum.net) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record X-Debbugs-Envelope-To: 58271 Cc: 58271 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 0.3 (/) --Apple-Mail=_E88D47C8-CBFC-4A6A-B4B7-AA2E835F3386 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 2022. 10. 4. =EC=98=A4=EC=A0=84 9:34, Po Lu <luangruo@HIDDEN> =EC=9E=91= =EC=84=B1: > Thanks; since you seem to be the original author of the xwidget code = on > Mac OS, could you please fix the crash there when an xwidget is = deleted > but remains on-screen? I=E2=80=99ve continued on this (with some questions) on emacs-devel. > Some minor formatting comments on the patch below: Updated patch attached. >> From: VirtualBuddy <virtualbuddy@HIDDEN> >=20 > Is this a real email? No, it was a mistake. Updated. >> * etc/NEWS: Mention fix. >=20 > Since this is a bug fix, I see no reason to mention it in NEWS. In > addition, even if it warranted a mention, it ought to be placed under > "Changes in Emacs 29.1 on Non-Free Operating Systems". I did place it under the =E2=80=9CNon-Free Operating Systems=E2=80=9D = part, but I removed them. >> * src/nsxwidget.h: Remove now-unused NSView subclasses and functions. >> * src/nsxwidget.m: >> ([XwWebView mouseDown:], [XwWebView mouseUp:], [XwWebView keyDown:]) >> ([XwWebView userContentController:didReceiveScriptMessage:]): Rename = field of >> xwidget_view from emacswindow to emacsFrame to better match emacs = terminology. >> (nsxwidget_init, nsxwidget_resize_view, = nsxwidget_move_widget_in_view): >> Simplify logic by removing field xwWindow and using the xvWindow as = the >> container. >> (nsxwidget_resize, XwWindow, XvWindow): Remove now-unused code. >> (nsxwidget_init_view, nsxwidget_delete_view): Handle creating = non-primary >> xwidget views. >> (nsxwidget_show_view, nsxwidget_hide_view): Remove poor hack to hide = views. >> * src/xwidget.c (xwidget_init_view): Update formatting. >> (x_draw_xwidget_glyph_string): Handle displaying non-primary xwidget = views and >> remove previous message warning. >> (Fxwidget_resize): Remove useless call to nsxwidget_resize, as the = subsequent >> redisplay handles them via nsxwidget_resize_view. >> * src/xwidget.h (struct xwidget): Remove field xwWindow and update = comments >> to be more accurate. >> (struct xwidget_view): Add field xvWidget and rename field = emacswindow to >> emacsFrame to better match emacs terminology. >=20 > Please make sure that each line of the commit message is no longer = than > 64 characters in length. Done. >> { >> - [self.xw->xv->emacswindow mouseDown:event]; >> + [self.xw->xv->emacsFrame mouseDown:event]; >> [super mouseDown:event]; >> } >>=20 >> - (void)mouseUp:(NSEvent *)event >> { >> - [self.xw->xv->emacswindow mouseUp:event]; >> + [self.xw->xv->emacsFrame mouseUp:event]; >> [super mouseUp:event]; >> } >=20 > The "emacswindow" field should actually be named "frame", IMHO. I=E2=80=99m not sure I follow; that=E2=80=99s exactly the rename I=E2=80=99= ve done. Or are you suggesting that I should use =E2=80=98frame=E2=80=99 instead of = =E2=80=98emacsFrame=E2=80=99? In any case, I=E2=80=99m fine with either. >> + { >> + NSTextField *warningLabel =3D [NSTextField = labelWithString:@"Cocoa Xwidgets do not support sharing widgets."]; >=20 > This line is too long. Please find a way to make it fit in 80 = columns. Done. >> + if (xw->xv =3D=3D xv) >> + { >> + xw->xv =3D NULL; /* Now model has no view. */ >> + } >=20 > Please remove the unnecessary braces here. Done. --Apple-Mail=_E88D47C8-CBFC-4A6A-B4B7-AA2E835F3386 Content-Disposition: attachment; filename=0001-Handle-sharing-Cocoa-xwidgets-more-gracefully.patch Content-Type: application/octet-stream; x-unix-mode=0644; name="0001-Handle-sharing-Cocoa-xwidgets-more-gracefully.patch" Content-Transfer-Encoding: quoted-printable =46rom=202f90ceb0d2e556cad2802cdca5ef8324a8dc5523=20Mon=20Sep=2017=20= 00:00:00=202001=0AFrom:=20Sungbin=20Jo=20<goranmoomin@HIDDEN>=0ADate:=20= Tue,=204=20Oct=202022=2008:51:33=20+0900=0ASubject:=20[PATCH]=20Handle=20= sharing=20Cocoa=20xwidgets=20more=20gracefully=0A=0A*=20src/nsxwidget.h=20= (nsxwidget_resize,=20XwWindow,=20XvWindow):=20Remove=0Aunused=20= subclasses=20and=20functions.=0A*=20src/nsxwidget.m:=0A([XwWebView=20= mouseDown:],=20[XwWebView=20mouseUp:])=0A([XwWebView=20keyDown:])=0A= ([XwWebView=20userContentController:didReceiveScriptMessage:]):=0ARename=20= field=20of=20xwidget_view=20from=20emacswindow=20to=20emacsFrame=20to=0A= better=20match=20emacs=20terminology.=0A(nsxwidget_init,=20= nsxwidget_resize_view)=0A(nsxwidget_move_widget_in_view):=20Simplify=20= logic=20by=20removing=0Afield=20xwWindow=20and=20using=20the=20xvWindow=20= as=20the=20container.=0A(nsxwidget_resize,=20XwWindow,=20XvWindow):=20= Remove=20unused=20subclasses=0Aand=20functions.=0A(nsxwidget_init_view,=20= nsxwidget_delete_view):=20Handle=20creating=0Anon-primary=20xwidget=20= views.=0A(nsxwidget_show_view,=20nsxwidget_hide_view):=20Remove=20hack=20= to=20hide=0Aviews.=0A*=20src/xwidget.c=20(xwidget_init_view):=20Update=20= formatting.=0A(x_draw_xwidget_glyph_string):=20Handle=20displaying=20= non-primary=0Axwidget=20views=20and=20remove=20previous=20message=20= warning.=0A(Fxwidget_resize):=20Remove=20useless=20call=20to=20= nsxwidget_resize,=20as=0Athe=20subsequent=20redisplay=20handles=20them=20= via=20nsxwidget_resize_view.=0A*=20src/xwidget.h=20(struct=20xwidget):=20= Remove=20field=20xwWindow=20and=0Aupdate=20comments=20to=20be=20more=20= accurate.=0A(struct=20xwidget_view):=20Add=20field=20xvWidget=20and=20= rename=20field=0Aemacswindow=20to=20emacsFrame=20to=20better=20match=20= emacs=20terminology.=0A---=0A=20src/nsxwidget.h=20|=2014=20--------=0A=20= src/nsxwidget.m=20|=2086=20= ++++++++++++++++++++-----------------------------=0A=20src/xwidget.c=20=20= =20|=2011=20++-----=0A=20src/xwidget.h=20=20=20|=2015=20++++-----=0A=204=20= files=20changed,=2044=20insertions(+),=2082=20deletions(-)=0A=0Adiff=20= --git=20a/src/nsxwidget.h=20b/src/nsxwidget.h=0Aindex=20= 666509744a..f7c744d405=20100644=0A---=20a/src/nsxwidget.h=0A+++=20= b/src/nsxwidget.h=0A@@=20-42,26=20+42,12=20@@=20#define=20= NSXWIDGET_H_INCLUDED=0A=20=0A=20/*=20Functions=20for=20xwidget=20model.=20= =20*/=0A=20=0A-#ifdef=20__OBJC__=0A-@interface=20XwWindow=20:=20NSView=0A= -@property=20struct=20xwidget=20*xw;=0A-@end=0A-#endif=0A-=0A=20void=20= nsxwidget_init=20(struct=20xwidget=20*xw);=0A=20void=20nsxwidget_kill=20= (struct=20xwidget=20*xw);=0A-void=20nsxwidget_resize=20(struct=20xwidget=20= *xw);=0A=20Lisp_Object=20nsxwidget_get_size=20(struct=20xwidget=20*xw);=0A= =20=0A=20/*=20Functions=20for=20xwidget=20view.=20=20*/=0A=20=0A-#ifdef=20= __OBJC__=0A-@interface=20XvWindow=20:=20NSView=0A-@property=20struct=20= xwidget=20*xw;=0A-@property=20struct=20xwidget_view=20*xv;=0A-@end=0A= -#endif=0A-=0A=20void=20nsxwidget_init_view=20(struct=20xwidget_view=20= *xv,=0A=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= =20=20=20=20=20struct=20xwidget=20*xww,=0A=20=20=20=20=20=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20struct=20glyph_string=20= *s,=0Adiff=20--git=20a/src/nsxwidget.m=20b/src/nsxwidget.m=0Aindex=20= be0eba0bcb..2a6d5cdb54=20100644=0A---=20a/src/nsxwidget.m=0A+++=20= b/src/nsxwidget.m=0A@@=20-199,13=20+199,13=20@@=20-=20= (void)webView:(WKWebView=20*)webView=0A=20=0A=20-=20= (void)mouseDown:(NSEvent=20*)event=0A=20{=0A-=20=20= [self.xw->xv->emacswindow=20mouseDown:event];=0A+=20=20= [self.xw->xv->emacsFrame=20mouseDown:event];=0A=20=20=20[super=20= mouseDown:event];=0A=20}=0A=20=0A=20-=20(void)mouseUp:(NSEvent=20*)event=0A= =20{=0A-=20=20[self.xw->xv->emacswindow=20mouseUp:event];=0A+=20=20= [self.xw->xv->emacsFrame=20mouseUp:event];=0A=20=20=20[super=20= mouseUp:event];=0A=20}=0A=20=0A@@=20-220,15=20+220,15=20@@=20-=20= (void)keyDown:(NSEvent=20*)event=0A=20=20=20Lisp_Object=20val=20=3D=20= buffer_local_value=20(var,=20Fcurrent_buffer=20());=0A=20=20=20if=20(!EQ=20= (val,=20Qunbound)=20&&=20!EQ=20(val,=20Qnil))=0A=20=20=20=20=20{=0A-=20=20= =20=20=20=20[self.window=20makeFirstResponder:self.xw->xv->emacswindow];=0A= -=20=20=20=20=20=20[self.xw->xv->emacswindow=20keyDown:event];=0A+=20=20=20= =20=20=20[self.window=20makeFirstResponder:self.xw->xv->emacsFrame];=0A+=20= =20=20=20=20=20[self.xw->xv->emacsFrame=20keyDown:event];=0A=20=20=20=20=20= =20=20return;=0A=20=20=20=20=20}=0A=20=0A=20=20=20/*=20Emacs=20handles=20= keyboard=20events=20when=20javascript=20is=20blocked.=20=20*/=0A=20=20=20= if=20([self.urlScriptBlocked[self.URL]=20boolValue])=0A=20=20=20=20=20{=0A= -=20=20=20=20=20=20[self.xw->xv->emacswindow=20keyDown:event];=0A+=20=20=20= =20=20=20[self.xw->xv->emacsFrame=20keyDown:event];=0A=20=20=20=20=20=20=20= return;=0A=20=20=20=20=20}=0A=20=0A@@=20-237,13=20+237,13=20@@=20-=20= (void)keyDown:(NSEvent=20*)event=0A=20=20=20=20=20=20=20if=20(error)=0A=20= =20=20=20=20=20=20=20=20{=0A=20=20=20=20=20=20=20=20=20=20=20NSLog=20= (@"xwHasFocus:=20%@",=20error);=0A-=20=20=20=20=20=20=20=20=20=20= [self.xw->xv->emacswindow=20keyDown:event];=0A+=20=20=20=20=20=20=20=20=20= =20[self.xw->xv->emacsFrame=20keyDown:event];=0A=20=20=20=20=20=20=20=20=20= }=0A=20=20=20=20=20=20=20else=20if=20(result)=0A=20=20=20=20=20=20=20=20=20= {=0A=20=20=20=20=20=20=20=20=20=20=20NSNumber=20*hasFocus=20=3D=20= result;=20/*=20__NSCFBoolean=20*/=0A=20=20=20=20=20=20=20=20=20=20=20if=20= (!hasFocus.boolValue)=0A-=20=20=20=20=20=20=20=20=20=20=20=20= [self.xw->xv->emacswindow=20keyDown:event];=0A+=20=20=20=20=20=20=20=20=20= =20=20=20[self.xw->xv->emacsFrame=20keyDown:event];=0A=20=20=20=20=20=20=20= =20=20=20=20else=0A=20=20=20=20=20=20=20=20=20=20=20=20=20[super=20= keyDown:event];=0A=20=20=20=20=20=20=20=20=20}=0A@@=20-291,7=20+291,7=20= @@=20-=20(void)userContentController:(WKUserContentController=20= *)userContentController=0A=20=20=20=20=20{=0A=20=20=20=20=20=20=20/*=20= Just=20give=20up=20focus,=20no=20relay=20"C-g"=20to=20emacs,=20another=20= "C-g"=0A=20=20=20=20=20=20=20=20=20=20follows=20will=20be=20handled=20by=20= emacs.=20=20*/=0A-=20=20=20=20=20=20[self.window=20= makeFirstResponder:self.xw->xv->emacswindow];=0A+=20=20=20=20=20=20= [self.window=20makeFirstResponder:self.xw->xv->emacsFrame];=0A=20=20=20=20= =20}=0A=20}=0A=20=0A@@=20-437,16=20+437,10=20@@=20-=20= (void)userContentController:(WKUserContentController=20= *)userContentController=0A=20=20=20=20=20}];=0A=20}=0A=20=0A-/*=20Window=20= containing=20an=20xwidget.=20=20*/=0A-=0A-@implementation=20XwWindow=0A= --=20(BOOL)isFlipped=20{=20return=20YES;=20}=0A-@end=0A-=0A=20/*=20= Xwidget=20model,=20macOS=20Cocoa=20part.=20=20*/=0A=20=0A=20void=0A= -nsxwidget_init(struct=20xwidget=20*xw)=0A+nsxwidget_init=20(struct=20= xwidget=20*xw)=0A=20{=0A=20=20=20block_input=20();=0A=20=20=20NSRect=20= rect=20=3D=20NSMakeRect=20(0,=200,=20xw->width,=20xw->height);=0A@@=20= -454,9=20+448,6=20@@=20-=20(BOOL)isFlipped=20{=20return=20YES;=20}=0A=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20initWithFrame:rect=0A= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= configuration:[[WKWebViewConfiguration=20alloc]=20init]=0A=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= xwidget:xw];=0A-=20=20xw->xwWindow=20=3D=20[[XwWindow=20alloc]=0A-=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20initWithFrame:rect];=0A-=20= =20[xw->xwWindow=20addSubview:xw->xwWidget];=0A=20=20=20xw->xv=20=3D=20= NULL;=20/*=20for=201=20to=201=20relationship=20of=20webkit2.=20=20*/=0A=20= =20=20unblock_input=20();=0A=20}=0A@@=20-481,22=20+472,10=20@@=20-=20= (BOOL)isFlipped=20{=20return=20YES;=20}=0A=20=20=20=20=20=20=20= [((XwWebView=20*)=20xw->xwWidget).urlScriptBlocked=20release];=0A=20=20=20= =20=20=20=20[xw->xwWidget=20removeFromSuperviewWithoutNeedingDisplay];=0A= =20=20=20=20=20=20=20[xw->xwWidget=20release];=0A-=20=20=20=20=20=20= [xw->xwWindow=20removeFromSuperviewWithoutNeedingDisplay];=0A-=20=20=20=20= =20=20[xw->xwWindow=20release];=0A=20=20=20=20=20=20=20xw->xwWidget=20=3D=20= nil;=0A=20=20=20=20=20}=0A=20}=0A=20=0A-void=0A-nsxwidget_resize=20= (struct=20xwidget=20*xw)=0A-{=0A-=20=20if=20(xw->xwWidget)=0A-=20=20=20=20= {=0A-=20=20=20=20=20=20[xw->xwWindow=20= setFrameSize:NSMakeSize(xw->width,=20xw->height)];=0A-=20=20=20=20=20=20= [xw->xwWidget=20setFrameSize:NSMakeSize(xw->width,=20xw->height)];=0A-=20= =20=20=20}=0A-}=0A-=0A=20Lisp_Object=0A=20nsxwidget_get_size=20(struct=20= xwidget=20*xw)=0A=20{=0A@@=20-504,12=20+483,6=20@@=20-=20(BOOL)isFlipped=20= {=20return=20YES;=20}=0A=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= =20xw->xwWidget.frame.size.height);=0A=20}=0A=20=0A-/*=20Xwidget=20view,=20= macOS=20Cocoa=20part.=20=20*/=0A-=0A-@implementation=20XvWindow=20:=20= NSView=0A--=20(BOOL)isFlipped=20{=20return=20YES;=20}=0A-@end=0A-=0A=20= void=0A=20nsxwidget_init_view=20(struct=20xwidget_view=20*xv,=0A=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20struct=20= xwidget=20*xw,=0A@@=20-526,16=20+499,28=20@@=20-=20(BOOL)isFlipped=20{=20= return=20YES;=20}=0A=20=20=20xv->clip_top=20=3D=200;=0A=20=20=20= xv->clip_bottom=20=3D=20xw->height;=0A=20=0A-=20=20xv->xvWindow=20=3D=20= [[XvWindow=20alloc]=0A+=20=20xv->xvWindow=20=3D=20[[NSView=20alloc]=0A=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= initWithFrame:NSMakeRect=20(x,=20y,=20xw->width,=20xw->height)];=0A-=20=20= xv->xvWindow.xw=20=3D=20xw;=0A-=20=20xv->xvWindow.xv=20=3D=20xv;=0A=20=0A= -=20=20xw->xv=20=3D=20xv;=20/*=20For=201=20to=201=20relationship=20of=20= webkit2.=20=20*/=0A-=20=20[xv->xvWindow=20addSubview:xw->xwWindow];=0A+=20= =20if=20(!xw->xv)=0A+=20=20=20=20{=0A+=20=20=20=20=20=20xw->xv=20=3D=20= xv;=20/*=20For=201=20to=201=20relationship=20of=20webkit2.=20=20*/=0A+=20= =20=20=20=20=20/*=20This=20seems=20like=20it=20should=20be=20retained,=20= but=20tests=20show=20otherwise.=20=20*/=0A+=20=20=20=20=20=20= xv->xvWidget=20=3D=20xw->xwWidget;=0A+=20=20=20=20}=0A+=20=20else=0A+=20=20= =20=20{=0A+=20=20=20=20=20=20NSString=20*warningString=20=3D=20@"Cocoa=20= Xwidgets=20do=20not=20support=20sharing=20widgets.";=0A+=20=20=20=20=20=20= NSTextField=20*warningLabel=20=3D=20[NSTextField=20= labelWithString:warningString];=0A+=20=20=20=20=20=20[warningLabel=20= setFrameSize:NSMakeSize=20(xw->width,=20xw->height)];=0A+=20=20=20=20=20=20= warningLabel.drawsBackground=20=3D=20YES;=0A+=20=20=20=20=20=20= warningLabel.backgroundColor=20=3D=20[NSColor=20textBackgroundColor];=0A= +=20=20=20=20=20=20xv->xvWidget=20=3D=20warningLabel;=0A+=20=20=20=20}=0A= =20=0A-=20=20xv->emacswindow=20=3D=20FRAME_NS_VIEW=20(s->f);=0A-=20=20= [xv->emacswindow=20addSubview:xv->xvWindow];=0A+=20=20[xv->xvWindow=20= addSubview:xv->xvWidget];=0A+=20=20xv->emacsFrame=20=3D=20FRAME_NS_VIEW=20= (s->f);=0A+=20=20[xv->emacsFrame=20addSubview:xv->xvWindow];=0A=20}=0A=20= =0A=20void=0A@@=20-544,8=20+529,8=20@@=20-=20(BOOL)isFlipped=20{=20= return=20YES;=20}=0A=20=20=20if=20(!EQ=20(xv->model,=20Qnil))=0A=20=20=20= =20=20{=0A=20=20=20=20=20=20=20struct=20xwidget=20*xw=20=3D=20XXWIDGET=20= (xv->model);=0A-=20=20=20=20=20=20[xw->xwWindow=20= removeFromSuperviewWithoutNeedingDisplay];=0A-=20=20=20=20=20=20xw->xv=20= =3D=20NULL;=20/*=20Now=20model=20has=20no=20view.=20=20*/=0A+=20=20=20=20= =20=20if=20(xw->xv=20=3D=3D=20xv)=0A+=20=20=20=20=20=20=20=20xw->xv=20=3D=20= NULL;=20/*=20Now=20model=20has=20no=20view.=20=20*/=0A=20=20=20=20=20}=0A= =20=20=20[xv->xvWindow=20removeFromSuperviewWithoutNeedingDisplay];=0A=20= =20=20[xv->xvWindow=20release];=0A@@=20-555,21=20+540,21=20@@=20-=20= (BOOL)isFlipped=20{=20return=20YES;=20}=0A=20nsxwidget_show_view=20= (struct=20xwidget_view=20*xv)=0A=20{=0A=20=20=20xv->hidden=20=3D=20NO;=0A= -=20=20[xv->xvWindow=20setFrameOrigin:NSMakePoint(xv->x=20+=20= xv->clip_left,=0A-=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= xv->y=20+=20xv->clip_top)];=0A+=20=20[xv->xvWindow=20setHidden:NO];=0A=20= }=0A=20=0A=20void=0A=20nsxwidget_hide_view=20(struct=20xwidget_view=20= *xv)=0A=20{=0A=20=20=20xv->hidden=20=3D=20YES;=0A-=20=20[xv->xvWindow=20= setFrameOrigin:NSMakePoint(10000,=2010000)];=0A+=20=20[xv->xvWindow=20= setHidden:YES];=0A=20}=0A=20=0A=20void=0A=20nsxwidget_resize_view=20= (struct=20xwidget_view=20*xv,=20int=20width,=20int=20height)=0A=20{=0A-=20= =20[xv->xvWindow=20setFrameSize:NSMakeSize(width,=20height)];=0A+=20=20= [xv->xvWindow=20setFrameSize:NSMakeSize=20(width,=20height)];=0A+=20=20= [xv->xvWidget=20setFrameSize:NSMakeSize=20(width,=20height)];=0A=20}=0A=20= =0A=20void=0A@@=20-582,8=20+567,7=20@@=20-=20(BOOL)isFlipped=20{=20= return=20YES;=20}=0A=20void=0A=20nsxwidget_move_widget_in_view=20(struct=20= xwidget_view=20*xv,=20int=20x,=20int=20y)=0A=20{=0A-=20=20struct=20= xwidget=20*xww=20=3D=20xv->xvWindow.xw;=0A-=20=20[xww->xwWindow=20= setFrameOrigin:NSMakePoint=20(x,=20y)];=0A+=20=20[xv->xvWidget=20= setFrameOrigin:NSMakePoint=20(x,=20y)];=0A=20}=0A=20=0A=20void=0Adiff=20= --git=20a/src/xwidget.c=20b/src/xwidget.c=0Aindex=20= 8bdfab02fd..013b773a90=20100644=0A---=20a/src/xwidget.c=0A+++=20= b/src/xwidget.c=0A@@=20-2762,7=20+2762,7=20@@=20xwidget_init_view=20= (struct=20xwidget=20*xww,=0A=20=20=20xv->just_resized=20=3D=20false;=0A=20= #elif=20defined=20NS_IMPL_COCOA=0A=20=20=20nsxwidget_init_view=20(xv,=20= xww,=20s,=20x,=20y);=0A-=20=20nsxwidget_resize_view(xv,=20xww->width,=20= xww->height);=0A+=20=20nsxwidget_resize_view=20(xv,=20xww->width,=20= xww->height);=0A=20#endif=0A=20=0A=20=20=20return=20xv;=0A@@=20-2794,7=20= +2794,7=20@@=20x_draw_xwidget_glyph_string=20(struct=20glyph_string=20= *s)=0A=20=0A=20=20=20xv->just_resized=20=3D=20false;=0A=20#elif=20= defined=20NS_IMPL_COCOA=0A-=20=20if=20(!xv)=0A+=20=20if=20(!xv=20||=20= xww->xv=20!=3D=20xv)=0A=20=20=20=20=20{=0A=20=20=20=20=20=20=20/*=20= Enforce=201=20to=201,=20model=20and=20view=20for=20macOS=20Cocoa=20= webkit2.=20=20*/=0A=20=20=20=20=20=20=20if=20(xww->xv)=0A@@=20-2805,11=20= +2805,6=20@@=20x_draw_xwidget_glyph_string=20(struct=20glyph_string=20= *s)=0A=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20XSETXWIDGET_VIEW=20= (xvl,=20xww->xv);=0A=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= Fdelete_xwidget_view=20(xvl);=0A=20=20=20=20=20=20=20=20=20=20=20=20=20}=0A= -=20=20=20=20=20=20=20=20=20=20else=0A-=20=20=20=20=20=20=20=20=20=20=20=20= {=0A-=20=20=20=20=20=20=20=20=20=20=20=20=20=20message=20("You=20can't=20= share=20an=20xwidget=20(webkit2)=20among=20windows.");=0A-=20=20=20=20=20= =20=20=20=20=20=20=20=20=20return;=0A-=20=20=20=20=20=20=20=20=20=20=20=20= }=0A=20=20=20=20=20=20=20=20=20}=0A=20=20=20=20=20=20=20xv=20=3D=20= xwidget_init_view=20(xww,=20s,=20x,=20y);=0A=20=20=20=20=20}=0A@@=20= -3243,8=20+3238,6=20@@=20DEFUN=20("xwidget-resize",=20Fxwidget_resize,=20= Sxwidget_resize,=203,=203,=200,=0A=20=0A=20=20=20=20=20=20=20= gtk_widget_queue_allocate=20(GTK_WIDGET=20(xw->widget_osr));=0A=20=20=20=20= =20}=0A-#elif=20defined=20NS_IMPL_COCOA=0A-=20=20nsxwidget_resize=20= (xw);=0A=20#endif=0A=20=20=20unblock_input=20();=0A=20=0Adiff=20--git=20= a/src/xwidget.h=20b/src/xwidget.h=0Aindex=20502beb6765..3943148e3f=20= 100644=0A---=20a/src/xwidget.h=0A+++=20b/src/xwidget.h=0A@@=20-81,16=20= +81,13=20@@=20#define=20XWIDGET_H_INCLUDED=0A=20=20=20guint=20= hit_result;=0A=20#elif=20defined=20(NS_IMPL_COCOA)=0A=20#=20ifdef=20= __OBJC__=0A-=20=20/*=20For=20offscreen=20widgets,=20unused=20if=20not=20= osr.=20=20*/=0A+=20=20/*=20The=20primary=20widget.=20=20*/=0A=20=20=20= NSView=20*xwWidget;=0A-=20=20XwWindow=20*xwWindow;=0A=20=0A-=20=20/*=20= Used=20only=20for=20xwidget=20types=20(such=20as=20webkit2)=20enforcing=20= 1=20to=201=0A-=20=20=20=20=20relationship=20between=20model=20and=20= view.=20=20*/=0A+=20=20/*=20The=20current=20view=20that=20displays=20the=20= primary=20widget,=20if=20exists.=20=20*/=0A=20=20=20struct=20= xwidget_view=20*xv;=0A=20#=20else=0A=20=20=20void=20*xwWidget;=0A-=20=20= void=20*xwWindow;=0A=20=20=20struct=20xwidget_view=20*xv;=0A=20#=20endif=0A= =20#endif=0A@@=20-136,11=20+133,13=20@@=20#define=20XWIDGET_H_INCLUDED=0A= =20=20=20int=20just_resized;=0A=20#elif=20defined=20(NS_IMPL_COCOA)=0A=20= #=20ifdef=20__OBJC__=0A-=20=20XvWindow=20*xvWindow;=0A-=20=20NSView=20= *emacswindow;=0A+=20=20NSView=20*xvWindow;=0A+=20=20NSView=20*xvWidget;=0A= +=20=20NSView=20*emacsFrame;=0A=20#=20else=0A=20=20=20void=20*xvWindow;=0A= -=20=20void=20*emacswindow;=0A+=20=20void=20*xvWidget;=0A+=20=20void=20= *emacsFrame;=0A=20#=20endif=0A=20#endif=0A=20=0A--=20=0A2.37.0=20(Apple=20= Git-136)=0A=0A= --Apple-Mail=_E88D47C8-CBFC-4A6A-B4B7-AA2E835F3386--
bug-gnu-emacs@HIDDEN
:bug#58271
; Package emacs
.
Full text available.Received: (at 58271) by debbugs.gnu.org; 4 Oct 2022 00:35:20 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Oct 03 20:35:19 2022 Received: from localhost ([127.0.0.1]:51961 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ofVu0-0000Qs-9l for submit <at> debbugs.gnu.org; Mon, 03 Oct 2022 20:35:19 -0400 Received: from sonic314-21.consmr.mail.ne1.yahoo.com ([66.163.189.147]:36007) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <luangruo@HIDDEN>) id 1ofVtu-0000QY-Op for 58271 <at> debbugs.gnu.org; Mon, 03 Oct 2022 20:35:14 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1664843703; bh=zFKdBcBvp5Qr/Quldd8qu3F2oJJkmwLrd+E9CEf+POs=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From:Subject:Reply-To; b=kV/MgJOvR7oIUHLtvzSsuouqW/xVBQyAKm098f66hNR6IvJwCgpyb2o7jxeqi3xybn4xeN3FIXpuW+KO5muw4JmXCnfyT/g4iQsf3TkvIZv41WGDzPZ1gR/9UIv20fDaTwYn4eeSwxPfmLP5OkIZahkyjvFjbUwPA/q0hclA29ANqfXSdQU3KMgtWiqXqBgq98YzqNQ5OejkRj+EQpvUEG/gBNi0qFPiC6KhdT0SxRM/Dc7PNz9wPheRFTJslOsj3IuF2abRTHnpHQVaxN8x7NvTzZOkT0E8xZMRJS7d0BZtvE9xjTsAGb4ZCQcYVntFiPmWb0p0afjXtt+48YUvSg== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1664843703; bh=FaUSR/V8NG7NqrQDV+vwbgExpPBFuFqT64sY39vCPu2=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=WY6oaPIW6Wi03ifaL50QIVI3tP+W682L11NNve0NEhXYo4Gy/Zgi5Y3ZsCWM4lzJteVyA7zjdiMXOmEaKdGf8IsrHsnqMI8XcWY40/t/pVoiodK4i77iuJ4v1mgP/g55NOVGgBElRx1H1cODYsLe1/oFCAMRUJTQllnc8XeJkw8xgkpgF+MG/GSpt5HnlRQeh5PGAezONR7N6TUska6sY+hp6iXa8k+CHbsToVtB0Qzz0OZ1JABZ/Z8cMs3GZbxUT/HmplLUgbHI5oRhqjEmS7ZP2dDhcjnLXw7O7pgVuxCP4t8vYdkneA7f9ZR73AOtwLZSC30kG1cpcJemqVAc/Q== X-YMail-OSG: oG9t1LcVM1kiI31oux7ay3wpsv3F8R0Z8.kpb3PgXU4FXYGLC1b7UYe8ovfRoKC B7szWUnkuPm6iLLlL6UnpU6h4qHTsgtcsshOPPq.q8Ykg7m_SJVwXb7a6P4tYuI7ETl2EcTpYxId wiEFgVNkVkrcUCFpYMvw88sKxMWCQI3mcO_KYynSOfS0CFnTlPyW_rNNZghRkZo2.QocDTW14HPQ Tc7afb68.jwoNEgzIiPvOoiusYFtXFOJ_uTFlnZERukKzVlfQl8UgupW59Rt7z9FHVn4.12qcmLq CwBk2VGFHz7MVjVm770NG3kUWnEGEFN_lIGmCcsJxF288jyrFHQvjStjSjqMp.wUpjddYHrQFW1m vxrgqVzhuH7LDlCnMNFiGUrhJu.d6sxLyAbr.Shju4.oEgQM_kI0ovBRj.7f3WOBeUISOI_c9rjY v.xYzcqcx4WdOybGXQ96ekLLni70D1muFlh8t5DDysnkZf1OuVhAd8uFoTDEVAw9ATMJne493EsD 8AfyuzLVsOz0KvTOA97TKXF0aIUOb0Pz_2X.84H0JZn1BMh0LC.SxutaLBfgQX.FtedXEZlWRush Iz27kyk_FBBDlHY5MvZpjw7Oh0LH5HdkaPadca2tapUJCd8vMql2coFYk7uJJwO24qpCMtt3j40N 8W1GwgDbrViofatHSsfmmBZtXJJ1n05OGe_KNLXHFWUF_cQ2hYyhrjSqpb0nTqSzYNpA_xh8Ji_9 vMc8VxAV5nt_oKy041pkkSmPfQpg3zIeUiYkrPCjzSUbCYfSBHu4xF3G7V7XxrVrXuNl3sEyijap YE5LGxfmT2ttRgMNGAHz6ES1PDnbcg.4U7wSP0Ai7qtpbVmnQ3CEeXWWZG68Sq6Cv9cUZAfPbBJR pj41szqo6dEJSICY5m290dRe_liFU21Ir79PiK.eHuBHrmcVa0tLE2O9HhbOA5oXzDBApU1mmwQs wAOI_7cXxheBotYNgxA7EZ8whyuY0LJS3q_lKCUN_hTmnWs2CwGp56qnsHudgq8KOl5wZOiJbQXz 0Eszyv.hsVT4NFmh1pbwKHWfw7Y1uAYgvIDmx7ezwSb.nnOsbj0p.M8lmSrY0vvjxwpVONU0lRr3 6e2J5cdtNyNeOMHTiF12RJncTA8VS7LBlUbxoHgFhwwbjX0fyXoN0bxjxW6jrTF.l7ip5aLU9mtR PJrztqV9MEu6zA.d4HJ67LFKR8cfAyl0Hj9uSohibX4QihhC5C6jkFtU7lQ.76wDzo8bIaEOnP19 d7s.SZ6Uj_BxQ0OzbB1Ufs2iPM_HHXAS1C4VGsTVSlOomRfFJHp3dXL05xTg4H7ULeM.wHpaOPyi wwI0nMZDjDkuz98cZT3LTPfVPXi7KwtrEJIn0OPtuXtN7oczQQ0g2XWsw8v4MFgfOELP2XwcC68e DKcs4DhF7__cgrDdVXIVXYBCemj6eQbXytt.wvHADbXpTgaGstljtW465iaipg7HDc4hkxuCN.Za P6MCN9AVT279OYSMP0QJTvkEyUug2fnfZVjYFgrhOOjZtcbpdZxSzrwg8vLG_AJbFoWXCFL_lcBP xf2FCWsIYWhKuTTCSHYWY6wXL.cqZHotuI1McjbWxXRyKMg5HcdVz7B7Aac4rhkxlnmP28MyBuqh 2F4t3IDysnZ8XprQWZpMCI3owRdeoSPnmFzcjT9f_pWb69lgT0SCnrlQadnj0dbwZjWr3r7zO6M3 OMgkWk.n0tddsrj0veumeQopbl7dHqR4mjA5cwnKSY_xtNviAy3MC9I1pi8m3goAUnbebFNj08uE N5Tq8IWFQm4gDurdSdmyLu.kDkod7F7zO8aTyrO3JFRCEIPFEFCzTnLl90lUnX0IqcUK2UabL.Lj dpC_POxuWxX4dYvhZIs2vCVXuT5cU0DGavqioWMf7i2bz3HUJw4KzrTt.LlIMw90MqqkN_1aKvwk Y_DqUHU41LiATBiaFk1SmVv2zPVwDGoJXNElNUureg3UvBP1X4_LWb9b8UczS3GanjnLCiwfN8ly tauaKctUqfOzVHtj9VtpgOS8ayGRyVgMwYXNNnSOBLTODF2Dgbkry664O6F3im.0aqaFFR6MT5iI 9SzpZj1Xwri2baQb.GTHdEpbSgkNsPlBXlqfyHbX43I48QYJsPfW.wQgBSGdRPbJYcJRlBwglBi_ JhdRFErgbYpMzdaxBM5Hpl7LcF7vjYOTUZfb4e.QpvT7HMZ4Qx9mE0NdNeA3_bXevvFS4KiV_OpJ 9bDhbaz55DtVUiMvDNnvl2UERnxsjIx.oE.qIIardiqQ.mIXvTshoEV8kMvb_mwW6_z3d7ehTBOE - X-Sonic-MF: <luangruo@HIDDEN> Received: from sonic.gate.mail.ne1.yahoo.com by sonic314.consmr.mail.ne1.yahoo.com with HTTP; Tue, 4 Oct 2022 00:35:03 +0000 Received: by hermes--production-sg3-cf9dc7f8d-5h5f2 (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 9875b3fd5ea93d732bae7a41156decd4; Tue, 04 Oct 2022 00:34:58 +0000 (UTC) From: Po Lu <luangruo@HIDDEN> To: Lars Ingebrigtsen <larsi@HIDDEN> Subject: Re: bug#58271: 29.0.50; [PATCH] Handle sharing Cocoa xwidgets more gracefully References: <3B2D7E85-0137-4460-B182-F7F5F39A192E@HIDDEN> <87czb86b4g.fsf@HIDDEN> Date: Tue, 04 Oct 2022 08:34:53 +0800 In-Reply-To: <87czb86b4g.fsf@HIDDEN> (Lars Ingebrigtsen's message of "Mon, 03 Oct 2022 20:00:15 +0200") Message-ID: <87r0zo1l5e.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.91 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Mailer: WebService/1.1.20702 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Content-Length: 3987 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58271 Cc: =?utf-8?B?7KGw7ISx67mI?= <goranmoomin@HIDDEN>, 58271 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Lars Ingebrigtsen <larsi@HIDDEN> writes: > =EC=A1=B0=EC=84=B1=EB=B9=88 <goranmoomin@HIDDEN> writes: > >> The attached patch fixes this issue by showing a warning label in the pl= ace of >> the xwidget view. > > Makes sense to me -- perhaps Po Lu has some comments; added to the CCs. > > In any case, it looks like this patch is too large to apply without > getting a copyright assignment for the FSF first. Would you be willing > to sign such paperwork? Thanks. I saw the post to emacs-devel first, and replied without checking the bug tracker. These were my comments: =EC=A1=B0=EC=84=B1=EB=B9=88 <goranmoomin@HIDDEN> writes: > Hello,=20 > > Attached is a patch that improves the handling of sharing Cocoa xwidgets.= =20 > > The previous implementation of Cocoa xwidgets poorly handled cases where = the > user tried to share xwidgets between multiple views (by spamming messages= to > *Messages* on every redisplay, and not drawing anything on the second xwi= dget). > The attached patch fixes this issue by showing a warning label in the pla= ce of > the xwidget view.=20 > > I originally tried to create a bug report with the patch by mailing to > bug-gnu-emacs@HIDDEN, but it seems that the report wasn=E2=80=99t create= d. As such, > I=E2=80=99m sending the patch to the emacs-devel list. How should I proce= ed with this? > > Thanks. Thanks; since you seem to be the original author of the xwidget code on Mac OS, could you please fix the crash there when an xwidget is deleted but remains on-screen? Some minor formatting comments on the patch below: > From: VirtualBuddy <virtualbuddy@HIDDEN> Is this a real email? > * etc/NEWS: Mention fix. Since this is a bug fix, I see no reason to mention it in NEWS. In addition, even if it warranted a mention, it ought to be placed under "Changes in Emacs 29.1 on Non-Free Operating Systems". > * src/nsxwidget.h: Remove now-unused NSView subclasses and functions. > * src/nsxwidget.m: > ([XwWebView mouseDown:], [XwWebView mouseUp:], [XwWebView keyDown:]) > ([XwWebView userContentController:didReceiveScriptMessage:]): Rename fiel= d of > xwidget_view from emacswindow to emacsFrame to better match emacs termino= logy. > (nsxwidget_init, nsxwidget_resize_view, nsxwidget_move_widget_in_view): > Simplify logic by removing field xwWindow and using the xvWindow as the > container. > (nsxwidget_resize, XwWindow, XvWindow): Remove now-unused code. > (nsxwidget_init_view, nsxwidget_delete_view): Handle creating non-primary > xwidget views. > (nsxwidget_show_view, nsxwidget_hide_view): Remove poor hack to hide view= s. > * src/xwidget.c (xwidget_init_view): Update formatting. > (x_draw_xwidget_glyph_string): Handle displaying non-primary xwidget view= s and > remove previous message warning. > (Fxwidget_resize): Remove useless call to nsxwidget_resize, as the subseq= uent > redisplay handles them via nsxwidget_resize_view. > * src/xwidget.h (struct xwidget): Remove field xwWindow and update commen= ts > to be more accurate. > (struct xwidget_view): Add field xvWidget and rename field emacswindow to > emacsFrame to better match emacs terminology. Please make sure that each line of the commit message is no longer than 64 characters in length. > { > - [self.xw->xv->emacswindow mouseDown:event]; > + [self.xw->xv->emacsFrame mouseDown:event]; > [super mouseDown:event]; > } >=20=20 > - (void)mouseUp:(NSEvent *)event > { > - [self.xw->xv->emacswindow mouseUp:event]; > + [self.xw->xv->emacsFrame mouseUp:event]; > [super mouseUp:event]; > } The "emacswindow" field should actually be named "frame", IMHO. > + { > + NSTextField *warningLabel =3D [NSTextField labelWithString:@"Cocoa= Xwidgets do not support sharing widgets."]; This line is too long. Please find a way to make it fit in 80 columns. > + if (xw->xv =3D=3D xv) > + { > + xw->xv =3D NULL; /* Now model has no view. */ > + } Please remove the unnecessary braces here.
bug-gnu-emacs@HIDDEN
:bug#58271
; Package emacs
.
Full text available.Received: (at 58271) by debbugs.gnu.org; 4 Oct 2022 00:01:45 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Oct 03 20:01:45 2022 Received: from localhost ([127.0.0.1]:51925 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ofVNZ-000849-2T for submit <at> debbugs.gnu.org; Mon, 03 Oct 2022 20:01:45 -0400 Received: from mail-smail-vm101.daum.net ([211.231.106.176]:49970 helo=mail-smail-vm101.hanmail.net) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <goranmoomin@HIDDEN>) id 1ofVNW-00083u-IK for 58271 <at> debbugs.gnu.org; Mon, 03 Oct 2022 20:01:44 -0400 Received: from mail-hmail-smtp3 ([10.194.31.36]) by mail-smail-vm101.hanmail.net (8.13.8/8.9.1) with SMTP id 29401Q6C021142; Tue, 4 Oct 2022 09:01:26 +0900 X-Kakaomail-MID: CsIfJAAAJzUAAAGDoEwacwADic4= X-Hermes-Message-Id: q9491Pch51956841723 X-Originating-IP: 223.38.84.190 Received: from mail-qpsmtp-vm19 ([10.61.241.166]) by hermes of mail-hmail-smtp3 (10.194.31.36) with ESMTP id q9491Pch51956841723; Tue, 04 Oct 2022 09:01:25 +0900 (KST) Received: from [223.38.84.190] (HELO smtpclient.apple) (223.38.84.190) by (8.12.9/8.9.1) with ESMTPA; Tue, 04 Oct 2022 09:01:25 +0900 Authentication-Results: mail-qpsmtp-vm19; auth=pass (plain) smtp.auth=goranmoomin@HIDDEN From: Sungbin Jo <goranmoomin@HIDDEN> Message-Id: <CD9616E9-3CCE-42C6-AC23-E7AE07E02876@HIDDEN> Content-Type: multipart/mixed; boundary="Apple-Mail=_FF4E4666-7B6C-40BE-8015-637AB9730914" Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.200.92\)) Subject: Re: bug#58271: 29.0.50; [PATCH] Handle sharing Cocoa xwidgets more gracefully Date: Tue, 4 Oct 2022 09:01:14 +0900 In-Reply-To: <87v8p04h11.fsf@HIDDEN> To: Lars Ingebrigtsen <larsi@HIDDEN> References: <87czb86b4g.fsf@HIDDEN> <276AB2FF-9AD1-48C4-BD87-FD2890E82762@HIDDEN> <87v8p04h11.fsf@HIDDEN> X-Mailer: Apple Mail (2.3731.200.92) X-HM-UT: FhzuMO7fDyaX9OXd45+quTOPNRA+bHyTw3HQj6tM3jc= X-Spam-Score: 1.3 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: 2022. 10. 4. 오전 8:35, Lars Ingebrigtsen 작성: > > >> I’ve signed the paper, though I’ve used a different email address >> before. (I’m >> Sungbin Jo <pcr910303 <at> icloud.com> who contributed the original >> Cocoa >> xwidget patch in bug [...] Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 1.3 RCVD_IN_VALIDITY_RPBL RBL: Relay in Validity RPBL, https://senderscore.org/blocklistlookup/ [211.231.106.176 listed in bl.score.senderscore.com] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (goranmoomin[at]daum.net) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record X-Debbugs-Envelope-To: 58271 Cc: 58271 <at> debbugs.gnu.org, Po Lu <luangruo@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 0.3 (/) --Apple-Mail=_FF4E4666-7B6C-40BE-8015-637AB9730914 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 2022. 10. 4. =EC=98=A4=EC=A0=84 8:35, Lars Ingebrigtsen <larsi@HIDDEN> = =EC=9E=91=EC=84=B1: > goranmoomin@HIDDEN writes: >=20 >> I=E2=80=99ve signed the paper, though I=E2=80=99ve used a different = email address >> before. (I=E2=80=99m >> Sungbin Jo <pcr910303 <at> icloud.com> who contributed the original >> Cocoa >> xwidget patch in bug#29565.) >>=20 >> Would changing my email address require going through the process = again? >=20 > No, that's not necessary, but it would be convenient if the patch > carried the name "Sungbin Jo" somewhere. (That's not really = necessary, > either, so long as we know who's who, but it would be convenient.) Ah, that=E2=80=99s definitely a mistake (was testing and committing = inside an unconfigured virtual machine). Attached is an updated patch with proper author details, rebased onto commit 6a5169e747. Thanks. --Apple-Mail=_FF4E4666-7B6C-40BE-8015-637AB9730914 Content-Disposition: attachment; filename=0001-Handle-sharing-Cocoa-xwidgets-more-gracefully.patch Content-Type: application/octet-stream; x-unix-mode=0644; name="0001-Handle-sharing-Cocoa-xwidgets-more-gracefully.patch" Content-Transfer-Encoding: quoted-printable =46rom=201ac9922a1720ac4e3899b8f245056f9a287e87c3=20Mon=20Sep=2017=20= 00:00:00=202001=0AFrom:=20Sungbin=20Jo=20<goranmoomin@HIDDEN>=0ADate:=20= Tue,=204=20Oct=202022=2008:51:33=20+0900=0ASubject:=20[PATCH]=20Handle=20= sharing=20Cocoa=20xwidgets=20more=20gracefully=0A=0A*=20etc/NEWS:=20= Mention=20fix.=0A*=20src/nsxwidget.h:=20Remove=20now-unused=20NSView=20= subclasses=20and=20functions.=0A*=20src/nsxwidget.m:=0A([XwWebView=20= mouseDown:],=20[XwWebView=20mouseUp:],=20[XwWebView=20keyDown:])=0A= ([XwWebView=20userContentController:didReceiveScriptMessage:]):=20Rename=0A= field=20of=20xwidget_view=20from=20emacswindow=20to=20emacsFrame=20to=20= better=20match=0Aemacs=20terminology.=0A(nsxwidget_init,=20= nsxwidget_resize_view)=0A(nsxwidget_move_widget_in_view):=20Simplify=20= logic=20by=20removing=20field=0AxwWindow=20and=20using=20the=20xvWindow=20= as=20the=20container.=0A(nsxwidget_resize,=20XwWindow,=20XvWindow):=20= Remove=20now-unused=20code.=0A(nsxwidget_init_view,=20= nsxwidget_delete_view):=20Handle=20creating=0Anon-primary=20xwidget=20= views.=0A(nsxwidget_show_view,=20nsxwidget_hide_view):=20Remove=20poor=20= hack=20to=20hide=0Aviews.=0A*=20src/xwidget.c=20(xwidget_init_view):=20= Update=20formatting.=0A(x_draw_xwidget_glyph_string):=20Handle=20= displaying=20non-primary=20xwidget=0Aviews=20and=20remove=20previous=20= message=20warning.=0A(Fxwidget_resize):=20Remove=20useless=20call=20to=20= nsxwidget_resize,=20as=20the=0Asubsequent=20redisplay=20handles=20them=20= via=20nsxwidget_resize_view.=0A*=20src/xwidget.h=20(struct=20xwidget):=20= Remove=20field=20xwWindow=20and=20update=0Acomments=20to=20be=20more=20= accurate.=0A(struct=20xwidget_view):=20Add=20field=20xvWidget=20and=20= rename=20field=20emacswindow=0Ato=20emacsFrame=20to=20better=20match=20= emacs=20terminology.=0A---=0A=20etc/NEWS=20=20=20=20=20=20=20=20|=20=208=20= +++++=0A=20src/nsxwidget.h=20|=2014=20--------=0A=20src/nsxwidget.m=20|=20= 87=20++++++++++++++++++++-----------------------------=0A=20= src/xwidget.c=20=20=20|=2011=20++-----=0A=20src/xwidget.h=20=20=20|=2015=20= ++++-----=0A=205=20files=20changed,=2053=20insertions(+),=2082=20= deletions(-)=0A=0Adiff=20--git=20a/etc/NEWS=20b/etc/NEWS=0Aindex=20= f21acaf207..a6cd7da341=20100644=0A---=20a/etc/NEWS=0A+++=20b/etc/NEWS=0A= @@=20-4059,6=20+4059,14=20@@=20has=20built-in=20support=20for=20= displaying=20BMP=20images.=0A=20---=0A=20***=20'process-attributes'=20is=20= now=20implemented.=0A=20=0A+**=20macOS=0A+---=0A+***=20Attempts=20to=20= share=20an=20xwidget=20is=20now=20handled=20more=20gracefully.=0A= +Attempts=20to=20share=20an=20xwidget=20between=20multiple=20views=20now=20= results=20in=0A+views=20other=20than=20the=20primary=20view=20displaying=20= warnings.=20=20If=20the=20primary=0A+view=20disappears,=20one=20of=20the=20= left=20views=20becomes=20the=20primary=20view=20that=0A+displays=20the=20= widget.=0A+=0A=20=0C=0A=20= ----------------------------------------------------------------------=0A= =20This=20file=20is=20part=20of=20GNU=20Emacs.=0Adiff=20--git=20= a/src/nsxwidget.h=20b/src/nsxwidget.h=0Aindex=20666509744a..f7c744d405=20= 100644=0A---=20a/src/nsxwidget.h=0A+++=20b/src/nsxwidget.h=0A@@=20-42,26=20= +42,12=20@@=20#define=20NSXWIDGET_H_INCLUDED=0A=20=0A=20/*=20Functions=20= for=20xwidget=20model.=20=20*/=0A=20=0A-#ifdef=20__OBJC__=0A-@interface=20= XwWindow=20:=20NSView=0A-@property=20struct=20xwidget=20*xw;=0A-@end=0A= -#endif=0A-=0A=20void=20nsxwidget_init=20(struct=20xwidget=20*xw);=0A=20= void=20nsxwidget_kill=20(struct=20xwidget=20*xw);=0A-void=20= nsxwidget_resize=20(struct=20xwidget=20*xw);=0A=20Lisp_Object=20= nsxwidget_get_size=20(struct=20xwidget=20*xw);=0A=20=0A=20/*=20Functions=20= for=20xwidget=20view.=20=20*/=0A=20=0A-#ifdef=20__OBJC__=0A-@interface=20= XvWindow=20:=20NSView=0A-@property=20struct=20xwidget=20*xw;=0A= -@property=20struct=20xwidget_view=20*xv;=0A-@end=0A-#endif=0A-=0A=20= void=20nsxwidget_init_view=20(struct=20xwidget_view=20*xv,=0A=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= struct=20xwidget=20*xww,=0A=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20struct=20glyph_string=20*s,=0Adiff=20= --git=20a/src/nsxwidget.m=20b/src/nsxwidget.m=0Aindex=20= be0eba0bcb..da4069e2f1=20100644=0A---=20a/src/nsxwidget.m=0A+++=20= b/src/nsxwidget.m=0A@@=20-199,13=20+199,13=20@@=20-=20= (void)webView:(WKWebView=20*)webView=0A=20=0A=20-=20= (void)mouseDown:(NSEvent=20*)event=0A=20{=0A-=20=20= [self.xw->xv->emacswindow=20mouseDown:event];=0A+=20=20= [self.xw->xv->emacsFrame=20mouseDown:event];=0A=20=20=20[super=20= mouseDown:event];=0A=20}=0A=20=0A=20-=20(void)mouseUp:(NSEvent=20*)event=0A= =20{=0A-=20=20[self.xw->xv->emacswindow=20mouseUp:event];=0A+=20=20= [self.xw->xv->emacsFrame=20mouseUp:event];=0A=20=20=20[super=20= mouseUp:event];=0A=20}=0A=20=0A@@=20-220,15=20+220,15=20@@=20-=20= (void)keyDown:(NSEvent=20*)event=0A=20=20=20Lisp_Object=20val=20=3D=20= buffer_local_value=20(var,=20Fcurrent_buffer=20());=0A=20=20=20if=20(!EQ=20= (val,=20Qunbound)=20&&=20!EQ=20(val,=20Qnil))=0A=20=20=20=20=20{=0A-=20=20= =20=20=20=20[self.window=20makeFirstResponder:self.xw->xv->emacswindow];=0A= -=20=20=20=20=20=20[self.xw->xv->emacswindow=20keyDown:event];=0A+=20=20=20= =20=20=20[self.window=20makeFirstResponder:self.xw->xv->emacsFrame];=0A+=20= =20=20=20=20=20[self.xw->xv->emacsFrame=20keyDown:event];=0A=20=20=20=20=20= =20=20return;=0A=20=20=20=20=20}=0A=20=0A=20=20=20/*=20Emacs=20handles=20= keyboard=20events=20when=20javascript=20is=20blocked.=20=20*/=0A=20=20=20= if=20([self.urlScriptBlocked[self.URL]=20boolValue])=0A=20=20=20=20=20{=0A= -=20=20=20=20=20=20[self.xw->xv->emacswindow=20keyDown:event];=0A+=20=20=20= =20=20=20[self.xw->xv->emacsFrame=20keyDown:event];=0A=20=20=20=20=20=20=20= return;=0A=20=20=20=20=20}=0A=20=0A@@=20-237,13=20+237,13=20@@=20-=20= (void)keyDown:(NSEvent=20*)event=0A=20=20=20=20=20=20=20if=20(error)=0A=20= =20=20=20=20=20=20=20=20{=0A=20=20=20=20=20=20=20=20=20=20=20NSLog=20= (@"xwHasFocus:=20%@",=20error);=0A-=20=20=20=20=20=20=20=20=20=20= [self.xw->xv->emacswindow=20keyDown:event];=0A+=20=20=20=20=20=20=20=20=20= =20[self.xw->xv->emacsFrame=20keyDown:event];=0A=20=20=20=20=20=20=20=20=20= }=0A=20=20=20=20=20=20=20else=20if=20(result)=0A=20=20=20=20=20=20=20=20=20= {=0A=20=20=20=20=20=20=20=20=20=20=20NSNumber=20*hasFocus=20=3D=20= result;=20/*=20__NSCFBoolean=20*/=0A=20=20=20=20=20=20=20=20=20=20=20if=20= (!hasFocus.boolValue)=0A-=20=20=20=20=20=20=20=20=20=20=20=20= [self.xw->xv->emacswindow=20keyDown:event];=0A+=20=20=20=20=20=20=20=20=20= =20=20=20[self.xw->xv->emacsFrame=20keyDown:event];=0A=20=20=20=20=20=20=20= =20=20=20=20else=0A=20=20=20=20=20=20=20=20=20=20=20=20=20[super=20= keyDown:event];=0A=20=20=20=20=20=20=20=20=20}=0A@@=20-291,7=20+291,7=20= @@=20-=20(void)userContentController:(WKUserContentController=20= *)userContentController=0A=20=20=20=20=20{=0A=20=20=20=20=20=20=20/*=20= Just=20give=20up=20focus,=20no=20relay=20"C-g"=20to=20emacs,=20another=20= "C-g"=0A=20=20=20=20=20=20=20=20=20=20follows=20will=20be=20handled=20by=20= emacs.=20=20*/=0A-=20=20=20=20=20=20[self.window=20= makeFirstResponder:self.xw->xv->emacswindow];=0A+=20=20=20=20=20=20= [self.window=20makeFirstResponder:self.xw->xv->emacsFrame];=0A=20=20=20=20= =20}=0A=20}=0A=20=0A@@=20-437,16=20+437,10=20@@=20-=20= (void)userContentController:(WKUserContentController=20= *)userContentController=0A=20=20=20=20=20}];=0A=20}=0A=20=0A-/*=20Window=20= containing=20an=20xwidget.=20=20*/=0A-=0A-@implementation=20XwWindow=0A= --=20(BOOL)isFlipped=20{=20return=20YES;=20}=0A-@end=0A-=0A=20/*=20= Xwidget=20model,=20macOS=20Cocoa=20part.=20=20*/=0A=20=0A=20void=0A= -nsxwidget_init(struct=20xwidget=20*xw)=0A+nsxwidget_init=20(struct=20= xwidget=20*xw)=0A=20{=0A=20=20=20block_input=20();=0A=20=20=20NSRect=20= rect=20=3D=20NSMakeRect=20(0,=200,=20xw->width,=20xw->height);=0A@@=20= -454,9=20+448,6=20@@=20-=20(BOOL)isFlipped=20{=20return=20YES;=20}=0A=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20initWithFrame:rect=0A= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= configuration:[[WKWebViewConfiguration=20alloc]=20init]=0A=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= xwidget:xw];=0A-=20=20xw->xwWindow=20=3D=20[[XwWindow=20alloc]=0A-=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20initWithFrame:rect];=0A-=20= =20[xw->xwWindow=20addSubview:xw->xwWidget];=0A=20=20=20xw->xv=20=3D=20= NULL;=20/*=20for=201=20to=201=20relationship=20of=20webkit2.=20=20*/=0A=20= =20=20unblock_input=20();=0A=20}=0A@@=20-481,22=20+472,10=20@@=20-=20= (BOOL)isFlipped=20{=20return=20YES;=20}=0A=20=20=20=20=20=20=20= [((XwWebView=20*)=20xw->xwWidget).urlScriptBlocked=20release];=0A=20=20=20= =20=20=20=20[xw->xwWidget=20removeFromSuperviewWithoutNeedingDisplay];=0A= =20=20=20=20=20=20=20[xw->xwWidget=20release];=0A-=20=20=20=20=20=20= [xw->xwWindow=20removeFromSuperviewWithoutNeedingDisplay];=0A-=20=20=20=20= =20=20[xw->xwWindow=20release];=0A=20=20=20=20=20=20=20xw->xwWidget=20=3D=20= nil;=0A=20=20=20=20=20}=0A=20}=0A=20=0A-void=0A-nsxwidget_resize=20= (struct=20xwidget=20*xw)=0A-{=0A-=20=20if=20(xw->xwWidget)=0A-=20=20=20=20= {=0A-=20=20=20=20=20=20[xw->xwWindow=20= setFrameSize:NSMakeSize(xw->width,=20xw->height)];=0A-=20=20=20=20=20=20= [xw->xwWidget=20setFrameSize:NSMakeSize(xw->width,=20xw->height)];=0A-=20= =20=20=20}=0A-}=0A-=0A=20Lisp_Object=0A=20nsxwidget_get_size=20(struct=20= xwidget=20*xw)=0A=20{=0A@@=20-504,12=20+483,6=20@@=20-=20(BOOL)isFlipped=20= {=20return=20YES;=20}=0A=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= =20xw->xwWidget.frame.size.height);=0A=20}=0A=20=0A-/*=20Xwidget=20view,=20= macOS=20Cocoa=20part.=20=20*/=0A-=0A-@implementation=20XvWindow=20:=20= NSView=0A--=20(BOOL)isFlipped=20{=20return=20YES;=20}=0A-@end=0A-=0A=20= void=0A=20nsxwidget_init_view=20(struct=20xwidget_view=20*xv,=0A=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20struct=20= xwidget=20*xw,=0A@@=20-526,16=20+499,27=20@@=20-=20(BOOL)isFlipped=20{=20= return=20YES;=20}=0A=20=20=20xv->clip_top=20=3D=200;=0A=20=20=20= xv->clip_bottom=20=3D=20xw->height;=0A=20=0A-=20=20xv->xvWindow=20=3D=20= [[XvWindow=20alloc]=0A+=20=20xv->xvWindow=20=3D=20[[NSView=20alloc]=0A=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= initWithFrame:NSMakeRect=20(x,=20y,=20xw->width,=20xw->height)];=0A-=20=20= xv->xvWindow.xw=20=3D=20xw;=0A-=20=20xv->xvWindow.xv=20=3D=20xv;=0A=20=0A= -=20=20xw->xv=20=3D=20xv;=20/*=20For=201=20to=201=20relationship=20of=20= webkit2.=20=20*/=0A-=20=20[xv->xvWindow=20addSubview:xw->xwWindow];=0A+=20= =20if=20(!xw->xv)=0A+=20=20=20=20{=0A+=20=20=20=20=20=20xw->xv=20=3D=20= xv;=20/*=20For=201=20to=201=20relationship=20of=20webkit2.=20=20*/=0A+=20= =20=20=20=20=20/*=20This=20seems=20like=20it=20should=20be=20retained,=20= but=20tests=20show=20otherwise.=20=20*/=0A+=20=20=20=20=20=20= xv->xvWidget=20=3D=20xw->xwWidget;=0A+=20=20=20=20}=0A+=20=20else=0A+=20=20= =20=20{=0A+=20=20=20=20=20=20NSTextField=20*warningLabel=20=3D=20= [NSTextField=20labelWithString:@"Cocoa=20Xwidgets=20do=20not=20support=20= sharing=20widgets."];=0A+=20=20=20=20=20=20[warningLabel=20= setFrameSize:NSMakeSize=20(xw->width,=20xw->height)];=0A+=20=20=20=20=20=20= warningLabel.drawsBackground=20=3D=20YES;=0A+=20=20=20=20=20=20= warningLabel.backgroundColor=20=3D=20[NSColor=20textBackgroundColor];=0A= +=20=20=20=20=20=20xv->xvWidget=20=3D=20warningLabel;=0A+=20=20=20=20}=0A= =20=0A-=20=20xv->emacswindow=20=3D=20FRAME_NS_VIEW=20(s->f);=0A-=20=20= [xv->emacswindow=20addSubview:xv->xvWindow];=0A+=20=20[xv->xvWindow=20= addSubview:xv->xvWidget];=0A+=20=20xv->emacsFrame=20=3D=20FRAME_NS_VIEW=20= (s->f);=0A+=20=20[xv->emacsFrame=20addSubview:xv->xvWindow];=0A=20}=0A=20= =0A=20void=0A@@=20-544,8=20+528,10=20@@=20-=20(BOOL)isFlipped=20{=20= return=20YES;=20}=0A=20=20=20if=20(!EQ=20(xv->model,=20Qnil))=0A=20=20=20= =20=20{=0A=20=20=20=20=20=20=20struct=20xwidget=20*xw=20=3D=20XXWIDGET=20= (xv->model);=0A-=20=20=20=20=20=20[xw->xwWindow=20= removeFromSuperviewWithoutNeedingDisplay];=0A-=20=20=20=20=20=20xw->xv=20= =3D=20NULL;=20/*=20Now=20model=20has=20no=20view.=20=20*/=0A+=20=20=20=20= =20=20if=20(xw->xv=20=3D=3D=20xv)=0A+=20=20=20=20=20=20=20=20{=0A+=20=20=20= =20=20=20=20=20=20=20xw->xv=20=3D=20NULL;=20/*=20Now=20model=20has=20no=20= view.=20=20*/=0A+=20=20=20=20=20=20=20=20}=0A=20=20=20=20=20}=0A=20=20=20= [xv->xvWindow=20removeFromSuperviewWithoutNeedingDisplay];=0A=20=20=20= [xv->xvWindow=20release];=0A@@=20-555,21=20+541,21=20@@=20-=20= (BOOL)isFlipped=20{=20return=20YES;=20}=0A=20nsxwidget_show_view=20= (struct=20xwidget_view=20*xv)=0A=20{=0A=20=20=20xv->hidden=20=3D=20NO;=0A= -=20=20[xv->xvWindow=20setFrameOrigin:NSMakePoint(xv->x=20+=20= xv->clip_left,=0A-=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= xv->y=20+=20xv->clip_top)];=0A+=20=20[xv->xvWindow=20setHidden:NO];=0A=20= }=0A=20=0A=20void=0A=20nsxwidget_hide_view=20(struct=20xwidget_view=20= *xv)=0A=20{=0A=20=20=20xv->hidden=20=3D=20YES;=0A-=20=20[xv->xvWindow=20= setFrameOrigin:NSMakePoint(10000,=2010000)];=0A+=20=20[xv->xvWindow=20= setHidden:YES];=0A=20}=0A=20=0A=20void=0A=20nsxwidget_resize_view=20= (struct=20xwidget_view=20*xv,=20int=20width,=20int=20height)=0A=20{=0A-=20= =20[xv->xvWindow=20setFrameSize:NSMakeSize(width,=20height)];=0A+=20=20= [xv->xvWindow=20setFrameSize:NSMakeSize=20(width,=20height)];=0A+=20=20= [xv->xvWidget=20setFrameSize:NSMakeSize=20(width,=20height)];=0A=20}=0A=20= =0A=20void=0A@@=20-582,8=20+568,7=20@@=20-=20(BOOL)isFlipped=20{=20= return=20YES;=20}=0A=20void=0A=20nsxwidget_move_widget_in_view=20(struct=20= xwidget_view=20*xv,=20int=20x,=20int=20y)=0A=20{=0A-=20=20struct=20= xwidget=20*xww=20=3D=20xv->xvWindow.xw;=0A-=20=20[xww->xwWindow=20= setFrameOrigin:NSMakePoint=20(x,=20y)];=0A+=20=20[xv->xvWidget=20= setFrameOrigin:NSMakePoint=20(x,=20y)];=0A=20}=0A=20=0A=20void=0Adiff=20= --git=20a/src/xwidget.c=20b/src/xwidget.c=0Aindex=20= 8bdfab02fd..013b773a90=20100644=0A---=20a/src/xwidget.c=0A+++=20= b/src/xwidget.c=0A@@=20-2762,7=20+2762,7=20@@=20xwidget_init_view=20= (struct=20xwidget=20*xww,=0A=20=20=20xv->just_resized=20=3D=20false;=0A=20= #elif=20defined=20NS_IMPL_COCOA=0A=20=20=20nsxwidget_init_view=20(xv,=20= xww,=20s,=20x,=20y);=0A-=20=20nsxwidget_resize_view(xv,=20xww->width,=20= xww->height);=0A+=20=20nsxwidget_resize_view=20(xv,=20xww->width,=20= xww->height);=0A=20#endif=0A=20=0A=20=20=20return=20xv;=0A@@=20-2794,7=20= +2794,7=20@@=20x_draw_xwidget_glyph_string=20(struct=20glyph_string=20= *s)=0A=20=0A=20=20=20xv->just_resized=20=3D=20false;=0A=20#elif=20= defined=20NS_IMPL_COCOA=0A-=20=20if=20(!xv)=0A+=20=20if=20(!xv=20||=20= xww->xv=20!=3D=20xv)=0A=20=20=20=20=20{=0A=20=20=20=20=20=20=20/*=20= Enforce=201=20to=201,=20model=20and=20view=20for=20macOS=20Cocoa=20= webkit2.=20=20*/=0A=20=20=20=20=20=20=20if=20(xww->xv)=0A@@=20-2805,11=20= +2805,6=20@@=20x_draw_xwidget_glyph_string=20(struct=20glyph_string=20= *s)=0A=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20XSETXWIDGET_VIEW=20= (xvl,=20xww->xv);=0A=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= Fdelete_xwidget_view=20(xvl);=0A=20=20=20=20=20=20=20=20=20=20=20=20=20}=0A= -=20=20=20=20=20=20=20=20=20=20else=0A-=20=20=20=20=20=20=20=20=20=20=20=20= {=0A-=20=20=20=20=20=20=20=20=20=20=20=20=20=20message=20("You=20can't=20= share=20an=20xwidget=20(webkit2)=20among=20windows.");=0A-=20=20=20=20=20= =20=20=20=20=20=20=20=20=20return;=0A-=20=20=20=20=20=20=20=20=20=20=20=20= }=0A=20=20=20=20=20=20=20=20=20}=0A=20=20=20=20=20=20=20xv=20=3D=20= xwidget_init_view=20(xww,=20s,=20x,=20y);=0A=20=20=20=20=20}=0A@@=20= -3243,8=20+3238,6=20@@=20DEFUN=20("xwidget-resize",=20Fxwidget_resize,=20= Sxwidget_resize,=203,=203,=200,=0A=20=0A=20=20=20=20=20=20=20= gtk_widget_queue_allocate=20(GTK_WIDGET=20(xw->widget_osr));=0A=20=20=20=20= =20}=0A-#elif=20defined=20NS_IMPL_COCOA=0A-=20=20nsxwidget_resize=20= (xw);=0A=20#endif=0A=20=20=20unblock_input=20();=0A=20=0Adiff=20--git=20= a/src/xwidget.h=20b/src/xwidget.h=0Aindex=20502beb6765..3943148e3f=20= 100644=0A---=20a/src/xwidget.h=0A+++=20b/src/xwidget.h=0A@@=20-81,16=20= +81,13=20@@=20#define=20XWIDGET_H_INCLUDED=0A=20=20=20guint=20= hit_result;=0A=20#elif=20defined=20(NS_IMPL_COCOA)=0A=20#=20ifdef=20= __OBJC__=0A-=20=20/*=20For=20offscreen=20widgets,=20unused=20if=20not=20= osr.=20=20*/=0A+=20=20/*=20The=20primary=20widget.=20=20*/=0A=20=20=20= NSView=20*xwWidget;=0A-=20=20XwWindow=20*xwWindow;=0A=20=0A-=20=20/*=20= Used=20only=20for=20xwidget=20types=20(such=20as=20webkit2)=20enforcing=20= 1=20to=201=0A-=20=20=20=20=20relationship=20between=20model=20and=20= view.=20=20*/=0A+=20=20/*=20The=20current=20view=20that=20displays=20the=20= primary=20widget,=20if=20exists.=20=20*/=0A=20=20=20struct=20= xwidget_view=20*xv;=0A=20#=20else=0A=20=20=20void=20*xwWidget;=0A-=20=20= void=20*xwWindow;=0A=20=20=20struct=20xwidget_view=20*xv;=0A=20#=20endif=0A= =20#endif=0A@@=20-136,11=20+133,13=20@@=20#define=20XWIDGET_H_INCLUDED=0A= =20=20=20int=20just_resized;=0A=20#elif=20defined=20(NS_IMPL_COCOA)=0A=20= #=20ifdef=20__OBJC__=0A-=20=20XvWindow=20*xvWindow;=0A-=20=20NSView=20= *emacswindow;=0A+=20=20NSView=20*xvWindow;=0A+=20=20NSView=20*xvWidget;=0A= +=20=20NSView=20*emacsFrame;=0A=20#=20else=0A=20=20=20void=20*xvWindow;=0A= -=20=20void=20*emacswindow;=0A+=20=20void=20*xvWidget;=0A+=20=20void=20= *emacsFrame;=0A=20#=20endif=0A=20#endif=0A=20=0A--=20=0A2.37.0=20(Apple=20= Git-136)=0A=0A= --Apple-Mail=_FF4E4666-7B6C-40BE-8015-637AB9730914--
bug-gnu-emacs@HIDDEN
:bug#58271
; Package emacs
.
Full text available.Received: (at 58271) by debbugs.gnu.org; 3 Oct 2022 23:35:54 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Oct 03 19:35:54 2022 Received: from localhost ([127.0.0.1]:51903 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ofUyY-0007QD-DJ for submit <at> debbugs.gnu.org; Mon, 03 Oct 2022 19:35:54 -0400 Received: from quimby.gnus.org ([95.216.78.240]:38880) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <larsi@HIDDEN>) id 1ofUyW-0007Q0-Eb for 58271 <at> debbugs.gnu.org; Mon, 03 Oct 2022 19:35:53 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Transfer-Encoding:Content-Type:MIME-Version:Message-ID :Date:References:In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=j3Pil5h5xnAdBdYkPJFQyuJQxKq955VAq8RpnNfIJYM=; b=D2BIMvuzP2QSPk4D1ySnnKg2xt fedO3aq9sbRR4y0GDh6oba2LcYwh9H/VdKB/zbUL9nHgxCMbfGIbOz2P9nD/gnxv5X4xpyXsh0IW1 rIrL0ytyy7o98XRRW2+J8ztpN7MJmvof/c4yub/JBWqFXXtGrQvw8BED2g0LHYjHXn2I=; Received: from [84.212.220.105] (helo=downe) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <larsi@HIDDEN>) id 1ofUyN-0005jd-ET; Tue, 04 Oct 2022 01:35:45 +0200 From: Lars Ingebrigtsen <larsi@HIDDEN> To: goranmoomin@HIDDEN Subject: Re: bug#58271: 29.0.50; [PATCH] Handle sharing Cocoa xwidgets more gracefully In-Reply-To: <276AB2FF-9AD1-48C4-BD87-FD2890E82762@HIDDEN> (goranmoomin@HIDDEN's message of "Tue, 4 Oct 2022 08:01:25 +0900") References: <87czb86b4g.fsf@HIDDEN> <276AB2FF-9AD1-48C4-BD87-FD2890E82762@HIDDEN> Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAElBMVEWwjWtxQT+fUEzR saT49O3///+dfHtVAAAAAWJLR0QF+G/pxwAAAAd0SU1FB+YKAxceMlEzPtoAAAGRSURBVDjLfZIB YsMgCEUVcwDjLqCYAzjJAbra+59pH026dHWjasUX+BFizNzs5Cz+CcIUUB8TYEeyWao/xKPxhjtI 66t1/wrC9YmowNvoiWMki10ICe4AkZA4es82Ugwp2XQCNjjpgA2nlNgPDZ+sPwAZZmtPECydIJg4 wKnBAIGtD0j1AsyIQApP11Ts8VZhTWHlAHUOIwJ30xbQccFQjwtCT2tUMB3DPghhAK4smOIUiC7L Ud3FCKzgZ5w0pw6eEgVwdjhiFvzvpWHfToABkR5cMOBCQ4aw6TtXXjpYZq0dYuUdPNTktIfsD9GT rwEu1nZxUyCtIWoCbjidgdaPO3gK672xtNykA+JXs8wr728g6Vx5+TKNcl3yPW+u1lxdZKoun2B3 krdM91wkW1vNAJxZsuScuWZUhy6Aar4BUN3QSbpXOUCstx4BwAD1AA/Sjg+Qn6C/LsSlg09Vq/Ve tg4YX+LWXI5cI0sspOIKbOKohS7jpqGvPZUxWjpFPwXYf1VXK4mOYH3vx2H/AJnb5zdoRIS3tuUh TAAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMi0xMC0wM1QyMzozMDo0OSswMDowMLr3pY0AAAAldEVY dGRhdGU6bW9kaWZ5ADIwMjItMTAtMDNUMjM6MzA6NDkrMDA6MDDLqh0xAAAAAElFTkSuQmCC X-Now-Playing: Scritti Politti's _Cupid & Psyche 85_: "Wood Beez" Date: Tue, 04 Oct 2022 01:35:38 +0200 Message-ID: <87v8p04h11.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: goranmoomin@HIDDEN writes: > I’ve signed the paper, though I’ve used a different email address before. (I’m > Sungbin Jo <pcr910303 <at> icloud.com> who contributed the original Cocoa > xwidget patch in bug#29565.) > > Wo [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58271 Cc: 58271 <at> debbugs.gnu.org, Po Lu <luangruo@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) goranmoomin@HIDDEN writes: > I=E2=80=99ve signed the paper, though I=E2=80=99ve used a different email= address before. (I=E2=80=99m > Sungbin Jo <pcr910303 <at> icloud.com> who contributed the original Cocoa > xwidget patch in bug#29565.) > > Would changing my email address require going through the process again? No, that's not necessary, but it would be convenient if the patch carried the name "Sungbin Jo" somewhere. (That's not really necessary, either, so long as we know who's who, but it would be convenient.)
bug-gnu-emacs@HIDDEN
:bug#58271
; Package emacs
.
Full text available.Received: (at 58271) by debbugs.gnu.org; 3 Oct 2022 23:01:55 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Oct 03 19:01:54 2022 Received: from localhost ([127.0.0.1]:51869 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ofURe-0006c0-Jc for submit <at> debbugs.gnu.org; Mon, 03 Oct 2022 19:01:54 -0400 Received: from mail-smail-vm103.daum.net ([211.231.106.178]:35657 helo=mail-smail-vm103.hanmail.net) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <goranmoomin@HIDDEN>) id 1ofURb-0006bj-Im for 58271 <at> debbugs.gnu.org; Mon, 03 Oct 2022 19:01:53 -0400 Received: from mail-hmail-smtp2 ([10.194.31.52]) by mail-smail-vm103.hanmail.net (8.13.8/8.9.1) with SMTP id 293N1aC3007412; Tue, 4 Oct 2022 08:01:36 +0900 X-Kakaomail-MID: CsIfNAAAVdIAAAGDoBVT1gADhU0= X-Hermes-Message-Id: q9481ZmS71223701670 X-Originating-IP: 1.230.108.64 Received: from mail-qpsmtp-vm3 ([10.61.241.126]) by hermes of mail-hmail-smtp2 (10.194.31.52) with ESMTP id q9481ZmS71223701670; Tue, 04 Oct 2022 08:01:35 +0900 (KST) Received: from [1.230.108.64] (HELO smtpclient.apple) (1.230.108.64) by (8.12.9/8.9.1) with ESMTPA; Tue, 04 Oct 2022 08:01:35 +0900 Authentication-Results: mail-qpsmtp-vm3; auth=pass (plain) smtp.auth=goranmoomin Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (1.0) Subject: Re: bug#58271: 29.0.50; [PATCH] Handle sharing Cocoa xwidgets more gracefully From: goranmoomin@HIDDEN In-Reply-To: <87czb86b4g.fsf@HIDDEN> Date: Tue, 4 Oct 2022 08:01:25 +0900 Message-Id: <276AB2FF-9AD1-48C4-BD87-FD2890E82762@HIDDEN> References: <87czb86b4g.fsf@HIDDEN> To: Lars Ingebrigtsen <larsi@HIDDEN> X-Mailer: iPhone Mail (20A362) X-HM-UT: FhzuMO7fDya8/M/xpN5J2TOPNRA+bHyTw3HQj6tM3jc= X-Spam-Score: 1.3 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: 2022. 10. 4. 오전 3:00, Lars Ingebrigtsen 작성: > > 조성빈 writes: > >> The attached patch fixes this issue by showing a warning label in the place of >> the xwidget view. > > Makes sens [...] Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 1.3 RCVD_IN_VALIDITY_RPBL RBL: Relay in Validity RPBL, https://senderscore.org/blocklistlookup/ [211.231.106.178 listed in bl.score.senderscore.com] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (goranmoomin[at]daum.net) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record X-Debbugs-Envelope-To: 58271 Cc: 58271 <at> debbugs.gnu.org, Po Lu <luangruo@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 0.3 (/) 2022. 10. 4. =EC=98=A4=EC=A0=84 3:00, Lars Ingebrigtsen <larsi@HIDDEN> =EC= =9E=91=EC=84=B1: >=20 > =EF=BB=BF=EC=A1=B0=EC=84=B1=EB=B9=88 <goranmoomin@HIDDEN> writes: >=20 >> The attached patch fixes this issue by showing a warning label in the pla= ce of >> the xwidget view. >=20 > Makes sense to me -- perhaps Po Lu has some comments; added to the CCs. >=20 > In any case, it looks like this patch is too large to apply without > getting a copyright assignment for the FSF first. Would you be willing > to sign such paper? I=E2=80=99ve signed the paper, though I=E2=80=99ve used a different email ad= dress before. (I=E2=80=99m Sungbin Jo <pcr910303 <at> icloud.com> who contributed the original Cocoa xwidget patch in bug#29565.) Would changing my email address require going through the process again? Thanks.
bug-gnu-emacs@HIDDEN
:bug#58271
; Package emacs
.
Full text available.Received: (at 58271) by debbugs.gnu.org; 3 Oct 2022 18:00:27 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Oct 03 14:00:27 2022 Received: from localhost ([127.0.0.1]:51695 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ofPju-0007Mn-VX for submit <at> debbugs.gnu.org; Mon, 03 Oct 2022 14:00:27 -0400 Received: from quimby.gnus.org ([95.216.78.240]:36300) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <larsi@HIDDEN>) id 1ofPjt-0007MR-6g for 58271 <at> debbugs.gnu.org; Mon, 03 Oct 2022 14:00:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Transfer-Encoding:Content-Type:MIME-Version:Message-ID :Date:References:In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=5fGgBjWDa4wv0W2AQ+CUWkcXt1uvFQORzfmoZA1G1rg=; b=gBFuaUttcLsIC9XymXxQ5jWDgc to4xLiE0T8JCRG0zceCtXZaVW3PbEyVilwI3drYzIH0gJfXbY0nOjpXB2OEdXy9au1OMhp5VPGryM yxfwQm79lnvJlfOPqWqlwmP+gkg/O5CSUt+mzvbUrnu+YhIxxSwsR/YXD6+tf/4QKp+c=; Received: from [84.212.220.105] (helo=downe) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <larsi@HIDDEN>) id 1ofPjj-0003PS-Kg; Mon, 03 Oct 2022 20:00:17 +0200 From: Lars Ingebrigtsen <larsi@HIDDEN> To: =?utf-8?B?7KGw7ISx67mI?= <goranmoomin@HIDDEN> Subject: Re: bug#58271: 29.0.50; [PATCH] Handle sharing Cocoa xwidgets more gracefully In-Reply-To: <3B2D7E85-0137-4460-B182-F7F5F39A192E@HIDDEN> (=?utf-8?B?IuyhsOyEseu5iCIncw==?= message of "Mon, 3 Oct 2022 18:32:20 +0900") References: <3B2D7E85-0137-4460-B182-F7F5F39A192E@HIDDEN> X-Now-Playing: Tears For Fears's _Songs From The Big Chair_: "Mothers Talk" Date: Mon, 03 Oct 2022 20:00:15 +0200 Message-ID: <87czb86b4g.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: 조성빈 <goranmoomin@HIDDEN> writes: > The attached patch fixes this issue by showing a warning label in the place of > the xwidget view. Makes sense to me -- perhaps Po Lu has some comments; added to the CCs. Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58271 Cc: 58271 <at> debbugs.gnu.org, Po Lu <luangruo@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) =EC=A1=B0=EC=84=B1=EB=B9=88 <goranmoomin@HIDDEN> writes: > The attached patch fixes this issue by showing a warning label in the pla= ce of > the xwidget view. Makes sense to me -- perhaps Po Lu has some comments; added to the CCs. In any case, it looks like this patch is too large to apply without getting a copyright assignment for the FSF first. Would you be willing to sign such paperwork?
bug-gnu-emacs@HIDDEN
:bug#58271
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 3 Oct 2022 14:19:14 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Oct 03 10:19:14 2022 Received: from localhost ([127.0.0.1]:51465 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ofMHo-0007lB-HI for submit <at> debbugs.gnu.org; Mon, 03 Oct 2022 10:19:14 -0400 Received: from lists.gnu.org ([209.51.188.17]:44738) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <goranmoomin@HIDDEN>) id 1ofHon-000134-Vo for submit <at> debbugs.gnu.org; Mon, 03 Oct 2022 05:32:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53550) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <goranmoomin@HIDDEN>) id 1ofHoj-0002MC-1Q for bug-gnu-emacs@HIDDEN; Mon, 03 Oct 2022 05:32:57 -0400 Received: from mail-smail-vm101.daum.net ([211.231.106.176]:12217 helo=mail-smail-vm101.hanmail.net) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <goranmoomin@HIDDEN>) id 1ofHoc-0001dD-Gu for bug-gnu-emacs@HIDDEN; Mon, 03 Oct 2022 05:32:52 -0400 Received: from mail-hmail-smtp1 ([10.194.31.49]) by mail-smail-vm101.hanmail.net (8.13.8/8.9.1) with SMTP id 2939WVHJ016092; Mon, 3 Oct 2022 18:32:31 +0900 X-Kakaomail-MID: CsIfMQAAJDIAAAGDnTCWfgADZpI= X-Hermes-Message-Id: q93IWUizd1206118983 X-Originating-IP: 1.230.108.64 Received: from mail-qpsmtp-vm9 ([10.61.241.136]) by hermes of mail-hmail-smtp1 (10.194.31.49) with ESMTP id q93IWUizd1206118983 for <bug-gnu-emacs@HIDDEN>; Mon, 03 Oct 2022 18:32:30 +0900 (KST) Received: from [1.230.108.64] (HELO smtpclient.apple) (1.230.108.64) by (8.12.9/8.9.1) with ESMTPA; Mon, 03 Oct 2022 18:32:30 +0900 Authentication-Results: mail-qpsmtp-vm9; auth=pass (plain) smtp.auth=goranmoomin@HIDDEN From: =?utf-8?B?7KGw7ISx67mI?= <goranmoomin@HIDDEN> Content-Type: multipart/mixed; boundary="Apple-Mail=_3A5F2BCA-C58A-402B-AAB4-C04ECABE5A49" Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.200.92\)) Subject: 29.0.50; [PATCH] Handle sharing Cocoa xwidgets more gracefully Message-Id: <3B2D7E85-0137-4460-B182-F7F5F39A192E@HIDDEN> Date: Mon, 3 Oct 2022 18:32:20 +0900 To: bug-gnu-emacs@HIDDEN X-Mailer: Apple Mail (2.3731.200.92) X-HM-UT: uZgUAxfuZctRLmiSmPa88DOPNRA+bHyTw3HQj6tM3jc= Received-SPF: pass client-ip=211.231.106.176; envelope-from=goranmoomin@HIDDEN; helo=mail-smail-vm101.hanmail.net X-Spam_score_int: 17 X-Spam_score: 1.7 X-Spam_bar: + X-Spam_report: (1.7 / 5.0 requ) BAYES_40=-0.001, FREEMAIL_FROM=0.001, KHOP_HELO_FCRDNS=0.399, RCVD_IN_VALIDITY_RPBL=1.31, SPF_HELO_NONE=0.001, T_SPF_TEMPERROR=0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Mon, 03 Oct 2022 10:19:11 -0400 X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.3 (--) --Apple-Mail=_3A5F2BCA-C58A-402B-AAB4-C04ECABE5A49 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii Severity: normal Tags: patch The previous implementation of Cocoa xwidgets poorly handled cases where = the user tried to share xwidgets between multiple views (by spamming = messages to *Messages* on every redisplay, and not drawing anything on the second = xwidget). The attached patch fixes this issue by showing a warning label in the = place of the xwidget view. --Apple-Mail=_3A5F2BCA-C58A-402B-AAB4-C04ECABE5A49 Content-Disposition: attachment; filename=0001-Handle-sharing-Cocoa-xwidgets-more-gracefully.patch Content-Type: application/octet-stream; x-unix-mode=0644; name="0001-Handle-sharing-Cocoa-xwidgets-more-gracefully.patch" Content-Transfer-Encoding: quoted-printable =46rom=20ea24ca5d49bb0c1d09be98ab032bbc50668ae627=20Mon=20Sep=2017=20= 00:00:00=202001=0AFrom:=20VirtualBuddy=20= <virtualbuddy@HIDDEN>=0ADate:=20Mon,=203=20Oct=202022=20= 17:32:45=20+0900=0ASubject:=20[PATCH]=20Handle=20sharing=20Cocoa=20= xwidgets=20more=20gracefully=0A=0A*=20etc/NEWS:=20Mention=20fix.=0A*=20= src/nsxwidget.h:=20Remove=20now-unused=20NSView=20subclasses=20and=20= functions.=0A*=20src/nsxwidget.m:=0A([XwWebView=20mouseDown:],=20= [XwWebView=20mouseUp:],=20[XwWebView=20keyDown:])=0A([XwWebView=20= userContentController:didReceiveScriptMessage:]):=20Rename=20field=20of=0A= xwidget_view=20from=20emacswindow=20to=20emacsFrame=20to=20better=20= match=20emacs=20terminology.=0A(nsxwidget_init,=20nsxwidget_resize_view,=20= nsxwidget_move_widget_in_view):=0ASimplify=20logic=20by=20removing=20= field=20xwWindow=20and=20using=20the=20xvWindow=20as=20the=0Acontainer.=0A= (nsxwidget_resize,=20XwWindow,=20XvWindow):=20Remove=20now-unused=20= code.=0A(nsxwidget_init_view,=20nsxwidget_delete_view):=20Handle=20= creating=20non-primary=0Axwidget=20views.=0A(nsxwidget_show_view,=20= nsxwidget_hide_view):=20Remove=20poor=20hack=20to=20hide=20views.=0A*=20= src/xwidget.c=20(xwidget_init_view):=20Update=20formatting.=0A= (x_draw_xwidget_glyph_string):=20Handle=20displaying=20non-primary=20= xwidget=20views=20and=0Aremove=20previous=20message=20warning.=0A= (Fxwidget_resize):=20Remove=20useless=20call=20to=20nsxwidget_resize,=20= as=20the=20subsequent=0Aredisplay=20handles=20them=20via=20= nsxwidget_resize_view.=0A*=20src/xwidget.h=20(struct=20xwidget):=20= Remove=20field=20xwWindow=20and=20update=20comments=0Ato=20be=20more=20= accurate.=0A(struct=20xwidget_view):=20Add=20field=20xvWidget=20and=20= rename=20field=20emacswindow=20to=0AemacsFrame=20to=20better=20match=20= emacs=20terminology.=0A---=0A=20etc/NEWS=20=20=20=20=20=20=20=20|=20=208=20= +++++=0A=20src/nsxwidget.h=20|=2014=20--------=0A=20src/nsxwidget.m=20|=20= 87=20++++++++++++++++++++-----------------------------=0A=20= src/xwidget.c=20=20=20|=2011=20++-----=0A=20src/xwidget.h=20=20=20|=2015=20= ++++-----=0A=205=20files=20changed,=2053=20insertions(+),=2082=20= deletions(-)=0A=0Adiff=20--git=20a/etc/NEWS=20b/etc/NEWS=0Aindex=20= ec23f10b1f..ec85d0ba41=20100644=0A---=20a/etc/NEWS=0A+++=20b/etc/NEWS=0A= @@=20-4016,6=20+4016,14=20@@=20has=20built-in=20support=20for=20= displaying=20BMP=20images.=0A=20---=0A=20***=20'process-attributes'=20is=20= now=20implemented.=0A=20=0A+**=20macOS=0A+---=0A+***=20Attempts=20to=20= share=20an=20xwidget=20is=20now=20handled=20more=20gracefully.=0A= +Attempts=20to=20share=20an=20xwidget=20between=20multiple=20views=20now=20= results=20in=0A+views=20other=20than=20the=20primary=20view=20displaying=20= warnings.=20=20If=20the=20primary=0A+view=20disappears,=20one=20of=20the=20= left=20views=20becomes=20the=20primary=20view=20that=0A+displays=20the=20= widget.=0A+=0A=20=0C=0A=20= ----------------------------------------------------------------------=0A= =20This=20file=20is=20part=20of=20GNU=20Emacs.=0Adiff=20--git=20= a/src/nsxwidget.h=20b/src/nsxwidget.h=0Aindex=20666509744a..f7c744d405=20= 100644=0A---=20a/src/nsxwidget.h=0A+++=20b/src/nsxwidget.h=0A@@=20-42,26=20= +42,12=20@@=20#define=20NSXWIDGET_H_INCLUDED=0A=20=0A=20/*=20Functions=20= for=20xwidget=20model.=20=20*/=0A=20=0A-#ifdef=20__OBJC__=0A-@interface=20= XwWindow=20:=20NSView=0A-@property=20struct=20xwidget=20*xw;=0A-@end=0A= -#endif=0A-=0A=20void=20nsxwidget_init=20(struct=20xwidget=20*xw);=0A=20= void=20nsxwidget_kill=20(struct=20xwidget=20*xw);=0A-void=20= nsxwidget_resize=20(struct=20xwidget=20*xw);=0A=20Lisp_Object=20= nsxwidget_get_size=20(struct=20xwidget=20*xw);=0A=20=0A=20/*=20Functions=20= for=20xwidget=20view.=20=20*/=0A=20=0A-#ifdef=20__OBJC__=0A-@interface=20= XvWindow=20:=20NSView=0A-@property=20struct=20xwidget=20*xw;=0A= -@property=20struct=20xwidget_view=20*xv;=0A-@end=0A-#endif=0A-=0A=20= void=20nsxwidget_init_view=20(struct=20xwidget_view=20*xv,=0A=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= struct=20xwidget=20*xww,=0A=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20struct=20glyph_string=20*s,=0Adiff=20= --git=20a/src/nsxwidget.m=20b/src/nsxwidget.m=0Aindex=20= be0eba0bcb..da4069e2f1=20100644=0A---=20a/src/nsxwidget.m=0A+++=20= b/src/nsxwidget.m=0A@@=20-199,13=20+199,13=20@@=20-=20= (void)webView:(WKWebView=20*)webView=0A=20=0A=20-=20= (void)mouseDown:(NSEvent=20*)event=0A=20{=0A-=20=20= [self.xw->xv->emacswindow=20mouseDown:event];=0A+=20=20= [self.xw->xv->emacsFrame=20mouseDown:event];=0A=20=20=20[super=20= mouseDown:event];=0A=20}=0A=20=0A=20-=20(void)mouseUp:(NSEvent=20*)event=0A= =20{=0A-=20=20[self.xw->xv->emacswindow=20mouseUp:event];=0A+=20=20= [self.xw->xv->emacsFrame=20mouseUp:event];=0A=20=20=20[super=20= mouseUp:event];=0A=20}=0A=20=0A@@=20-220,15=20+220,15=20@@=20-=20= (void)keyDown:(NSEvent=20*)event=0A=20=20=20Lisp_Object=20val=20=3D=20= buffer_local_value=20(var,=20Fcurrent_buffer=20());=0A=20=20=20if=20(!EQ=20= (val,=20Qunbound)=20&&=20!EQ=20(val,=20Qnil))=0A=20=20=20=20=20{=0A-=20=20= =20=20=20=20[self.window=20makeFirstResponder:self.xw->xv->emacswindow];=0A= -=20=20=20=20=20=20[self.xw->xv->emacswindow=20keyDown:event];=0A+=20=20=20= =20=20=20[self.window=20makeFirstResponder:self.xw->xv->emacsFrame];=0A+=20= =20=20=20=20=20[self.xw->xv->emacsFrame=20keyDown:event];=0A=20=20=20=20=20= =20=20return;=0A=20=20=20=20=20}=0A=20=0A=20=20=20/*=20Emacs=20handles=20= keyboard=20events=20when=20javascript=20is=20blocked.=20=20*/=0A=20=20=20= if=20([self.urlScriptBlocked[self.URL]=20boolValue])=0A=20=20=20=20=20{=0A= -=20=20=20=20=20=20[self.xw->xv->emacswindow=20keyDown:event];=0A+=20=20=20= =20=20=20[self.xw->xv->emacsFrame=20keyDown:event];=0A=20=20=20=20=20=20=20= return;=0A=20=20=20=20=20}=0A=20=0A@@=20-237,13=20+237,13=20@@=20-=20= (void)keyDown:(NSEvent=20*)event=0A=20=20=20=20=20=20=20if=20(error)=0A=20= =20=20=20=20=20=20=20=20{=0A=20=20=20=20=20=20=20=20=20=20=20NSLog=20= (@"xwHasFocus:=20%@",=20error);=0A-=20=20=20=20=20=20=20=20=20=20= [self.xw->xv->emacswindow=20keyDown:event];=0A+=20=20=20=20=20=20=20=20=20= =20[self.xw->xv->emacsFrame=20keyDown:event];=0A=20=20=20=20=20=20=20=20=20= }=0A=20=20=20=20=20=20=20else=20if=20(result)=0A=20=20=20=20=20=20=20=20=20= {=0A=20=20=20=20=20=20=20=20=20=20=20NSNumber=20*hasFocus=20=3D=20= result;=20/*=20__NSCFBoolean=20*/=0A=20=20=20=20=20=20=20=20=20=20=20if=20= (!hasFocus.boolValue)=0A-=20=20=20=20=20=20=20=20=20=20=20=20= [self.xw->xv->emacswindow=20keyDown:event];=0A+=20=20=20=20=20=20=20=20=20= =20=20=20[self.xw->xv->emacsFrame=20keyDown:event];=0A=20=20=20=20=20=20=20= =20=20=20=20else=0A=20=20=20=20=20=20=20=20=20=20=20=20=20[super=20= keyDown:event];=0A=20=20=20=20=20=20=20=20=20}=0A@@=20-291,7=20+291,7=20= @@=20-=20(void)userContentController:(WKUserContentController=20= *)userContentController=0A=20=20=20=20=20{=0A=20=20=20=20=20=20=20/*=20= Just=20give=20up=20focus,=20no=20relay=20"C-g"=20to=20emacs,=20another=20= "C-g"=0A=20=20=20=20=20=20=20=20=20=20follows=20will=20be=20handled=20by=20= emacs.=20=20*/=0A-=20=20=20=20=20=20[self.window=20= makeFirstResponder:self.xw->xv->emacswindow];=0A+=20=20=20=20=20=20= [self.window=20makeFirstResponder:self.xw->xv->emacsFrame];=0A=20=20=20=20= =20}=0A=20}=0A=20=0A@@=20-437,16=20+437,10=20@@=20-=20= (void)userContentController:(WKUserContentController=20= *)userContentController=0A=20=20=20=20=20}];=0A=20}=0A=20=0A-/*=20Window=20= containing=20an=20xwidget.=20=20*/=0A-=0A-@implementation=20XwWindow=0A= --=20(BOOL)isFlipped=20{=20return=20YES;=20}=0A-@end=0A-=0A=20/*=20= Xwidget=20model,=20macOS=20Cocoa=20part.=20=20*/=0A=20=0A=20void=0A= -nsxwidget_init(struct=20xwidget=20*xw)=0A+nsxwidget_init=20(struct=20= xwidget=20*xw)=0A=20{=0A=20=20=20block_input=20();=0A=20=20=20NSRect=20= rect=20=3D=20NSMakeRect=20(0,=200,=20xw->width,=20xw->height);=0A@@=20= -454,9=20+448,6=20@@=20-=20(BOOL)isFlipped=20{=20return=20YES;=20}=0A=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20initWithFrame:rect=0A= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= configuration:[[WKWebViewConfiguration=20alloc]=20init]=0A=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= xwidget:xw];=0A-=20=20xw->xwWindow=20=3D=20[[XwWindow=20alloc]=0A-=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20initWithFrame:rect];=0A-=20= =20[xw->xwWindow=20addSubview:xw->xwWidget];=0A=20=20=20xw->xv=20=3D=20= NULL;=20/*=20for=201=20to=201=20relationship=20of=20webkit2.=20=20*/=0A=20= =20=20unblock_input=20();=0A=20}=0A@@=20-481,22=20+472,10=20@@=20-=20= (BOOL)isFlipped=20{=20return=20YES;=20}=0A=20=20=20=20=20=20=20= [((XwWebView=20*)=20xw->xwWidget).urlScriptBlocked=20release];=0A=20=20=20= =20=20=20=20[xw->xwWidget=20removeFromSuperviewWithoutNeedingDisplay];=0A= =20=20=20=20=20=20=20[xw->xwWidget=20release];=0A-=20=20=20=20=20=20= [xw->xwWindow=20removeFromSuperviewWithoutNeedingDisplay];=0A-=20=20=20=20= =20=20[xw->xwWindow=20release];=0A=20=20=20=20=20=20=20xw->xwWidget=20=3D=20= nil;=0A=20=20=20=20=20}=0A=20}=0A=20=0A-void=0A-nsxwidget_resize=20= (struct=20xwidget=20*xw)=0A-{=0A-=20=20if=20(xw->xwWidget)=0A-=20=20=20=20= {=0A-=20=20=20=20=20=20[xw->xwWindow=20= setFrameSize:NSMakeSize(xw->width,=20xw->height)];=0A-=20=20=20=20=20=20= [xw->xwWidget=20setFrameSize:NSMakeSize(xw->width,=20xw->height)];=0A-=20= =20=20=20}=0A-}=0A-=0A=20Lisp_Object=0A=20nsxwidget_get_size=20(struct=20= xwidget=20*xw)=0A=20{=0A@@=20-504,12=20+483,6=20@@=20-=20(BOOL)isFlipped=20= {=20return=20YES;=20}=0A=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= =20xw->xwWidget.frame.size.height);=0A=20}=0A=20=0A-/*=20Xwidget=20view,=20= macOS=20Cocoa=20part.=20=20*/=0A-=0A-@implementation=20XvWindow=20:=20= NSView=0A--=20(BOOL)isFlipped=20{=20return=20YES;=20}=0A-@end=0A-=0A=20= void=0A=20nsxwidget_init_view=20(struct=20xwidget_view=20*xv,=0A=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20struct=20= xwidget=20*xw,=0A@@=20-526,16=20+499,27=20@@=20-=20(BOOL)isFlipped=20{=20= return=20YES;=20}=0A=20=20=20xv->clip_top=20=3D=200;=0A=20=20=20= xv->clip_bottom=20=3D=20xw->height;=0A=20=0A-=20=20xv->xvWindow=20=3D=20= [[XvWindow=20alloc]=0A+=20=20xv->xvWindow=20=3D=20[[NSView=20alloc]=0A=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= initWithFrame:NSMakeRect=20(x,=20y,=20xw->width,=20xw->height)];=0A-=20=20= xv->xvWindow.xw=20=3D=20xw;=0A-=20=20xv->xvWindow.xv=20=3D=20xv;=0A=20=0A= -=20=20xw->xv=20=3D=20xv;=20/*=20For=201=20to=201=20relationship=20of=20= webkit2.=20=20*/=0A-=20=20[xv->xvWindow=20addSubview:xw->xwWindow];=0A+=20= =20if=20(!xw->xv)=0A+=20=20=20=20{=0A+=20=20=20=20=20=20xw->xv=20=3D=20= xv;=20/*=20For=201=20to=201=20relationship=20of=20webkit2.=20=20*/=0A+=20= =20=20=20=20=20/*=20This=20seems=20like=20it=20should=20be=20retained,=20= but=20tests=20show=20otherwise.=20=20*/=0A+=20=20=20=20=20=20= xv->xvWidget=20=3D=20xw->xwWidget;=0A+=20=20=20=20}=0A+=20=20else=0A+=20=20= =20=20{=0A+=20=20=20=20=20=20NSTextField=20*warningLabel=20=3D=20= [NSTextField=20labelWithString:@"Cocoa=20Xwidgets=20do=20not=20support=20= sharing=20widgets."];=0A+=20=20=20=20=20=20[warningLabel=20= setFrameSize:NSMakeSize=20(xw->width,=20xw->height)];=0A+=20=20=20=20=20=20= warningLabel.drawsBackground=20=3D=20YES;=0A+=20=20=20=20=20=20= warningLabel.backgroundColor=20=3D=20[NSColor=20textBackgroundColor];=0A= +=20=20=20=20=20=20xv->xvWidget=20=3D=20warningLabel;=0A+=20=20=20=20}=0A= =20=0A-=20=20xv->emacswindow=20=3D=20FRAME_NS_VIEW=20(s->f);=0A-=20=20= [xv->emacswindow=20addSubview:xv->xvWindow];=0A+=20=20[xv->xvWindow=20= addSubview:xv->xvWidget];=0A+=20=20xv->emacsFrame=20=3D=20FRAME_NS_VIEW=20= (s->f);=0A+=20=20[xv->emacsFrame=20addSubview:xv->xvWindow];=0A=20}=0A=20= =0A=20void=0A@@=20-544,8=20+528,10=20@@=20-=20(BOOL)isFlipped=20{=20= return=20YES;=20}=0A=20=20=20if=20(!EQ=20(xv->model,=20Qnil))=0A=20=20=20= =20=20{=0A=20=20=20=20=20=20=20struct=20xwidget=20*xw=20=3D=20XXWIDGET=20= (xv->model);=0A-=20=20=20=20=20=20[xw->xwWindow=20= removeFromSuperviewWithoutNeedingDisplay];=0A-=20=20=20=20=20=20xw->xv=20= =3D=20NULL;=20/*=20Now=20model=20has=20no=20view.=20=20*/=0A+=20=20=20=20= =20=20if=20(xw->xv=20=3D=3D=20xv)=0A+=20=20=20=20=20=20=20=20{=0A+=20=20=20= =20=20=20=20=20=20=20xw->xv=20=3D=20NULL;=20/*=20Now=20model=20has=20no=20= view.=20=20*/=0A+=20=20=20=20=20=20=20=20}=0A=20=20=20=20=20}=0A=20=20=20= [xv->xvWindow=20removeFromSuperviewWithoutNeedingDisplay];=0A=20=20=20= [xv->xvWindow=20release];=0A@@=20-555,21=20+541,21=20@@=20-=20= (BOOL)isFlipped=20{=20return=20YES;=20}=0A=20nsxwidget_show_view=20= (struct=20xwidget_view=20*xv)=0A=20{=0A=20=20=20xv->hidden=20=3D=20NO;=0A= -=20=20[xv->xvWindow=20setFrameOrigin:NSMakePoint(xv->x=20+=20= xv->clip_left,=0A-=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= xv->y=20+=20xv->clip_top)];=0A+=20=20[xv->xvWindow=20setHidden:NO];=0A=20= }=0A=20=0A=20void=0A=20nsxwidget_hide_view=20(struct=20xwidget_view=20= *xv)=0A=20{=0A=20=20=20xv->hidden=20=3D=20YES;=0A-=20=20[xv->xvWindow=20= setFrameOrigin:NSMakePoint(10000,=2010000)];=0A+=20=20[xv->xvWindow=20= setHidden:YES];=0A=20}=0A=20=0A=20void=0A=20nsxwidget_resize_view=20= (struct=20xwidget_view=20*xv,=20int=20width,=20int=20height)=0A=20{=0A-=20= =20[xv->xvWindow=20setFrameSize:NSMakeSize(width,=20height)];=0A+=20=20= [xv->xvWindow=20setFrameSize:NSMakeSize=20(width,=20height)];=0A+=20=20= [xv->xvWidget=20setFrameSize:NSMakeSize=20(width,=20height)];=0A=20}=0A=20= =0A=20void=0A@@=20-582,8=20+568,7=20@@=20-=20(BOOL)isFlipped=20{=20= return=20YES;=20}=0A=20void=0A=20nsxwidget_move_widget_in_view=20(struct=20= xwidget_view=20*xv,=20int=20x,=20int=20y)=0A=20{=0A-=20=20struct=20= xwidget=20*xww=20=3D=20xv->xvWindow.xw;=0A-=20=20[xww->xwWindow=20= setFrameOrigin:NSMakePoint=20(x,=20y)];=0A+=20=20[xv->xvWidget=20= setFrameOrigin:NSMakePoint=20(x,=20y)];=0A=20}=0A=20=0A=20void=0Adiff=20= --git=20a/src/xwidget.c=20b/src/xwidget.c=0Aindex=20= 8bdfab02fd..013b773a90=20100644=0A---=20a/src/xwidget.c=0A+++=20= b/src/xwidget.c=0A@@=20-2762,7=20+2762,7=20@@=20xwidget_init_view=20= (struct=20xwidget=20*xww,=0A=20=20=20xv->just_resized=20=3D=20false;=0A=20= #elif=20defined=20NS_IMPL_COCOA=0A=20=20=20nsxwidget_init_view=20(xv,=20= xww,=20s,=20x,=20y);=0A-=20=20nsxwidget_resize_view(xv,=20xww->width,=20= xww->height);=0A+=20=20nsxwidget_resize_view=20(xv,=20xww->width,=20= xww->height);=0A=20#endif=0A=20=0A=20=20=20return=20xv;=0A@@=20-2794,7=20= +2794,7=20@@=20x_draw_xwidget_glyph_string=20(struct=20glyph_string=20= *s)=0A=20=0A=20=20=20xv->just_resized=20=3D=20false;=0A=20#elif=20= defined=20NS_IMPL_COCOA=0A-=20=20if=20(!xv)=0A+=20=20if=20(!xv=20||=20= xww->xv=20!=3D=20xv)=0A=20=20=20=20=20{=0A=20=20=20=20=20=20=20/*=20= Enforce=201=20to=201,=20model=20and=20view=20for=20macOS=20Cocoa=20= webkit2.=20=20*/=0A=20=20=20=20=20=20=20if=20(xww->xv)=0A@@=20-2805,11=20= +2805,6=20@@=20x_draw_xwidget_glyph_string=20(struct=20glyph_string=20= *s)=0A=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20XSETXWIDGET_VIEW=20= (xvl,=20xww->xv);=0A=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= Fdelete_xwidget_view=20(xvl);=0A=20=20=20=20=20=20=20=20=20=20=20=20=20}=0A= -=20=20=20=20=20=20=20=20=20=20else=0A-=20=20=20=20=20=20=20=20=20=20=20=20= {=0A-=20=20=20=20=20=20=20=20=20=20=20=20=20=20message=20("You=20can't=20= share=20an=20xwidget=20(webkit2)=20among=20windows.");=0A-=20=20=20=20=20= =20=20=20=20=20=20=20=20=20return;=0A-=20=20=20=20=20=20=20=20=20=20=20=20= }=0A=20=20=20=20=20=20=20=20=20}=0A=20=20=20=20=20=20=20xv=20=3D=20= xwidget_init_view=20(xww,=20s,=20x,=20y);=0A=20=20=20=20=20}=0A@@=20= -3243,8=20+3238,6=20@@=20DEFUN=20("xwidget-resize",=20Fxwidget_resize,=20= Sxwidget_resize,=203,=203,=200,=0A=20=0A=20=20=20=20=20=20=20= gtk_widget_queue_allocate=20(GTK_WIDGET=20(xw->widget_osr));=0A=20=20=20=20= =20}=0A-#elif=20defined=20NS_IMPL_COCOA=0A-=20=20nsxwidget_resize=20= (xw);=0A=20#endif=0A=20=20=20unblock_input=20();=0A=20=0Adiff=20--git=20= a/src/xwidget.h=20b/src/xwidget.h=0Aindex=20502beb6765..3943148e3f=20= 100644=0A---=20a/src/xwidget.h=0A+++=20b/src/xwidget.h=0A@@=20-81,16=20= +81,13=20@@=20#define=20XWIDGET_H_INCLUDED=0A=20=20=20guint=20= hit_result;=0A=20#elif=20defined=20(NS_IMPL_COCOA)=0A=20#=20ifdef=20= __OBJC__=0A-=20=20/*=20For=20offscreen=20widgets,=20unused=20if=20not=20= osr.=20=20*/=0A+=20=20/*=20The=20primary=20widget.=20=20*/=0A=20=20=20= NSView=20*xwWidget;=0A-=20=20XwWindow=20*xwWindow;=0A=20=0A-=20=20/*=20= Used=20only=20for=20xwidget=20types=20(such=20as=20webkit2)=20enforcing=20= 1=20to=201=0A-=20=20=20=20=20relationship=20between=20model=20and=20= view.=20=20*/=0A+=20=20/*=20The=20current=20view=20that=20displays=20the=20= primary=20widget,=20if=20exists.=20=20*/=0A=20=20=20struct=20= xwidget_view=20*xv;=0A=20#=20else=0A=20=20=20void=20*xwWidget;=0A-=20=20= void=20*xwWindow;=0A=20=20=20struct=20xwidget_view=20*xv;=0A=20#=20endif=0A= =20#endif=0A@@=20-136,11=20+133,13=20@@=20#define=20XWIDGET_H_INCLUDED=0A= =20=20=20int=20just_resized;=0A=20#elif=20defined=20(NS_IMPL_COCOA)=0A=20= #=20ifdef=20__OBJC__=0A-=20=20XvWindow=20*xvWindow;=0A-=20=20NSView=20= *emacswindow;=0A+=20=20NSView=20*xvWindow;=0A+=20=20NSView=20*xvWidget;=0A= +=20=20NSView=20*emacsFrame;=0A=20#=20else=0A=20=20=20void=20*xvWindow;=0A= -=20=20void=20*emacswindow;=0A+=20=20void=20*xvWidget;=0A+=20=20void=20= *emacsFrame;=0A=20#=20endif=0A=20#endif=0A=20=0A--=20=0A2.37.0=20(Apple=20= Git-136)=0A=0A= --Apple-Mail=_3A5F2BCA-C58A-402B-AAB4-C04ECABE5A49--
조성빈 <goranmoomin@HIDDEN>
:bug-gnu-emacs@HIDDEN
.
Full text available.bug-gnu-emacs@HIDDEN
:bug#58271
; Package emacs
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.