Mercurial > emacs
changeset 101318:06994fb0863f
* nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore DPI. (Bug#1316)
author | Adrian Robert <Adrian.B.Robert@gmail.com> |
---|---|
date | Wed, 21 Jan 2009 17:28:05 +0000 |
parents | 88cb3b251e87 |
children | a776dcbbb2c5 |
files | src/ChangeLog src/nsimage.m |
diffstat | 2 files changed, 12 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ChangeLog Wed Jan 21 17:09:28 2009 +0000 +++ b/src/ChangeLog Wed Jan 21 17:28:05 2009 +0000 @@ -1,12 +1,16 @@ 2009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com> * nsmenu.m (NSMENUPROFILE): Change #if style. + * nsterm.m: (x_set_frame_alpha): Add prototype. (ns_fake_keydown, EmacsView-keyUp:): New variable and function to handle Ctrl-tab. (Bug#1841) (ns_get_color): Use unsigned long long for scanned hex string value. (ns_term_shutdown): Abort on non SIGTERM signals. + * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore DPI. + (Bug#1316) + 2009-01-19 Chong Yidong <cyd@stupidchicken.com> * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
--- a/src/nsimage.m Wed Jan 21 17:09:28 2009 +0000 +++ b/src/nsimage.m Wed Jan 21 17:28:05 2009 +0000 @@ -163,6 +163,7 @@ + allocInitFromFile: (Lisp_Object)file { EmacsImage *image = ImageList; + NSImageRep *imgRep; Lisp_Object found; /* look for an existing image of the same name */ @@ -185,12 +186,18 @@ image = [[EmacsImage alloc] initByReferencingFile: [NSString stringWithUTF8String: SDATA (found)]]; - if ([image bestRepresentationForDevice: nil] == nil) + imgRep = [image bestRepresentationForDevice: nil]; + if (imgRep == nil) { [image release]; return nil; } + /* The next two lines cause the DPI of the image to be ignored. + This seems to be the behavior users expect. */ + [image setScalesWhenResized: YES]; + [image setSize: NSMakeSize([imgRep pixelsWide], [imgRep pixelsHigh])]; + [image setName: [NSString stringWithUTF8String: SDATA (file)]]; [image reference]; ImageList = [image imageListSetNext: ImageList];