• Tomaž Vajngerl's avatar
    tdf#82009 TreeList move painting of drag target into Paint func. · 14abbc6e
    Tomaž Vajngerl yazdı
    When we drag a entry in TreeListBox, we execute a PaintDDCursor
    which paints a "cursor" of a possible drag target (for example
    to show where the entry will be moved to if we want to change the
    order). The problem with this fuction is that it paints a line
    directlly at that location, and that it uses invert raster
    operation to draw a line. So to hide the line it just needs to
    draw again. On MacOS this invertion causes a problem and draws
    the whole area black, which is the cause of this bug.
    
    So instead of inverting the drawing of the drag target cursor
    has now been moved into the main Paint method, where it redraws
    the whole entry, and if present, also the drag target cursor.
    This means that all we need to do is Invalidate the entry,
    which then just gets redrawn in a normal Paint pass.
    
    One exception is still MacOS, which doesn't invalidate the entry,
    but redraws the entry directly. DnD is MacOS is a bit different
    as it is not async (if I understand correctly) so the invalidate
    has no effect.
    
    Change-Id: I8542f47940a3b90114ea4bbbac57fd303ca3434b
    Reviewed-on: https://gerrit.libreoffice.org/70521
    Tested-by: Jenkins
    Reviewed-by: 's avatarTomaž Vajngerl <quikee@gmail.com>
    14abbc6e
Adı
Son kayıt (commit)
Son güncelleme
..
LibreOfficeKit Loading commit data...
android Loading commit data...
animations Loading commit data...
apple_remote Loading commit data...
avmedia Loading commit data...
basegfx Loading commit data...
basic Loading commit data...
canvas Loading commit data...
codemaker Loading commit data...
com/sun/star/uno Loading commit data...
comphelper Loading commit data...
connectivity Loading commit data...
cppcanvas Loading commit data...
cppu Loading commit data...
cppuhelper Loading commit data...
cppunittester Loading commit data...
dbaccess Loading commit data...
desktop Loading commit data...
drawinglayer Loading commit data...
editeng Loading commit data...
filter Loading commit data...
formula Loading commit data...
fpicker Loading commit data...
framework Loading commit data...
helpcompiler Loading commit data...
i18nlangtag Loading commit data...
i18nutil Loading commit data...
ios Loading commit data...
jvmaccess Loading commit data...
jvmfwk Loading commit data...
linguistic Loading commit data...
o3tl Loading commit data...
onlineupdate Loading commit data...
oox Loading commit data...
opencl Loading commit data...
osl Loading commit data...
package Loading commit data...
registry Loading commit data...
rtl Loading commit data...
sal Loading commit data...
salhelper Loading commit data...
sax Loading commit data...
sfx2 Loading commit data...
sot Loading commit data...
store Loading commit data...
svl Loading commit data...
svtools Loading commit data...
svx Loading commit data...
systools/win32 Loading commit data...
test Loading commit data...
toolkit Loading commit data...
tools Loading commit data...
typelib Loading commit data...
ucbhelper Loading commit data...
uno Loading commit data...
unoidl Loading commit data...
unotest Loading commit data...
unotools Loading commit data...
vbahelper Loading commit data...
vcl Loading commit data...
xmloff Loading commit data...
xmlreader Loading commit data...
xmlscript Loading commit data...
IwyuFilter_include.yaml Loading commit data...
default.rc Loading commit data...
postmac.h Loading commit data...
postwin.h Loading commit data...
premac.h Loading commit data...
prewin.h Loading commit data...
version.hrc Loading commit data...