From ac431108e389d1cd8661ede968982cdeba955733 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Wed, 17 Apr 2002 10:36:37 +0000 Subject: [PATCH] (coordinates_in_window): Don't report on margin area if its width is zero. --- src/ChangeLog | 5 +++++ src/window.c | 20 ++++++++++++++++---- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 3b8778e608f..cb38544455c 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2002-04-17 Eli Zaretskii + + * window.c (coordinates_in_window): Don't report on margin area + if its width is zero. + 2002-04-16 Jason Rumney * w32fns.c (Fx_file_dialog): Decode file name before using. diff --git a/src/window.c b/src/window.c index 21fb9d53e59..e88873528c8 100644 --- a/src/window.c +++ b/src/window.c @@ -534,6 +534,7 @@ coordinates_in_window (w, x, y) /* The width of the area where the vertical line can be dragged. (Between mode lines for instance. */ int grabbable_width = ux; + int lmargin_width = 0, rmargin_width = 0; if (*x < x0 || *x >= x1) return ON_NOTHING; @@ -628,9 +629,14 @@ coordinates_in_window (w, x, y) } else { - if (*x <= window_box_right (w, LEFT_MARGIN_AREA)) + lmargin_width = window_box_width (w, LEFT_MARGIN_AREA); + rmargin_width = window_box_width (w, RIGHT_MARGIN_AREA); + /* You can never be on a margin area if its width is zero. */ + if (lmargin_width + && *x <= window_box_right (w, LEFT_MARGIN_AREA)) part = ON_LEFT_MARGIN; - else if (*x >= window_box_left (w, RIGHT_MARGIN_AREA)) + else if (rmargin_width + && *x >= window_box_left (w, RIGHT_MARGIN_AREA)) part = ON_RIGHT_MARGIN; else { @@ -665,9 +671,15 @@ coordinates_in_window (w, x, y) } else { - if (*x <= window_box_right (w, LEFT_MARGIN_AREA)) + lmargin_width = window_box_width (w, LEFT_MARGIN_AREA); + rmargin_width = window_box_width (w, RIGHT_MARGIN_AREA); + /* You can never be on a margin area if its width is zero. + This is especially important for character terminals. */ + if (lmargin_width + && *x <= window_box_right (w, LEFT_MARGIN_AREA)) part = ON_LEFT_MARGIN; - else if (*x >= window_box_left (w, RIGHT_MARGIN_AREA)) + else if (rmargin_width + && *x >= window_box_left (w, RIGHT_MARGIN_AREA)) part = ON_RIGHT_MARGIN; else { -- 2.39.2