Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
emacs
emacs
Commits
2511e8e0
Commit
2511e8e0
authored
Nov 04, 2010
by
Chong Yidong
Browse files
Backport 2010-04-10T10:52:30Z!mituharu@math.s.chiba-u.ac.jp from trunk
parent
fa884f18
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
23 additions
and
8 deletions
+23
-8
src/ChangeLog
src/ChangeLog
+10
-1
src/dispextern.h
src/dispextern.h
+4
-0
src/xdisp.c
src/xdisp.c
+8
-6
src/xfns.c
src/xfns.c
+1
-1
No files found.
src/ChangeLog
View file @
2511e8e0
2010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
* xfns.c (Fx_show_tip): Undo last change.
* dispextern.h (TRY_WINDOW_CHECK_MARGINS)
(TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
* xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
TRY_WINDOW_CHECK_MARGINS.
* xfns.c (Fx_show_tip): Undo last change. Call try_window with
TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423).
2010-04-09 Jan Djärv <jan.h.d@swipnet.se>
...
...
src/dispextern.h
View file @
2511e8e0
...
...
@@ -2841,6 +2841,10 @@ extern int x_intersect_rectangles P_ ((XRectangle *, XRectangle *,
XRectangle *));
#endif
/* Flags passed to try_window. */
#define TRY_WINDOW_CHECK_MARGINS (1 << 0)
#define TRY_WINDOW_IGNORE_FONTS_CHANGE (1 << 1)
/* Defined in fringe.c */
int lookup_fringe_bitmap (Lisp_Object);
...
...
src/xdisp.c
View file @
2511e8e0
...
...
@@ -13577,7 +13577,7 @@ redisplay_window (window, just_this_one_p)
= try_window_reusing_current_matrix (w)))
{
IF_DEBUG (debug_method_add (w, "1"));
if (try_window (window, startp,
1
) < 0)
if (try_window (window, startp,
TRY_WINDOW_CHECK_MARGINS
) < 0)
/* -1 means we need to scroll.
0 means we need new matrices, but fonts_changed_p
is set in that case, so we will detect it below. */
...
...
@@ -13936,13 +13936,15 @@ redisplay_window (window, just_this_one_p)
Value is 1 if successful. It is zero if fonts were loaded during
redisplay which makes re-adjusting glyph matrices necessary, and -1
if point would appear in the scroll margins.
(We check that only if CHECK_MARGINS is nonzero. */
(We check the former only if TRY_WINDOW_IGNORE_FONTS_CHANGE is
unset in FLAGS, and the latter only if TRY_WINDOW_CHECK_MARGINS is
set in FLAGS.) */
int
try_window (window, pos,
check_margin
s)
try_window (window, pos,
flag
s)
Lisp_Object window;
struct text_pos pos;
int
check_margin
s;
int
flag
s;
{
struct window *w = XWINDOW (window);
struct it it;
...
...
@@ -13964,12 +13966,12 @@ try_window (window, pos, check_margins)
{
if (display_line (&it))
last_text_row = it.glyph_row - 1;
if (fonts_changed_p)
if (fonts_changed_p
&& !(flags & TRY_WINDOW_IGNORE_FONTS_CHANGE)
)
return 0;
}
/* Don't let the cursor end in the scroll margins. */
if (
check_margins
if (
(flags & TRY_WINDOW_CHECK_MARGINS)
&& !MINI_WINDOW_P (w))
{
int this_scroll_margin;
...
...
src/xfns.c
View file @
2511e8e0
...
...
@@ -5224,7 +5224,7 @@ Text larger than the specified size is clipped. */)
clear_glyph_matrix (w->desired_matrix);
clear_glyph_matrix (w->current_matrix);
SET_TEXT_POS (pos, BEGV, BEGV_BYTE);
try_window (FRAME_ROOT_WINDOW (f), pos,
0
);
try_window (FRAME_ROOT_WINDOW (f), pos,
TRY_WINDOW_IGNORE_FONTS_CHANGE
);
/* Compute width and height of the tooltip. */
width = height = 0;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment