summaryrefslogtreecommitdiff
path: root/src/xfaces.c
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>1970-01-01 00:00:00 +0000
committerPo Lu <luangruo@yahoo.com>2024-04-28 11:58:22 +0800
commit77a170a175dfeb17dab23e41668b8497b8b3b9d7 (patch)
tree91bfe9fde05be0246fae36ef9daa6a755bcef500 /src/xfaces.c
parent4992df159157806bcbad87569f34dc5136c96601 (diff)
downloademacs-77a170a175dfeb17dab23e41668b8497b8b3b9d7.tar.gz
Port double-line underlines to GUI systems
* src/xterm.c (x_get_scale_factor): Replace display in first argument with a pointer to dpyinfo. (x_draw_underwave): Adjust to match. (x_draw_glyph_string): Implement double-line underlines. * src/androidterm.c (android_get_scale_factor) (android_draw_glyph_string): * src/haikuterm.c (haiku_draw_text_decoration): * src/nsterm.m (ns_draw_text_decoration): * src/pgtkterm.c (pgtk_draw_glyph_string): * src/w32term.c (w32_draw_glyph_string): Synchronize with X. * src/xfaces.c (realize_gui_face): Enable `double-line' on window systems.
Diffstat (limited to 'src/xfaces.c')
-rw-r--r--src/xfaces.c22
1 files changed, 15 insertions, 7 deletions
diff --git a/src/xfaces.c b/src/xfaces.c
index 07e198974fa..d9ee82c8e7f 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -6398,13 +6398,21 @@ realize_gui_face (struct face_cache *cache, Lisp_Object attrs[LFACE_VECTOR_SIZE]
}
else if (EQ (keyword, QCstyle))
{
- if (EQ (value, Qline))
- face->underline = FACE_UNDERLINE_SINGLE;
- else if (EQ (value, Qwave))
- face->underline = FACE_UNDERLINE_WAVE;
- else
- face->underline = FACE_UNDERLINE_SINGLE;
- }
+ if (EQ (value, Qline))
+ face->underline = FACE_UNDERLINE_SINGLE;
+ else if (EQ (value, Qdouble_line))
+ face->underline = FACE_UNDERLINE_DOUBLE_LINE;
+ else if (EQ (value, Qwave))
+ face->underline = FACE_UNDERLINE_WAVE;
+#if 0
+ else if (EQ (value, Qdots))
+ face->underline = FACE_UNDERLINE_DOTS;
+ else if (EQ (value, Qdashes))
+ face->underline = FACE_UNDERLINE_DASHES;
+#endif /* 0 */
+ else
+ face->underline = FACE_UNDERLINE_SINGLE;
+ }
else if (EQ (keyword, QCposition))
{
face->underline_at_descent_line_p = !NILP (value);