]> git.eshelyaron.com Git - emacs.git/commitdiff
Add set_undecorated frame parameter
authorYuuki Harano <masm@masm11.ddo.jp>
Mon, 8 Jan 2018 12:13:25 +0000 (21:13 +0900)
committerJeff Walsh <fejfighter@gmail.com>
Sun, 22 Nov 2020 03:46:55 +0000 (14:46 +1100)
* src/pgtkfns.c (x_set_undecorated, pgtk_frame_parm_handlers): Add
undecorated frame parameter handle

src/pgtkfns.c

index 39f5887320ab993a86fd9c861aa9c43f0e5b6c46..aa46461d24e29615883d53bff4531735e9156b3b 100644 (file)
@@ -633,6 +633,28 @@ x_icon (struct frame *f, Lisp_Object parms)
 #endif
 }
 
+/**
+ * x_set_undecorated:
+ *
+ * Set frame F's `undecorated' parameter.  If non-nil, F's window-system
+ * window is drawn without decorations, title, minimize/maximize boxes
+ * and external borders.  This usually means that the window cannot be
+ * dragged, resized, iconified, maximized or deleted with the mouse.  If
+ * nil, draw the frame with all the elements listed above unless these
+ * have been suspended via window manager settings.
+ *
+ * Some window managers may not honor this parameter.
+ */
+static void
+x_set_undecorated (struct frame *f, Lisp_Object new_value, Lisp_Object old_value)
+{
+  if (!EQ (new_value, old_value))
+    {
+      FRAME_UNDECORATED (f) = NILP (new_value) ? false : true;
+      xg_set_undecorated (f, new_value);
+    }
+}
+
 /**
  * x_set_override_redirect:
  *
@@ -699,7 +721,7 @@ frame_parm_handler pgtk_frame_parm_handlers[] =
   0, /* x_set_sticky */
   0, /* x_set_tool_bar_position */
   0, /* x_set_inhibit_double_buffering */
-  0, /*x_set_undecorated */
+  x_set_undecorated
   0, /* x_set_parent_frame, */
   0, /* x_set_skip_taskbar */
   x_set_no_focus_on_map,