aboutsummaryrefslogtreecommitdiffstats
path: root/src/window.c
diff options
context:
space:
mode:
authorEli Zaretskii2002-04-17 10:36:37 +0000
committerEli Zaretskii2002-04-17 10:36:37 +0000
commitac431108e389d1cd8661ede968982cdeba955733 (patch)
treee5f9eb22884e59fc47323f66fb9cf33b6b39e181 /src/window.c
parentedb8d73e62552cf2f95cbf871050913862dc5f18 (diff)
downloademacs-ac431108e389d1cd8661ede968982cdeba955733.tar.gz
emacs-ac431108e389d1cd8661ede968982cdeba955733.zip
(coordinates_in_window): Don't report on margin area if its width is zero.
Diffstat (limited to 'src/window.c')
-rw-r--r--src/window.c20
1 files changed, 16 insertions, 4 deletions
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)
534 /* The width of the area where the vertical line can be dragged. 534 /* The width of the area where the vertical line can be dragged.
535 (Between mode lines for instance. */ 535 (Between mode lines for instance. */
536 int grabbable_width = ux; 536 int grabbable_width = ux;
537 int lmargin_width = 0, rmargin_width = 0;
537 538
538 if (*x < x0 || *x >= x1) 539 if (*x < x0 || *x >= x1)
539 return ON_NOTHING; 540 return ON_NOTHING;
@@ -628,9 +629,14 @@ coordinates_in_window (w, x, y)
628 } 629 }
629 else 630 else
630 { 631 {
631 if (*x <= window_box_right (w, LEFT_MARGIN_AREA)) 632 lmargin_width = window_box_width (w, LEFT_MARGIN_AREA);
633 rmargin_width = window_box_width (w, RIGHT_MARGIN_AREA);
634 /* You can never be on a margin area if its width is zero. */
635 if (lmargin_width
636 && *x <= window_box_right (w, LEFT_MARGIN_AREA))
632 part = ON_LEFT_MARGIN; 637 part = ON_LEFT_MARGIN;
633 else if (*x >= window_box_left (w, RIGHT_MARGIN_AREA)) 638 else if (rmargin_width
639 && *x >= window_box_left (w, RIGHT_MARGIN_AREA))
634 part = ON_RIGHT_MARGIN; 640 part = ON_RIGHT_MARGIN;
635 else 641 else
636 { 642 {
@@ -665,9 +671,15 @@ coordinates_in_window (w, x, y)
665 } 671 }
666 else 672 else
667 { 673 {
668 if (*x <= window_box_right (w, LEFT_MARGIN_AREA)) 674 lmargin_width = window_box_width (w, LEFT_MARGIN_AREA);
675 rmargin_width = window_box_width (w, RIGHT_MARGIN_AREA);
676 /* You can never be on a margin area if its width is zero.
677 This is especially important for character terminals. */
678 if (lmargin_width
679 && *x <= window_box_right (w, LEFT_MARGIN_AREA))
669 part = ON_LEFT_MARGIN; 680 part = ON_LEFT_MARGIN;
670 else if (*x >= window_box_left (w, RIGHT_MARGIN_AREA)) 681 else if (rmargin_width
682 && *x >= window_box_left (w, RIGHT_MARGIN_AREA))
671 part = ON_RIGHT_MARGIN; 683 part = ON_RIGHT_MARGIN;
672 else 684 else
673 { 685 {