emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] emacs/src ChangeLog keyboard.c


From: Stefan Monnier
Subject: [Emacs-diffs] emacs/src ChangeLog keyboard.c
Date: Thu, 12 Feb 2009 18:20:58 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Stefan Monnier <monnier>        09/02/12 18:20:57

Modified files:
        src            : ChangeLog keyboard.c 

Log message:
        (adjust_point_for_property): Allow stopping betwen two invisible areas.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/src/ChangeLog?cvsroot=emacs&r1=1.7355&r2=1.7356
http://cvs.savannah.gnu.org/viewcvs/emacs/src/keyboard.c?cvsroot=emacs&r1=1.995&r2=1.996

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/emacs/emacs/src/ChangeLog,v
retrieving revision 1.7355
retrieving revision 1.7356
diff -u -b -r1.7355 -r1.7356
--- ChangeLog   12 Feb 2009 15:00:26 -0000      1.7355
+++ ChangeLog   12 Feb 2009 18:20:52 -0000      1.7356
@@ -1,3 +1,8 @@
+2009-02-12  Stefan Monnier  <address@hidden>
+
+       * keyboard.c (adjust_point_for_property): Allow stopping betwen two
+       invisible areas.
+
 2009-02-12  Jason Rumney  <address@hidden>
 
        * w32font.c (check_face_name): Check for fake helv.  (Bug#2275)
@@ -27,14 +32,14 @@
 
        * search.c (fast_looking_at): New function.
 
-       * term.c (encode_terminal_code): Adjusted for the change of
+       * term.c (encode_terminal_code): Adjust for the change of
        <struct glyph>.u.cmp.to.
        (append_composite_glyph): Likewise.
 
-       * xdisp.c (fill_gstring_glyph_string): Adjusted for the change of
+       * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
        <struct glyph>.u.cmp.to.  Check if the glyph belongs to the same
        composition.
-       (append_composite_glyph): Adjusted for the change of
+       (append_composite_glyph): Adjust for the change of
        <strcut glyph>.u.cmp.to.
 
 2009-02-11  Juanma Barranquero  <address@hidden>
@@ -84,8 +89,8 @@
 
 2009-02-07  Eli Zaretskii  <address@hidden>
 
-       * coding.c (syms_of_coding) <translation-table-for-input>: Modify
-       doc string to discourage use for character code unification.
+       * coding.c (syms_of_coding) <translation-table-for-input>:
+       Modify doc string to discourage use for character code unification.
 
 2009-02-07  YAMAMOTO Mitsuharu  <address@hidden>
 
@@ -119,8 +124,8 @@
 
        * nsterm.m (ns_read_socket): Same and don't set handling_signal.
 
-       * keyboard.c (poll_for_input_1, handle_async_input): Set
-       handling_signal under HAVE_NS.
+       * keyboard.c (poll_for_input_1, handle_async_input):
+       Set handling_signal under HAVE_NS.
 
 2009-02-04  Glenn Morris  <address@hidden>
 
@@ -214,11 +219,9 @@
        * lisp.h (QUIT): Check pending_signals instead of
        interrupt_input_pending.  Use process_pending_signals.
 
-       * atimer.c (run_timers, alarm_signal_handler): Update
-       pending_signals.
+       * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
 
-       * process.c (wait_reading_process_output): Use
-       process_pending_signals.
+       * process.c (wait_reading_process_output): Use process_pending_signals.
 
        * sysdep.c (emacs_write): Use process_pending_signals.
 
@@ -273,7 +276,7 @@
        * xftfont.c (struct xftfont_info): New member `index'.
 
        * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
-       (Ffontset_font): Adjusted for the change of fontset entry.
+       (Ffontset_font): Adjust for the change of fontset entry.
 
 2009-01-26  Kenichi Handa  <address@hidden>
 
@@ -389,8 +392,8 @@
 
        * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
        Tiger.
-       * nsfns.m (ns_do_applescript): Conditionalize
-       typeUTF16ExternalRepresentation on Tiger.
+       * nsfns.m (ns_do_applescript):
+       Conditionalize typeUTF16ExternalRepresentation on Tiger.
 
 2009-01-21  Wolfgang Lux  <address@hidden>  (tiny change)
 
@@ -433,8 +436,7 @@
 
 2009-01-19  Kenichi Handa  <address@hidden>
 
-       * ftfont.c (ftfont_lookup_cache): Check the return value of
-       FcFontList.
+       * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
        (ftfont_list): Likewise.
 
 2009-01-18  Juanma Barranquero  <address@hidden>
@@ -461,8 +463,7 @@
 
 2009-01-15  Kenichi Handa  <address@hidden>
 
-       * coding.c (detect_coding_system): Fix handling of
-       null_byte_found.
+       * coding.c (detect_coding_system): Fix handling of null_byte_found.
 
 2009-01-14  Jason Rumney  <address@hidden>
 
@@ -516,8 +517,7 @@
        * coding.c (inhibit_null_byte_detection): New variable.
        (detect_coding, detect_coding_system): Don't pay attention to null
        bytes if inhibit_null_byte_detection is non-zero.
-       (syms_of_coding) <inhibit-null-byte-detection>: Declare and
-       document.
+       (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
        <inhibit-iso-escape-detection>: Doc fix.
 
 2009-01-09  Jason Rumney  <address@hidden>
@@ -528,11 +528,10 @@
 
 2009-01-09  Chong Yidong  <address@hidden>
 
-       * xfaces.c (Fx_font_family_list): Function deleted.  Compatibility
-       version moved to faces.el.
+       * xfaces.c (Fx_font_family_list): Delete function.
+       Move compatibility version to faces.el.
 
-       * font.c (Ffont_family_list): Return a list of strings, not
-       symbols.
+       * font.c (Ffont_family_list): Return a list of strings, not symbols.
 
 2009-01-09  Martin Rudalics  <address@hidden>
 
@@ -550,8 +549,7 @@
 
 2009-01-08  Chong Yidong  <address@hidden>
 
-       * font.c (font_open_for_lface): Handle unspecified height
-       attribute.
+       * font.c (font_open_for_lface): Handle unspecified height attribute.
 
 2009-01-08  Jason Rumney  <address@hidden>
 
@@ -671,8 +669,7 @@
 
        * xfns.c (x_create_tip_frame): Set border width of the X window.
 
-       * xfaces.c (Finternal_set_lisp_face_attribute): Improve error
-       message.
+       * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
 
 2009-01-01  Jason Rumney  <address@hidden>
 

Index: keyboard.c
===================================================================
RCS file: /sources/emacs/emacs/src/keyboard.c,v
retrieving revision 1.995
retrieving revision 1.996
diff -u -b -r1.995 -r1.996
--- keyboard.c  4 Feb 2009 11:31:29 -0000       1.995
+++ keyboard.c  12 Feb 2009 18:20:56 -0000      1.996
@@ -2046,6 +2046,20 @@
 
          /* Find boundaries `beg' and `end' of the invisible area, if any.  */
          while (end < ZV
+                /* Stop if we find a spot between two runs of
+                   `invisible' where inserted text would be visible.
+                   This is important when we have two invisible
+                   boundaries that enclose an area: if the area is
+                   empty, we need this test in order to make it
+                   possible to place point in the middle rather than
+                   skip both boundaries.
+                   Note that this will stop anywhere in a non-sticky
+                   text-property, but I don't think there's much we
+                   can do about that.  */
+                && (val = get_pos_property (make_number (end),
+                                            Qinvisible, Qnil),
+                    TEXT_PROP_MEANS_INVISIBLE (val))
+                /* FIXME: write and then use get_pos_property_and_overlay.  */
                 && !NILP (val = get_char_property_and_overlay
                           (make_number (end), Qinvisible, Qnil, &overlay))
                 && (inv = TEXT_PROP_MEANS_INVISIBLE (val)))
@@ -2059,6 +2073,9 @@
              end = NATNUMP (tmp) ? XFASTINT (tmp) : ZV;
            }
          while (beg > BEGV
+                && (val = get_pos_property (make_number (beg),
+                                            Qinvisible, Qnil),
+                    TEXT_PROP_MEANS_INVISIBLE (val))
                 && !NILP (val = get_char_property_and_overlay
                           (make_number (beg - 1), Qinvisible, Qnil, &overlay))
                 && (inv = TEXT_PROP_MEANS_INVISIBLE (val)))




reply via email to

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