[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY)
From: |
Eli Zaretskii |
Subject: |
Re: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY) |
Date: |
Sun, 17 May 2020 21:45:50 +0300 |
> Date: Sun, 17 May 2020 20:28:02 +0200
> From: Julius Pfrommer <address@hidden>
> Cc: address@hidden
>
> Cairo is a vector-drawing library and only responsible for the "glass"
> of each frame (called the "canvas" in other communities). All the
> event-handling logic, menu-drawing, etc. is untouched by it.
Which is what I said. So Cairo alone will be unable to provide all
the GUI features we need, we will need something else. And that
something is done different on different platforms.
> Looking at xterm.c, it is littered with #ifdef USE_CAIRO.
Yes, because Cairo and Xlib are two quite different ways of doing GUI
display.
> A first step could be to assume Cairo on X-based platforms and remove
> duplicate code.
We are going there, but it takes time. We've just made Cairo the
default build on master; it couldn't be that previously because the
Cairo code had several grave bugs which took us time to fix.
> The second step could be to decouple the "glass" from
> the tookit "chrome" more thoroughly in xterm.c. That is easier to do
> when a Cairo-canvas can be assumed for drawing.
>
> Then, that entire "glass" could be reused by other platforms once they
> have a Cairo-canvas for drawing as well. (Modulo the XWidget support
> that depends on GTK.)
>
> Once a switchover is in reach, it can live separately to the existing
> platform-specific "glass" until all the kinks are worked out.
Sounds like a good plan for several years, maybe more, of extensive
development on several platforms. Can I interest you in doing this?
And meanwhile, we also need to come up with enough new features every
2 - 3 years to keep our users engaged and attract new ones.
- Re: Ligatures, (continued)
- Re: Ligatures, Eli Zaretskii, 2020/05/18
- Re: Ligatures, Stefan Monnier, 2020/05/18
- Re: Ligatures (was: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY)), Clément Pit-Claudel, 2020/05/18
- Re: Ligatures (was: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY)), Eli Zaretskii, 2020/05/18
- Re: Ligatures (was: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY)), Clément Pit-Claudel, 2020/05/18
- Re: Ligatures (was: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY)), Eli Zaretskii, 2020/05/18
- Re: Ligatures (was: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY)), tomas, 2020/05/18
- Re: Ligatures, Stefan Monnier, 2020/05/18
- Re: Ligatures (was: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY)), Alan Third, 2020/05/18
- Re: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY), Julius Pfrommer, 2020/05/17
- Re: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY),
Eli Zaretskii <=
- Re: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY), chad, 2020/05/17
- Re: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY), Alan Third, 2020/05/18