diff options
| author | Eli Zaretskii | 2013-12-07 19:21:57 +0200 |
|---|---|---|
| committer | Eli Zaretskii | 2013-12-07 19:21:57 +0200 |
| commit | ce1d7b61f12dcc1b67535b68d9b0655b45fcadb6 (patch) | |
| tree | 881d03f4f486933482cd2e3851184cd3b172ef1b /src/ChangeLog | |
| parent | 6630df25238c5a1efa2bc6a0fa7889782e8c91b5 (diff) | |
| parent | fa6fa1a1773f255b5efbe52a743b017f4908a6cb (diff) | |
| download | emacs-ce1d7b61f12dcc1b67535b68d9b0655b45fcadb6.tar.gz emacs-ce1d7b61f12dcc1b67535b68d9b0655b45fcadb6.zip | |
Merge from trunk.
Diffstat (limited to 'src/ChangeLog')
| -rw-r--r-- | src/ChangeLog | 762 |
1 files changed, 759 insertions, 3 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index a2dfa5bf613..e67fdada36f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,10 +1,766 @@ | |||
| 1 | 2013-12-07 Jan Djärv <jan.h.d@swipnet.se> | ||
| 2 | |||
| 3 | Pixel resize changes for NS (Bug#16049). | ||
| 4 | * nsterm.m (x_set_window_size): Change parameters rows/cols to | ||
| 5 | height/width. row/cols are locals. | ||
| 6 | Pass pixelwise to check_frame_size. Don't set FRAME_PIXEL_WIDTH/HEIGHT. | ||
| 7 | (updateFrameSize:): Remove gsextra. Adjust for pixelwise resize. | ||
| 8 | (windowWillResize): Remove gsextra. Calculate extra as in | ||
| 9 | updateFrameSize. | ||
| 10 | (x_new_font): Don't change frame size if fullscreen. Change | ||
| 11 | size pixelwise. | ||
| 12 | |||
| 13 | * nsfns.m (Fx_create_frame): Call change_frame_size twice as per | ||
| 14 | comment in xfns.c. Change to pixelwise call. | ||
| 15 | |||
| 16 | 2013-12-06 Eli Zaretskii <eliz@gnu.org> | ||
| 17 | |||
| 18 | * buffer.c (Fset_buffer_multibyte): Invalidate buffer caches. | ||
| 19 | (Bug#16070) | ||
| 20 | |||
| 21 | 2013-12-06 Dmitry Antipov <dmantipov@yandex.ru> | ||
| 22 | |||
| 23 | * xterm.c (input_signal_count): Remove. | ||
| 24 | (x_dispatch_event): Define unconditionally. | ||
| 25 | (x_make_frame_visible): Process X events until the frame | ||
| 26 | is really visible (Bug#16027). | ||
| 27 | * xterm.h (x_dispatch_event): Declare unconditionally. | ||
| 28 | |||
| 29 | 2013-12-05 Jan Djärv <jan.h.d@swipnet.se> | ||
| 30 | |||
| 31 | * nsfns.m (ns_frame_parm_handlers): Add right/bottom_divider_width. | ||
| 32 | |||
| 33 | * nsterm.m (x_set_window_size): Handle pixelwise. | ||
| 34 | |||
| 35 | 2013-12-05 Martin Rudalics <rudalics@gmx.at> | ||
| 36 | |||
| 37 | * w32term.c (x_new_font): | ||
| 38 | * xterm.c (x_new_font): Calculate new frame size from new font | ||
| 39 | size (Bug#16028). | ||
| 40 | |||
| 41 | 2013-12-04 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 42 | |||
| 43 | * lisp.h (FOR_EACH_TAIL): New macro. | ||
| 44 | * fns.c (Fdelq): Use it to avoid inf-loops; remove QUIT. | ||
| 45 | |||
| 46 | * window.c (select_window): Call second wset_redisplay before we change | ||
| 47 | selected_window (bug#16034). | ||
| 48 | |||
| 49 | 2013-12-04 Paul Eggert <eggert@cs.ucla.edu> | ||
| 50 | |||
| 51 | * bidi.c (LRM_CHAR, RLM_CHAR): Remove; no longer used. | ||
| 52 | |||
| 53 | 2013-12-04 Eli Zaretskii <eliz@gnu.org> | ||
| 54 | |||
| 55 | * w32xfns.c: Include window.h, to avoid a compiler warning. | ||
| 56 | |||
| 57 | 2013-12-04 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 58 | |||
| 59 | * window.c (window_scroll): Mark window for redisplay (bug#16034). | ||
| 60 | (scroll_command, Fscroll_other_window): Don't cause redisplay now that | ||
| 61 | window_scroll takes care of it. | ||
| 62 | (Fset_window_point, Fdelete_other_windows_internal) | ||
| 63 | (set_window_buffer, Fwindow_resize_apply, resize_frame_windows) | ||
| 64 | (Fsplit_window_internal, Fdelete_window_internal) | ||
| 65 | (Fresize_mini_window_internal, Fset_window_configuration) | ||
| 66 | (apply_window_adjustment): Use fset_redisplay and wset_redisplay to | ||
| 67 | cause redisplay instead of forcing a complete redisplay. | ||
| 68 | * xdisp.c (wset_redisplay): Don't set windows_or_buffers_changed if | ||
| 69 | we're only affecting the selected_window. | ||
| 70 | |||
| 71 | 2013-12-04 Eli Zaretskii <eliz@gnu.org> | ||
| 72 | |||
| 73 | * bidi.c (bidi_get_type, bidi_get_category): Handle the isolate | ||
| 74 | directional control characters. Update type and category | ||
| 75 | determination according to the UBA from Unicode v6.3. | ||
| 76 | (bidi_category_t): New category EXPLICIT_FORMATTING. | ||
| 77 | |||
| 78 | * dispextern.h (bidi_type_t): Update to include new bidirectional | ||
| 79 | properties introduced with Unicode v6.3. (Bug#16043) | ||
| 80 | |||
| 81 | 2013-12-04 Martin Rudalics <rudalics@gmx.at> | ||
| 82 | |||
| 83 | * xterm.c (XTflash): Fix coordinate of bottom area to flash | ||
| 84 | (Bug#16044). | ||
| 85 | |||
| 86 | 2013-12-04 Dmitry Antipov <dmantipov@yandex.ru> | ||
| 87 | |||
| 88 | * font.c (font_list_entities): Remove dummy assignment. | ||
| 89 | * font.h (struct font) [HAVE_WINDOW_SYSTEM]: Group members which are | ||
| 90 | used on graphic displays only. Remove unused 'font_encoder' member. | ||
| 91 | (struct font_bitmap): Remove unused 'extra' member. | ||
| 92 | * nsfont.m (nsfont_open): | ||
| 93 | * w32font.c (w32font_open_internal): | ||
| 94 | * ftfont.c (ftfont_get_bitmap): Adjust users. | ||
| 95 | |||
| 96 | 2013-12-03 Paul Eggert <eggert@cs.ucla.edu> | ||
| 97 | |||
| 98 | Use bool for boolean. | ||
| 99 | * tparam.c (tparam1): | ||
| 100 | * undo.c (record_point, record_property_change): | ||
| 101 | Use bool for boolean, for local vars that are always true or false. | ||
| 102 | |||
| 103 | Minor integer overflow fixes (Bug#16033). | ||
| 104 | * window.c (Fset_window_new_pixel): Don't let new_pixel go negative. | ||
| 105 | This improves on the previous fix to this function. | ||
| 106 | (window_resize_check): When summing up pixel counts, don't rely on | ||
| 107 | undefined behavior if the sum overflows. | ||
| 108 | |||
| 109 | 2013-12-03 Martin Rudalics <rudalics@gmx.at> | ||
| 110 | |||
| 111 | * window.c (Fset_window_new_pixel): Don't choke at negative | ||
| 112 | argument value (Bug#16033). | ||
| 113 | |||
| 114 | * xfns.c (Fx_create_frame): Add another call to change_frame_size | ||
| 115 | to avoid crash in window_box_height. | ||
| 116 | |||
| 117 | * gtkutil.h: Fix external declaration of xg_frame_set_char_size. | ||
| 118 | * gtkutil.c (xg_frame_set_char_size, style_changed_cb): Fix size | ||
| 119 | calculation. | ||
| 120 | * xterm.c (x_set_window_size): Fix size calculation (Bug#16013). | ||
| 121 | |||
| 122 | 2013-12-03 Paul Eggert <eggert@cs.ucla.edu> | ||
| 123 | |||
| 124 | Minor integer overflow fixes. | ||
| 125 | * window.c (Fset_window_new_pixel, grow_mini_window): | ||
| 126 | * xdisp.c (Fwindow_text_pixel_size): | ||
| 127 | Avoid undefined behavior on signed integer overflow. | ||
| 128 | * xfns.c (x_set_mouse_color): | ||
| 129 | Check that drag shape fits in 'unsigned', since that's what X wants. | ||
| 130 | |||
| 131 | 2013-12-02 Eli Zaretskii <eliz@gnu.org> | ||
| 132 | |||
| 133 | Improve reporting of fatal exception on MS-Windows. | ||
| 134 | * w32fns.c (my_exception_handler): New function. | ||
| 135 | (globals_of_w32fns): Set it up as the unhandled exception | ||
| 136 | handler. Initialize exception code and address to zeros. | ||
| 137 | (emacs_abort): If the exception code and address are available, | ||
| 138 | print them at the beginning of the backtrace. Fix the format of | ||
| 139 | printing addresses (was producing 0x0x12345678 on XP). | ||
| 140 | (Bug#15994) | ||
| 141 | |||
| 142 | 2013-12-02 Helmut Eller <eller.helmut@gmail.com> | ||
| 143 | |||
| 144 | * eval.c (Fbacktrace__locals): New function. | ||
| 145 | (syms_of_eval): Defsubr it. | ||
| 146 | |||
| 147 | 2013-12-02 Dmitry Antipov <dmantipov@yandex.ru> | ||
| 148 | |||
| 149 | * font.h (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT): | ||
| 150 | Define here to unify between... | ||
| 151 | * nsterm.h, w32term.h, xterm.h: ...port-specific headers. | ||
| 152 | * w32term.h (CHECK_W32_FRAME): Remove unused macro. | ||
| 153 | |||
| 154 | 2013-12-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> | ||
| 155 | |||
| 156 | * xterm.h (struct scroll_bar): Remove member `fringe_extended_p'. | ||
| 157 | |||
| 158 | * xterm.c (x_draw_fringe_bitmap, x_scroll_run): Remove code for | ||
| 159 | fringe background extension. | ||
| 160 | (x_scroll_bar_create): Remove variables `sb_left' and `sb_width', | ||
| 161 | because they are now always the same as `left' and `width', | ||
| 162 | respectively. Remove code for the case that `width' and | ||
| 163 | `sb_width' are different. | ||
| 164 | |||
| 165 | 2013-12-01 Paul Eggert <eggert@cs.ucla.edu> | ||
| 166 | |||
| 167 | Fix minor problems found by static checking. | ||
| 168 | * dispextern.h, xdisp.c (x_draw_bottom_divider): Now static. | ||
| 169 | * frame.c (set_frame_param) [!HAVE_NTGUI]: Remove. | ||
| 170 | * xdisp.c (Ftool_bar_height) [USE_GTK || HAVE_NS]: Now const function. | ||
| 171 | |||
| 172 | 2013-12-01 Lars Magne Ingebrigtsen <larsi@gnus.org> | ||
| 173 | |||
| 174 | * image.c (imagemagick_compute_animated_image): Don't crash if we | ||
| 175 | have an animation with different-sized images (bug#15313). | ||
| 176 | |||
| 177 | 2013-11-30 Martin Rudalics <rudalics@gmx.at> | ||
| 178 | |||
| 179 | Remove some unused items introduced during pixelwise change. | ||
| 180 | * window.c (window_resize_total_check): Remove unused function. | ||
| 181 | * xdisp.c (remember_mouse_glyph): Remove unused label. | ||
| 182 | (Ftool_bar_height): Move declaration inside #if. | ||
| 183 | * xterm.c (x_set_window_size): Don't use r and c. | ||
| 184 | |||
| 185 | 2013-11-30 Juanma Barranquero <lekktu@gmail.com> | ||
| 186 | |||
| 187 | * xdisp.c (Fwindow_text_pixel_size): Remove unused variables | ||
| 188 | `value' and `endp'. | ||
| 189 | |||
| 190 | * window.c (Fset_window_configuration): Comment out unused variables. | ||
| 191 | |||
| 192 | * w32term.c (w32_read_socket): Remove unused variable `buf'. | ||
| 193 | |||
| 194 | 2013-11-30 Jan Djärv <jan.h.d@swipnet.se> | ||
| 195 | |||
| 196 | * xdisp.c (redisplay_internal): unrequest_sigio => request_sigio. | ||
| 197 | |||
| 198 | * xfaces.c (NEAR_SAME_COLOR_THRESHOLD): Move inside HAVE_WINDOW_SYSTEM. | ||
| 199 | |||
| 200 | * gnutls.c (gnutls_audit_log_function): Only declare and define if | ||
| 201 | HAVE_GNUTLS3 (Bug#16001). | ||
| 202 | |||
| 203 | * xdisp.c (redisplay_internal): Call request_sigio at end_of_redisplay | ||
| 204 | if interrupts are deferred (Bug#15801). | ||
| 205 | |||
| 206 | 2013-11-30 Martin Rudalics <rudalics@gmx.at> | ||
| 207 | |||
| 208 | Support resizing frames and windows pixelwise. | ||
| 209 | * dispextern.h (enum window_part): Add ON_SCROLL_BAR, | ||
| 210 | ON_RIGHT_DIVIDER and ON_BOTTOM_DIVIDER. | ||
| 211 | (struct glyph_matrix): Replace window_left_col and | ||
| 212 | window_top_line by window_pixel_left and window_pixel_top. | ||
| 213 | (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P): Minor | ||
| 214 | rewrite. | ||
| 215 | (enum face_id): Add WINDOW_DIVIDER_FACE_ID. | ||
| 216 | (draw_window_divider, move_it_to, x_draw_right_divider) | ||
| 217 | (x_draw_bottom_divider, change_frame_size): Add or fix | ||
| 218 | declarations. | ||
| 219 | * dispnew.c (change_frame_size_1): Change prototype. | ||
| 220 | (adjust_glyph_matrix, required_matrix_width) | ||
| 221 | (adjust_frame_glyphs_for_window_redisplay): Use pixel | ||
| 222 | values instead of lines and columns. | ||
| 223 | (marginal_area_string): Use WINDOW_FRINGES_WIDTH instead of | ||
| 224 | WINDOW_TOTAL_FRINGE_WIDTH. | ||
| 225 | (handle_window_change_signal, do_pending_window_change) | ||
| 226 | (init_display): Adjusts calls of change_frame_size. | ||
| 227 | (change_frame_size, change_frame_size_1): Handle pixelwise | ||
| 228 | changes. | ||
| 229 | * frame.c (Qright_divider_width, Qbottom_divider_width): New | ||
| 230 | Lisp objects. | ||
| 231 | (set_menu_bar_lines_1, set_menu_bar_lines, make_frame) | ||
| 232 | (make_terminal_frame, Fmake_terminal_frame, Fframe_parameters) | ||
| 233 | (x_set_internal_border_width, x_set_vertical_scroll_bars) | ||
| 234 | (x_set_scroll_bar_width, x_figure_window_size): Handle pixel | ||
| 235 | values. | ||
| 236 | (set_frame_param): New function. | ||
| 237 | (Fframe_text_cols, Fframe_text_lines, Fframe_total_cols) | ||
| 238 | (Fframe_text_width, Fframe_text_height, Fscroll_bar_width) | ||
| 239 | (Ffringe_width, Fborder_width, Fright_divider_width) | ||
| 240 | (Fbottom_divider_width): New functions, defsubr them. | ||
| 241 | (Fset_frame_height, Fset_frame_width, Fset_frame_size): New | ||
| 242 | argument pixelwise. | ||
| 243 | (struct frame_parm_table): New members Qright_divider_width and | ||
| 244 | Qbottom_divider_width. | ||
| 245 | (x_set_frame_parameters): Handle parameters for pixelwise sizes. | ||
| 246 | (x_report_frame_params): Handle Qright_divider_width and | ||
| 247 | Qbottom_divider_width. | ||
| 248 | (x_set_right_divider_width, x_set_bottom_divider_width): New | ||
| 249 | functions. | ||
| 250 | (frame_resize_pixelwise): New option. | ||
| 251 | * frame.h (struct frame): Add tool_bar_height, menu_bar_height, | ||
| 252 | new_pixelwise, right_divider_width and bottom_divider_width; | ||
| 253 | remove total_lines; rename text_lines, text_cols, new_text_lines | ||
| 254 | and new_text_cols to text_height, text_width, new_height and | ||
| 255 | new_width respectively. | ||
| 256 | (FRAME_LINES, FRAME_COLS): Rename to FRAME_TEXT_HEIGHT and | ||
| 257 | FRAME_TEXT_WIDTH respectively. | ||
| 258 | (FRAME_MENU_BAR_HEIGHT, FRAME_TOOL_BAR_HEIGHT) | ||
| 259 | (FRAME_RIGHT_DIVIDER_WIDTH, FRAME_BOTTOM_DIVIDER_WIDTH) | ||
| 260 | (FRAME_TEXT_TO_PIXEL_WIDTH, FRAME_PIXEL_TO_TEXT_WIDTH): New | ||
| 261 | macros. | ||
| 262 | (FRAME_TOP_MARGIN_HEIGHT, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH) | ||
| 263 | (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH, FRAME_SCROLL_BAR_AREA_WIDTH) | ||
| 264 | (SET_FRAME_COLS, SET_FRAME_WIDTH, SET_FRAME_HEIGHT) | ||
| 265 | (FRAME_TEXT_COLS_TO_PIXEL_WIDTH, FRAME_PIXEL_WIDTH_TO_TEXT_COLS) | ||
| 266 | (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rewrite macros. | ||
| 267 | (FRAME_TOTAL_COLS_ARG): Remove macro. | ||
| 268 | * fringe.c (draw_fringe_bitmap_1): Handle right divder. | ||
| 269 | * gtkutil.c (xg_frame_resized, xg_frame_set_char_size) | ||
| 270 | (x_wm_set_size_hint): Handle frame pixel sizes. | ||
| 271 | * indent.c (compute_motion, Fcompute_motion): Call | ||
| 272 | window_body_width instead of window_body_cols. | ||
| 273 | * keyboard.c (Qright_divider, Qbottom_divider): New symbols. | ||
| 274 | (make_lispy_position): Handle right and bottom dividers. | ||
| 275 | (Fsuspend_emacs): Pixelize call of change_frame_size. | ||
| 276 | * keyboard.h: Extern Qright_divider, Qbottom_divider. | ||
| 277 | * lisp.h: Extern set_frame_param. | ||
| 278 | * nsfns.m (x_set_tool_bar_lines): Pixelize call of | ||
| 279 | x_set_window_size. | ||
| 280 | (Fx_create_frame): Add entry for vertical_drag_cursor. Pixelize | ||
| 281 | call of change_frame_size. | ||
| 282 | * nsterm.h (struct ns_output): Add vertical_drag_cursor. | ||
| 283 | * nsterm.m (ns_update_window_end): Optionally draw right | ||
| 284 | divider. | ||
| 285 | (x_set_window_size): Add argument pixelwise. Call | ||
| 286 | check_frame_size and change_frame_size with pixelwise zero. | ||
| 287 | (ns_draw_window_divider): New function. | ||
| 288 | (ns_redisplay_interface): Add ns_draw_window_divider. | ||
| 289 | (updateFrameSize:): Call change_frame_size with pixelwise zero. | ||
| 290 | (x_new_font): Call x_set_window_size with pixelwise zero. | ||
| 291 | * print.c (print_object): For a window print its sequence | ||
| 292 | number again. | ||
| 293 | * term.c (Fresume_tty): Pixelize call of change_frame_size. | ||
| 294 | * w32fns.c (x_set_mouse_color): Handle vertical drag cursor. | ||
| 295 | (x_set_menu_bar_lines, x_set_tool_bar_lines): Calculate pixelwise. | ||
| 296 | (w32_createwindow): Use scroll bar area width. | ||
| 297 | (w32_wnd_proc): Handle bottom divider width. For | ||
| 298 | WM_WINDOWPOSCHANGING return zero if we resize pixelwise. | ||
| 299 | (Fx_create_frame): Default divider width parameters. Caclulate | ||
| 300 | sizes pixelwise. Add vertical drag cursor support. | ||
| 301 | (x_create_tip_frame): Default divider widths to zero. Pixelize | ||
| 302 | call to change_frame_size. | ||
| 303 | (Fx_show_tip): Add handling of divider widths. Pixelize window | ||
| 304 | position and sizes. | ||
| 305 | (Fw32_frame_rect): New function. | ||
| 306 | (frame_parm_handler w32_frame_parm_handlers): Add divider | ||
| 307 | widths. | ||
| 308 | (Vx_window_vertical_drag_shape): Add variable. | ||
| 309 | * w32inevt.c (resize_event, maybe_generate_resize_event): | ||
| 310 | Pixelize change_frame_size calls. | ||
| 311 | * w32menu.c (set_frame_menubar): Pixelize x_set_window_size | ||
| 312 | call. | ||
| 313 | * w32term.c (w32_draw_window_divider): New function. | ||
| 314 | (x_update_window_end): Handle right divider. | ||
| 315 | (w32_draw_fringe_bitmap, x_scroll_run) | ||
| 316 | (w32_set_vertical_scroll_bar): Pixelize scrollbar widths. | ||
| 317 | (w32_read_socket): Handle SIZE_MAXIMIZED separately. Calculate | ||
| 318 | new frame sizes pixelwise. | ||
| 319 | (x_new_font): Pixelize call to x_set_window_size. | ||
| 320 | (x_check_fullscreen): Pixelize call to change_frame_size. | ||
| 321 | (x_set_window_size_1, x_set_window_size): New argument | ||
| 322 | pixelwise. Calculate pixelwise. | ||
| 323 | (x_wm_set_size_hint): Use scroll bar area width. | ||
| 324 | (w32_redisplay_interface): Add w32_draw_window_divider. | ||
| 325 | * w32term.h (struct w32_output): Add vertical drag cursor. | ||
| 326 | * widget.c (set_frame_size, update_wm_hints) | ||
| 327 | (EmacsFrameResize, EmacsFrameSetValues): Pixelize calls of | ||
| 328 | change_frame_size. | ||
| 329 | (EmacsFrameSetCharSize): Pixelize call of x_set_window_size. | ||
| 330 | * window.c (sequence_number): Restore. | ||
| 331 | (Fwindow_pixel_width, Fwindow_pixel_height) | ||
| 332 | (Fwindow_mode_line_height, Fwindow_header_line_height) | ||
| 333 | (window_pixel_to_total, Frun_window_scroll_functions) | ||
| 334 | (Fset_window_new_pixel, window_resize_apply_total) | ||
| 335 | (Fwindow_resize_apply_total): New functions. | ||
| 336 | (window_body_height, window_body_width): Rename from | ||
| 337 | window_body_lines. New argument PIXELWISE. Calculate | ||
| 338 | pixelwise. | ||
| 339 | (Fwindow_body_height, Fwindow_body_width): New argument | ||
| 340 | PIXELWISE. | ||
| 341 | (coordinates_in_window, window_relative_x_coord): Use window's | ||
| 342 | pixel width instead of total width. | ||
| 343 | (replace_window, recombine_windows): Initialize pixel values. | ||
| 344 | (resize_root_window, resize_frame_windows, grow_mini_window) | ||
| 345 | (shrink_mini_window): New argument PIXELWISE. Calculate | ||
| 346 | pixelwise. | ||
| 347 | (Fdelete_other_windows_internal, adjust_window_margins) | ||
| 348 | (window_resize_check, window_resize_apply) | ||
| 349 | (Fdelete_window_internal, Fresize_mini_window_internal) | ||
| 350 | (Fwindow_text_width, Fwindow_text_height): Calculate pixelwise. | ||
| 351 | (check_frame_size): Rename arguments. New argument PIXELWISE. | ||
| 352 | Calculate pixelwise. | ||
| 353 | (set_window_buffer): Make samebuf bool. Run configuration change | ||
| 354 | hook only if buffer changed. | ||
| 355 | (Fset_window_buffer): Rewrite doc-string. | ||
| 356 | (make_window): Initialize new_pixel slot. | ||
| 357 | (Fwindow_resize_apply): Check pixel size of root window. | ||
| 358 | (Fsplit_window_internal): Call 2nd argument pixel_size. | ||
| 359 | Calculate pixelwise. | ||
| 360 | (Fscroll_left, Fscroll_right): Call window_body_width instead of | ||
| 361 | window_body_cols. | ||
| 362 | (save_window_data): New slots frame_text_width, | ||
| 363 | frame_text_height, frame_menu_bar_height, frame_tool_bar_height. | ||
| 364 | (saved_window): New slots pixel_left, pixel_top, pixel_height, | ||
| 365 | pixel_width. | ||
| 366 | (Fcurrent_window_configuration, Fset_window_configuration) | ||
| 367 | (save_window_save, compare_window_configurations): Handle new | ||
| 368 | slots in save_window_data and saved_window. | ||
| 369 | (Fset_window_scroll_bars): Fix doc-string. | ||
| 370 | (window_resize_pixelwise): New variable. | ||
| 371 | (coordinates_in_window, Fcoordinates_in_window_p): Handle | ||
| 372 | dividers. | ||
| 373 | (make_parent_window): Adjust sequence_number. | ||
| 374 | (Fwindow_right_divider_width, Fwindow_bottom_divider_width): New | ||
| 375 | functions. | ||
| 376 | * window.h (struct window): New members new_pixel, pixel_left, | ||
| 377 | pixel_top, pixel_width, pixel_height. Restore sequence_number. | ||
| 378 | (wset_new_pixel): New function. | ||
| 379 | (WINDOW_PIXEL_WIDTH, WINDOW_PIXEL_HEIGHT) | ||
| 380 | (MIN_SAFE_WINDOW_PIXEL_WIDTH, MIN_SAFE_WINDOW_PIXEL_HEIGHT) | ||
| 381 | (WINDOW_LEFT_PIXEL_EDGE, WINDOW_RIGHT_PIXEL_EDGE) | ||
| 382 | (WINDOW_TOP_PIXEL_EDGE, WINDOW_BOTTOM_PIXEL_EDGE) | ||
| 383 | (WINDOW_BOTTOMMOST_P, WINDOW_BOX_LEFT_PIXEL_EDGE) | ||
| 384 | (WINDOW_BOX_RIGHT_PIXEL_EDGE, WINDOW_MARGINS_COLS) | ||
| 385 | (WINDOW_MARGINS_WIDTH, WINDOW_RIGHT_DIVIDER_WIDTH) | ||
| 386 | (WINDOW_BOTTOM_DIVIDER_WIDTH): New macros. | ||
| 387 | (WINDOW_TOTAL_FRINGE_WIDTH): Rename to WINDOW_FRINGES_WIDTH. | ||
| 388 | (WINDOW_TOTAL_WIDTH, WINDOW_TOTAL_HEIGHT): Remove macros. | ||
| 389 | (WINDOW_RIGHT_EDGE_X, WINDOW_LEFT_EDGE_X, WINDOW_TOP_EDGE_Y) | ||
| 390 | (WINDOW_BOTTOM_EDGE_Y, WINDOW_FULL_WIDTH_P, WINDOW_LEFTMOST_P) | ||
| 391 | (WINDOW_RIGHTMOST_P, WINDOW_BOX_LEFT_EDGE_X) | ||
| 392 | (WINDOW_BOX_RIGHT_EDGE_X, WINDOW_FRINGE_COLS) | ||
| 393 | (WINDOW_BOX_HEIGHT_NO_MODE_LINE, WINDOW_BOX_TEXT_HEIGHT): | ||
| 394 | Rewrite. | ||
| 395 | (resize_frame_windows, grow_mini_window, shrink_mini_window) | ||
| 396 | (window_body_width, check_frame_size): Adapt external declarations. | ||
| 397 | * xdisp.c (last_max_ascent): New integer. | ||
| 398 | (window_text_bottom_y): Handle bottom divider. | ||
| 399 | (window_box_width, window_box_height): Calculate pixelwise. | ||
| 400 | (get_glyph_string_clip_rects): Handle right divider. | ||
| 401 | (remember_mouse_glyph): When windows are resized pixelwise | ||
| 402 | proceed with width and height set to 1. | ||
| 403 | (init_iterator): Use WINDOW_PIXEL_WIDTH instead of | ||
| 404 | WINDOW_TOTAL_WIDTH. | ||
| 405 | (move_it_to): Calculate and return maximum x position | ||
| 406 | encountered. | ||
| 407 | (Fwindow_text_pixel_size): New function. | ||
| 408 | (resize_mini_window, update_tool_bar): Calculate pixelwise. | ||
| 409 | (tool_bar_lines_needed): Rename to tool_bar_height. Calculate | ||
| 410 | pixelwise. | ||
| 411 | (Ftool_bar_lines_needed): Rename to Ftool_bar_height. Calculate | ||
| 412 | pixelwise. | ||
| 413 | (redisplay_tool_bar): Calculate pixelwise. | ||
| 414 | (redisplay_window): Calculate pixelwise. Handle dividers. | ||
| 415 | (draw_glyphs, x_clear_end_of_line, note_mouse_highlight) | ||
| 416 | (x_draw_vertical_border): Handle dividers. | ||
| 417 | (define_frame_cursor1): Handle vertical drag cursor. | ||
| 418 | (x_draw_right_divider, x_draw_bottom_divider): New functions. | ||
| 419 | (expose_window): Calculate pixelwise. Handle dividers. | ||
| 420 | (init_xdisp): Initialize pixel values. | ||
| 421 | * xfaces.c (Qwindow_divider): New face. | ||
| 422 | (realize_basic_faces): Realize it. | ||
| 423 | * xfns.c (x_set_mouse_color): Handle vertical_drag_cursor. | ||
| 424 | (x_set_menu_bar_lines, x_set_tool_bar_lines): Calculate pixelwise. | ||
| 425 | (x_set_scroll_bar_default_width): Default actual width to 16. | ||
| 426 | (Fx_create_frame): Set sizes pixelwise. | ||
| 427 | (x_create_tip_frame): Default divider widths to zero. Pixelize | ||
| 428 | call of change_frame_size. | ||
| 429 | (Fx_show_tip): Handle divider widths. Initial pixel position | ||
| 430 | and sizes. | ||
| 431 | (frame_parm_handler x_frame_parm_handlers): Add divider widths. | ||
| 432 | (Vx_window_vertical_drag_shape): New option. | ||
| 433 | * xmenu.c (free_frame_menubar): Pixelize call of | ||
| 434 | x_set_window_size. | ||
| 435 | * xterm.c (x_draw_window_divider): New function. | ||
| 436 | (x_update_window_end): Optionally draw right divider. | ||
| 437 | (x_draw_fringe_bitmap, x_scroll_run, x_scroll_bar_create) | ||
| 438 | (XTset_vertical_scroll_bar): Use scroll bar pixel width. | ||
| 439 | (handle_one_xevent, x_new_font): Calculate pixelwise. | ||
| 440 | (x_set_window_size_1, x_set_window_size): New argument | ||
| 441 | pixelwise. Calculate pixelwise. | ||
| 442 | (x_wm_set_size_hint): Pixelize call of check_frame_size. | ||
| 443 | (struct x_redisplay_interface): Add x_draw_window_divider. | ||
| 444 | * xterm.h (struct x_output): Add vertical_drag_cursor. | ||
| 445 | |||
| 446 | 2013-11-30 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 447 | |||
| 448 | * xdisp.c (redisplay_internal): Don't call set_window_update_flags. | ||
| 449 | Set invisible frames's `redisplay' when a full redisplay is requested. | ||
| 450 | (redisplay_window): Set must_be_updated_p instead (bug#15999). | ||
| 451 | (redisplay_mode_lines): Don't set must_be_updated_p any more. | ||
| 452 | (display_mode_lines): Set it here instead. | ||
| 453 | |||
| 454 | * dispnew.c (set_window_update_flags): Remove `b' argument; make static. | ||
| 455 | |||
| 456 | * dispextern.h (set_window_update_flags): Remove. | ||
| 457 | |||
| 458 | 2013-11-29 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 459 | |||
| 460 | * fns.c (internal_equal): Add a hash_table argument to handle cycles. | ||
| 461 | |||
| 462 | * xdisp.c (REDISPLAY_SOME_P): New macro. | ||
| 463 | (redisplay_internal): Use it (bug#15999). | ||
| 464 | (prepare_menu_bars, redisplay_window): Use it as well. | ||
| 465 | |||
| 466 | * lisp.mk (lisp): Add electric.elc and uniquify.elc. | ||
| 467 | |||
| 468 | 2013-11-29 Tom Seddon <emacs@tomseddon.plus.com> (tiny change) | ||
| 469 | |||
| 470 | * w32font.c (g_b_init_get_char_width_32_w): New static var. | ||
| 471 | (globals_of_w32font): Zero it out. | ||
| 472 | (GetCharWidth32W_Proc): New function pointer. | ||
| 473 | (get_char_width_32_w): New function. | ||
| 474 | (compute_metrics): If get_glyph_outline_w returns an error, try | ||
| 475 | get_char_width_32_w before declaring a failure. This avoids | ||
| 476 | punishing raster (a.k.a. "bitmap") fonts by slowing down | ||
| 477 | redisplay. (Bug#6364). | ||
| 478 | |||
| 479 | 2013-11-29 Eli Zaretskii <eliz@gnu.org> | ||
| 480 | |||
| 481 | * xdisp.c (clear_mouse_face): Don't invalidate the entire | ||
| 482 | mouse-highlight info, just signal frame_up_to_date_hook that mouse | ||
| 483 | highlight needs to be redisplayed. (Bug#15913) | ||
| 484 | |||
| 485 | 2013-11-29 Paul Eggert <eggert@cs.ucla.edu> | ||
| 486 | |||
| 487 | Fix minor problems found by static checking. | ||
| 488 | * buffer.h (struct buffer_text, struct buffer): | ||
| 489 | * frame.h (struct frame): | ||
| 490 | * window.h (struct window): | ||
| 491 | Avoid 'bool foo : 1;', as it's not portable to pre-C99 compilers, | ||
| 492 | as described in ../lib/stdbool.in.h. Use 'unsigned foo : 1;' instead. | ||
| 493 | * menu.c (syms_of_menu): Define x-popup-dialog, removing a | ||
| 494 | no-longer-valid use of HAVE_MENUS. | ||
| 495 | * xdisp.c (propagate_buffer_redisplay): Now static. | ||
| 496 | |||
| 497 | 2013-11-29 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 498 | |||
| 499 | * xmenu.c (Fmenu_or_popup_active_p): | ||
| 500 | * window.c (Fset_window_configuration): | ||
| 501 | * menu.c (Fx_popup_menu, Fx_popup_dialog): | ||
| 502 | * keyboard.c (record_menu_key, read_char_x_menu_prompt): | ||
| 503 | * fns.c (Fyes_or_no_p): | ||
| 504 | * editfns.c (Fmessage_box, Fmessage_or_box): | ||
| 505 | * alloc.c (make_save_ptr_ptr): | ||
| 506 | * xdisp.c, w32menu.c, term.c, xterm.h, xterm.c: Remove HAVE_MENUS. | ||
| 507 | |||
| 508 | * window.c (Fset_window_configuration): Move select_window later. | ||
| 509 | |||
| 510 | 2013-11-28 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 511 | |||
| 512 | Refine redisplay optimizations to only redisplay *some* frames/windows | ||
| 513 | rather than all of them. | ||
| 514 | * xdisp.c (REDISPLAY_SOME): New constant. | ||
| 515 | (redisplay_other_windows, wset_redisplay, fset_redisplay) | ||
| 516 | (bset_redisplay, bset_update_mode_line): New functions. | ||
| 517 | (message_dolog): Use bset_redisplay. | ||
| 518 | (clear_garbaged_frames): Use fset_redisplay. | ||
| 519 | (echo_area_display): Use wset_redisplay. | ||
| 520 | (buffer_shared_and_changed): Remove. | ||
| 521 | (prepare_menu_bars): Call Vpre_redisplay_function before updating | ||
| 522 | frame titles. Compute the actual set of windows redisplayed. | ||
| 523 | Don't update frame titles and menu bars for frames that don't need to | ||
| 524 | be redisplayed. | ||
| 525 | (propagate_buffer_redisplay): New function. | ||
| 526 | (AINC): New macro. | ||
| 527 | (redisplay_internal): Use it. Be more selective in the set of windows | ||
| 528 | we redisplay. Propagate windows_or_buffers_changed to | ||
| 529 | update_mode_lines a bit later to simplify the code. | ||
| 530 | (mark_window_display_accurate_1): Reset window and buffer's | ||
| 531 | `redisplay' flag. | ||
| 532 | (redisplay_window): Do nothing if neither the window nor the buffer nor | ||
| 533 | the frame needs redisplay. | ||
| 534 | * window.h (struct window): Add `redisplay' field. | ||
| 535 | (wset_redisplay, fset_redisplay, bset_redisplay, bset_update_mode_line) | ||
| 536 | (redisplay_other_windows, window_list): New declarations. | ||
| 537 | * window.c (select_window, Fset_window_start): Use wset_redisplay. | ||
| 538 | (window_list): Not static any more. | ||
| 539 | (grow_mini_window, shrink_mini_window): Use fset_redisplay. | ||
| 540 | * minibuf.c (read_minibuf_unwind): Don't redisplay everything. | ||
| 541 | * insdel.c (prepare_to_modify_buffer_1): Use bset_redisplay. | ||
| 542 | * frame.c (Fmake_frame_visible): Don't redisplay everything. | ||
| 543 | * frame.h (struct frame): Add `redisplay' field. | ||
| 544 | Move `external_menu_bar' bitfield next to other bit-fields. | ||
| 545 | (SET_FRAME_GARBAGED): Use fset_redisplay. | ||
| 546 | (SET_FRAME_VISIBLE): Don't garbage the frame; | ||
| 547 | Use redisplay_other_windows. | ||
| 548 | * buffer.h (struct buffer): Add `redisplay' field. | ||
| 549 | * buffer.c (Fforce_mode_line_update): Pay attention to the `all' flag. | ||
| 550 | (modify_overlay): Use bset_redisplay. | ||
| 551 | * alloc.c (gc_sweep): Don't unmark strings while sweeping symbols. | ||
| 552 | |||
| 553 | 2013-11-28 Eli Zaretskii <eliz@gnu.org> | ||
| 554 | |||
| 555 | Support w32 file notifications in batch mode. | ||
| 556 | * w32proc.c (sys_select): Don't wait on interrupt_handle if it is | ||
| 557 | invalid (which happens in batch mode). If non-interactive, call | ||
| 558 | handle_file_notifications to store file notification events in the | ||
| 559 | input queue. (Bug#15933) | ||
| 560 | |||
| 561 | * w32notify.c (send_notifications): Handle FRAME_INITIAL frames as well. | ||
| 562 | |||
| 563 | * w32inevt.c (handle_file_notifications): Now external, not static. | ||
| 564 | |||
| 565 | * w32term.h (handle_file_notifications): Provide prototype. | ||
| 566 | |||
| 567 | * emacs.c (main) [HAVE_W32NOTIFY]: When non-interactive, call | ||
| 568 | init_crit, since init_display, which does that otherwise, is not | ||
| 569 | called. | ||
| 570 | |||
| 571 | 2013-11-27 Glenn Morris <rgm@gnu.org> | ||
| 572 | |||
| 573 | * Makefile.in ($(lispsource)/international/charprop.el): New. | ||
| 574 | (emacs$(EXEEXT)): Depend on charprop.el. | ||
| 575 | |||
| 576 | 2013-11-27 Eli Zaretskii <eliz@gnu.org> | ||
| 577 | |||
| 578 | * fileio.c (Finsert_file_contents): Invalidate buffer caches when | ||
| 579 | deleting portions of the buffer under non-nil REPLACE argument. | ||
| 580 | (Bug#15973) | ||
| 581 | |||
| 582 | * w32notify.c (Fw32notify_add_watch): If the argument FILE is a | ||
| 583 | directory, watch it and not its parent. | ||
| 584 | (add_watch): Allow empty string in FILE. | ||
| 585 | |||
| 586 | 2013-11-27 Martin Rudalics <rudalics@gmx.at> | ||
| 587 | |||
| 588 | * window.c (Fset_window_start, window_resize_apply) | ||
| 589 | (window_scroll): Reset window_end_valid (Bug#15957). | ||
| 590 | |||
| 591 | 2013-11-27 Glenn Morris <rgm@gnu.org> | ||
| 592 | |||
| 593 | * Makefile.in (leimdir): Now in lisp source directory. | ||
| 594 | ($(leimdir)/leim-list.el): Just use ../leim . | ||
| 595 | * epaths.in (PATH_DUMPLOADSEARCH): | ||
| 596 | * lread.c (load_path_default): | ||
| 597 | * nsterm.m (ns_load_path): No more leim directory. | ||
| 598 | |||
| 599 | 2013-11-26 Andreas Schwab <schwab@suse.de> | ||
| 600 | |||
| 601 | * .gdbinit (xgettype): Add cast. | ||
| 602 | |||
| 603 | 2013-11-26 Glenn Morris <rgm@gnu.org> | ||
| 604 | |||
| 605 | Preload leim-list.el. | ||
| 606 | * epaths.in (PATH_DUMPLOADSEARCH): Add leim/. | ||
| 607 | * callproc.c (init_callproc): Don't assume PATH_DUMPLOADSEARCH | ||
| 608 | is a single directory. | ||
| 609 | |||
| 610 | 2013-11-25 Paul Eggert <eggert@cs.ucla.edu> | ||
| 611 | |||
| 612 | bool-vector-subsetp is now the normal direction (Bug#15912). | ||
| 613 | * data.c (Fbool_vector_subsetp): Test whether the first argument | ||
| 614 | is a subset of the second one, not the reverse. Add doc string. | ||
| 615 | |||
| 616 | Fix minor problems found by static checking. | ||
| 617 | * lread.c (load_path_default): Now static. | ||
| 618 | * textprop.c (text_property_stickiness): Be consistent about the | ||
| 619 | test used when deciding whether to consider the previous character. | ||
| 620 | This simplifies the code a bit. | ||
| 621 | |||
| 622 | 2013-11-25 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 623 | |||
| 624 | * textprop.c (text_property_stickiness): Fix front-stickiness at BOB. | ||
| 625 | |||
| 626 | * frame.c (Fhandle_focus_in, Fhandle_focus_out): Move to frame.el. | ||
| 627 | (syms_of_frame): Don't defsubr them. | ||
| 628 | |||
| 629 | 2013-11-25 Glenn Morris <rgm@gnu.org> | ||
| 630 | |||
| 631 | * lread.c (load_path_default): Change the sense of the argument. | ||
| 632 | (init_lread): When EMACSLOADPATH is set, do not ignore changes | ||
| 633 | from dump_path. When it is not, avoid checking dump_path twice. | ||
| 634 | |||
| 635 | * lread.c (init_lread): Fix 2013-11-23 goof that was checking | ||
| 636 | uninstalled dump_path against installed Vload_path. (Bug#15964) | ||
| 637 | |||
| 638 | 2013-11-24 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 639 | |||
| 640 | Export get_pos_property to Elisp. | ||
| 641 | * editfns.c (Fget_pos_property): Rename from get_pos_property. | ||
| 642 | (syms_of_editfns): Export it to Elisp. | ||
| 643 | |||
| 644 | * data.c (Fmake_variable_buffer_local): Mention `permanent-local'. | ||
| 645 | |||
| 646 | 2013-11-23 Romain Francoise <romain@orebokech.com> | ||
| 647 | |||
| 648 | * fileio.c (init_fileio): Move `write_region_inhibit_fsync' | ||
| 649 | initialization here ... | ||
| 650 | (syms_of_fileio): ... from here. | ||
| 651 | |||
| 652 | 2013-11-23 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 653 | |||
| 654 | * lread.c (init_lread): Fix int/Lisp_Object mixup. | ||
| 655 | Please use --enable-check-lisp-object-type. | ||
| 656 | |||
| 657 | 2013-11-23 Glenn Morris <rgm@gnu.org> | ||
| 658 | |||
| 659 | * process.c (get_process): Explicit error for dead buffers. | ||
| 660 | |||
| 661 | 2013-11-23 Andreas Schwab <schwab@linux-m68k.org> | ||
| 662 | |||
| 663 | * process.c (get_process): Check that OBJ is a live buffer. (Bug#15923) | ||
| 664 | |||
| 665 | 2013-11-23 Glenn Morris <rgm@gnu.org> | ||
| 666 | |||
| 667 | Empty elements in EMACSLOADPATH stand for the default. (Bug#12100) | ||
| 668 | * lread.c (load_path_check): Take path to check as argument. | ||
| 669 | (load_path_default): New, split from init_lread. | ||
| 670 | (init_lread): Move calc of default load-path to load_path_default. | ||
| 671 | Empty elements in EMACSLOADPATH now stand for the default. | ||
| 672 | (load-path): Doc fix. | ||
| 673 | * emacs.c (decode_env_path): Add option to treat empty elements | ||
| 674 | as nil rather than ".". | ||
| 675 | * callproc.c (init_callproc_1, init_callproc): | ||
| 676 | * image.c (Vx_bitmap_file_path): | ||
| 677 | * lisp.h (decode_env_path): | ||
| 678 | * lread.c (Vsource_directory): | ||
| 679 | Update for new argument spec of decode_env_path. | ||
| 680 | |||
| 681 | 2013-11-22 Eli Zaretskii <eliz@gnu.org> | ||
| 682 | |||
| 683 | * bidi.c (bidi_find_paragraph_start): Limit the returned positions | ||
| 684 | to BEGV_BYTE..ZV_BYTE range. (Bug#15951) | ||
| 685 | |||
| 686 | 2013-11-21 Paul Eggert <eggert@cs.ucla.edu> | ||
| 687 | |||
| 688 | Fix some dependency problems that cause unnecessary recompiles. | ||
| 689 | Problem reported by RMS in | ||
| 690 | <http://lists.gnu.org/archive/html/emacs-devel/2013-11/msg00421.html>. | ||
| 691 | * Makefile.in (OLDXMENU_TARGET, OLDXMENU, OLDXMENU_DEPS) | ||
| 692 | (really-lwlib, really-oldXMenu, stamp-oldxmenu) | ||
| 693 | (../src/$(OLDXMENU), $(OLDXMENU)): Remove. | ||
| 694 | (temacs$(EXEEXT)): Depend on $(LIBXMENU), not stamp-oldxmenu. | ||
| 695 | ($(lwlibdir)/liblw.a, $(oldXMenudir)/libXMenu11.a, FORCE): New targets. | ||
| 696 | (boostrap-clean): No need to remove stamp-oldxmenu. | ||
| 697 | |||
| 698 | Fix recently introduced bool vector overrun. | ||
| 699 | This was due to an optimization that went awry. | ||
| 700 | Reported by Glenn Morris in | ||
| 701 | <http://lists.gnu.org/archive/html/emacs-devel/2013-11/msg00622.html>. | ||
| 702 | * alloc.c (make_uninit_bool_vector): Don't allocate a dummy word | ||
| 703 | for empty vectors, undoing the 2013-11-18 change. | ||
| 704 | * data.c (bool_vector_binop_driver): Rely on this. | ||
| 705 | Fix bug that occasionally overran the destination. | ||
| 706 | * lisp.h (struct Lisp_Bool_vector): Document this. | ||
| 707 | |||
| 708 | 2013-11-20 Jan Djärv <jan.h.d@swipnet.se> | ||
| 709 | |||
| 710 | * nsterm.m (init, run, stop:): Enable again. stop calls super stop | ||
| 711 | to handle dialogs. | ||
| 712 | |||
| 713 | * nsterm.m (init, run, stop:): Comment out for now, does not work | ||
| 714 | with dialogs. | ||
| 715 | |||
| 716 | 2013-11-19 Paul Eggert <eggert@cs.ucla.edu> | ||
| 717 | |||
| 718 | * charset.c (syms_of_charset): Don't read past end of string. | ||
| 719 | |||
| 720 | 2013-11-19 Glenn Morris <rgm@gnu.org> | ||
| 721 | |||
| 722 | * frame.c (Fhandle_focus_in, Fhandle_focus_out): Doc fixes. | ||
| 723 | |||
| 724 | 2013-11-19 Brian Jenkins <brian@brianjenkins.org> (tiny change) | ||
| 725 | |||
| 726 | Add hooks to run on gaining/losing focus. (Bug#15029) | ||
| 727 | * frame.c (Qfocus_in_hook, Qfocus_out_hook): New static lisp objects. | ||
| 728 | (Fhandle_focus_in, Fhandle_focus_out): Run focus hooks. | ||
| 729 | (syms_of_frame): Add focus-in-hook, focus-out-hook. | ||
| 730 | |||
| 731 | 2013-11-18 Paul Eggert <eggert@cs.ucla.edu> | ||
| 732 | |||
| 733 | * data.c (bool_vector_binop_driver): Rename locals for sanity's sake. | ||
| 734 | The old names predated the API change that put destination at end. | ||
| 735 | |||
| 736 | Improve API of recently-added bool vector functions (Bug#15912). | ||
| 737 | The old API had (bool-vector-count-matches A B) | ||
| 738 | and (bool-vector-count-matches-at A B I), which gave the | ||
| 739 | misleading impression that the two functions were variants, one | ||
| 740 | with a location I. The new API has (bool-vector-count-population A) | ||
| 741 | and (bool-vector-count-consecutive A B I) to make the distinction | ||
| 742 | clearer. The first function no longer has a B argument, since the | ||
| 743 | caller can easily determine the number of nils if the length and | ||
| 744 | number of ts is known. | ||
| 745 | * data.c (Fbool_vector_count_population): Rename from | ||
| 746 | bool_vector_count_matches, and accept just 1 argument. | ||
| 747 | (Fbool_vector_count_consecutive): Rename from | ||
| 748 | Fbool_vector_count_matches_at. | ||
| 749 | |||
| 750 | Always allocate at least one bits_word per bool vector. | ||
| 751 | See Daniel Colascione in: | ||
| 752 | http://lists.gnu.org/archive/html/emacs-devel/2013-11/msg00518.html | ||
| 753 | * alloc.c (make_uninit_bool_vector): Always allocate at least one word. | ||
| 754 | * data.c (bool_vector_binop_driver): Rely on this. Tune. | ||
| 755 | * lisp.h (struct Lisp_Bool_vector): Document this. | ||
| 756 | |||
| 1 | 2013-11-18 Eli Zaretskii <eliz@gnu.org> | 757 | 2013-11-18 Eli Zaretskii <eliz@gnu.org> |
| 2 | 758 | ||
| 3 | * insdel.c (invalidate_buffer_caches): New function, consolidated | 759 | * insdel.c (invalidate_buffer_caches): New function, consolidated |
| 4 | from part of prepare_to_modify_buffer. | 760 | from part of prepare_to_modify_buffer. |
| 5 | (insert_from_gap, prepare_to_modify_buffer): | 761 | (insert_from_gap, prepare_to_modify_buffer): |
| 6 | * coding.c (code_convert_region, code_convert_string): Call | 762 | * coding.c (code_convert_region, code_convert_string): |
| 7 | invalidate_buffer_caches. (Bug#15841) | 763 | Call invalidate_buffer_caches. (Bug#15841) |
| 8 | 764 | ||
| 9 | * lisp.h (invalidate_buffer_caches): Add prototype. | 765 | * lisp.h (invalidate_buffer_caches): Add prototype. |
| 10 | 766 | ||
| @@ -141,7 +897,7 @@ | |||
| 141 | "dumb loop", adjust C pointers into buffer text to follow suit. | 897 | "dumb loop", adjust C pointers into buffer text to follow suit. |
| 142 | (Bug#15841) | 898 | (Bug#15841) |
| 143 | 899 | ||
| 144 | 2013-11-09 Łukasz Stelmach <stlman@poczta.fm> (tiny change) | 900 | 2013-11-09 Łukasz Stelmach <stlman@poczta.fm> (tiny change) |
| 145 | 901 | ||
| 146 | * gtkutil.c (xg_check_special_colors): Use rgb: instead of rgbi: | 902 | * gtkutil.c (xg_check_special_colors): Use rgb: instead of rgbi: |
| 147 | for conversion (Bug#15837). | 903 | for conversion (Bug#15837). |