From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Lennart Borgman Newsgroups: gmane.emacs.devel Subject: Re: The unwarranted scrolling assumption Date: Fri, 18 Jun 2010 19:31:30 +0200 Message-ID: References: <87ocfcj7r4.fsf@mail.jurta.org> <87631jvpzg.fsf@gmail.com> <4C18211C.3070106@harpegolden.net> <87vd9j5neu.fsf@kfs-lx.rd.rdm> <83sk4misf2.fsf@gnu.org> <83iq5hiiin.fsf@gnu.org> <83fx0lihov.fsf@gnu.org> <83aaqsiyb6.fsf@gnu.org> <83zkysh2hb.fsf@gnu.org> <83vd9gh0s6.fsf@gnu.org> <83typ0gzgh.fsf@gnu.org> <83pqzogxpf.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=0016e68dba8f897ca40489515426 X-Trace: dough.gmane.org 1276882821 27743 80.91.229.12 (18 Jun 2010 17:40:21 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Fri, 18 Jun 2010 17:40:21 +0000 (UTC) Cc: emacs-devel@gnu.org To: Eli Zaretskii , Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jun 18 19:40:17 2010 connect(): No such file or directory Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1OPfY3-0002BK-2G for ged-emacs-devel@m.gmane.org; Fri, 18 Jun 2010 19:40:11 +0200 Original-Received: from localhost ([127.0.0.1]:34636 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OPfY1-0005Pd-PW for ged-emacs-devel@m.gmane.org; Fri, 18 Jun 2010 13:40:09 -0400 Original-Received: from [140.186.70.92] (port=35305 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OPfXt-0005Nu-Fm for emacs-devel@gnu.org; Fri, 18 Jun 2010 13:40:02 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OPfXs-0006xJ-4p for emacs-devel@gnu.org; Fri, 18 Jun 2010 13:40:01 -0400 Original-Received: from mail-yw0-f192.google.com ([209.85.211.192]:46902) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OPfXs-0006xA-0K; Fri, 18 Jun 2010 13:40:00 -0400 Original-Received: by ywh30 with SMTP id 30so1238577ywh.24 for ; Fri, 18 Jun 2010 10:39:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:mime-version:received:in-reply-to :references:from:date:message-id:subject:to:cc:content-type; bh=mShpHaKU22QguhGHguul1MGE5UpnvTEUiJ9+Az7Pta0=; b=Is1ZEJ2qlAxsiHc6AXAgqTQw1HGSSe5nR7THBS+Hv4W9TZczgLlbXvB7UIWQoyhHob NPIcvxws/AyNE8U6AvqHm5sCQ9Vu4dXcOdrvYcP3e17hqpQojqEOGHKnIYT5mn+LLzjZ 1kHaZl9nTSRG5xwcK41YJ12RnafExVrAKCSuk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; b=fxIj4z8rsDOkoQEOJ3OB2Qcedlz/fU1XoC5EES7fYYAHTdoz9OwRSdCVQGvjHZ847j VlOnd5yx3iRvLLrm9wAk0is5iToMekB84ygU5xTPt011cc3suYlurGlcq7VMwjl7bz3x Zxv2aqpkaVSA8uxZ+Xlz1EGP35M6KdSJFsbY0= Original-Received: by 10.101.133.33 with SMTP id k33mr1143687ann.145.1276882310495; Fri, 18 Jun 2010 10:31:50 -0700 (PDT) Original-Received: by 10.100.154.15 with HTTP; Fri, 18 Jun 2010 10:31:30 -0700 (PDT) In-Reply-To: X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:126188 Archived-At: --0016e68dba8f897ca40489515426 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Fri, Jun 18, 2010 at 6:39 PM, Lennart Borgman wrote: > On Fri, Jun 18, 2010 at 5:35 PM, Eli Zaretskii wrote: >>> From: Lennart Borgman >>> Date: Fri, 18 Jun 2010 17:08:18 +0200 >>> Cc: emacs-devel@gnu.org >>> >>> You are looking for the reason why reconsider_clip_changes does not do >>> its job. I have said (though maybe not explicitly enough, I don't >>> know) that it can't because it does not have the information it needs. >>> >>> It does not have that information because narrow_to_region has erased >>> it by setting clip_changed to 1. >> >> The information is not erased, it is still present in >> w->current_matrix->zv and w->current_matrix->begv. =C2=A0You will see th= at >> reconsider_clip_changes uses those to decide whether to reset the >> clip_changed flag. > > > Oh, fine, I missed that. Then we do not need the new variables I introduc= ed. I have switched to using those variables instead. Seems to work just as well as my old patch. I have attached the patches for the current version of xdisp.c I am using now. Beside using those variable I have moved the check into reconsider_clip_changes where it belongs. --0016e68dba8f897ca40489515426 Content-Type: text/x-patch; charset=US-ASCII; name="xdisp-jumpscroll-1.diff" Content-Disposition: attachment; filename="xdisp-jumpscroll-1.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_galaq5i20 PT09IG1vZGlmaWVkIGZpbGUgJ3NyYy94ZGlzcC5jJw0KLS0tIHRydW5rL3NyYy94ZGlzcC5jCTIw MTAtMDYtMDEgMDI6MzQ6NDkgKzAwMDANCisrKyBwYXRjaGVkL3NyYy94ZGlzcC5jCTIwMTAtMDYt MTggMTc6MjE6MTUgKzAwMDANCkBAIC0xMTcxMSwxMiArMTE3MTEsMzMgQEANCiAgICAgIHN0cnVj dCB3aW5kb3cgKnc7DQogICAgICBzdHJ1Y3QgYnVmZmVyICpiOw0KIHsNCisgIC8qIGlmICgoYi0+ Y2xpcF9iZWd2ICE9IGItPmJlZ3YpIHx8IChiLT5jbGlwX3p2ICE9IGItPnp2KSkgKi8NCisgIC8q ICAgYi0+Y2xpcF9jaGFuZ2VkID0gMTsgKi8NCisNCisgIGlmICgody0+Y3VycmVudF9tYXRyaXgt PmJlZ3YgIT0gYi0+YmVndikgfHwgKHctPmN1cnJlbnRfbWF0cml4LT56diAhPSBiLT56dikpDQor ICAgIGItPmNsaXBfY2hhbmdlZCA9IDE7DQorDQorICBpZiAoYi0+Y2xpcF9jaGFuZ2VkDQorICAg ICAgJiYgISghTklMUCAody0+d2luZG93X2VuZF92YWxpZCkNCisJICAgJiYgdy0+Y3VycmVudF9t YXRyaXgtPmJ1ZmZlciA9PSBiDQorCSAgICYmIHctPmN1cnJlbnRfbWF0cml4LT56diA9PSBCVUZf WlYgKGIpDQorCSAgICYmIHctPmN1cnJlbnRfbWF0cml4LT5iZWd2ID09IEJVRl9CRUdWIChiKSkp DQorICAgIERlYlByaW50ICgoIisrK3JlY29uc2lkZXI6IGVuZF92YWxpZD0lZCwgYj0lZCwgWlY9 JWQsIEJFR1Y9JWQiLA0KKyAgICAgICAgICAgICAgICFOSUxQICh3LT53aW5kb3dfZW5kX3ZhbGlk KSwNCisgICAgICAgICAgICAgICB3LT5jdXJyZW50X21hdHJpeC0+YnVmZmVyID09IGIsDQorICAg ICAgICAgICAgICAgdy0+Y3VycmVudF9tYXRyaXgtPnp2ID09IEJVRl9aViAoYiksDQorICAgICAg ICAgICAgICAgdy0+Y3VycmVudF9tYXRyaXgtPmJlZ3YgPT0gQlVGX0JFR1YgKGIpKSk7DQorDQog ICBpZiAoYi0+Y2xpcF9jaGFuZ2VkDQogCSAgICYmICFOSUxQICh3LT53aW5kb3dfZW5kX3ZhbGlk KQ0KIAkgICAmJiB3LT5jdXJyZW50X21hdHJpeC0+YnVmZmVyID09IGINCiAJICAgJiYgdy0+Y3Vy cmVudF9tYXRyaXgtPnp2ID09IEJVRl9aViAoYikNCiAJICAgJiYgdy0+Y3VycmVudF9tYXRyaXgt PmJlZ3YgPT0gQlVGX0JFR1YgKGIpKQ0KKyAgICB7DQogICAgIGItPmNsaXBfY2hhbmdlZCA9IDA7 DQorICAgICAgYi0+Y2xpcF9iZWd2ID0gYi0+YmVndjsNCisgICAgICBiLT5jbGlwX3p2ID0gYi0+ enY7DQorICAgIH0NCiANCiAgIC8qIElmIGRpc3BsYXkgd2Fzbid0IHBhdXNlZCwgYW5kIFcgaXMg bm90IGEgdG9vbCBiYXIgd2luZG93LCBzZWUgaWYNCiAgICAgIHBvaW50IGhhcyBiZWVuIG1vdmVk IGludG8gb3Igb3V0IG9mIGEgY29tcG9zaXRpb24uICBJbiB0aGF0IGNhc2UsDQpAQCAtMTM0NDMs NyArMTM0NjQsMTAgQEANCiAJICBkeSA9IGxpbmVfYm90dG9tX3kgKCZpdCkgLSB5MDsNCiANCiAJ ICBpZiAoZHkgPiBzY3JvbGxfbWF4KQ0KKyAgICAgICAgICAgIHsNCisgICAgICAgICAgICAgIERl YlByaW50ICgoInRyeV9zY3JvbGxpbmcgU0NST0xMSU5HX0ZBSUxFRCBkeSA+IHNjcm9sbF9tYXgg QSIpKTsNCiAJICAgIHJldHVybiBTQ1JPTExJTkdfRkFJTEVEOw0KKyAgICAgICAgICAgIH0NCiAN CiAJICBzY3JvbGxfZG93bl9wID0gMTsNCiAJfQ0KQEAgLTEzNDc1LDcgKzEzNDk5LDEwIEBADQog CX0NCiANCiAgICAgICBpZiAoYW1vdW50X3RvX3Njcm9sbCA8PSAwKQ0KKyAgICAgICAgew0KKyAg ICAgICAgICBEZWJQcmludCAoKCJ0cnlfc2Nyb2xsaW5nIFNDUk9MTElOR19GQUlMRUQgYW1vdW50 X3RvX3Njcm9sbCA8PSAwIEEiKSk7DQogCXJldHVybiBTQ1JPTExJTkdfRkFJTEVEOw0KKyAgICAg ICAgfQ0KIA0KICAgICAgIHN0YXJ0X2Rpc3BsYXkgKCZpdCwgdywgc3RhcnRwKTsNCiAgICAgICBt b3ZlX2l0X3ZlcnRpY2FsbHkgKCZpdCwgYW1vdW50X3RvX3Njcm9sbCk7DQpAQCAtMTM1MTUsNyAr MTM1NDIsMTAgQEANCiAJCSAgICAgIE1PVkVfVE9fUE9TIHwgTU9WRV9UT19YIHwgTU9WRV9UT19Z KTsNCiAJICBkeSA9IGl0LmN1cnJlbnRfeSAtIHkwOw0KIAkgIGlmIChkeSA+IHNjcm9sbF9tYXgp DQorICAgICAgICAgICAgew0KKyAgICAgICAgICAgICAgRGViUHJpbnQgKCgidHJ5X3Njcm9sbGlu ZyBTQ1JPTExJTkdfRkFJTEVEIGR5ID4gc2Nyb2xsX21heCBCIikpOw0KIAkgICAgcmV0dXJuIFND Uk9MTElOR19GQUlMRUQ7DQorICAgICAgICAgICAgfQ0KIA0KIAkgIC8qIENvbXB1dGUgbmV3IHdp bmRvdyBzdGFydC4gICovDQogCSAgc3RhcnRfZGlzcGxheSAoJml0LCB3LCBzdGFydHApOw0KQEAg LTEzNTM5LDcgKzEzNTY5LDEwIEBADQogCSAgICB9DQogDQogCSAgaWYgKGFtb3VudF90b19zY3Jv bGwgPD0gMCkNCisgICAgICAgICAgICB7DQorICAgICAgICAgICAgICBEZWJQcmludCAoKCJ0cnlf c2Nyb2xsaW5nIFNDUk9MTElOR19GQUlMRUQgYW1vdW50X3RvX3Njcm9sbCA8PSAwIEIiKSk7DQog CSAgICByZXR1cm4gU0NST0xMSU5HX0ZBSUxFRDsNCisgICAgICAgICAgICB9DQogDQogCSAgbW92 ZV9pdF92ZXJ0aWNhbGx5X2JhY2t3YXJkICgmaXQsIGFtb3VudF90b19zY3JvbGwpOw0KIAkgIHN0 YXJ0cCA9IGl0LmN1cnJlbnQucG9zOw0KQEAgLTEzNTU2LDYgKzEzNTg5LDcgQEANCiAgIGVsc2Ug aWYgKHctPmN1cnNvci52cG9zIDwgMCkNCiAgICAgew0KICAgICAgIGNsZWFyX2dseXBoX21hdHJp eCAody0+ZGVzaXJlZF9tYXRyaXgpOw0KKyAgICAgIERlYlByaW50ICgoInRyeV9zY3JvbGxpbmcg U0NST0xMSU5HX0ZBSUxFRCBjbGVhcl9nbHlwaCIpKTsNCiAgICAgICByYyA9IFNDUk9MTElOR19G QUlMRUQ7DQogICAgIH0NCiAgIGVsc2UNCkBAIC0xNDIzNSw3ICsxNDI2OSwxMCBAQA0KIA0KICAg LyogSWYgd2luZG93LXN0YXJ0IGlzIHNjcmV3ZWQgdXAsIGNob29zZSBhIG5ldyBvbmUuICAqLw0K ICAgaWYgKFhNQVJLRVIgKHctPnN0YXJ0KS0+YnVmZmVyICE9IGN1cnJlbnRfYnVmZmVyKQ0KKyAg ICB7DQorICAgICAgRGViUHJpbnQgKCgicmVkaXNwbGF5X3dpbmRvdy5yZWNlbnRlciB3aW5kb3ct c3RhcnQgc2NyZXdlZCB1cCIpKTsNCiAgICAgZ290byByZWNlbnRlcjsNCisgICAgfQ0KIA0KICAg U0VUX1RFWFRfUE9TX0ZST01fTUFSS0VSIChzdGFydHAsIHctPnN0YXJ0KTsNCiANCkBAIC0xNDM4 OSw2ICsxNDQyNiw3IEBADQogI2lmIEdMWVBIX0RFQlVHDQogICAgICAgZGVidWdfbWV0aG9kX2Fk ZCAodywgInJlY2VudGVyIDEiKTsNCiAjZW5kaWYNCisgICAgICBEZWJQcmludCAoKCJyZWRpc3Bs YXlfd2luZG93LnJlY2VudGVyIG9yaWcgYmVnIG9mIGxpbmUsIGJ1dCBub3Qgbm93IikpOw0KICAg ICAgIGdvdG8gcmVjZW50ZXI7DQogICAgIH0NCiANCkBAIC0xNDUxNSw2ICsxNDU1MywxNCBAQA0K ICAgICAgICYmIENIQVJQT1MgKHN0YXJ0cCkgPj0gQkVHVg0KICAgICAgICYmIENIQVJQT1MgKHN0 YXJ0cCkgPD0gWlYpDQogICAgIHsNCisgICAgICBEZWJQcmludCAoKCJyZWRpc3BsYXlfd2luZG93 IGIgdHJ5X3NjciwgY2xpcF9jaGFuZ2VkPSVkLCA+PSBCRUdWOiAlZCwgPD0gWlY6ICVkLCBqdG9w PSVkLCBsbG1mPSVkIiwNCisgICAgICAgICAgICAgICAgIGN1cnJlbnRfYnVmZmVyLT5jbGlwX2No YW5nZWQsDQorICAgICAgICAgICAgICAgICBDSEFSUE9TIChzdGFydHApID49IEJFR1YsDQorICAg ICAgICAgICAgICAgICBDSEFSUE9TIChzdGFydHApIDw9IFpWLA0KKyAgICAgICAgICAgICAgICAg anVzdF90aGlzX29uZV9wLA0KKyAgICAgICAgICAgICAgICAgbGFzdF9saW5lX21pc2ZpdA0KKyAg ICAgICAgICAgICAgICAgKSk7DQorDQogICAgICAgLyogVGhlIGZ1bmN0aW9uIHJldHVybnMgLTEg aWYgbmV3IGZvbnRzIHdlcmUgbG9hZGVkLCAxIGlmDQogCSBzdWNjZXNzZnVsLCAwIGlmIG5vdCBz dWNjZXNzZnVsLiAgKi8NCiAgICAgICBpbnQgcmMgPSB0cnlfc2Nyb2xsaW5nICh3aW5kb3csIGp1 c3RfdGhpc19vbmVfcCwNCkBAIC0xNDUzMCw2ICsxNDU3Niw3IEBADQogCSAgZ290byBuZWVkX2xh cmdlcl9tYXRyaWNlczsNCiANCiAJY2FzZSBTQ1JPTExJTkdfRkFJTEVEOg0KKyAgICAgICAgICBE ZWJQcmludCAoKCJyZWRpc3BsYXlfd2luZG93LlNDUk9MTElOR19GQUlMRUQiKSk7DQogCSAgYnJl YWs7DQogDQogCWRlZmF1bHQ6DQpAQCAtMTQ1MzksNiArMTQ1ODYsNyBAQA0KIA0KICAgLyogRmlu YWxseSwganVzdCBjaG9vc2UgcGxhY2UgdG8gc3RhcnQgd2hpY2ggY2VudGVycyBwb2ludCAqLw0K IA0KKyAgRGViUHJpbnQgKCgicmVkaXNwbGF5X3dpbmRvdy5yZWNlbnRlciBjZW50ZXJpbmdfcG9z aXRpb249JWQiLCBjZW50ZXJpbmdfcG9zaXRpb24pKTsNCiAgcmVjZW50ZXI6DQogICBpZiAoY2Vu dGVyaW5nX3Bvc2l0aW9uIDwgMCkNCiAgICAgY2VudGVyaW5nX3Bvc2l0aW9uID0gd2luZG93X2Jv eF9oZWlnaHQgKHcpIC8gMjsNCkBAIC0xNDY0NCw2ICsxNDY5Miw3IEBADQogCXsNCiAJICB3LT52 c2Nyb2xsID0gMDsNCiAJICBjbGVhcl9nbHlwaF9tYXRyaXggKHctPmRlc2lyZWRfbWF0cml4KTsN CisgICAgICAgICAgRGViUHJpbnQgKCgicmVkaXNwbGF5X3dpbmRvdy5yZWNlbnRlciBkaXNhYmxl IHZzY3JvbGwgYW5kIHRyeSBhZ2FpbiIpKTsNCiAJICBnb3RvIHJlY2VudGVyOw0KIAl9DQogDQpA QCAtMTQ2NTUsNiArMTQ3MDQsNyBAQA0KIA0KICAgICAgIGNsZWFyX2dseXBoX21hdHJpeCAody0+ ZGVzaXJlZF9tYXRyaXgpOw0KICAgICAgIGNlbnRlcmluZ19wb3NpdGlvbiA9IDA7DQorICAgICAg RGViUHJpbnQgKCgicmVkaXNwbGF5X3dpbmRvdy5yZWNlbnRlciBmYWlsZWQgdG8gbWFrZSB3aG9s ZSBsaW5lIHZpc2libGUiKSk7DQogICAgICAgZ290byByZWNlbnRlcjsNCiAgICAgfQ0KIA0KQEAg LTE0ODUyLDggKzE0OTAyLDExIEBADQogICAgICAgaWYgKGRpc3BsYXlfbGluZSAoJml0KSkNCiAJ bGFzdF90ZXh0X3JvdyA9IGl0LmdseXBoX3JvdyAtIDE7DQogICAgICAgaWYgKGZvbnRzX2NoYW5n ZWRfcCAmJiAhKGZsYWdzICYgVFJZX1dJTkRPV19JR05PUkVfRk9OVFNfQ0hBTkdFKSkNCisgICAg ICAgIHsNCisgICAgICAgICAgRGViUHJpbnQgKCgidHJ5X3dpbmRvdzogZm9udHNfY2hhbmdlZF9w PSVkIiwgZm9udHNfY2hhbmdlZF9wKSk7DQogCXJldHVybiAwOw0KICAgICB9DQorICAgIH0NCiAN CiAgIC8qIERvbid0IGxldCB0aGUgY3Vyc29yIGVuZCBpbiB0aGUgc2Nyb2xsIG1hcmdpbnMuICAq Lw0KICAgaWYgKChmbGFncyAmIFRSWV9XSU5ET1dfQ0hFQ0tfTUFSR0lOUykNCkBAIC0xNDg4MSw2 ICsxNDkzNCw3IEBADQogCXsNCiAJICB3LT5jdXJzb3IudnBvcyA9IC0xOw0KIAkgIGNsZWFyX2ds eXBoX21hdHJpeCAody0+ZGVzaXJlZF9tYXRyaXgpOw0KKyAgICAgICAgICBEZWJQcmludCAoKCJ0 cnlfd2luZG93IHJldHVybmluZyAtMSIpKTsNCiAJICByZXR1cm4gLTE7DQogCX0NCiAgICAgfQ0K QEAgLTI2Mjc5LDcgKzI2MzMzLDggQEANCiByZWNlbnRlcnMgcG9pbnQgYXMgdXN1YWwuDQogDQog QSB2YWx1ZSBvZiB6ZXJvIG1lYW5zIGFsd2F5cyByZWNlbnRlciBwb2ludCBpZiBpdCBtb3ZlcyBv ZmYgc2NyZWVuLiAgKi8pOw0KLSAgc2Nyb2xsX2NvbnNlcnZhdGl2ZWx5ID0gMDsNCisgIC8vIHNj cm9sbF9jb25zZXJ2YXRpdmVseSA9IFZtb3N0X3Bvc2l0aXZlX2ZpeG51bTsNCisgIHNjcm9sbF9j b25zZXJ2YXRpdmVseSA9IG1ha2VfbnVtYmVyIChNT1NUX1BPU0lUSVZFX0ZJWE5VTSk7DQogDQog ICBERUZWQVJfSU5UICgic2Nyb2xsLW1hcmdpbiIsICZzY3JvbGxfbWFyZ2luLA0KICAgICBkb2M6 IC8qICpOdW1iZXIgb2YgbGluZXMgb2YgbWFyZ2luIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBh IHdpbmRvdy4NCg0K --0016e68dba8f897ca40489515426--