mirror of
https://github.com/typst/typst
synced 2025-05-14 04:56:26 +08:00
Consider glyph side when determining cursor position
This commit is contained in:
parent
a735bb9db3
commit
5800acceac
@ -40,7 +40,11 @@ pub fn jump_from_click(world: &dyn World, frame: &Frame, click: Point) -> Option
|
|||||||
let node = source.find(glyph.span);
|
let node = source.find(glyph.span);
|
||||||
let pos = if node.kind() == SyntaxKind::Text {
|
let pos = if node.kind() == SyntaxKind::Text {
|
||||||
let range = node.range();
|
let range = node.range();
|
||||||
(range.start + usize::from(glyph.offset)).min(range.end)
|
let mut offset = range.start + usize::from(glyph.offset);
|
||||||
|
if (click.x - pos.x) > width / 2.0 {
|
||||||
|
offset += glyph.c.len_utf8();
|
||||||
|
}
|
||||||
|
offset.min(range.end)
|
||||||
} else {
|
} else {
|
||||||
node.offset()
|
node.offset()
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user