@@ -624,7 +624,6 @@ def add_dialog_proc(name, p, context = nil)
624
624
625
625
DIALOG_HEIGHT = 20
626
626
private def render_dialog ( cursor_column )
627
- return unless Encoding . default_external == Encoding ::UTF_8
628
627
@dialogs . each do |dialog |
629
628
render_each_dialog ( dialog , cursor_column )
630
629
end
@@ -713,6 +712,13 @@ def add_dialog_proc(name, p, context = nil)
713
712
reset_dialog ( dialog , old_dialog )
714
713
move_cursor_down ( dialog . vertical_offset )
715
714
Reline ::IOGate . move_cursor_column ( dialog . column )
715
+ if Encoding . default_external == Encoding ::UTF_8
716
+ full_block = '█'
717
+ upper_half_block = '▀'
718
+ lower_half_block = '▄'
719
+ else
720
+ full_block = upper_half_block = lower_half_block = ''
721
+ end
716
722
dialog . contents . each_with_index do |item , i |
717
723
if i == pointer
718
724
bg_color = '45'
@@ -729,12 +735,12 @@ def add_dialog_proc(name, p, context = nil)
729
735
if dialog . scrollbar_pos and ( dialog . scrollbar_pos != old_dialog . scrollbar_pos or dialog . column != old_dialog . column )
730
736
@output . write "\e [37m"
731
737
if dialog . scrollbar_pos <= ( i * 2 ) and ( i * 2 + 1 ) < ( dialog . scrollbar_pos + bar_height )
732
- @output . write '█'
738
+ @output . write full_block
733
739
elsif dialog . scrollbar_pos <= ( i * 2 ) and ( i * 2 ) < ( dialog . scrollbar_pos + bar_height )
734
- @output . write '▀'
740
+ @output . write upper_half_block
735
741
str += ''
736
742
elsif dialog . scrollbar_pos <= ( i * 2 + 1 ) and ( i * 2 ) < ( dialog . scrollbar_pos + bar_height )
737
- @output . write '▄'
743
+ @output . write lower_half_block
738
744
else
739
745
@output . write ' ' * @block_elem_width
740
746
end
0 commit comments