From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#12600: 24.2.50; linum-mode: line numbers in fringe do not refresh when resizing frame Date: Sun, 14 Oct 2012 14:06:57 +0200 Message-ID: <838vb95kbi.fsf@gnu.org> References: <50720A4F.2010200@gmail.com> <83391p5sjc.fsf@gnu.org> <50729A38.8000800@gmx.at> <83haq53qy8.fsf@gnu.org> <5073F029.4040201@gmx.at> <83y5jfziey.fsf@gnu.org> <50754C80.7010809@gmx.at> <83ehl6z5y0.fsf@gnu.org> <50767172.4060807@gmx.at> <83a9vtkkvl.fsf@gnu.org> <5077C771.1000208@gmx.at> <837gqw843w.fsf@gnu.org> <5077E47D.4080300@gmx.at> <50783A85.1080808@gmx.at> <83626e7nse.fsf@gnu.org> <507939B2.8070709@gmx.at> <83wqyu5ynn.fsf@gnu.org> <5079A8B0.7050000@gmx.at> <83obk65joa.fsf@gnu.org> <507A921B.1060807@gmx.at> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1350216490 7462 80.91.229.3 (14 Oct 2012 12:08:10 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 14 Oct 2012 12:08:10 +0000 (UTC) Cc: 12600@debbugs.gnu.org To: martin rudalics Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Oct 14 14:08:16 2012 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1TNMzL-0007Yh-3Z for geb-bug-gnu-emacs@m.gmane.org; Sun, 14 Oct 2012 14:08:11 +0200 Original-Received: from localhost ([::1]:59044 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TNMzE-0006xZ-4D for geb-bug-gnu-emacs@m.gmane.org; Sun, 14 Oct 2012 08:08:04 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:52705) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TNMzC-0006x0-GH for bug-gnu-emacs@gnu.org; Sun, 14 Oct 2012 08:08:03 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TNMzB-0003z6-CV for bug-gnu-emacs@gnu.org; Sun, 14 Oct 2012 08:08:02 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:33099) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TNMzB-0003z2-8c for bug-gnu-emacs@gnu.org; Sun, 14 Oct 2012 08:08:01 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.72) (envelope-from ) id 1TNN09-0003oR-Rn for bug-gnu-emacs@gnu.org; Sun, 14 Oct 2012 08:09:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 14 Oct 2012 12:09:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 12600 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 12600-submit@debbugs.gnu.org id=B12600.135021651014612 (code B ref 12600); Sun, 14 Oct 2012 12:09:01 +0000 Original-Received: (at 12600) by debbugs.gnu.org; 14 Oct 2012 12:08:30 +0000 Original-Received: from localhost ([127.0.0.1]:43350 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TNMze-0003nc-6S for submit@debbugs.gnu.org; Sun, 14 Oct 2012 08:08:30 -0400 Original-Received: from mtaout20.012.net.il ([80.179.55.166]:41833) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TNMzb-0003nN-4E for 12600@debbugs.gnu.org; Sun, 14 Oct 2012 08:08:28 -0400 Original-Received: from conversion-daemon.a-mtaout20.012.net.il by a-mtaout20.012.net.il (HyperSendmail v2007.08) id <0MBV00500TATC500@a-mtaout20.012.net.il> for 12600@debbugs.gnu.org; Sun, 14 Oct 2012 14:06:51 +0200 (IST) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout20.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MBV00507TNEFX00@a-mtaout20.012.net.il>; Sun, 14 Oct 2012 14:06:51 +0200 (IST) In-reply-to: <507A921B.1060807@gmx.at> X-012-Sender: halo1@inter.net.il X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:65592 Archived-At: > Date: Sun, 14 Oct 2012 12:21:15 +0200 > From: martin rudalics > CC: monnier@iro.umontreal.ca, 12600@debbugs.gnu.org > > >> Replace the three struct members last_modified, last_overlay_modified > >> and window_end_valid by one struct member called last_modified_flag - > >> actually calling it window_modified would be better. Set > >> window_modified to t wherever we currently reset one of the three > >> members. Redisplay, when fully done, would reset window_modified to nil > >> for every window it completes instead of setting the other members. > > > > And when a buffer is modified or its overlays are modified, what > > should we do to indicate to redisplay that the corresponding windows > > might need a more thorough redisplay? > > When a window shows a buffer that has been modified since the last > redisplay, that buffer must be redrawn. More precisely, redisplay would > walk all live windows and for each window > > (1) Redraw if something in the window's buffer or a setting affecting > the display of all buffers (like the cursor type) was modified. How do you know whether the window's buffer was modified, under your suggestion? Won't we need some record of "the last buffer state when this window was displayed"? E.g., how do we know that point moved since last full redisplay of the window? > (2) Redraw if the window itself has been modified. You mean, its dimensions or start-point? Or something else? > (3) Don't redraw the window otherwise. This would cover the case where > `point' was moved in a buffer not shown in this window or another > window was scrolled. > > This would replace checking of windows_or_buffers_changed with a > finer-grained has "this window or its buffer changed". But after a > cursory look at redisplay_window I doubt that such a change would be > feasible. And I have no idea to which extent (3) is already covered by > try_window_id. The normal "do-nothing" route is to call try_cursor_movement, then "goto done". try_window_id is called only if there's some change that requires redisplaying some of the text, not just moving the cursor.