diff options
author | Phil Jones <philj56@gmail.com> | 2022-06-21 23:42:59 +0100 |
---|---|---|
committer | Phil Jones <philj56@gmail.com> | 2022-06-21 23:42:59 +0100 |
commit | c149768f888efbf9ab237730280402bd607894ac (patch) | |
tree | 0d2cd89abb8ccfc24d09836274cd0ca63a448be0 /src/entry_backend | |
parent | 05ce291004bee5587fff9e0bbf06676f82e3f457 (diff) |
Add result selection.
Diffstat (limited to 'src/entry_backend')
-rw-r--r-- | src/entry_backend/harfbuzz.c | 8 | ||||
-rw-r--r-- | src/entry_backend/pango.c | 8 |
2 files changed, 16 insertions, 0 deletions
diff --git a/src/entry_backend/harfbuzz.c b/src/entry_backend/harfbuzz.c index dc479d3..51f08ea 100644 --- a/src/entry_backend/harfbuzz.c +++ b/src/entry_backend/harfbuzz.c @@ -218,6 +218,14 @@ void entry_backend_update(struct entry *entry) setup_hb_buffer(buffer); hb_buffer_add_utf8(buffer, entry->results.buf[i], -1, 0, -1); hb_shape(entry->backend.hb_font, buffer, NULL, 0); + if (i == entry->selection) { + cairo_save(cr); + struct color color = entry->selection_color; + cairo_set_source_rgba(cr, color.r, color.g, color.b, color.a); + } width = render_hb_buffer(cr, buffer, entry->image.scale); + if (i == entry->selection) { + cairo_restore(cr); + } } } diff --git a/src/entry_backend/pango.c b/src/entry_backend/pango.c index d5dc8b4..38b8a02 100644 --- a/src/entry_backend/pango.c +++ b/src/entry_backend/pango.c @@ -74,6 +74,14 @@ void entry_backend_update(struct entry *entry) } pango_layout_set_text(layout, str, -1); pango_cairo_update_layout(cr, layout); + if (i == entry->selection) { + cairo_save(cr); + struct color color = entry->selection_color; + cairo_set_source_rgba(cr, color.r, color.g, color.b, color.a); + } pango_cairo_show_layout(cr, layout); + if (i == entry->selection) { + cairo_restore(cr); + } } } |