Uli Schlachter b23c8875f7 font: Get rid of temporary cairo surface
i3 actually manages to have two different cairo surfaces referring to
the same drawable. One comes from the code in draw_util. The second is
temporarily created while rendering text via draw_text(). No idea how
well cairo handles this case.

This commit instead changes the code to pass the already existing cairo
surface from the caller through.

This might or might not fix https://github.com/i3/i3/pull/4357. My
thinking here is that cairo now knows the actual size of the drawable
and thus does not clip the drawing to a smaller size.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2021-03-05 11:37:03 +01:00
..
2020-04-19 09:58:25 +02:00
2020-04-20 04:25:06 +02:00
2020-04-20 04:25:06 +02:00
2020-04-19 09:58:25 +02:00
2020-04-20 04:25:06 +02:00
2020-04-19 09:58:25 +02:00
2020-04-20 04:25:06 +02:00
2020-04-20 04:25:06 +02:00
2020-04-20 04:25:06 +02:00
2020-04-20 04:25:06 +02:00
2020-05-19 14:45:06 +02:00
2020-04-20 04:25:06 +02:00
2020-04-20 04:25:06 +02:00
2020-04-19 09:58:25 +02:00
2020-04-20 04:25:06 +02:00

Introduction
============

libi3 is an *INTERNAL* library which contains functions that i3 and related
tools (i3-msg, i3-input, i3-nagbar, i3-config-wizard, i3bar) use.

It is NOT to be used by other programs.

Structure
=========

Every function gets its own .c file, which in turn gets compiled into an .o
object file. Afterwards, all .o files are archived into one static library
(libi3.a). This library will be linked into all i3 binaries. The linker is able
to eliminate unused .o files when linking, so only the functions which you
actually use will be included in the corresponding binary.