emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 8806bbbf2cd: Signal error upon setting unsupported tool bar posit


From: Po Lu
Subject: master 8806bbbf2cd: Signal error upon setting unsupported tool bar position
Date: Mon, 19 Jun 2023 22:26:31 -0400 (EDT)

branch: master
commit 8806bbbf2cdae00faacab9cec634072ce4e80b6f
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>

    Signal error upon setting unsupported tool bar position
    
    * src/haikufns.c (haiku_set_tool_bar_position): New function.
    Port non-GTK code from X.
    (haiku_frame_parm_handlers): Add new function.
---
 src/haikufns.c | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/src/haikufns.c b/src/haikufns.c
index b591c143900..b4e68495a35 100644
--- a/src/haikufns.c
+++ b/src/haikufns.c
@@ -258,6 +258,22 @@ haiku_set_tool_bar_lines (struct frame *f, Lisp_Object 
value, Lisp_Object oldval
   haiku_change_tool_bar_height (f, nlines * FRAME_LINE_HEIGHT (f));
 }
 
+static void
+haiku_set_tool_bar_position (struct frame *f,
+                            Lisp_Object new_value,
+                            Lisp_Object old_value)
+{
+  Lisp_Object choice = list4 (Qleft, Qright, Qtop, Qbottom);
+
+  if (!NILP (Fmemq (new_value, choice)))
+    {
+      if (!EQ (new_value, Qtop))
+       error ("The only supported tool bar position is top");
+    }
+  else
+    wrong_choice (choice, new_value);
+}
+
 static void
 haiku_set_tab_bar_lines (struct frame *f, Lisp_Object value, Lisp_Object 
oldval)
 {
@@ -3136,7 +3152,7 @@ frame_parm_handler haiku_frame_parm_handlers[] =
     gui_set_font_backend,
     gui_set_alpha,
     haiku_set_sticky,
-    NULL, /* set tool bar pos */
+    haiku_set_tool_bar_position,
     haiku_set_inhibit_double_buffering,
     haiku_set_undecorated,
     haiku_set_parent_frame,



reply via email to

[Prev in Thread] Current Thread [Next in Thread]