Re: Dropping X11 VCL backend

2021-01-06 Thread Michael Meeks

On 29/12/2020 16:29, Thorsten Behrens wrote:
>> XRender. Hopefully I’m reading the code right. If I am reading that
>> right, are there any distributions that ship X11 *without* XRender?
>>
> I believe that's the wrong question to ask - there's always going to
> be a fringe use case where Xrender is not (easily) available. Old, or
> remote X11 comes to mind.

It would have to be -very- old not to support Xrender, which is also
available via remote protocol; and is ~20 years old. I would say the
probability is near zero of that being useful.

I'd be well up for killing non-Xrender code-paths if that's easy and
safe - but we should really just go for using statically linked skia's
X11 support and kill that native X11 rendering code in big chunks. Ditto
for the Mac backend, and ultimately for the GDI Windows backend.

Then with a sane alpha API we could switch to in-line alpha and get
some big performance improvement for rendering.

I'd love to see someone looking at that. The S390x thing - I saw
problems there related to Skia GPU acceleration on that, but either the
CPU pixel bashing works there - or we can fix it I guess:

https://bugzilla.mozilla.org/show_bug.cgi?id=1144632

Looks interesting some years ago.

There are huge benefits to having a much more powerful single rendering
backend ~everywhere, that removes the need for lots of fallback code.

So - I'd love to see the existing 'gen' backend switch quietly to using
static skia rendering =)

My 2 cents,

Michael.

-- 
michael.me...@collabora.com <><, GM Collabora Productivity
Hangout: mejme...@gmail.com, Skype: mmeeks
(M) +44 7795 666 147 - timezone usually UK / Europe
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: Dropping X11 VCL backend

2021-01-04 Thread Luboš Luňák
On Tuesday 29 of December 2020, Ilmari Lauhakangas wrote:
> We could start by gathering the concrete things that we use X11 backend
> for.
>
> One of them is UI tests, where we advise to use SAL_USE_VCLPLUGIN=gen
> when we want to observe the UI while running tests or while logging UI
> events in the domain specific language:
> https://wiki.documentfoundation.org/Development/UITests
>
> Hopefully someone can explain why we still need to do this.

 I think this is simply because 'gen' is the lowest common denominator and 
thus considered the safest. You can build LO without Gtk or KF5 backends, 
but 'gen' is always there.

On Tuesday 29 of December 2020, julien2412 wrote:
> There's also kf5 rendering (corresponding to kde, I don't know why
> it's not called "kde5") which doesn't use accessibility but need a lot of

 The organization is KDE, the code is KDE Frameworks. Calling the VCL 
backend 'kde5' would be like calling the Windows one 'microsoft10'.

On Tuesday 29 of December 2020, julien2412 wrote:
> I understand but IMHO Skia support in LO is not enough mature (first commit
> on master branch of LO is in 2019-11-27 so just 1 year whereas it's an
> essential component) and above all, it needs at least one additional
> maintainer (for me the main pb here) (see my response to Chris).

 Maturity is not measured only by time. I can easily spin this by saying that 
Skia is the best performing drawing code and the most maintained (or 2nd most 
maintained, maybe, after gtk3), and most backends AFAIK have zero 
maintainers. So you're ignoring the other side of the equation, such as that 
this whole thread is about the possibility of removing that other side of the 
equation. And I'd be concerned about other things, such as the fact that with 
Skia we're much more at the mercy of upstream than with other options.

