patch 9.0.0438: cannot put virtual text above a line
Problem: Cannot put virtual text above a line.
Solution: Add the "above" value for "text_align".
diff --git a/src/testdir/dumps/Test_prop_with_text_above_1.dump b/src/testdir/dumps/Test_prop_with_text_above_1.dump
new file mode 100644
index 0000000..cc68f5e
--- /dev/null
+++ b/src/testdir/dumps/Test_prop_with_text_above_1.dump
@@ -0,0 +1,9 @@
+|f+0&#ffff4012|i|r|s|t| |t|h|i|n|g| |a|b|o|v|e| @42
+|s+0&#ffd7ff255|e|c|o|n|d| |t|h|i|n|g| |a|b|o|v|e| @41
+|o+0&#ffffff0|n|e| |t|w|o| @52
+|t|h|r>e@1| |f|o|u|r| @49
+|a+0&#ffff4012|n|o|t|h|e|r| |t|h|i|n|g| @46
+|f+0&#ffffff0|i|v|e| |s|i|x| @51
+|~+0#4040ff13&| @58
+|~| @58
+| +0#0000000&@41|2|,|4| @10|A|l@1|
diff --git a/src/testdir/test_textprop.vim b/src/testdir/test_textprop.vim
index 21d751f..d89f84c 100644
--- a/src/testdir/test_textprop.vim
+++ b/src/testdir/test_textprop.vim
@@ -2848,6 +2848,26 @@
call delete('XscriptPropsBelowNowrap')
endfunc
+func Test_props_with_text_above()
+ CheckRunVimInTerminal
+
+ let lines =<< trim END
+ call setline(1, ['one two', 'three four', 'five six'])
+ call prop_type_add('above1', #{highlight: 'Search'})
+ call prop_type_add('above2', #{highlight: 'DiffChange'})
+ call prop_add(1, 0, #{type: 'above1', text: 'first thing above', text_align: 'above'})
+ call prop_add(1, 0, #{type: 'above2', text: 'second thing above', text_align: 'above'})
+ call prop_add(3, 0, #{type: 'above1', text: 'another thing', text_align: 'above'})
+
+ normal gglllj
+ END
+ call writefile(lines, 'XscriptPropsWithTextAbove', 'D')
+ let buf = RunVimInTerminal('-S XscriptPropsWithTextAbove', #{rows: 9, cols: 60})
+ call VerifyScreenDump(buf, 'Test_prop_with_text_above_1', {})
+
+ call StopVimInTerminal(buf)
+endfunc
+
func Test_props_with_text_override()
CheckRunVimInTerminal