Subject: bug#16378: bug#16694: bugs #16694/#16378: Patches

From: Matthias Dahl <[email-masked]>
Date: Wed, 09 Apr 2014 11:49:25 +0200

Hello...

Attached the promised patches. Deprecation goes to emacs-24, removal to
master. And the ChangeLog fix, if nobody minds, to both. :)

Hope everything is ok.

Thanks for the patience. :) If there is anything else, please let me know.

So long,
Matthias

>From 95dd6855bf10edc770a956031c756de4d2aab0e7 Mon Sep 17 00:00:00 2001
From: Matthias Dahl <[email-masked]>
Date: Wed, 9 Apr 2014 11:44:43 +0200
Subject: [PATCH] lisp/ChangeLog: Fix mail address for entry

---
 lisp/ChangeLog | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 5b8e0e9..2dd3e54 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -100,7 +100,7 @@
 
 	* help.el (view-lossage): Doc tweak.
 
-2014-04-07  Matthias Dahl  <[email-masked]>
+2014-04-07  Matthias Dahl  <[email-masked]>
 
 	* faces.el (face-spec-recalc): Call make-face-x-resource-internal
 	only when inhibit-x-resources is nil, and do that earlier in the
-- 
1.9.1

>From 28fd5ca2188a80b18762d4b378e7fef96963615c Mon Sep 17 00:00:00 2001
From: Matthias Dahl <[email-masked]>
Date: Wed, 9 Apr 2014 11:17:37 +0200
Subject: [PATCH] lisp/faces.el: Deprecate optional argument of make-face

The conditional application of X resources has been pushed down to
make-face-x-resource-internal itself and thus the optional argument
is no longer needed nor evaluated.
---
 lisp/ChangeLog |  7 +++++++
 lisp/faces.el  | 18 ++++++++++++------
 2 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 54ac144..58e488c 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,10 @@
+2014-04-09  Matthias Dahl  <[email-masked]>
+
+	* faces.el (make-face): Deprecate optional argument as it is no
+	longer needed/used since the conditional X resources handling
+	has been pushed down to make-face-x-resource-internal itself.
+	(make-empty-face): Don't pass optional argument to make-face.
+
 2014-04-09  Dmitry Gutov  <[email-masked]>
 
 	* progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight more
diff --git a/lisp/faces.el b/lisp/faces.el
index e4d8a35..cf571af 100644
--- a/lisp/faces.el
+++ b/lisp/faces.el
@@ -133,9 +133,11 @@ REGISTRY, ALTERNATIVE1, ALTERNATIVE2, and etc."
   "Define a new face with name FACE, a symbol.
 Do not call this directly from Lisp code; use `defface' instead.
 
-If NO-INIT-FROM-RESOURCES is non-nil, don't initialize face
-attributes from X resources.  If FACE is already known as a face,
-leave it unmodified.  Return FACE."
+If FACE is already known as a face, leave it unmodified. Return FACE.
+
+NO-INIT-FROM-RESOURCES has been deprecated and is no longer used
+and will go away. Handling of conditional X resources application
+has been pushed down to make-x-resource-internal itself."
   (interactive (list (read-from-minibuffer
 		      "Make face: " nil nil t 'face-name-history)))
   (unless (facep face)
@@ -146,16 +148,20 @@ leave it unmodified.  Return FACE."
     (when (fboundp 'facemenu-add-new-face)
       (facemenu-add-new-face face))
     ;; Define frame-local faces for all frames from X resources.
-    (unless no-init-from-resources
-      (make-face-x-resource-internal face)))
+    (make-face-x-resource-internal face))
   face)
 
+;; Handling of whether to apply X resources or not, has been pushed down
+;; to make-face-x-resource-internal itself, thus the optional arg is no
+;; longer evaluated at all and going away.
+(set-advertised-calling-convention 'make-face '(face) "24.4")
+
 (defun make-empty-face (face)
   "Define a new, empty face with name FACE.
 Do not call this directly from Lisp code; use `defface' instead."
   (interactive (list (read-from-minibuffer
 		      "Make empty face: " nil nil t 'face-name-history)))
-  (make-face face 'no-init-from-resources))
+  (make-face face))
 
 (defun copy-face (old-face new-face &optional frame new-frame)
   "Define a face named NEW-FACE, which is a copy of OLD-FACE.
-- 
1.9.1

>From c8848a3c73f3773bdfcc35d177b0ec0421cfbdfa Mon Sep 17 00:00:00 2001
From: Matthias Dahl <[email-masked]>
Date: Wed, 9 Apr 2014 11:35:22 +0200
Subject: [PATCH] lisp/faces.el: Remove deprecated optional argument of
 make-face

The conditional application of X resources is handled directly by
make-face-x-resource-internal since Emacs 24.4 and thus hasn't been
evaluated since.

Fix make-empty-face to not pass an optional argument to make-face.
---
 lisp/ChangeLog |  7 +++++++
 lisp/faces.el  | 11 ++++-------
 2 files changed, 11 insertions(+), 7 deletions(-)

diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 5b8e0e9..f926d30 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,10 @@
+2014-04-07  Matthias Dahl  <[email-masked]>
+
+	* faces.el (make-face): Remove deprecated optional argument. The
+	conditional application of X resources is handled directly by
+	make-face-x-resource-internal since Emacs 24.4.
+	(make-empty-face): Don't pass optional argument to make-face.
+
 2014-04-09  Daniel Colascione  <[email-masked]>
 
 	* emacs-lisp/cl-indent.el: Add comment claiming
diff --git a/lisp/faces.el b/lisp/faces.el
index b2f353d..c2ef62f 100644
--- a/lisp/faces.el
+++ b/lisp/faces.el
@@ -149,13 +149,11 @@ REGISTRY, ALTERNATIVE1, ALTERNATIVE2, and etc."
   "Return a list of all defined faces."
   (mapcar #'car face-new-frame-defaults))
 
-(defun make-face (face &optional no-init-from-resources)
+(defun make-face (face)
   "Define a new face with name FACE, a symbol.
 Do not call this directly from Lisp code; use `defface' instead.
 
-If NO-INIT-FROM-RESOURCES is non-nil, don't initialize face
-attributes from X resources.  If FACE is already known as a face,
-leave it unmodified.  Return FACE."
+If FACE is already known as a face, leave it unmodified.  Return FACE."
   (interactive (list (read-from-minibuffer
 		      "Make face: " nil nil t 'face-name-history)))
   (unless (facep face)
@@ -166,8 +164,7 @@ leave it unmodified.  Return FACE."
     (when (fboundp 'facemenu-add-new-face)
       (facemenu-add-new-face face))
     ;; Define frame-local faces for all frames from X resources.
-    (unless no-init-from-resources
-      (make-face-x-resource-internal face)))
+    (make-face-x-resource-internal face))
   face)
 
 (defun make-empty-face (face)
@@ -175,7 +172,7 @@ leave it unmodified.  Return FACE."
 Do not call this directly from Lisp code; use `defface' instead."
   (interactive (list (read-from-minibuffer
 		      "Make empty face: " nil nil t 'face-name-history)))
-  (make-face face 'no-init-from-resources))
+  (make-face face)
 
 (defun copy-face (old-face new-face &optional frame new-frame)
   "Define a face named NEW-FACE, which is a copy of OLD-FACE.
-- 
1.9.1