(Obviously, I'm biased.)

-- 
 Luboš Luňák
 l.lu...@collabora.com
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: Dropping X11 VCL backend

2021-01-04 Thread Luboš Luňák
On Tuesday 29 of December 2020, Chris Sherlock wrote:
> Hi all,
>
> I am interested in knowing the future of the X11 VCL backend now that we
> have a Skia backend.

 Just to avoid any possible confusion, I'd like to point out that 'X11 VCL 
backend' is ambiguous, because VCL backends may themselves have backends. 
Each VCL backend is supposed to handle its platform's windows, fonts, drawing 
and whatnot, but some of them defer the drawing to plugable backends. So 
the 'gen' VCL backend is sort of the X11 VCL backend, selected by 
SAL_USE_VCLPLUGIN=gen, but it has different SalGraphicsImpl backends that 
draw using X11, Skia or until recently GL (LO has inherited from OOo also its 
fine tradition of definitely not making things simple, right?).

 So when you say X11 VCL backend, I presume you mean the X11 drawing backend, 
not the X11 VCL backend itself. Skia is just a drawing backend and doesn't 
have its own VCL backend, it's used by the 'gen' or 'win' VCL backends.

> Are there any plans afoot to remove it and just go 
> with the Skia backend?

 I'm not aware of anything specific.

> If not, may I ask the reason? It seems maintenance heavy.

 I think the reason is that it does not seem maintenance heavy. What are the 
specific reasons that you do find it otherwise? The X11 drawing code had 
relatively few commits in the last year if I exclude all the generic cleanup 
changes and my Skia-related commits.

 Also, X11 is the stable lowest common denominator, i.e. the safe fallback, 
which may be another reason to keep it.

> If we are, do we have a potential release where we believe that Skia is
> stable enough to use and remove the X11 backend?

 We apparently believe that Skia is stable enough to be the default on our 
largest platform, for both 7.0 and 7.1. Unless users are disabling it in 
masses, presumably it is stable enough to use (although admittedly a default 
is not the same as removing other options, so I'm unsure about the "and 
remove" part).

 But if the reason for wanting to remove the X11 code is XRender (lack 
thereof), then it might be simpler to hard-require XRender and let X11 be.

-- 
 Luboš Luňák
 l.lu...@collabora.com
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: Dropping X11 VCL backend

2021-01-04 Thread Luboš Luňák
On Tuesday 29 of December 2020, Chris Sherlock wrote:
> On 29 Dec 2020, at 6:43 pm, r...@rene-engelhard.de wrote:
> > Big endian architectures where skis does not work?
> >
> > In debian: s390x
> >
> > Regards
> >
> > René
>
> Oh! I didn’t know about that… ouch.
>
> I asked before, but in the X11SalGraphicsImpl::supportOperation(), it seems
> to be checking to see if the X Server supports XRender. Hopefully I’m
> reading the code right. If I am reading that right, are there any
> distributions that ship X11 *without* XRender?

 I doubt somebody on this list knows enough to tell for sure how likely it's 
to encounter X11 without XRender. Before LO I used to be a window manager 
maintainer and I'm not sure. XRender works even remotely, so I expect it's 
not available only if the X server doesn't support it, which means either too 
old, custom X11 implementation maybe, or broken drivers? That's a question 
for X11 developers.

 But if XRender support is the problem, then it might be sufficient to ask if 
we can afford to hard-require it. I'd say if René wouldn't have a problem 
with it then I doubt anybody else would.

-- 
 Luboš Luňák
 l.lu...@collabora.com
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: Dropping X11 VCL backend

2020-12-31 Thread Chris Sherlock


> On 30 Dec 2020, at 3:31 am, Thorsten Behrens  wrote:
> 
> Chris Sherlock wrote:
> 
>> I asked before, but in the X11SalGraphicsImpl::supportOperation(),
>> it seems to be checking to see if the X Server supports
>> XRender. Hopefully I’m reading the code right. If I am reading that
>> right, are there any distributions that ship X11 *without* XRender?
>> 
> I believe that's the wrong question to ask - there's always going to be a 
> fringe use case where Xrender is not (easily) available. Old, or
> remote X11 comes to mind.
> 
> So either we suck it up, deprecate the feature, give it some time & remove it 
> - or we don't if it's ~easy to retain. ;)

I would be all for that! The question is, how do we get consensus for this, and 
if we get it how long do we keep it deprecated for before we remove it?

Chris
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: Dropping X11 VCL backend

2020-12-29 Thread Thorsten Behrens
Chris Sherlock wrote:
> On 29 Dec 2020, at 6:43 pm, r...@rene-engelhard.de wrote:
> >> If not, may I ask the reason? It seems maintenance heavy. 
> > 
> > Big endian architectures where skis does not work?
> > 
> > In debian: s390x 
> > 
>
Currently, skia doesn't even build on x86 (and their upstream has, uh,
portability pretty low on their list).

