From 0a25002dc2abfd77cd1c227942df3e77321d398d Mon Sep 17 00:00:00 2001 From: Darren Hoo Date: Thu, 30 Jan 2014 20:58:51 -0500 Subject: [PATCH] Fix for fancy-splash image inconsistency * lisp/startup.el (fancy-splash-image-file): New function, split from fancy-splash-head. (fancy-splash-head, use-fancy-splash-screens-p): Use it, so that we are both using the same image. Fixes: debbugs:16574 --- lisp/ChangeLog | 7 +++++++ lisp/startup.el | 39 +++++++++++++++++++-------------------- 2 files changed, 26 insertions(+), 20 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 2a073a1ae32..c647ba0783b 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2014-01-31 Darren Hoo + + * startup.el (fancy-splash-image-file): New function, + split from fancy-splash-head. + (fancy-splash-head, use-fancy-splash-screens-p): Use it, + so that we are both using the same image. (Bug#16574) + 2014-01-30 Glenn Morris * simple.el (eval-expression): Doc fix. diff --git a/lisp/startup.el b/lisp/startup.el index 98b6d20c83d..b035947cccd 100644 --- a/lisp/startup.el +++ b/lisp/startup.el @@ -1590,24 +1590,26 @@ a face or button specification." (declare-function image-size "image.c" (spec &optional pixels frame)) +(defun fancy-splash-image-file () + (cond ((stringp fancy-splash-image) fancy-splash-image) + ((display-color-p) + (cond ((<= (display-planes) 8) + (if (image-type-available-p 'xpm) + "splash.xpm" + "splash.pbm")) + ((or (image-type-available-p 'svg) + (image-type-available-p 'imagemagick)) + "splash.svg") + ((image-type-available-p 'png) + "splash.png") + ((image-type-available-p 'xpm) + "splash.xpm") + (t "splash.pbm"))) + (t "splash.pbm"))) + (defun fancy-splash-head () "Insert the head part of the splash screen into the current buffer." - (let* ((image-file (cond ((stringp fancy-splash-image) - fancy-splash-image) - ((display-color-p) - (cond ((<= (display-planes) 8) - (if (image-type-available-p 'xpm) - "splash.xpm" - "splash.pbm")) - ((or (image-type-available-p 'svg) - (image-type-available-p 'imagemagick)) - "splash.svg") - ((image-type-available-p 'png) - "splash.png") - ((image-type-available-p 'xpm) - "splash.xpm") - (t "splash.pbm"))) - (t "splash.pbm"))) + (let* ((image-file (fancy-splash-image-file)) (img (create-image image-file)) (image-width (and img (car (image-size img)))) (window-width (window-width))) @@ -1811,10 +1813,7 @@ we put it on this frame." (image-type-available-p 'pbm))) (let ((frame (fancy-splash-frame))) (when frame - (let* ((img (create-image (or fancy-splash-image - (if (and (display-color-p) - (image-type-available-p 'xpm)) - "splash.xpm" "splash.pbm")))) + (let* ((img (create-image (fancy-splash-image-file))) (image-height (and img (cdr (image-size img nil frame)))) ;; We test frame-height so that, if the frame is split ;; by displaying a warning, that doesn't cause the normal -- 2.39.2