diff --git a/atom/common/native_mate_converters/image_converter.cc b/atom/common/native_mate_converters/image_converter.cc index 314e4fadb4f1..d4a33eb5ec5b 100644 --- a/atom/common/native_mate_converters/image_converter.cc +++ b/atom/common/native_mate_converters/image_converter.cc @@ -16,6 +16,8 @@ #include "ui/gfx/image/image_skia.h" #include "ui/base/layout.h" +#if !defined(OS_MACOSX) + namespace mate { namespace { @@ -106,7 +108,6 @@ bool Converter::FromV8(v8::Isolate* isolate, return PopulateImageSkiaRepsFromPath(out, path); } -#if !defined(OS_MACOSX) bool Converter::FromV8(v8::Isolate* isolate, v8::Handle val, gfx::Image* out) { @@ -117,6 +118,7 @@ bool Converter::FromV8(v8::Isolate* isolate, *out = gfx::Image(image); return true; } -#endif } // namespace mate + +#endif // !defined(OS_MACOSX) diff --git a/atom/common/native_mate_converters/image_converter_mac.mm b/atom/common/native_mate_converters/image_converter_mac.mm index 999bf6008ce0..cb1afe2aa137 100644 --- a/atom/common/native_mate_converters/image_converter_mac.mm +++ b/atom/common/native_mate_converters/image_converter_mac.mm @@ -10,9 +10,25 @@ #include "base/mac/scoped_nsobject.h" #include "base/strings/sys_string_conversions.h" #include "ui/gfx/image/image.h" +#include "ui/gfx/image/image_skia.h" namespace mate { +bool Converter::FromV8(v8::Isolate* isolate, + v8::Handle val, + gfx::ImageSkia* out) { + gfx::Image image; + if (!ConvertFromV8(isolate, val, &image) || image.IsEmpty()) + return false; + + gfx::ImageSkia image_skia = image.AsImageSkia(); + if (image_skia.isNull()) + return false; + + *out = image_skia; + return true; +} + bool Converter::FromV8(v8::Isolate* isolate, v8::Handle val, gfx::Image* out) {