torsdag 14 november 2024 kl. 22:42:13 UTC+1 skrev Stefan:

I can reproduce it (under Windows 11 running in Hyper-V) if I use dark mode.

A (stupid!) solution would be to invalidate the whole edit control in 
CEditPropertyValueDlg::OnEnChangePropvalue(). Surely there must be a better 
solution..?

[[[
    CRect rect;
    CWnd* pWnd = GetDlgItem(IDC_PROPVALUE);
    pWnd->GetWindowRect(&rect);
    ScreenToClient(&rect);
    InvalidateRect(&rect, TRUE);
]]]


why not just use
GetDlgItem(IDC_PROPVALUE)->Invalidate();
? 


Thanks! This is far from my comfort zone so I don't know of all the APIs.

Unfortunately this (and my code - I'm assuming they are essentially the 
same) causes flickering of the text box, in particular on edit. We could of 
course do it only if dark mode, but still if the garbled text only affects 
some users, and the Invalidate() flickering affects everyone, I'm not sure 
if it is a good solution.

It would be good if it is possible to invalidate just the changed line of 
text.
 

maybe there's something we could do differently in CTheme::MainSubclassProc 
? I can't reproduce this here, not even in a VM. So I won't be of much help 
:(


I'll have a look to see if I can figure out the difference between dark 
mode and non-dark mode. Unfortunately I'm out of time for now so I'll have 
this on my todo list.

Kind regards,
Daniel

-- 
You received this message because you are subscribed to the Google Groups 
"TortoiseSVN-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/tortoisesvn-dev/11467aa8-8f11-4042-abdb-e0aadb359b6dn%40googlegroups.com.

Reply via email to