> I asked before, but in the X11SalGraphicsImpl::supportOperation(),
> it seems to be checking to see if the X Server supports
> XRender. Hopefully I’m reading the code right. If I am reading that
> right, are there any distributions that ship X11 *without* XRender?
>
I believe that's the wrong question to ask - there's always going to
be a fringe use case where Xrender is not (easily) available. Old, or
remote X11 comes to mind.

So either we suck it up, deprecate the feature, give it some time &
remove it - or we don't if it's ~easy to retain. ;)

My 2c,

-- Thorsten


signature.asc
Description: PGP signature
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: Dropping X11 VCL backend

2020-12-29 Thread rene
Hi,

Am 29. Dezember 2020 07:13:08 MEZ schrieb Chris Sherlock 
:
> Are there any plans afoot to remove it and just
>go with the Skia backend? 

Hopefully not,...

>If not, may I ask the reason? It seems maintenance heavy. 

Big endian architectures where skis does not work?

In debian: s390x 

Regards

René
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: Dropping X11 VCL backend

2020-12-29 Thread julien2412
Ilmari Lauhakangas wrote
> On 29.12.2020 11.11, julien2412 wrote:
>> ...
> kf5 comes from KDE Frameworks 5.

Thank you, I'll try to remember this one.


Ilmari Lauhakangas wrote
> The extra libs to install are (on Debian & Ubuntu):
> 
> qtbase5-dev libkf5coreaddons-dev libkf5i18n-dev libkf5config-dev 
> libkf5windowsystem-dev libkf5kio-dev

Yep I had installed them, just meant it needed extra libs.
Still, gen rendering is nearer to Windows rendering than kf5 too (at least
it seems too).


Ilmari Lauhakangas wrote
> Yeah, but if gen/x11 stops having a practical use, then it will merely 
> be an extra thing to test with its own quirks, causing constant 
> maintenance effort.

I understand but IMHO Skia support in LO is not enough mature (first commit
on master branch of LO is in 2019-11-27 so just 1 year whereas it's an
essential component) and above all, it needs at least one additional
maintainer (for me the main pb here) (see my response to Chris).



--
Sent from: 
http://document-foundation-mail-archive.969070.n3.nabble.com/Dev-f1639786.html
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: Dropping X11 VCL backend

2020-12-29 Thread Chris Sherlock
On 29 Dec 2020, at 6:43 pm, r...@rene-engelhard.de wrote:
> 
> Hi,
> 
> Am 29. Dezember 2020 07:13:08 MEZ schrieb Chris Sherlock 
> :
>> Are there any plans afoot to remove it and just
>> go with the Skia backend? 
> 
> Hopefully not,...
> 
>> If not, may I ask the reason? It seems maintenance heavy. 
> 
> Big endian architectures where skis does not work?
> 
> In debian: s390x 
> 
> Regards
> 
> René

Oh! I didn’t know about that… ouch. 

I asked before, but in the X11SalGraphicsImpl::supportOperation(), it seems to 
be checking to see if the X Server supports XRender. Hopefully I’m reading the 
code right. If I am reading that right, are there any distributions that ship 
X11 *without* XRender?

Chris
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: Dropping X11 VCL backend

2020-12-29 Thread julien2412
Hello Ilmari,

