]> git.eshelyaron.com Git - emacs.git/commitdiff
follow x_set_internal_border_width change.
authorYuuki Harano <masm+github@masm11.me>
Sat, 11 Apr 2020 14:36:36 +0000 (23:36 +0900)
committerJeff Walsh <jeff.walsh@drtusers-MacBook-Pro.local>
Tue, 24 Nov 2020 01:24:39 +0000 (12:24 +1100)
* ../src/pgtkfns.c (x_set_internal_border_width):

src/pgtkfns.c

index b7d34d56803bb114aa8807d8739ec12dc5b59a87..9078a78e060edaad2467b2cf36312ef8f63fe41a 100644 (file)
@@ -647,20 +647,18 @@ x_set_tool_bar_lines (struct frame *f, Lisp_Object value, Lisp_Object oldval)
 static void
 x_set_internal_border_width (struct frame *f, Lisp_Object arg, Lisp_Object oldval)
 {
-  int old_width = FRAME_INTERNAL_BORDER_WIDTH (f);
+  int border = check_int_nonnegative (arg);
 
-  CHECK_TYPE_RANGED_INTEGER (int, arg);
-  f->internal_border_width = XFIXNUM (arg);
-  if (FRAME_INTERNAL_BORDER_WIDTH (f) < 0)
-    f->internal_border_width = 0;
-
-  if (FRAME_INTERNAL_BORDER_WIDTH (f) == old_width)
-    return;
-
-  if (FRAME_X_WINDOW (f) != 0)
-    adjust_frame_size (f, -1, -1, 3, 0, Qinternal_border_width);
+  if (border != FRAME_INTERNAL_BORDER_WIDTH (f))
+    {
+      f->internal_border_width = border;
 
-  SET_FRAME_GARBAGED (f);
+      if (FRAME_X_WINDOW (f))
+       {
+         adjust_frame_size (f, -1, -1, 3, false, Qinternal_border_width);
+         pgtk_clear_under_internal_border (f);
+       }
+    }
 }