emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Blink cursor changes, possible W32 breakage.


From: Jan Djärv
Subject: Re: Blink cursor changes, possible W32 breakage.
Date: Tue, 16 Jul 2013 23:12:49 +0200

Hello.

16 jul 2013 kl. 19:39 skrev Eli Zaretskii <address@hidden>:

>> From: Jan Djärv <address@hidden>
>> Date: Tue, 16 Jul 2013 13:48:49 +0200
>> 
>> Just a heads up, I changed blink cursor in two ways, one is that it stops 
>> blinking after blinking
>> blink-cursor-blinks number of times (10 by default), as inspired by 
>> gnome-terminal.  Also, timers are stopped when no blinking occurs.
> 
> Why do we want that?  Is there a way to get previous behavior?

To stop blink timers when there are no blinking cursors.  Put the variable to 0 
to get previous behaviour, i.e. never stop blinking.

> 
>> This works on NS and X but not on W32.  I tried to be careful to not break 
>> W32, but it might happen anyway.  If anybody wants to implement this for 
>> W32, you basically need to implement generating a FOCUS_OUT_EVENT, like 
>> xterm,c and nsterm.m does and adjust those places in keyboard.c and frame.el 
>> that checks for X and NS only.
> 
> Sorry, I don't understand: w32 already implements the equivalent of
> FOCUS_OUT_EVENT, but why is that relevant?  When no frame has focus,
> Emacs on Windows doesn't blink the cursors already.

Yes, but timers are still running, so Emacs are never swapped out, and drains 
battery on laptops (yes it makes a difference).  The FOCUS_OUT_EVENT turns 
timers off, and FOCUS_IN_EVENT turns them back on, if needed.  This was 
discussed a long time ago, starting here:
http://lists.gnu.org/archive/html/emacs-devel/2011-12/msg00640.html.


> What am I missing?
> 
> And what is the other thing you changed?

1) Blinking stops after 10 blinks.
2) Timers are stopped when no blinking is done.

        Jan D.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]