summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/mouse.el6
-rw-r--r--src/nsterm.m2
2 files changed, 6 insertions, 2 deletions
diff --git a/lisp/mouse.el b/lisp/mouse.el
index 9a3e2235ece..5c9056fb43d 100644
--- a/lisp/mouse.el
+++ b/lisp/mouse.el
@@ -1225,7 +1225,11 @@ The region will be defined with mark and point."
(bounds (window-edges start-window))
(make-cursor-line-fully-visible nil)
(top (nth 1 bounds))
- (bottom (if (window-minibuffer-p start-window)
+ (bottom (if (or (window-minibuffer-p start-window)
+ ;; Do not account for the mode line if there
+ ;; is no mode line, which is common for child
+ ;; frames.
+ (not mode-line-format))
(nth 3 bounds)
;; Don't count the mode line.
(1- (nth 3 bounds))))
diff --git a/src/nsterm.m b/src/nsterm.m
index e4a9b014f49..1afd637b619 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -2547,7 +2547,7 @@ ns_mouse_position (struct frame **fp, int insist, Lisp_Object *bar_window,
if (f && FRAME_NS_P (f))
{
- view = FRAME_NS_VIEW (*fp);
+ view = FRAME_NS_VIEW (f);
position = [[view window] mouseLocationOutsideOfEventStream];
position = [view convertPoint: position fromView: nil];