From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Aaron Jensen Newsgroups: gmane.emacs.bugs Subject: bug#63187: 30.0.50; Tail of longer lines painted after end of nearby lines on macOS Date: Mon, 12 Jun 2023 09:04:47 -0400 Message-ID: References: <50104E0C-A861-4762-8081-55F2CF2390AD@gmail.com> <76A3A6C3-CD32-4731-927C-349471F21801@gmail.com> <2A505E20-55E2-4788-A21C-B94068299E50@gmail.com> <29949E40-D5D5-4DE1-BD81-93D1BA3D4F51@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="40456"; mail-complaints-to="usenet@ciao.gmane.io" To: Alan Third , Aaron Jensen , Kai Ma , 63187@debbugs.gnu.org, Eli Zaretskii , Po Lu Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Jun 12 15:07:01 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1q8hG8-000AHV-IQ for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 12 Jun 2023 15:07:00 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q8hFK-0004I5-MM; Mon, 12 Jun 2023 09:06:11 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1q8hFD-0004DE-0N for bug-gnu-emacs@gnu.org; Mon, 12 Jun 2023 09:06:03 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q8hFC-000886-NT for bug-gnu-emacs@gnu.org; Mon, 12 Jun 2023 09:06:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1q8hFC-0002Xy-3b for bug-gnu-emacs@gnu.org; Mon, 12 Jun 2023 09:06:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Aaron Jensen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 12 Jun 2023 13:06:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 63187 X-GNU-PR-Package: emacs Original-Received: via spool by 63187-submit@debbugs.gnu.org id=B63187.16865751089713 (code B ref 63187); Mon, 12 Jun 2023 13:06:02 +0000 Original-Received: (at 63187) by debbugs.gnu.org; 12 Jun 2023 13:05:08 +0000 Original-Received: from localhost ([127.0.0.1]:39182 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1q8hEJ-0002Wb-Lm for submit@debbugs.gnu.org; Mon, 12 Jun 2023 09:05:08 -0400 Original-Received: from mail-pg1-f178.google.com ([209.85.215.178]:59881) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1q8hEH-0002Vy-1G for 63187@debbugs.gnu.org; Mon, 12 Jun 2023 09:05:05 -0400 Original-Received: by mail-pg1-f178.google.com with SMTP id 41be03b00d2f7-543c692db30so2960598a12.3 for <63187@debbugs.gnu.org>; Mon, 12 Jun 2023 06:05:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686575099; x=1689167099; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=9t4LCkihXE4mUdZ6wMKmjxePsNUIiHUmJGRevs2SDEI=; b=WBp+WJ7q5/g3A2Hu/wANT0VNsi10FrZy+YjUq9ZsCEHAH2fR62NBfzRBsGS4XCbWo5 6rOOvelWe1RN75o9cKqnmbGsqgQquYNR0nedubE96ibJyz8XG3ZM4O+42d50TF8Ys3IZ hMo+esrilDk0DLpcq5fSKx23mLhA7HZ3wQTlB/c+SDAMNTKVIW83rsCjCgMAlZs6EtBN eoYqJswPWKVruOC+W4tjRWXdjZmN7LyzMg2XbFyu7ZdLjCGcMimodduiIx69D4uHftB5 ieCTMG7PGC787dzHV78dxh9lBZUySLXezZNsm7IZ/ZloLewg6/9LevVaOC0efYnsG2Qq dOYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686575099; x=1689167099; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=9t4LCkihXE4mUdZ6wMKmjxePsNUIiHUmJGRevs2SDEI=; b=MEIFM0sqV7RuJOllJStOVS7sDT5vCHK780afumemq/+i1LgNBHLK65IPcCxnVhK7er yDfvBwc25RedFl3cYlMMwvy8Jtl0D5yG3LxN0R7c6FG8PnFVHGTQYfI87rtkD4MK98hs Fo+Q8t/e5t8VnLY110bXxRpsl8EO9XVhlOgWzPG9u5TspJas/7tgxdnL1WyUuxgNr25U KpLCES68CKgG2p2vb9UdDlTVlbmIdU7rc3D9FDMs4nClDaH36mbwlRamzOHFDCbCru1m CwR5X0S2CEToJ6jiqaktVijY6nx68TJzJ6xH0jtd3N1c2w17Ti9TsLrVfZYhXfIx0t/3 kqBw== X-Gm-Message-State: AC+VfDw+bYMEOpEdGbBZBB4PRHt6hBMvy5Q19WQ8Bd1SAHkp9b+cR9P2 9AyBQdUkdKXsNBPSozCtFS2g5guB6PCqyCL2tSg= X-Google-Smtp-Source: ACHHUZ4Tv4oLTBmv5MIlfU8BPcpsraiFV29F8QKUi8Jpr00swl/RO6/UxCECxRD15LmdbTGk7bn3XlWMJppHkoi7Ldw= X-Received: by 2002:a17:90b:110c:b0:259:343:8e74 with SMTP id gi12-20020a17090b110c00b0025903438e74mr9190670pjb.7.1686575098828; Mon, 12 Jun 2023 06:04:58 -0700 (PDT) In-Reply-To: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:263270 Archived-At: On Fri, Jun 9, 2023 at 4:00=E2=80=AFPM Alan Third wrote: > > On Fri, Jun 09, 2023 at 02:46:29PM -0400, Aaron Jensen wrote: > > On Fri, Jun 9, 2023 at 2:27=E2=80=AFPM Alan Third wro= te: > > > It seems to me that removing the call to performSelectorOnMainThread > > > should be done. That may even fix Aaron's original issue too, given > > > that I don't know why calling setNeedsDisplayInRect twice in a row > > > should help, especially given it's not actually used anywhere else in > > > the display code. > > > > How is it called twice? Does copyRect mark for redisplay? > > Sorry, I had misunderstood your change. > > Either way, I don't see how it's made a difference. > setNeedsDisplayInRect is telling the system which parts it needs to > call drawRect on, but we don't use drawRect any more, so I would think > all it can be doing is setting the needsDisplay boolean to true. > > copyRect definitely doesn't do anything with the rectangle. It deals > with the bitmap's pixel data directly, so there's no clipping or > anything else affecting it and it's changes don't need to be > committed to some backing store. > > Even when it comes to actually displaying the view on the screen, we > pass in the entire bitmap to the graphics subsystem and it > (supposedly) displays it in it's entirety. > > So as I understand it the rectangle passed into setNeedsDisplayInRect > doesn't do anything. I think that call in ns_scroll_run was left there > by mistake. It's literally the only call to it in the entire nsterm.m > file. > > But you report that it has fixed your problem. I can't explain that > because it runs counter to my understanding of how macOS draws. > > But then again, none of this is documented in any in-depth way by > Apple, so who knows what's REALLY going on. > > Patch attached, but it's untested. It may even make things worse. I'm > happy to leave it up to you to decide what to do since you're in a > better position to tell if any given change actually helps. Thanks, I'm trying it out now. I'll report back in a bit. If it's fine I'll try removing the setNeedsDisplay as well and try again. Aaron