emacs-devel
[Top][All Lists]
Advanced

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

Re: Procedure to get shift_glyphs_for_insert to be called?


From: Jan D.
Subject: Re: Procedure to get shift_glyphs_for_insert to be called?
Date: Sat, 16 May 2015 16:50:40 +0200

Hi.

> 16 maj 2015 kl. 11:17 skrev Eli Zaretskii <address@hidden>:
> 
>> From: "Jan D." <address@hidden>
>> Date: Sat, 16 May 2015 10:25:49 +0200
>> 
>> There is a RIF method called shift_glyphs_for_insert.
>> How do I get it to be called?  I tried many things, but it just seems that 
>> the entire line gets redrawn every time.
>> 
>> I’m trying to get it to do the right thing in the cairo branch, which it 
>> currently does not.
>> But as it it is seldom (never?) called, I have not noticed any redraw errors 
>> yet.
> 
> This method was intended to be the equivalent for insert_glyphs on a
> TTY.  But the (only) function in dispnew.c which uses insert_glyphs is
> never called on GUI frames, so the only caller of the
> shift_glyphs_for_insert method, which is x_insert_glyphs, is never
> called, either.
> 
> Historically, this method was called by direct_output_for_insert, a
> redisplay optimization that handled the case where a single character
> was inserted by user typing a self-insert command.  But we deleted
> that optimization when we moved to bidirectional display (because in
> bidirectional text, inserting a single character can have profound
> non-local effects).  So now we never call this method on GUI frames.
> 
> IOW, the answer to your question is "you can't, and you shouldn't
> bother".  At least not with the current display engine.

Ok, thanks.  I will insert some comments to this effect.

        Jan D.





reply via email to

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