1. 15 Jun, 2009 1 commit
  2. 13 Jun, 2009 1 commit
  3. 03 Jun, 2009 1 commit
  4. 02 Jun, 2009 1 commit
  5. 26 May, 2009 4 commits
  6. 15 May, 2009 1 commit
  7. 04 May, 2009 1 commit
  8. 27 Apr, 2009 2 commits
  9. 24 Apr, 2009 1 commit
  10. 20 Apr, 2009 1 commit
  11. 03 Apr, 2009 1 commit
  12. 24 Mar, 2009 2 commits
  13. 23 Mar, 2009 1 commit
    • Dylan Smith's avatar
      richedit: Add bounds checks for EM_GETTEXTRANGE with tests. · caca4860
      Dylan Smith authored
      Wine was not doing bounds checks for EM_GETTEXTRANGE, which was causing
      a crash in Bug 17822.  The added tests would cause a crash without the
      added bounds checks in the richedit code.
      
      The bounds checks I put in HandleMessage, since ME_GetTextRange is also
      called for ME_GETSELTEXT which should not have bounds checks, since it
      uses the selection range.
      
      When the ME_GETTEXTRANGE message returns 0, no text is copied, not even
      the NULL terminating charter.  This differs from EM_GETSELTEXT which
      will copy the NULL terminating character when no text is selected.  This
      behaviour is consistent with native richedit controls.
      caca4860
  14. 11 Mar, 2009 1 commit
    • Dylan Smith's avatar
      richedit: Count graphics towards line width. · 1a2ccfe9
      Dylan Smith authored
      Images that are inserted into richedit controls store a space for the
      text, since that is the character returned when getting the plain text
      from the control.
      
      When calculating the width of a line, the space character is skipped,
      but images should not be skipped.  This can be seen by inserting an
      image into wordpad on a line by it's own, then centering the line.  The
      image will start from the center rather than being centered in the
      control.
      1a2ccfe9
  15. 10 Mar, 2009 1 commit
  16. 09 Mar, 2009 2 commits
    • Dylan Smith's avatar
      richedit: Respect manually added links when autourldetect is disabled. · fdb37491
      Dylan Smith authored
      EM_SETCHARFORMAT can be used to make text links.  Automatic URL
      detection being enable would cause these links to be removed if the text
      is not a URL, so this must be prevented.
      
      Previously checks were made for AutoURLDetect_bEnable before calling
      ME_UpdateSelectionLinkAttribute, or ME_UpdateLinkAttribute.  This is
      more error prone than checking for this within the function, so one call
      was missing this check.
      
      ME_SetCursor also didn't respect this behaviour, since it wouldn't set
      the cursor to the hand when hovering over a link without automatic URL
      detection disabled.
      fdb37491
    • Francois Gouget's avatar
      Remove spaces before '\n's. · 96848a06
      Francois Gouget authored
      96848a06
  17. 06 Mar, 2009 1 commit
  18. 26 Feb, 2009 2 commits
  19. 24 Feb, 2009 6 commits
  20. 17 Feb, 2009 1 commit
    • Dylan Smith's avatar
      richedit: Removed unused ME_Document structure. · 3903a110
      Dylan Smith authored
      The ME_TextBuffer structure is what is used to store the document (as
      a linked list), so the ME_Document structure isn't being used.  There
      was also a document pointer in the ME_Paragraph structure that was
      also unused, so I removed it because it is probably related to this
      used structure.
      3903a110
  21. 11 Feb, 2009 1 commit
  22. 10 Feb, 2009 1 commit
    • Dylan Smith's avatar
      richedit: Store paragraph in cursors. · ecb6c216
      Dylan Smith authored
      This prevents some needless searching for the start of the paragraph
      from a run stored in a cursor.  Usually a pointer to the paragraph is
      already available when the cursor is set anyway.
      ecb6c216
  23. 09 Feb, 2009 6 commits
    • Andrew Talbot's avatar
      riched20: Remove unused functions. · edca49f6
      Andrew Talbot authored
      edca49f6
    • Dylan Smith's avatar
      richedit: Removed ME_StrRelPos, ME_StrRelPos2, & ME_PosToVPos functions. · c8b44555
      Dylan Smith authored
      These functions were just being used for addition, so it was simpler to
      remove the functions and modify the places it was used.
      
      The ME_StrRelPos2 and ME_PosToVPos were just simple wrappers around
      ME_StrRelPos, and ME_PosToVPos wasn't being used.
      c8b44555
    • Dylan Smith's avatar
      richedit: Got rid of ME_GetCharFwd and ME_GetCharBack. · 1eb0f73a
      Dylan Smith authored
      These two functions were being used for simple operations, to get the
      first or last character when pre-computing flags for splitting runs.
      
      The call to ME_GetCharBack wasn't even giving the correct result, it
      would always return -1 since it is being called with nPos of 0.
      
      This patch simplifies the code by removing the functions and getting the
      characters directly from the string.
      1eb0f73a
    • Dylan Smith's avatar
      richedit: Removed ME_StrLen and ME_StrVLen field access functions. · 5f15de06
      Dylan Smith authored
      These functions were probably previously needed because of some wierd
      special handling of backspace characters, but currently there is no
      reason why the nLen field can't be accessed directly.
      
      Having to functions that just access the string length field just causes
      slightly more effort for someone to look at the code, because they need
      to enter the function to find out what it actually is doing.
      5f15de06
    • Dylan Smith's avatar
      richedit: Got rid of useless function ME_VPosToPos. · f148d820
      Dylan Smith authored
      The function was just returning the second parameter.  It had some
      commented out code that indicated that previously backslashes weren't
      included in the length.  Native wordpad doesn't handle backspaces in a
      special way, so this must have been an internal representation that
      complicated finding the position of characters.
      f148d820
    • Dylan Smith's avatar
      richedit: Removed some conditions that are always taken. · d306b6b5
      Dylan Smith authored
      ME_GetCursorCoordinates had two conditions that were always taken.  The
      first condition was if(pCursor->pRun->type == diRun) was following an
      assertion making the exact same check.  The next one, if(row), should
      always be taken, otherwise the richedit controls are in a corrupt state,
      therefore an assertion is more appropriate.
      d306b6b5