I use gen rendering when trying to be nearer of a Windows config.
Indeed, I'm on pc Debian x86-64 with master sources and by default it uses
gtk3.
Badfully, gtk3 uses accessibility part which has been quite broken since
years (but I suppose no one will want to remove it). So sometimes, I got
some assertion or bug with gtk3 which prevents me to reproduce the real bug.
There's also kf5 rendering (corresponding to kde, I don't know why it's not
called "kde5") which doesn't use accessibility but need a lot of extra libs
to install (there are also all related Plasma and Wayland things that I
don't know enough so sometimes it's not easy to reproduce kde specific
bugs).

Finally gen rendering which "seem" (perhaps I'm wrong here) not to use extra
libs and in which some window dialogs are not modal (I don't know why) is a
good complement to test (even if I dislike UI above all open file window
dialog).

Julien



--
Sent from: 
http://document-foundation-mail-archive.969070.n3.nabble.com/Dev-f1639786.html
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: Dropping X11 VCL backend

2020-12-29 Thread julien2412
Hello Chris,

Just my personal opinion of course but I think my message from 2020-04-25 is
still relevant (see
http://document-foundation-mail-archive.969070.n3.nabble.com/SKIA-on-Windows-Roadmap-ESC-agenda-item-tt4277989.html#a4278039),
I'll just quote myself:
"
1) if Luboš doesn't want or can't anymore fix the Skia bugs, whatever the
reasons, who will be able to fix these bugs?
Indeed, 95% of Skia patches are from Luboš. So for me it's a risk.
Ideally there should be someone not from Collabora, nothing against this
company but LO shouldn't rely exclusively from it for this very central
part.

2) Even if Luboš does a great job fixing Skia bugs, there are only 6 opened
now on about 50 bugs declared on tdf#129062 (Meta Skia).
However it seems only LO people declared Skia bugs therefore I expect far
more bugs when it'll be default in 7.0. So I think we should keep the
possibility to revert the default option for 7.0.1/7.0.2 just in case.
For those who would consider this as very hypothetical, just consider
Firebird experience.

3) Is there some documentation to facilitate newcomers or not LO newcomers
devs to work on this?
(I found nothing in https://wiki.documentfoundation.org) "

About 2) there are now 14 open bugs now.

I had put this kind of comments here:
https://bugs.documentfoundation.org/show_bug.cgi?id=132323 (Make SKIA
default. Move OpenGL and GDI rendering to Expert configuration)

I always support removing old things if they're broken, experimental, (eg: I
removed VLC support and tried to remove TB AB but stuck because public API)
but I'm against if they're still used and there's no ready replacement.
Also, as long as Luboš is the only person able to maintain support of Skia,
I think it's too risky.

Julien



--
Sent from: 
http://document-foundation-mail-archive.969070.n3.nabble.com/Dev-f1639786.html
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: Dropping X11 VCL backend

2020-12-29 Thread Michael Stahl

On 29.12.20 12:10, Tomaž Vajngerl wrote:

Hi,

On Tue, Dec 29, 2020 at 3:25 PM Ilmari Lauhakangas mailto:ilmari.lauhakan...@libreoffice.org>> wrote:

On 29.12.2020 8.13, Chris Sherlock wrote:
 > I am interested in knowing the future of the X11 VCL backend now that we 
have a Skia backend. Are there any plans afoot to remove it and just go with the 
Skia backend?
 >
 > If not, may I ask the reason? It seems maintenance heavy.
 >
 > If we are, do we have a potential release where we believe that Skia is 
stable enough to use and remove the X11 backend?

We could start by gathering the concrete things that we use X11 backend for.


Just for clarification, the idea is to remove X11 graphic drawing backend and 
use skia instead, but X11 would still be used for windows/frames, so AFAIK gen 
would still exist, it would just use skia.


oh, that's good to know.

the main value of the "gen" backend for me is that it "always works", because 
it depends on ancient X11 libraries that haven't changed in years.

there were bibisect repos in the past (particularly ones built on Ubuntu) where the only 
VCLplug that worked for me was "gen", or possibly the GTK2 one but that was 
removed already.

