On 05.04.2017 10:15, Stefan Dösinger wrote:
dlls/comctl32/tests/msg.h | 19 ++++++++++-- dlls/comctl32/tests/pager.c | 70 ++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 83 insertions(+), 6 deletions(-)
diff --git a/dlls/comctl32/tests/msg.h b/dlls/comctl32/tests/msg.h index b30b5d8..a3c789b 100644 --- a/dlls/comctl32/tests/msg.h +++ b/dlls/comctl32/tests/msg.h @@ -39,7 +39,8 @@ typedef enum hook = 0x100, winevent_hook =0x200, id = 0x400,
- custdraw = 0x800
- custdraw = 0x800,
- child1 = 0x1000,
} msg_flags_t;
Maybe I don't see a full picture yet, but doesn't this duplicate 'id' flag? We use it for ListView/Header combined sequences for example.
struct message @@ -182,6 +183,8 @@ static void ok_sequence_(struct msg_sequence **seq, int sequence_index, { if (expected->message == actual->message) {
const char *expected_win = NULL;
if (expected->flags & wparam) { if (expected->wParam != actual->wParam && todo)
@@ -304,11 +307,23 @@ static void ok_sequence_(struct msg_sequence **seq, int sequence_index, context, expected->message, (expected->flags & posted) ? "posted" : "sent"); if ((expected->flags & (sent|posted)) != (actual->flags & (sent|posted))) dump++;
if (expected->flags & parent)
expected_win = "parent";
else if (expected->flags & child1)
expected_win = "child 1";
else
expected_win = "pager";
This has to be generic, something neutral like "control" instead of "pager" is better, if we'll end up using new flag.
Am 2017-04-05 um 14:53 schrieb Nikolay Sivov:
Maybe I don't see a full picture yet, but doesn't this duplicate 'id' flag? We use it for ListView/Header combined sequences for example.
It's not exactly the same, "id" is more a generic extra payload field. The pager test e.g. uses it to communicate a message id in a WM_NOTIFY message.
In the tests I currently have no extra payload, so I could use the id mechanism instead of extending the parent / control flag. I could also use it in patch 6 to deal with the WINDOWPOS structures. But I'll need both child1/child2 info and WINDOWPOS in the same lines, so I can't do both.
On 05.04.2017 16:26, Stefan Dösinger wrote:
Am 2017-04-05 um 14:53 schrieb Nikolay Sivov:
Maybe I don't see a full picture yet, but doesn't this duplicate 'id' flag? We use it for ListView/Header combined sequences for example.
It's not exactly the same, "id" is more a generic extra payload field. The pager test e.g. uses it to communicate a message id in a WM_NOTIFY message.
In the tests I currently have no extra payload, so I could use the id mechanism instead of extending the parent / control flag.
I think it's better, and will match what we're doing already for other tests.
I could also
use it in patch 6 to deal with the WINDOWPOS structures. But I'll need both child1/child2 info and WINDOWPOS in the same lines, so I can't do both.
Do you really need to test it this way? Could it be tested right in window procedure while processing POSCHANGED?