Commit Graph

209 Commits

Author SHA1 Message Date
Dylan Smith 46d79b0363 richedit: Fixed EM_POSFROMCHAR for pos of text length.
For some reason EM_POSFROMCHAR was returning 0 when the position was
equal to the end of the text, or beyond the end of the text. Instead
it should use the position at the end of the text for both these
cases.  The x value was also seen to be offset by 1 according to the
tests.
2008-10-22 13:54:54 +02:00
Dylan Smith 31951a099d richedit: Added tests for EM_POSFROMCHAR for pos around end of text. 2008-10-22 13:54:54 +02:00
Dylan Smith 5bcb15dd7f richedit: Handle ctrl-key shortcuts on WM_KEYDOWN. 2008-10-22 13:54:53 +02:00
Dylan Smith aa3b75f6b7 richedit: Added tests for ctrl-key shortcut handling in WM_KEYDOWN.
Previously the shortcuts for cut, copy, paste, undo, redo, and select
all were being handled during the WM_CHAR message.  These tests show
that these shortcuts should be handled with the WM_KEYDOWN message
instead.
2008-10-22 13:54:53 +02:00
Francois Gouget 5eb8ab3deb riched20/tests: Add a trailing '\n' to an ok() call. 2008-10-20 11:37:27 +02:00
Dylan Smith c70f6a3933 richedit: Use the DefWindowProc to implement WM_SETREDRAW. 2008-10-20 11:37:27 +02:00
Dylan Smith ae3394271d richedit: Prevent EN_UPDATE notifications when window isn't visible. 2008-10-20 11:37:27 +02:00
Dylan Smith 30ebfa6d74 richedit: Test to see if WM_SETREDRAW removes the windows visibility. 2008-10-20 11:37:27 +02:00
Dylan Smith b5f59b9962 richedit: Test for EN_UPDATE notification when window isn't visible. 2008-10-20 11:37:26 +02:00
Dylan Smith f24678b285 richedit: Scroll cursor into view even with redraw turned off. 2008-10-18 19:32:43 +02:00
Dylan Smith 582bdadeff richedit: Test changes in scrollbar's visibility with redraw disabled.
Test to verify that the scrollbar does need to be shown or hidden while
redraw is disabled.
2008-10-18 19:32:33 +02:00
Dylan Smith bb4e38665a richedit: Test to see if wrapping happens with redraw disabled. 2008-10-18 19:32:27 +02:00
Dylan Smith a959f7d74b richedit: Tests for notifications while redraw is disabled.
There were some notifications that weren't sent in ME_UpdateRepaint
while redraw was disabled, so this verifies that they are not sent
with redraw disabled.
2008-10-18 19:32:18 +02:00
Dylan Smith 2271226bfd richedit: Added test for auto scroll behaviour with redraw disabled. 2008-10-18 19:26:54 +02:00
Michael Stefaniuc b9f3e3626d riched20: Remove superfluous backslashes at end of lines. 2008-10-16 11:29:04 +02:00
Dylan Smith e6b16cce77 richedit: Added test for word wrapping behaviour. 2008-10-13 11:42:22 +02:00
Dylan Smith 440db38eba richedit: Moved optional message loop in tests to its own function. 2008-10-13 11:42:16 +02:00
Dylan Smith b8fe020077 richedit: Added DestroyWindow call to clean up the end of a test. 2008-10-13 11:42:01 +02:00
Dylan Smith bdf181b4d3 richedit: Use RTF reader for text starting with {\urtf. 2008-10-06 13:49:12 +02:00
Dylan Smith af47ac09d5 richedit: Avoided testing for undocumented behaviour causing test to fail.
The test for EM_GETLINE was testing to make sure the null terminating
character was written at the end of the text as long as the buffer was
long enough, and also tested to make sure that no other bytes were
written after this null terminating character.  This is consistent with
Windows 2000 and up, but not for previous versions of Windows.
2008-10-06 13:06:13 +02:00
Dylan Smith 0589b61848 richedit: Swapped the expected and destination buffers in a test. 2008-10-06 13:06:04 +02:00
Dylan Smith 5157798836 richedit: Print hex string for strcmp test failing on Windows 95, 98 & NT4. 2008-10-02 10:41:02 -05:00
Dylan Smith 0699332b37 richedit: Fixed test failing on windows version with larger font sizes. 2008-09-30 10:18:02 -05:00
Dylan Smith c13fd6a44b richedit: Fixed test failure that happend on older builds of riched20.dll. 2008-09-30 10:16:27 -05:00
James Hawkins ce8e69d4b1 riched20: Fix two typos that cause a failing test. 2008-09-09 11:46:14 +02:00
Reece Dunn 5740ad6432 richedit20: Fixed building the tests on msvc. 2008-09-08 14:08:21 +02:00
James Hawkins 898dd57f5d riched20: Fix several failing test across several platforms. 2008-09-08 12:47:22 +02:00
James Hawkins 6b1c6eebab riched20: Trace the result of a failing test. 2008-09-03 13:14:51 +02:00
Dylan Smith a382e35600 richedit: EM_[SG]ETPARAFORMAT returned the wrong value.
The values returned by EM_SETPARAFORMAT and EM_GETPARAFORMAT previously
indicated an error, and the included tests shows that Windows behaves as
documented.
2008-08-18 17:15:57 +02:00
Dustin Brody 3a805d289e riched20: EM_SETTEXTTEX obeys ST_SELECTION with RTF inputs. 2008-07-29 12:50:35 +02:00
Alex Villacís Lasso acfb6ea210 richedit: Do not read actual scrollbar state for scrollbar update, use internal state instead. 2008-07-23 13:05:27 +02:00
Alex Villacís Lasso 9d39754e93 richedit: Tests for WM_SIZE/scrollbar recursion bug, with todo_wine.
This is a minimal model of what happens in Corman Lisp 3.0 -
subclassed window class that unconditionally calls ShowScrollBar() to
force scrollbar visibility.
2008-07-23 13:04:56 +02:00
Alex Villacís Lasso 47871f69a1 richedit: More tests for visibility behavior of richedit scrollbars, with todo_wine.
Alternate method of forcing (in)visibility of scrollbars, with SetWindowLongA().
2008-07-23 13:04:41 +02:00
Alex Villacís Lasso 86e9e0720c richedit: Tests for visibility behavior of richedit scrollbars, with todo_wine.
Some applications have never heard of ES_DISABLENOSCROLL and attempt
to force scrollbars to be always shown (with ShowScrollBar() or
similar) when otherwise richedit would hide them. If richedit attempts
to wrestle control back, a recursive loop of requests can result if
app overrides WM_SIZE behavior. Apparently native never reads the
scrollbar state, and operates from some sort of internal state, so
that scrollbars can be modified externally without native trying to
wrestle back control. This is confirmed by attached tests. An
exception: EM_SCROLL will restore visibility to a scrollbar that was
forcibly hidden.
2008-07-23 13:04:30 +02:00
Alex Villacís Lasso 43cf3b80af richedit: Shorten EM_AUTOURLDETECT tests.
EM_AUTOURLDETECT tests are taking too much time, so this patch tests
just one URL and one non-URL for all messages but WM_SETTEXT. Also,
remove one trace that spams the output needlessly.
2008-07-22 13:01:57 +02:00
Dylan Smith e3efa88c45 richedit: Cannot undo setting of default character format.
This also reverts commit 2b52dd845097f16076c0185b02a003f63898dcab:
wordpad: Empty the richedit undo buffer on creation.

The reverted commit I created to fix an issue that only applied to Wine,
but it just masked the issue which was in richedit controls.  The
default character format was set in two places while wordpad was
starting up, and caused wordpad to have two undo items at startup.
2008-07-14 12:22:44 +02:00
Aurimas Fischer 88c25518d5 richedit: Spelling fixes. 2008-07-14 12:21:55 +02:00
Francois Gouget dbaec0a101 Assorted spelling fixes. 2008-07-10 13:40:15 +02:00
Alexandre Julliard 79c64acc7b tests: Don't depend on the static uuid libraries in the tests.
This avoids trouble with the broken MingW libraries when
cross-compiling the tests.
2008-07-08 17:51:45 +02:00
Dylan Smith 31a2d64fa4 richedit: Fixed simulated keyboard events on tests. 2008-07-03 13:07:45 +02:00
Dylan Smith 2a139746cc richedit: Added missing DestroyWindow in a test. 2008-07-01 13:47:03 +02:00
Dylan Smith 66f948c010 richedit: Clicking below end of text now selects closest character.
Before the end of the text was selected when clicking below the end of
the text, rather than using the x position to find the appropriate
character on the last row that is closest to the pixel position.
2008-06-30 12:10:02 +02:00
Dylan Smith d1f1346f54 richedit: Implemented undo coalescing to group typing events.
Consecutively typed characters are grouped together to be undone
together.  The grouping of typed characters can be stopped by certain
events that are mentioned in MSDN's remarks on the EM_STOPGROUPTYPING
message, which is also implemented by this patch.
2008-06-26 21:18:50 +02:00
Dylan Smith 903423286c richedit: Added tests reveal a problem with EM_SETCHARFORMAT's affect on the undo stack. 2008-06-26 21:17:44 +02:00
Dylan Smith 6d76d43718 richedit: Fixed a bug preventing NULL pointers from being in text.
Opening a text file with a NULL terminated character in it was causing
an assertion error after a run was being split due to word wrap.
Windows allows NULL terminated characters to be in the text.
2008-06-26 21:16:56 +02:00
Dylan Smith ba747f4514 richedit: Fixed the forward word movement bug.
Using Ctrl-RightArrow to move to the start of the next word did not
previously work when at the start of a word.  This means that
Ctrl-RightArrow would not work twice in a row since it should move to
the start of the next word.
2008-06-26 21:16:29 +02:00
Dan Hipschman 36aa6c4c44 riched20: Implement ITextDocument_fnGetSelection. 2008-06-26 21:07:31 +02:00
Alex Villacís Lasso c774d681ce richedit: Fix failing EM_GETCHARFORMAT test on all platforms.
Default richedit font (System) in Windows causes richedit to report
CFM_BOLD as always set. Switch to Courier New in order to see that
richedit really sets the CFM_BOLD attribute in the correct selection.
2008-06-26 10:51:07 +02:00
Dylan Smith 88a9ca7c41 richedit: Tests for undo coalescing.
Tests for undo coalescing from previous patches sent as suggested by
Alex Villacís Lasso.
2008-06-25 11:25:32 +02:00
Alex Villacís Lasso 163e9d1d02 richedit: Revert patch that introduced a test that fails on all platforms. 2008-06-25 11:14:13 +02:00
Alex Villacís Lasso acec891ac2 richedit: EM_POSFROMCHAR should take into account scrollbar position. With tests. 2008-06-24 11:44:37 +02:00
Alex Villacís Lasso 3cc6e2365a richedit: When returning position through wParam pointer, EM_POSFROMCHAR must return 0 as LRESULT.
Add tests for EM_POSFROMCHAR for 1.0 and 2.0.
2008-06-24 11:43:42 +02:00
Dan Hipschman 9615e2977d riched20/tests: Add a test for creating ITextDocument. 2008-06-23 12:39:46 +02:00
Dan Hipschman 76ee788afa riched20/tests: Add tests for OLE interface. 2008-06-23 12:39:41 +02:00
Alex Villacís Lasso 0e9ed5c10e richedit: Empty text should result in a scroll range of 0. Tests for this behavior. 2008-06-19 12:10:21 +02:00
Alex Villacís Lasso c7873afbb2 richedit: Insertion style must NOT be cleared unless selection actually changed. 2008-06-19 12:10:13 +02:00
Alex Villacís Lasso d2900a53e1 richedit: Add tests for URL autodetection for EM_REPLACESEL, make them pass under Wine. 2008-06-19 12:10:00 +02:00
Alex Villacís Lasso 892a0b5f1e richedit: Add tests for URL autodetection for EM_SETTEXTEX, make them pass under Wine. 2008-06-19 12:09:46 +02:00
Alex Villacís Lasso f213af3795 richedit: Fix for the semantics of the flags for some effects reported by EM_GETCHARFORMAT.
Remove workaround put in place by a previous patch, due to buggy flag reporting.
Tests to verify fixed behavior.
2008-06-19 12:08:30 +02:00
Alex Villacís Lasso 4a5d100097 richedit: Add more tests for URL autodetection on WM_CHAR, make them pass under Wine. 2008-06-19 12:07:36 +02:00
Alex Villacís Lasso 38d7ba6eff richedit: WM_SETTEXT must immediately autodetect URLs, without waiting for a WM_CHAR. 2008-06-19 11:59:04 +02:00
Alex Villacís Lasso 60c42bd3db richedit: Fix misreporting of match offset for EM_FINDTEXT and EM_FINDTEXTEX. 2008-06-19 11:55:27 +02:00
Francois Gouget 42a61d7ed7 Assorted spelling fixes. 2008-05-06 16:10:20 +02:00
Alexandre Julliard 13ab99b404 richedit: Avoid strlen in traces. 2008-05-02 13:59:06 +02:00
Alex Villacís Lasso 2a4fc97c4c richedit: Add tests for EM_FINDTEXT in 1.0 emulation, make them pass under Wine. 2008-05-01 10:57:34 +02:00
Alex Villacís Lasso 2ab63774f1 richedit: On failure to parse incoming text as RTF, EM_STREAMIN must set dwError to -16. 2008-04-30 10:22:42 +02:00
Alex Villacís Lasso 829940458f richedit: Private movement of cursors in text insertion should not cause WM_NOTIFY to be sent.
As text is inserted, the cursor is moved to the end, and then back to
offset 0. A reordering of operations prevents a WM_NOTIFY from being
sent on cursor being moved to the end, and another by being moved
back to the beginning. If the cursor was not at offset 0, then
exactly one WM_NOTIFY must be sent, for the movement from previous
position to the beginning.  With tests to prove this change and the
previous one (modify flag should be off on WM_SETTEXT-caused
WM_NOTIFY).
2008-04-29 14:57:03 +02:00
Alex Villacís Lasso 3cad256d54 richedit: Fix modify step setting in EM_SETCHARFORMAT.
EM_SETCHARFORMAT with wParam==0 sets default char format and does NOT set modify step flag.
EM_SETCHARFORMAT with wParam==SCF_SELECTION only sets modify step flag when selection is nonempty.
EM_GETMODIFY returns -1, not 1, when modify flag is set.
Tests for the above behavior.
2008-04-29 14:56:23 +02:00
Alex Villacís Lasso 3a271386ec richedit: Remove indication for bCRLF, now that ME_GetTextW() knows how to honor CR and LF counters.
EM_GETTEXTRANGE and EM_GETSELTEXT are affected by this, so include tests to ensure no behavior was broken.
2008-04-29 14:54:59 +02:00
Alex Villacís Lasso d95cbeef67 richedit: EM_LINELENGTH: honor CR and LF counters.
Add fixup to ME_FindItemAtOffset(), fixes crash by null-pointer access.
Add tests for EM_LINELENGTH.
2008-04-29 14:54:29 +02:00
Alex Villacís Lasso 8d37388fe7 richedit: Fixups to move over to reliance on CR and LF counters.
Text streamout now honors CR and LF counters.
Tests to pin down required EM_STREAMOUT behavior.
2008-04-29 14:54:05 +02:00
Alex Villacís Lasso 4f95cf7072 riched20: Reject RTF that is recognized as invalid. 2008-04-24 22:12:13 +02:00
Alex Villacís Lasso 7148f92c4c riched20: Implement ignoring of last \par for EM_STREAMIN. 2008-04-24 22:11:58 +02:00
James Hawkins ead42d7f7f riched20: Fix a few tests that fail in XP and up. 2008-04-24 11:51:21 +02:00
Alex Villacís Lasso a9caca3eda riched20: Yet more tests for EM_STREAMIN. 2008-04-24 11:49:14 +02:00
Alex Villacís Lasso 2353e1d280 richedit: EM_STREAMIN tests for richedit 2.0. 2008-04-22 11:55:12 +02:00
Alex Villacís Lasso 46ff4a6f16 riched20: EM_SETTEXTEX supports RTF strings, with tests. 2008-04-21 20:27:17 +02:00
Alex Villacís Lasso dfcebfb22e riched20: Fix behavior of EM_REPLACESEL with painting disabled. 2008-04-21 20:26:54 +02:00
Austin English 313a85f163 Spelling fixes. 2008-04-17 12:25:57 +02:00
Francois Gouget 1552f22acf riched20: Fix the name of the lpUsedDefChar field of GETTEXTEX. 2008-02-06 12:43:53 +01:00
Alexandre Julliard f0c4fdbad9 riched20/tests: Avoid using size_t in traces. 2007-12-14 14:31:35 +01:00
Alexandre Julliard c0b12351e0 Avoid size_t types in traces. 2007-12-07 18:49:18 +01:00
Alex Villacís Lasso f945f16de2 riched20: WM_GETTEXTLENGTH should include CRLF conversions in returned count. 2007-12-07 17:36:01 +01:00
Alex Villacís Lasso 3b636b58ba riched20: EM_GETTEXTLENGTHEX must not count last paragraph break if GTL_USECRLF. 2007-12-07 17:36:01 +01:00
Alex Villacís Lasso 99f0dc4ff4 riched20: WM_GETTEXT should return 0 on overflow but fill buffer anyway. 2007-12-07 17:06:53 +01:00
Alex Villacís Lasso 4545f1944e riched20: EM_GETTEXTEX with GT_USECRLF should not leave a single CR when running out of space. 2007-12-07 17:06:45 +01:00
Alexandre Julliard ad9396302d Removed some unneeded imports. 2007-12-06 21:24:24 +01:00
Alex Villacís Lasso 8ae0eeafc6 riched20: Fix test failure in test_WM_PASTE.
Native riched20 won't obey simple WM_CHAR or WM_KEYDOWN/WM_KEYUP
messages when processing Ctrl-Key keystrokes. Use keybd_event()
instead.
2007-11-08 12:36:35 +01:00
Alex Villacís Lasso 5d8b8cd899 riched20: EM_GETMODIFY should not report modification after WM_SETTEXT (fixes todo_wine). 2007-11-06 13:01:09 +01:00
Alex Villacís Lasso 3cfad1fbf3 riched20: Fix detection of CFE_LINK on WinXP-SP2. 2007-11-05 14:46:35 +01:00
Alex Villacís Lasso 38234fabeb riched20: Allow for Win98 behavior for return value of EM_REPLACESEL. 2007-10-31 14:06:08 +01:00
Alex Villacís Lasso e7296eaeaa riched20: Fix test crash on WinXP-SP2. 2007-10-29 12:08:25 +01:00
Alex Villacís Lasso 469669e629 riched20: 2.0 and higher inserts CRCRLF as space (with tests). 2007-10-22 13:50:13 +02:00
Alex Villacís Lasso f54aa40746 riched20: Single-line control must refuse to insert carriage returns (with tests). 2007-10-19 12:26:25 +02:00
Alex Villacís Lasso 63b12f8602 riched20: Minimal fix for WM_SETTEXT without ES_MULTILINE style. 2007-09-28 10:59:59 +02:00
Francois Gouget d32d8ac862 riched20/tests: Add '\n's to ok() calls. 2007-09-27 20:12:06 +02:00
Alex Villacís Lasso 03f3a40a03 riched20: EM_SETCHARFORMAT must fail and return 0 with TM_PLAINTEXT and SF_SELECTION. 2007-09-27 11:58:52 +02:00
Alex Villacís Lasso be5105e894 riched20: EM_SETCHARFORMAT must return 0, not assert, on invalid struct size. 2007-09-27 11:07:54 +02:00
Alex Villacís Lasso fa5230fb54 riched20: EM_SETCHARFORMAT must return 1 on success, not 0. 2007-09-26 14:40:54 +02:00
Alex Villacís Lasso 00e562735d riched20: Fix WM_GETTEXT to change \r to \r\n. 2007-09-24 13:44:28 +02:00