]> git.eshelyaron.com Git - emacs.git/commitdiff
Reduce code duplication in ns_set_appearance
authorStefan Kangas <stefankangas@gmail.com>
Sat, 22 Mar 2025 21:41:53 +0000 (22:41 +0100)
committerEshel Yaron <me@eshelyaron.com>
Sun, 23 Mar 2025 19:34:11 +0000 (20:34 +0100)
* src/nsterm.h (ns_set_appearance_1): Declare.
* src/nsterm.m (ns_set_appearance_1): Break out new function...
(ns_set_appearance): ...here.
* src/nsfns.m (Fx_create_frame): Use above new function.

(cherry picked from commit 92b373318d2401f98f0ad5590ef799904c96506f)

src/nsfns.m
src/nsterm.h
src/nsterm.m

index 9f52777879c76708323085ab22e24c035d6a97e9..b1ed0eff58a97f61f678dbdad113f4d57b58a444 100644 (file)
@@ -1404,12 +1404,7 @@ DEFUN ("x-create-frame", Fx_create_frame, Sx_create_frame,
 #ifdef NS_IMPL_COCOA
   tem = gui_display_get_arg (dpyinfo, parms, Qns_appearance, NULL, NULL,
                              RES_TYPE_SYMBOL);
-  if (EQ (tem, Qdark))
-    FRAME_NS_APPEARANCE (f) = ns_appearance_vibrant_dark;
-  else if (EQ (tem, Qlight))
-    FRAME_NS_APPEARANCE (f) = ns_appearance_aqua;
-  else
-    FRAME_NS_APPEARANCE (f) = ns_appearance_system_default;
+  ns_set_appearance_1 (f, tem);
   store_frame_param (f, Qns_appearance,
                      (!NILP (tem) && !EQ (tem, Qunbound)) ? tem : Qnil);
 
index 2616dacc3e2dd7ca60193c9555779a780a41f5ab..2abf402f8bc104e7768172258719e1e277fa6fa6 100644 (file)
@@ -1236,6 +1236,7 @@ extern void ns_set_no_accept_focus (struct frame *f, Lisp_Object new_value,
 extern void ns_set_z_group (struct frame *f, Lisp_Object new_value,
                             Lisp_Object old_value);
 #ifdef NS_IMPL_COCOA
+extern void ns_set_appearance_1 (struct frame *f, Lisp_Object value);
 extern void ns_set_appearance (struct frame *f, Lisp_Object new_value,
                                Lisp_Object old_value);
 extern void ns_set_transparent_titlebar (struct frame *f,
index 46bb3f5dd7a5b846b73305600dd59f076ba893cf..5514a693c86400996b54884fe6803c09c029ea17 100644 (file)
@@ -1931,6 +1931,17 @@ ns_set_z_group (struct frame *f, Lisp_Object new_value, Lisp_Object old_value)
 }
 
 #ifdef NS_IMPL_COCOA
+void
+ns_set_appearance_1 (struct frame *f, Lisp_Object new_value)
+{
+  if (EQ (new_value, Qdark))
+    FRAME_NS_APPEARANCE (f) = ns_appearance_vibrant_dark;
+  else if (EQ (new_value, Qlight))
+    FRAME_NS_APPEARANCE (f) = ns_appearance_aqua;
+  else
+    FRAME_NS_APPEARANCE (f) = ns_appearance_system_default;
+}
+
 void
 ns_set_appearance (struct frame *f, Lisp_Object new_value, Lisp_Object old_value)
 {
@@ -1943,12 +1954,7 @@ ns_set_appearance (struct frame *f, Lisp_Object new_value, Lisp_Object old_value
   if (NSAppKitVersionNumber < NSAppKitVersionNumber10_10)
     return;
 
-  if (EQ (new_value, Qdark))
-    FRAME_NS_APPEARANCE (f) = ns_appearance_vibrant_dark;
-  else if (EQ (new_value, Qlight))
-    FRAME_NS_APPEARANCE (f) = ns_appearance_aqua;
-  else
-    FRAME_NS_APPEARANCE (f) = ns_appearance_system_default;
+  ns_set_appearance_1 (f, new_value);
 
   [window setAppearance];
 #endif /* MAC_OS_X_VERSION_MAX_ALLOWED >= 101000 */