<div dir="ltr"><div>Hi Adrien,<br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Nov 12, 2019 at 7:54 AM Adrien Ollier <<a href="mailto:adr.ollier@hotmail.fr">adr.ollier@hotmail.fr</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello everybody,<br>
<br>
<br>
In the /core/include/vcl/outdev.hxx file, at line 331 we can see the <br>
attribute mpAlphaVDev which is of type VclPtr<VirtualDevice>. And the <br>
comment at line 330 is "TEMP TEMP TEMP".<br>
<br></blockquote><div><br></div><div>That's one of those permanent temporary variables that was intended to be removed in a week, but is still in the code after a decade. <br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Does someone know what this attribute is for?<br>
<br></blockquote><div><br></div><div>It's for the alpha channel of the VirtualDevice to make the it support transparency. <br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Using opengrok, when I search for mpAlphaVDev <br>
(<a href="https://opengrok.libreoffice.org/s?refs=mpAlphaVDev&project=core" rel="noreferrer" target="_blank">https://opengrok.libreoffice.org/s?refs=mpAlphaVDev&project=core</a>), I <br>
see that the pointer is created when the OutputDevice is a VirtualDevice <br>
(in /core/vcl/source/gdi/virdev.cxx at line 367), and I couldn't find <br>
any other line where mpAlphaVDev is instanciated.<br></blockquote><div> </div><div>Instantiated in one place, yes, but it is used all over OutputDevice drawing code.<br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Can someone confirm this? If that is true, at least the attribute should <br>
be moved in the VirtualDevice class. But I can't understand the reason <br>
to be of this attribute. Should not it be purely and simply removed?<br></blockquote><div><br></div><div>No, we can't just remove it just yet. The code needs to be changed so it supports native alpha of our backend surfaces, but that's quite a lot of very careful work. I'm writing various tests in VCL just so this could be safely implemented without breaking anything.</div><div><br></div><div>What could be removed is that "TEMP TEMP TEMP" comment. <br></div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Best regards,<br>
<br>
Adrien Ollie</blockquote><div><br></div><div>Best Regards, <br></div><div>Tomaž Vajngerl <br></div></div></div>