i hope that because Skia is statically linked that "gen" will continue with 
this track record.
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: Dropping X11 VCL backend

2020-12-29 Thread Tomaž Vajngerl
Hi,

On Tue, Dec 29, 2020 at 3:25 PM Ilmari Lauhakangas <
ilmari.lauhakan...@libreoffice.org> wrote:

> On 29.12.2020 8.13, Chris Sherlock wrote:
> > I am interested in knowing the future of the X11 VCL backend now that we
> have a Skia backend. Are there any plans afoot to remove it and just go
> with the Skia backend?
> >
> > If not, may I ask the reason? It seems maintenance heavy.
> >
> > If we are, do we have a potential release where we believe that Skia is
> stable enough to use and remove the X11 backend?
>
> We could start by gathering the concrete things that we use X11 backend
> for.
>
> One of them is UI tests, where we advise to use SAL_USE_VCLPLUGIN=gen
> when we want to observe the UI while running tests or while logging UI
> events in the domain specific language:
> https://wiki.documentfoundation.org/Development/UITests
>
> Hopefully someone can explain why we still need to do this.
>
>
Just for clarification, the idea is to remove X11 graphic drawing backend
and use skia instead, but X11 would still be used for windows/frames, so
AFAIK gen would still exist, it would just use skia.


> Ilmari
>

Tomaž
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: Dropping X11 VCL backend

2020-12-29 Thread Ilmari Lauhakangas

On 29.12.2020 11.11, julien2412 wrote:

I use gen rendering when trying to be nearer of a Windows config.
Indeed, I'm on pc Debian x86-64 with master sources and by default it uses
gtk3.
Badfully, gtk3 uses accessibility part which has been quite broken since
years (but I suppose no one will want to remove it). So sometimes, I got
some assertion or bug with gtk3 which prevents me to reproduce the real bug.
There's also kf5 rendering (corresponding to kde, I don't know why it's not
called "kde5") which doesn't use accessibility but need a lot of extra libs
to install (there are also all related Plasma and Wayland things that I
don't know enough so sometimes it's not easy to reproduce kde specific
bugs).


kf5 comes from KDE Frameworks 5.

The extra libs to install are (on Debian & Ubuntu):

qtbase5-dev libkf5coreaddons-dev libkf5i18n-dev libkf5config-dev 
libkf5windowsystem-dev libkf5kio-dev



Finally gen rendering which "seem" (perhaps I'm wrong here) not to use extra
libs and in which some window dialogs are not modal (I don't know why) is a
good complement to test (even if I dislike UI above all open file window
dialog).


Yeah, but if gen/x11 stops having a practical use, then it will merely 
be an extra thing to test with its own quirks, causing constant 
maintenance effort.


Ilmari
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: Dropping X11 VCL backend

2020-12-28 Thread Ilmari Lauhakangas

On 29.12.2020 8.13, Chris Sherlock wrote:

I am interested in knowing the future of the X11 VCL backend now that we have a 
Skia backend. Are there any plans afoot to remove it and just go with the Skia 
backend?

If not, may I ask the reason? It seems maintenance heavy.

If we are, do we have a potential release where we believe that Skia is stable 
enough to use and remove the X11 backend?


We could start by gathering the concrete things that we use X11 backend for.

One of them is UI tests, where we advise to use SAL_USE_VCLPLUGIN=gen 
when we want to observe the UI while running tests or while logging UI 
events in the domain specific language: 
https://wiki.documentfoundation.org/Development/UITests


Hopefully someone can explain why we still need to do this.

Ilmari
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


Dropping X11 VCL backend

2020-12-28 Thread Chris Sherlock
Hi all, 

I am interested in knowing the future of the X11 VCL backend now that we have a 
Skia backend. Are there any plans afoot to remove it and just go with the Skia 
backend? 

If not, may I ask the reason? It seems maintenance heavy. 

If we are, do we have a potential release where we believe that Skia is stable 
enough to use and remove the X11 backend?

Chris
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice