1. 02 Mar, 2017 1 commit
  2. 06 Feb, 2017 1 commit
  3. 11 Nov, 2016 1 commit
    • rockot's avatar
      Introduce the image_decoder service · 2a0f4fb3
      rockot authored
      Moves OOP image decoding from a one-off utility process IPC
      to its own service_manager service. This is then hooked up
      by Chrome to be launched by content's utility-process-based
      sandboxed service launcher.
      
      This serves as a precursor to extracing process launch
      code from content, as it defines a service which is used
      in production across all platforms that support multiprocess.
      
      The ImageDecoder helper defined in src/chrome is substantially
      simplified here, as it's reduced to a thin wrapper around the
      image_decoder client library.
      
      In order to support Chrome content_browser packaging the
      service, this also adds support for packaging services within
      manifest overlays by introducing a new service_manifest_overlay
      GN template.
      
      Finally this also introduces a new service_unittests binary
      as a default home for service implementations to stash their
      unittest sources. Follow-up work will add this test suite to
      bot configurations.
      
      BUG=654986
      
      Review-Url: https://codereview.chromium.org/2475543003
      Cr-Commit-Position: refs/heads/master@{#431605}
      2a0f4fb3
  4. 26 Jul, 2016 1 commit
    • nya's avatar
      Avoid unnecessary copies in ImageDecoder. · 601d970a
      nya authored
      For the deprecated API methods with const std::string&
      parameter, copy is reduced from two times to once.
      
      With the new API methods with std::vector<uint8_t>
      parameter, the caller can avoid copies at all by passing
      data with std::move().
      
      Also converts ArcWallpaperHandler to use the new API
      as a first user.
      
      BUG=631327
      TEST=browser_tests --gtest_filter='ImageDecoderBrowserTest.*'
      
      Review-Url: https://codereview.chromium.org/2177833003
      Cr-Commit-Position: refs/heads/master@{#407861}
      601d970a
  5. 03 May, 2016 1 commit
  6. 19 Apr, 2016 1 commit
  7. 05 Apr, 2016 1 commit
  8. 02 Apr, 2016 1 commit
  9. 09 Mar, 2016 1 commit
    • satorux's avatar
      Added ROBUST_PNG_CODEC to ImageDecoder · f7e76f06
      satorux authored
      ROBUST_JPEG_CODEC was added in the past because using the default
      decoder, that accepts various image formats, in login screens
      is potentially dangerous.
      
      However, JPEG format does not support transparent pixels, hence
      profile images with transparent pixels are rendered incorrectly.
      
      Per discussion with jorgelo@ and mdempsky@, this patch introduces
      ROBUST_PNG_CODEC, that accepts only PNG data on top of the libpng
      decoder.
      
      BUG=587289
      TEST=run the newly added browser tests
      
      Review URL: https://codereview.chromium.org/1764603002
      
      Cr-Commit-Position: refs/heads/master@{#380086}
      f7e76f06
  10. 26 Dec, 2015 1 commit
  11. 24 Sep, 2015 1 commit
    • danakj's avatar
      base: Template methods on Timer classes instead of the classes themselves. · 8c3eb804
      danakj authored
      The base class for OneShotTimer and DelayedTimer is templated but
      only the Start method needs to be (which has a TODO to make it go away
      entirely too).
      
      The DelayedTimer class is also templated but only its constructor
      needs to be, and the type can be inferred at the callsite, so less
      typing all around.
      
      R=thakis@chromium.org
      TBR=sky,brettw
      BUG=148832
      CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel
      
      Review URL: https://codereview.chromium.org/1355063004
      
      Cr-Commit-Position: refs/heads/master@{#350496}
      8c3eb804
  12. 07 May, 2015 1 commit
    • edward.baker's avatar
      Switch ChromeOS Chromium login to use IJG libjpeg · 199f66b2
      edward.baker authored
      The default libjpeg library is libjpeg_turbo, except for Chrome OS. This
      change switches the Chrome OS build to use IJG jpeg for the login screen.
      The intended outcome is to have everything use libjpeg_turbo except for
      JPEGCodec in ui/gfx.
      
      ChromeUtilityMsg_RobustJPEGDecodeImage:
        Send decodes to JPEGCodec which then uses chromium_ijg_ mangled libjpeg to
        decode JPEGs.
      ChromeUtilityMsg_DecodeImage:
        Send decodes to blink WebImage. Any JPEGs would then be decoded with
        libjpeg_turbo mangled with chromium_jpeg_.
      
      User login code avatar/user_image_manager_impl.cc and
      wallpaper/wallpaper_manager.cc currently setup UserImageLoader with
      ImageDecoder::ROBUST_JPEG_DECODE.
      
      Tests were run on a Peppy (Haswell 2955U), using the image_decoding benchmark
      in telemetry.
      
      ImageDecoding_avg.image_decoding.html?jpg:
      Stock (ms): 166.98 166.80 163.03
      Patch (ms):  78.95  73.27  78.23
      
      TBR=cpu@chromium.org
      BUG=413712
      TEST=
      $ cd ./tools/perf
      $ ./run_benchmark --remote=${IP} \
                        --browser=cros-chrome-guest \
                        run image_decoding.image_decoding_measurement
      
      Review URL: https://codereview.chromium.org/569623002
      
      Cr-Commit-Position: refs/heads/master@{#328812}
      199f66b2
  13. 30 Apr, 2015 2 commits
  14. 22 Apr, 2015 1 commit
  15. 01 Apr, 2015 1 commit
  16. 26 Mar, 2015 1 commit
    • twellington's avatar
      image_decoder has been refactored into a Leaky (accessible from multiple... · a71414d3
      twellington authored
      image_decoder has been refactored into a Leaky (accessible from multiple threads) LazyInstance (singleton), that uses one utility process running in batch mode to decode all images.
      
      This CL fixes a performance problem with scrolling in bookmarks on Android.
      Previously we were using a new image_decoder and therefore a
      new utility process for each image we wanted to decode. Now we
      use one shared image_decoder that has one utility process running in batch mode for decoding all images.
      
      BUG=451201
      
      Review URL: https://codereview.chromium.org/931993002
      
      Cr-Commit-Position: refs/heads/master@{#322383}
      a71414d3
  17. 20 Jan, 2015 1 commit
    • pneubeck's avatar
      json_schema_compiler: Use std::vector<char> for binary values. · 93871258
      pneubeck authored
      This change enables ArrayBuffer[] in IDLs / json-schema descriptions of extension APIs.
      
      This affects the code generated from these descriptions:
      The C++ members (and arguments to the ::Create functions) that refer to binary values are now represented by std::vector<char> instead of std::string.
      
      All usages are adapted in this CL.
      While there, this change updates the affected code parts
       - to use vector_as_array where it makes sense
       - unnecessary copies are removed where easily possible
       - and range based assigns ( ::assign(InputIterator first, InputIterator last) or the same with c'tors) are uniformly used.
      
      BUG=448383
      TBR=stevenjb@chromium.org (chromeos/dbus was reviewed by bartfab@)
      
      Review URL: https://codereview.chromium.org/820673004
      
      Cr-Commit-Position: refs/heads/master@{#312183}
      93871258
  18. 21 Oct, 2014 1 commit
  19. 13 Oct, 2014 1 commit
  20. 26 Sep, 2014 1 commit
  21. 24 Sep, 2014 2 commits
  22. 12 Jun, 2013 1 commit
  23. 25 Jan, 2013 1 commit
  24. 29 Aug, 2012 1 commit
  25. 11 Jul, 2012 1 commit
  26. 13 Jun, 2012 1 commit
  27. 12 Jun, 2012 1 commit
  28. 31 May, 2012 2 commits
  29. 03 Feb, 2012 1 commit
  30. 28 Nov, 2011 1 commit
  31. 22 Nov, 2011 1 commit
  32. 02 Nov, 2011 1 commit
  33. 19 Jul, 2011 1 commit
  34. 09 Jun, 2011 1 commit
  35. 15 May, 2011 1 commit
  36. 06 Apr, 2011 1 commit
  37. 16 Mar, 2011 1 commit