diff options
| author | Eli Zaretskii | 2010-11-26 20:15:09 +0200 |
|---|---|---|
| committer | Eli Zaretskii | 2010-11-26 20:15:09 +0200 |
| commit | 8547874a7cfa4e353f0307c8b614e802d8abfc21 (patch) | |
| tree | 2327dcba0c8f1442a6f94802d0c8bfa726b9e11e /src | |
| parent | f5462bae4eed999b82c24bbaf17373ddedbf06fd (diff) | |
| download | emacs-8547874a7cfa4e353f0307c8b614e802d8abfc21.tar.gz emacs-8547874a7cfa4e353f0307c8b614e802d8abfc21.zip | |
Fix and document components of mouse event position.
src/keyboard.c (make_lispy_position): Put a meaningful value in yret
when the click is on the header or mode line.
doc/lispref/commands.texi (Click Events): Document the values of X, Y and
COL, ROW in the event's position, when the click is on the header or
mode line, on the fringes, or in the margins.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/keyboard.c | 7 |
2 files changed, 9 insertions, 3 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 61ef9a202a8..eac550a7334 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2010-11-26 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | * keyboard.c (make_lispy_position): Put a meaningful value in yret | ||
| 4 | when the click is on the header or mode line. | ||
| 5 | |||
| 1 | 2010-11-25 Eli Zaretskii <eliz@gnu.org> | 6 | 2010-11-25 Eli Zaretskii <eliz@gnu.org> |
| 2 | 7 | ||
| 3 | * xdisp.c (set_cursor_from_row): Don't forget to consider the | 8 | * xdisp.c (set_cursor_from_row): Don't forget to consider the |
diff --git a/src/keyboard.c b/src/keyboard.c index e96d0167fd4..923ac1ad1d9 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -5283,9 +5283,9 @@ make_lispy_position (struct frame *f, Lisp_Object x, Lisp_Object y, | |||
| 5283 | xret = XINT (x) - window_box_left (w, TEXT_AREA); | 5283 | xret = XINT (x) - window_box_left (w, TEXT_AREA); |
| 5284 | yret = wy - WINDOW_HEADER_LINE_HEIGHT (w); | 5284 | yret = wy - WINDOW_HEADER_LINE_HEIGHT (w); |
| 5285 | } | 5285 | } |
| 5286 | /* For mode line and header line clicks, return X relative to | 5286 | /* For mode line and header line clicks, return X, Y relative to |
| 5287 | the left window edge; ignore Y. Use mode_line_string to look | 5287 | the left window edge. Use mode_line_string to look for a |
| 5288 | for a string on the click position. */ | 5288 | string on the click position. */ |
| 5289 | else if (part == ON_MODE_LINE || part == ON_HEADER_LINE) | 5289 | else if (part == ON_MODE_LINE || part == ON_HEADER_LINE) |
| 5290 | { | 5290 | { |
| 5291 | Lisp_Object string; | 5291 | Lisp_Object string; |
| @@ -5305,6 +5305,7 @@ make_lispy_position (struct frame *f, Lisp_Object x, Lisp_Object y, | |||
| 5305 | ? PT : XMARKER (w->pointm)->charpos; | 5305 | ? PT : XMARKER (w->pointm)->charpos; |
| 5306 | 5306 | ||
| 5307 | xret = wx; | 5307 | xret = wx; |
| 5308 | yret = wy; | ||
| 5308 | } | 5309 | } |
| 5309 | /* For fringes and margins, Y is relative to the area's (and the | 5310 | /* For fringes and margins, Y is relative to the area's (and the |
| 5310 | window's) top edge, while X is meaningless. */ | 5311 | window's) top edge, while X is meaningless. */ |