mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-04-03 07:15:29 -04:00
fcft: update to 0.3.0
fcft now calculates the underline and strikeout integer positions, making our rendering code much simpler.
This commit is contained in:
parent
a17ce10c03
commit
0f15f0ba43
4 changed files with 7 additions and 13 deletions
2
PKGBUILD
2
PKGBUILD
|
|
@ -5,7 +5,7 @@ arch=('x86_64')
|
||||||
url=https://codeberg.org/dnkl/foot
|
url=https://codeberg.org/dnkl/foot
|
||||||
license=(mit)
|
license=(mit)
|
||||||
makedepends=('meson' 'ninja' 'scdoc' 'python' 'ncurses' 'tllist>=1.0.0')
|
makedepends=('meson' 'ninja' 'scdoc' 'python' 'ncurses' 'tllist>=1.0.0')
|
||||||
depends=('libxkbcommon' 'wayland' 'pixman' 'fcft>=0.2.0')
|
depends=('libxkbcommon' 'wayland' 'pixman' 'fcft>=0.3.0')
|
||||||
source=()
|
source=()
|
||||||
|
|
||||||
pkgver() {
|
pkgver() {
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@ wayland_cursor = dependency('wayland-cursor')
|
||||||
xkb = dependency('xkbcommon')
|
xkb = dependency('xkbcommon')
|
||||||
|
|
||||||
tllist = dependency('tllist', version: '>=1.0.0', fallback: ['tllist', 'tllist'])
|
tllist = dependency('tllist', version: '>=1.0.0', fallback: ['tllist', 'tllist'])
|
||||||
fcft = dependency('fcft', version: ['>=0.2.0', '<0.3.0'], fallback: ['fcft', 'fcft'])
|
fcft = dependency('fcft', version: ['>=0.3.0', '<0.4.0'], fallback: ['fcft', 'fcft'])
|
||||||
|
|
||||||
wayland_protocols_datadir = wayland_protocols.get_pkgconfig_variable('pkgdatadir')
|
wayland_protocols_datadir = wayland_protocols.get_pkgconfig_variable('pkgdatadir')
|
||||||
|
|
||||||
|
|
|
||||||
14
render.c
14
render.c
|
|
@ -105,14 +105,11 @@ draw_underline(const struct terminal *term, pixman_image_t *pix,
|
||||||
const struct font *font,
|
const struct font *font,
|
||||||
const pixman_color_t *color, int x, int y, int cols)
|
const pixman_color_t *color, int x, int y, int cols)
|
||||||
{
|
{
|
||||||
int baseline = y + font_baseline(term);
|
|
||||||
double width = font->underline.thickness;
|
|
||||||
int y_under = floor(baseline - font->underline.position + width / 2.);
|
|
||||||
|
|
||||||
pixman_image_fill_rectangles(
|
pixman_image_fill_rectangles(
|
||||||
PIXMAN_OP_SRC, pix, color,
|
PIXMAN_OP_SRC, pix, color,
|
||||||
1, &(pixman_rectangle16_t){
|
1, &(pixman_rectangle16_t){
|
||||||
x, y_under, cols * term->cell_width, round(max(1., width))});
|
x, y + font_baseline(term) - font->underline.position,
|
||||||
|
cols * term->cell_width, font->underline.thickness});
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
@ -120,14 +117,11 @@ draw_strikeout(const struct terminal *term, pixman_image_t *pix,
|
||||||
const struct font *font,
|
const struct font *font,
|
||||||
const pixman_color_t *color, int x, int y, int cols)
|
const pixman_color_t *color, int x, int y, int cols)
|
||||||
{
|
{
|
||||||
int baseline = y + font_baseline(term);
|
|
||||||
double width = font->strikeout.thickness;
|
|
||||||
int y_strike = floor(baseline - font->strikeout.position + width / 2.);
|
|
||||||
|
|
||||||
pixman_image_fill_rectangles(
|
pixman_image_fill_rectangles(
|
||||||
PIXMAN_OP_SRC, pix, color,
|
PIXMAN_OP_SRC, pix, color,
|
||||||
1, &(pixman_rectangle16_t){
|
1, &(pixman_rectangle16_t){
|
||||||
x, y_strike, cols * term->cell_width, round(max(1., width))});
|
x, y + font_baseline(term) - font->strikeout.position,
|
||||||
|
cols * term->cell_width, font->strikeout.thickness});
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
Subproject commit e4352f2c4c6b301b42c15e13ef34f1d734598ce7
|
Subproject commit 5e131e4f9be56dc5fba9311c4b75707e6a7c064d
|
||||||
Loading…
Add table
Add a link
Reference in a new issue