Matthias Clasen
259bbdcb09
Share glyph and icon caches
...
Use the same texture atlases to back both
the glyph and icon caches, and unify their
sizes and management. Store big glyphs
in separate textures, so all atlases have
the same size. Tweak some of the eviction
parameters.
We share the caches across all GL contexts
on a display, unless the GSK_NO_SHARED_CACHES
env var is set.
2019-06-04 23:00:02 +00:00
Matthias Clasen
c9cea36b37
gl: Use pad-extend for icon cache
...
Repeat the border pixels to avoid artifacts from
linear scaling.
2019-06-04 23:00:02 +00:00
Matthias Clasen
4020399439
gl: Use linear scaling for atlases
2019-06-04 23:00:01 +00:00
Matthias Clasen
efc31161f0
gl: Allow setting min/mag filter on textures
...
This will be used in the future.
Adapt all callers to pass GL_NEAREST for now.
2019-06-04 23:00:01 +00:00
Matthias Clasen
102cc1c8d3
gl: Add 1 pixel of padding in the icon cache
2019-06-04 23:00:01 +00:00
Matthias Clasen
f37274dbb0
gl: Don't leak texture atlases
...
We need to free the texture atlases, and the
textures backing them.
2019-06-04 23:00:01 +00:00
Matthias Clasen
a3757936c1
gl: Free icon data
2019-06-04 23:00:01 +00:00
Timm Bäder
cf4ff56ca5
gl renderer: Add & use icon cache
...
Upload small icons all to the same texture atlas.
2019-06-04 23:00:01 +00:00