Retrospective commit from 2009-08-12.
[bpt/emacs.git] / src / ChangeLog.bidi
1 2009-09-12 Eli Zaretskii <eliz@gnu.org>
2
3 * dispnew.c (direct_output_for_insert): Give up if we are
4 reordering bidirectional text.
5
6 * dispextern.h (IT_STACK_SIZE): Enlarge to 5.
7
8 * xdisp.c (display_line): Set row->end and it->start for the next
9 row to the next character in logical order. If we are reordering
10 bidi text, push and pop the iterator before and after momentarily
11 iterating in logical order.
12
13 2009-09-11 Eli Zaretskii <eliz@gnu.org>
14
15 * xdisp.c (set_iterator_to_next, reseat, reseat_1)
16 (reseat_at_next_visible_line_start): Accept additional argument
17 force_logical_p; all callers changed. If force_logical_p is
18 non-zero, force iteration in buffer's logical order even in bidi
19 buffers.
20
21 * dispnew.c (direct_output_for_insert): Call set_iterator_to_next
22 with additional argument zero.
23
24 * dispextern.h (set_iterator_to_next): Now accepts an additional
25 argument.
26
27 2009-08-29 Eli Zaretskii <eliz@gnu.org>
28
29 * xdisp.c (set_cursor_from_row): Don't assume glyph->charpos
30 increments linearly.
31 (try_window_reusing_current_matrix): Don't assume glyph->charpos
32 increments linearly.
33
34 2009-08-28 Eli Zaretskii <eliz@gnu.org>
35
36 * bidi.c <bidi_overriding_paragraph_direction>: Default to L2R,
37 for now.
38
39 2009-08-22 Eli Zaretskii <eliz@gnu.org>
40
41 * bidi.c (bidi_initialize): staticpro bidi_char_table.
42 (bidi_check_type): New function.
43 (bidi_cache_iterator_state, bidi_remember_char)
44 (bidi_resolve_explicit_1, bidi_resolve_explicit)
45 (bidi_resolve_weak, bidi_resolve_neutral)
46 (bidi_level_of_next_char): Use it to validate the bidi type
47 assigned to the iterator.
48
49 2009-08-15 Eli Zaretskii <eliz@gnu.org>
50
51 * bidi.c (bidi_initialize): Fix initialization of bidi_type_table.
52
53 * xdisp.c (set_iterator_to_next): Fix position setting after call
54 to bidi_get_next_char_visually.
55
56 2005-12-03 Eli Zaretskii <eliz@gnu.org>
57
58 * bidi.c: Include stdio.h unconditionally. Fix and elaborate
59 commentary. Add Copyright blurb.
60
61 2004-03-08 Kenichi Handa <handa@m17n.org>
62
63 * xdisp.c (reseat_1): Call bidi_init_it with a previous position.
64
65 * bidi.c (bidi_init_it): Set bidi_it->ch_len even if POS > 0.
66
67 2004-03-04 Kenichi Handa <handa@m17n.org>
68
69 The following changes are to support for bi-directional text
70 display.
71
72 * Makefile.in (obj): Include bidi.o.
73 (bidi.o): New target.
74
75 * bidi.c: New file.
76
77 * buffer.h (struct buffer): New member bidi_display_reordering.
78
79 * buffer.c (init_buffer_once): Initialize bidi_display_reordering.
80 (syms_of_buffer): Declarations of Lisp variables
81 default-bidi-display-reordering and bidi-display-reordering.
82
83 * dispextern.h (BIDI_MAXLEVEL): New macro.
84 (bidi_type_t, bidi_dir_t): New types.
85 (bidi_saved_info, bidi_stack, bidi_it): New structs.
86 (struct it): New members bidi_p and bidi_it.
87 (bidi_init_it): Extern it.
88 (bidi_get_next_char_visually): Extern it.
89
90 * dispnew.c (direct_output_forward_char): Give up if we need bidi
91 processing or buffer's direction is right-to-left.
92
93 * xdisp.c (init_iterator): Initialize it->bidi_p.
94 (reseat_1): Cal bidi_init_it and bidi_get_next_char_visually if
95 necessary.
96 (set_iterator_to_next): Cal bidi_get_next_char_visually if
97 necessary.
98
99
100 ;; Local Variables:
101 ;; coding: utf-8
102 ;; add-log-time-zone-rule: t
103 ;; End:
104
105 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
106
107 This file is part of GNU Emacs.
108
109 GNU Emacs is free software: you can redistribute it and/or modify
110 it under the terms of the GNU General Public License as published by
111 the Free Software Foundation, either version 3 of the License, or
112 (at your option) any later version.
113
114 GNU Emacs is distributed in the hope that it will be useful,
115 but WITHOUT ANY WARRANTY; without even the implied warranty of
116 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
117 GNU General Public License for more details.
118
119 You should have received a copy of the GNU General Public License
120 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.