]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix inset rectangle corners when sides aren't drawn (bug#51251)
authorAlan Third <alan@idiocy.org>
Sun, 17 Oct 2021 18:30:59 +0000 (19:30 +0100)
committerAlan Third <alan@idiocy.org>
Tue, 19 Oct 2021 20:25:01 +0000 (21:25 +0100)
* src/nsterm.m (ns_draw_relief): Make the inner rectangle line up with
the outer rectangle's edges where the edges aren't drawn.

src/nsterm.m

index c6f80f803502668b52e21a657c6b76e36c7e3081..aa29c13eb22bb8f63a6f3f98a42990773a3225b9 100644 (file)
@@ -3512,7 +3512,12 @@ ns_draw_relief (NSRect outer, int hthickness, int vthickness, char raised_p,
     }
 
   /* Calculate the inner rectangle.  */
-  inner = NSInsetRect (outer, hthickness, vthickness);
+  inner = NSMakeRect (NSMinX (outer) + (left_p ? hthickness : 0),
+                      NSMinY (outer) + (top_p ? vthickness : 0),
+                      NSWidth (outer) - (left_p ? hthickness : 0)
+                                      - (right_p ? hthickness : 0),
+                      NSHeight (outer) - (top_p ? vthickness : 0)
+                                       - (bottom_p ? vthickness : 0));
 
   [(raised_p ? lightCol : darkCol) set];