merge from trunk

This commit is contained in:
Joakim Verona 2013-08-13 22:26:49 +02:00
commit f2e32ba803
7 changed files with 25 additions and 18 deletions

View file

@ -4664,12 +4664,12 @@ and if @code{:height} is set it will have precedence over
wish. @code{:max-width} and @code{:max-height} will always preserve
the aspect ratio.
@item :content-type
@item :format
ImageMagick tries to auto-detect the image type, but it isn't always
able to. By using @code{:content-type}, we can give ImageMagick a
hint to try to help it. It's used in conjuction with the
@code{image-content-type-suffixes} variable, which provides a mapping
from content types to file name suffixes. This is then given to
able to. By using @code{:format-type}, we can give ImageMagick a hint
to try to help it. It's used in conjuction with the
@code{image-format-suffixes} variable, which provides a mapping from
content types to file name suffixes. This is then given to
ImageMagick as a file name hint.
@item :rotation

View file

@ -897,8 +897,8 @@ treated as images.
keywords.
*** Some data types aren't auto-detected by ImageMagick. Adding
:content-type to `create-image' may help if the content type is in the
new variable `image-content-type-suffixes'.
:format to `create-image' may help if the content type is in the
new variable `image-format-suffixes'.
** Minibuffer

View file

@ -99,11 +99,11 @@ AUTODETECT can be
- maybe auto-detect only if the image type is available
(see `image-type-available-p').")
(defvar image-content-type-suffixes
(defvar image-format-suffixes
'((image/x-icon "ico"))
"Alist of MIME Content-Type headers to file name suffixes.
This is used as a hint by the ImageMagick library when detecting
image types. If `create-image' is called with a :content-type
image types. If `create-image' is called with a :format
matching found in this alist, the ImageMagick library will be
told that the data would have this suffix if saved to a file.")

View file

@ -747,7 +747,7 @@ element is the data blob and the second element is the content-type."
(image (cond
((eq size 'original)
(create-image data nil t :ascent 100
:content-type content-type))
:format content-type))
((eq size 'full)
(ignore-errors
(shr-rescale-image data t content-type)))
@ -791,7 +791,7 @@ If FORCE, rescale the image anyway."
(- (nth 2 edges) (nth 0 edges))))
:max-height (truncate (* shr-max-image-proportion
(- (nth 3 edges) (nth 1 edges))))
:content-type content-type))))
:format content-type))))
;; url-cache-extract autoloads url-cache.
(declare-function url-cache-create-filename "url-cache" (url))

View file

@ -1,3 +1,8 @@
2013-08-13 Jan Djärv <jan.h.d@swipnet.se>
* nsmenu.m (x_activate_menubar): Check for OSX >= 10.5
(trackingNotification:): Call ns_check_menu_open only for OSX >= 10.5.
2013-08-13 Lars Magne Ingebrigtsen <larsi@gnus.org>
* image.c (imagemagick_filename_hint): Check for errors in the

View file

@ -551,7 +551,6 @@ static Lisp_Object QCheuristic_mask;
static Lisp_Object QCcolor_symbols;
static Lisp_Object QCindex, QCmatrix, QCcolor_adjustment, QCmask, QCgeometry;
static Lisp_Object QCcrop, QCrotation;
static Lisp_Object QCcontent_type;
/* Other symbols. */
@ -7741,7 +7740,7 @@ enum imagemagick_keyword_index
IMAGEMAGICK_WIDTH,
IMAGEMAGICK_MAX_HEIGHT,
IMAGEMAGICK_MAX_WIDTH,
IMAGEMAGICK_CONTENT_TYPE,
IMAGEMAGICK_FORMAT,
IMAGEMAGICK_ROTATION,
IMAGEMAGICK_CROP,
IMAGEMAGICK_LAST
@ -7766,7 +7765,7 @@ static struct image_keyword imagemagick_format[IMAGEMAGICK_LAST] =
{":width", IMAGE_INTEGER_VALUE, 0},
{":max-height", IMAGE_INTEGER_VALUE, 0},
{":max-width", IMAGE_INTEGER_VALUE, 0},
{":content-type", IMAGE_SYMBOL_VALUE, 0},
{":format", IMAGE_SYMBOL_VALUE, 0},
{":rotation", IMAGE_NUMBER_VALUE, 0},
{":crop", IMAGE_DONT_CHECK_VALUE_TYPE, 0}
};
@ -7851,15 +7850,15 @@ imagemagick_error (MagickWand *wand)
static char*
imagemagick_filename_hint (Lisp_Object spec)
{
Lisp_Object content_type = image_spec_value (spec, QCcontent_type, NULL);
Lisp_Object symbol = intern ("image-content-type-suffixes");
Lisp_Object format = image_spec_value (spec, intern (":format"), NULL);
Lisp_Object symbol = intern ("image-format-suffixes");
Lisp_Object val;
char *name, *prefix = "/tmp/foo.";
if (NILP (Fboundp (symbol)))
return NULL;
val = Fassq (content_type, Fsymbol_value (symbol));
val = Fassq (format, Fsymbol_value (symbol));
if (! CONSP (val))
return NULL;
@ -9155,7 +9154,6 @@ non-numeric, there is no explicit limit on the size of images. */);
DEFSYM (Qpostscript, "postscript");
DEFSYM (QCmax_width, ":max-width");
DEFSYM (QCmax_height, ":max-height");
DEFSYM (QCcontent_type, ":content-type");
#ifdef HAVE_GHOSTSCRIPT
ADD_IMAGE_TYPE (Qpostscript);
DEFSYM (QCloader, ":loader");

View file

@ -504,9 +504,11 @@
x_activate_menubar (struct frame *f)
{
#ifdef NS_IMPL_COCOA
#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5
ns_update_menubar (f, true, nil);
ns_check_pending_open_menu ();
#endif
#endif
}
@ -563,7 +565,9 @@ -(void)trackingNotification:(NSNotification *)notification
/* Update menu in menuNeedsUpdate only while tracking menus. */
trackingMenu = ([notification name] == NSMenuDidBeginTrackingNotification
? 1 : 0);
#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5
if (! trackingMenu) ns_check_menu_open (nil);
#endif
}
#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5