diff options
Diffstat (limited to 'src/pgtkfns.c')
| -rw-r--r-- | src/pgtkfns.c | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/src/pgtkfns.c b/src/pgtkfns.c index b7d34d56803..9078a78e060 100644 --- a/src/pgtkfns.c +++ b/src/pgtkfns.c | |||
| @@ -647,20 +647,18 @@ x_set_tool_bar_lines (struct frame *f, Lisp_Object value, Lisp_Object oldval) | |||
| 647 | static void | 647 | static void |
| 648 | x_set_internal_border_width (struct frame *f, Lisp_Object arg, Lisp_Object oldval) | 648 | x_set_internal_border_width (struct frame *f, Lisp_Object arg, Lisp_Object oldval) |
| 649 | { | 649 | { |
| 650 | int old_width = FRAME_INTERNAL_BORDER_WIDTH (f); | 650 | int border = check_int_nonnegative (arg); |
| 651 | 651 | ||
| 652 | CHECK_TYPE_RANGED_INTEGER (int, arg); | 652 | if (border != FRAME_INTERNAL_BORDER_WIDTH (f)) |
| 653 | f->internal_border_width = XFIXNUM (arg); | 653 | { |
| 654 | if (FRAME_INTERNAL_BORDER_WIDTH (f) < 0) | 654 | f->internal_border_width = border; |
| 655 | f->internal_border_width = 0; | ||
| 656 | |||
| 657 | if (FRAME_INTERNAL_BORDER_WIDTH (f) == old_width) | ||
| 658 | return; | ||
| 659 | |||
| 660 | if (FRAME_X_WINDOW (f) != 0) | ||
| 661 | adjust_frame_size (f, -1, -1, 3, 0, Qinternal_border_width); | ||
| 662 | 655 | ||
| 663 | SET_FRAME_GARBAGED (f); | 656 | if (FRAME_X_WINDOW (f)) |
| 657 | { | ||
| 658 | adjust_frame_size (f, -1, -1, 3, false, Qinternal_border_width); | ||
| 659 | pgtk_clear_under_internal_border (f); | ||
| 660 | } | ||
| 661 | } | ||
| 664 | } | 662 | } |
| 665 | 663 | ||
| 666 | 664 | ||