1. 27 Sep, 2020 1 commit
  2. 25 Sep, 2020 1 commit
  3. 24 Sep, 2020 1 commit
  4. 22 Sep, 2020 1 commit
  5. 21 Sep, 2020 1 commit
  6. 18 Sep, 2020 1 commit
  7. 15 Sep, 2020 1 commit
    • Eli Zaretskii's avatar
      Avoid aborts in display_mode_element · f4b4166e
      Eli Zaretskii authored
      * src/xdisp.c (display_mode_element): Use parse_str_as_multibyte,
      not multibyte_chars_in_text, to determine whether mode-line spec
      shall be displayed as a multibyte or unibyte string.  We cannot
      use multibyte_chars_in_text here because it aborts when it finds
      raw bytes in the spec string.  (Bug#43409)
      f4b4166e
  8. 13 Sep, 2020 1 commit
  9. 12 Sep, 2020 1 commit
  10. 03 Sep, 2020 1 commit
  11. 25 Aug, 2020 1 commit
  12. 23 Aug, 2020 6 commits
    • Eli Zaretskii's avatar
      Fix more compilation warnings in xdisp.c · 2c389455
      Eli Zaretskii authored
      * src/xdisp.c (display_mode_element, decode_mode_spec_coding):
      Avoid compilation warnings.
      2c389455
    • Eli Zaretskii's avatar
      Fix a compilation warning in xdisp.c · f3e6dd1c
      Eli Zaretskii authored
      * src/xdisp.c (gui_consider_frame_title): Fix compilation warning.
      Reported by Lars Ingebrigtsen <larsi@gnus.org>.
      f3e6dd1c
    • Eli Zaretskii's avatar
      Improve handling of coding-system mnemonic indicators · 3a99f966
      Eli Zaretskii authored
      This fixes assertion violations when the mnemonic is
      given as a string, and allows non-ASCII characters be
      used as mode-line mnemonic of a coding-system.
      * src/xdisp.c (decode_mode_spec_coding): Handle multibyte
      characters as coding-system's mnemonic.
      (display_mode_element): If decode_mode_spec returns a multibyte
      string, display it as multibyte.
      * src/coding.c (Fdefine_coding_system_internal)
      (Fcoding_system_put): If :mnemonic is a string, use its first
      character.  This avoids assertion violations if someone uses a
      string as the mnemonic of a coding-system.
      3a99f966
    • Mattias Engdegård's avatar
      Always make a multibyte string for the frame title (bug#42904) · a5394884
      Mattias Engdegård authored
      * src/xdisp.c (gui_consider_frame_title): Multibyte-encode any raw
      bytes in the title, and then pass a multibyte string to the back-end
      for use as a frame title.  This cuts down a little on the rubbish
      shown when raw bytes sneak in by mistake (as part of the buffer name,
      for instance).
      a5394884
    • Alan Third's avatar
      Set basic SVG attributes (bug#40845) · 8f42b94f
      Alan Third authored
      * test/manual/image-transforms-tests.el: Replace hard-coded colors
      with defaults.
      * src/dispextern.h (struct image):
      * src/image.c (search_image_cache):
      (xbm_load_image):
      (xbm_load):
      (pbm_load): Rename from frame to face where relevant.
      (svg_load_image): Parse the image to find out the size, then wrap it
      in another SVG to set a new size and colors, etc.
      (lookup_image): Use the face colors instead of the frame colors.
      (search_image_cache): Add ability to ignore the face colors.
      (uncache_image): Uncache all copies of the image that share the spec,
      even if the face colors don't match.
      * etc/NEWS: Describe the changes.
      8f42b94f
    • Yuan Fu's avatar
      Improve word wrapping for CJK characters · 0d1ca2ac
      Yuan Fu authored
      Note about the change around line 9257 and 23372:
      
      Before, the test for whitespace checks for can_wrap_before and
      can_wrap_after simutaniously.  Now we separate these two checks, and
      the logic needs to change a little bit.  However, when we don't enable
      the new wrapping feature, 'can_wrap_after' is equivalent to
      'IT_DISPLAYING_WHITESPACE' and 'can_wrap_before' is equivalent to
      '!IT_DISPLAYING_WHITESPACE'.  And the new logic is equivalent with the
      old one in that case.
      
      Old logic:
      
          if (whitespace) /* Which means can wrap after && can't wrap
                             before.  */
            may_wrap = true;
      
          else if (may_wrap) /* aka (!whitespace && may_wrap)
            (set wrap point)  * aka (can't wrap after && can wrap before
            may_wrap = false  *      && may_wrap)
                              */
      
      New logic:
      
          if (can_wrap_after)
            next_may_wrap = true
          else
            next_may_wrap = false;
      
          if (may_wrap && can_wrap_before)
            (set wrap point)
      
          /* Update may_wrap.  */
          may_wrap = next_may_wrap;
      
      * src/xdisp.c (it_char_has_category, char_can_wrap_before)
      (char_can_wrap_after): New functions.
      (move_it_in_display_line_to, display_line): Replace calls to
      'IT_DISPLAYING_WHITESPACE' with either 'char_can_wrap_before' or
      'char_can_wrap_after'.
      (word-wrap-by-category): New variable.
      
      * lisp/cus-start.el (minibuffer-prompt-properties--setter): Add
      'word-wrap-by-category' as a customizable variable.
      
      * doc/emacs/display.texi (Visual Line Mode): Add a paragraph about the
      new 'word-wrap-by-category' feature.
      * etc/NEWS: Announce the change.
      0d1ca2ac
  13. 15 Aug, 2020 1 commit
  14. 13 Aug, 2020 2 commits
    • Paul Eggert's avatar
      ; spelling fixes · cf0ee6f4
      Paul Eggert authored
      cf0ee6f4
    • Eli Zaretskii's avatar
      Fix face extension past EOL in overlay strings · f946e48b
      Eli Zaretskii authored
      * src/xdisp.c (face_at_pos): Pass ATTR_FILTER to
      face_for_overlay_string.
      * src/xfaces.c (face_for_overlay_string): Accept an additional
      argument ATTR_INDEX and pass it to merge_face_ref for merging the
      face at POS.  This ensures a face from buffer text will not be
      merged unless it specifies the :extend attribute.  (Bug#42552)
      * src/dispextern.h (face_for_overlay_string): Adjust prototype.
      
      (cherry picked from commit 35564bea)
      f946e48b
  15. 04 Aug, 2020 1 commit
    • Paul Eggert's avatar
      Use void * for pointers in with_echo_area_buffer · 19e76f61
      Paul Eggert authored
      * src/xdisp.c (with_echo_area_buffer): Pass void * instead of
      ptrdiff_t, since the values are typically pointers and this ports
      better to (mostly-theoretical) hosts where ptrdiff_t is narrower
      than intptr_t.  All uses changed.
      19e76f61
  16. 03 Aug, 2020 1 commit
  17. 02 Aug, 2020 1 commit
  18. 30 Jul, 2020 1 commit
    • Eli Zaretskii's avatar
      Fix face extension past EOL in overlay strings · 35564bea
      Eli Zaretskii authored
      * src/xdisp.c (face_at_pos): Pass ATTR_FILTER to
      face_for_overlay_string.
      * src/xfaces.c (face_for_overlay_string): Accept an additional
      argument ATTR_INDEX and pass it to merge_face_ref for merging the
      face at POS.  This ensures a face from buffer text will not be
      merged unless it specifies the :extend attribute.  (Bug#42552)
      * src/dispextern.h (face_for_overlay_string): Adjust prototype.
      35564bea
  19. 08 Jul, 2020 1 commit
  20. 07 Jul, 2020 1 commit
  21. 26 Jun, 2020 3 commits
  22. 06 Jun, 2020 1 commit
  23. 05 Jun, 2020 1 commit
  24. 03 Jun, 2020 1 commit
  25. 02 Jun, 2020 1 commit
  26. 31 May, 2020 3 commits
  27. 29 May, 2020 2 commits
  28. 25 May, 2020 1 commit
    • Eli Zaretskii's avatar
      Fix access to single-byte characters in buffer text · df91c94c
      Eli Zaretskii authored
      * src/xdisp.c (get_visually_first_element)
      (Fbidi_find_overridden_directionality):
      * src/cmds.c (Fend_of_line): Use FETCH_BYTE instead of FETCH_CHAR,
      and byte position instead of character position, to access
      individual bytes of buffer text.  This avoids producing invalid
      characters and accessing wrong buffer positions.  (Bug#41520)
      df91c94c
  29. 13 May, 2020 1 commit