| 
    
      
  | 
  
 Chromium Code Reviews| 
         Created: 
          4 years, 10 months ago by hiroshige Modified: 
          
          
          4 years, 9 months ago CC: 
          
          
          darktears, apavlov+blink_chromium.org, blink-reviews, blink-reviews-css, blink-reviews-layout_chromium.org, chromium-reviews, dglazkov+blink, krit, eae+blinkwatch, f(malita), fs, gavinp+loader_chromium.org, gyuyoung2, Nate Chapin, jchaffraix+rendering, kouhei+svg_chromium.org, leviw+renderwatch, loading-reviews+fetch_chromium.org, pdr+svgwatchlist_chromium.org, pdr+renderingwatchlist_chromium.org, rwlbuis, Stephen Chennney, szager+layoutwatch_chromium.org, tyoshino+watch_chromium.org, Yoav Weiss, zoltan1 Base URL: 
          
          
          https://chromium.googlesource.com/chromium/src.git@master Target Ref: 
          
          
          refs/pending/heads/master Project: 
          
          chromium Visibility: 
          
          
          
        Public.  | 
      
        
  DescriptionSplit ImageResourceClient into ResourceClient and ImageResourceObserver [2/2]
This CL makes LayoutImage to be no longer ResourceClient by adding
imageNotifyFinished() to ImageResourceObserver, which is called around when
ResourceClient::notifyFinished() would be called.
This CL adds |ImageResource::m_finishedObservers| in order to avoid
imageNotifyFinished() from being called multiple times.
BUG=587663
Committed: https://crrev.com/ba00e4a1b03fa6ca3f2498397c1e6f1628027b5d
Cr-Commit-Position: refs/heads/master@{#383441}
   
  Patch Set 1 #Patch Set 2 : #Patch Set 3 : #Patch Set 4 : Workaround added. #Patch Set 5 : #Patch Set 6 : Rebase.\ #Patch Set 7 : Rebase. #Patch Set 8 : nit refine. #
      Total comments: 2
      
     
  
  Patch Set 9 : Rebase and reflect comment #
      Total comments: 10
      
     
  
  Patch Set 10 : Reflect esprehn's comments. #Patch Set 11 : Rebase. #Patch Set 12 : Rebase. #Depends on Patchset: Messages
    Total messages: 81 (42 generated)
     
  
  
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/1 
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/20001 
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/40001 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: Try jobs failed on following builders: linux_chromium_chromeos_compile_dbg_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) 
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/40001 
 Description was changed from ========== Remove notifyFinished() from LayoutImage BUG= ========== to ========== Use imageChanged() instead of notifyFinished() in LayoutImage This CL is a part of effort to make LayoutObject non-ResourceClient in order to move ResourceClient on-heap. The CL [1] will split ImageResourceClient into ResourceClient and ImageResourceObserver, and make LayoutObject an ImageResourceObserver subclass but not a ResourceClient subclass. [1] https://codereview.chromium.org/1706083002/ However, LayoutImage overrides notifyFinished() which prevents LayoutImage from non-ResourceClient. This CL - Adds |isNotifyingFinish| parameter to ImageResourceClient::imageChanged(). imageChanged(true, ...) is called exactly once before notifyFinished() is called. - Merges LayoutImage::notifyFinished() into imageChanged() and removes LayoutImage::notifyFinished(). BUG=587663 ========== 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: Try jobs failed on following builders: win_chromium_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...) 
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/60001 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: This issue passed the CQ dry run. 
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/80001 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: Try jobs failed on following builders: linux_chromium_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) 
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/100001 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: Try jobs failed on following builders: chromeos_amd64-generic_chromium_compile_only_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromeos_amd64-...) mac_chromium_rel_ng on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...) 
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/120001 
 Description was changed from ========== Use imageChanged() instead of notifyFinished() in LayoutImage This CL is a part of effort to make LayoutObject non-ResourceClient in order to move ResourceClient on-heap. The CL [1] will split ImageResourceClient into ResourceClient and ImageResourceObserver, and make LayoutObject an ImageResourceObserver subclass but not a ResourceClient subclass. [1] https://codereview.chromium.org/1706083002/ However, LayoutImage overrides notifyFinished() which prevents LayoutImage from non-ResourceClient. This CL - Adds |isNotifyingFinish| parameter to ImageResourceClient::imageChanged(). imageChanged(true, ...) is called exactly once before notifyFinished() is called. - Merges LayoutImage::notifyFinished() into imageChanged() and removes LayoutImage::notifyFinished(). BUG=587663 ========== to ========== Split ImageResourceClient into Resource [2/2] This CL makes LayoutImage to be no longer ResourceClient by - Adding |isNotifyingFinish| parameter to ImageResourceObserver::imageChanged(). imageChanged(true, ...) is called exactly once around when ResourceClient::notifyFinished() is called. - Replacing LayoutImage::notifyFinished() by imageChanged(). BUG=587663 ========== 
 Description was changed from ========== Split ImageResourceClient into Resource [2/2] This CL makes LayoutImage to be no longer ResourceClient by - Adding |isNotifyingFinish| parameter to ImageResourceObserver::imageChanged(). imageChanged(true, ...) is called exactly once around when ResourceClient::notifyFinished() is called. - Replacing LayoutImage::notifyFinished() by imageChanged(). BUG=587663 ========== to ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] This CL makes LayoutImage to be no longer ResourceClient by - Adding |isNotifyingFinish| parameter to ImageResourceObserver::imageChanged(). imageChanged(true, ...) is called exactly once around when ResourceClient::notifyFinished() is called. - Replacing LayoutImage::notifyFinished() by imageChanged(). BUG=587663 ========== 
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/140001 
 Description was changed from ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] This CL makes LayoutImage to be no longer ResourceClient by - Adding |isNotifyingFinish| parameter to ImageResourceObserver::imageChanged(). imageChanged(true, ...) is called exactly once around when ResourceClient::notifyFinished() is called. - Replacing LayoutImage::notifyFinished() by imageChanged(). BUG=587663 ========== to ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] This CL makes LayoutImage to be no longer ResourceClient by - Adding |isNotifyingFinish| parameter to ImageResourceObserver::imageChanged(). imageChanged(true, ...) is called exactly once around when ResourceClient::notifyFinished() is called. To call imageChanged(true, ...) exactly once, |ImageResource::m_finishedObservers| is added. - Replacing LayoutImage::notifyFinished() by imageChanged(). BUG=587663 ========== 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: Try jobs failed on following builders: android_compile_dbg on tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_comp...) 
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/140001 
 hiroshige@chromium.org changed reviewers: + esprehn@chromium.org, japhet@chromium.org, yhirano@chromium.org 
 could you take a look? 
 Is your description right? You have two cases of imageChanged(true that say happen once? 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: This issue passed the CQ dry run. 
 On 2016/03/01 23:13:02, esprehn wrote: > Is your description right? You have two cases of imageChanged(true that say > happen once? Could you clarify what do you mean by "two cases of imageChanged(true"? 
 https://codereview.chromium.org/1728313003/diff/140001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/fetch/ImageResourceObserver.h (right): https://codereview.chromium.org/1728313003/diff/140001/third_party/WebKit/Sou... third_party/WebKit/Source/core/fetch/ImageResourceObserver.h:41: // because we are animating. If not null, the IntRect is the changed rect of the image. Please add some comments about isNotifyingFinish. 
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/160001 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: This issue passed the CQ dry run. 
 Description was changed from ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] This CL makes LayoutImage to be no longer ResourceClient by - Adding |isNotifyingFinish| parameter to ImageResourceObserver::imageChanged(). imageChanged(true, ...) is called exactly once around when ResourceClient::notifyFinished() is called. To call imageChanged(true, ...) exactly once, |ImageResource::m_finishedObservers| is added. - Replacing LayoutImage::notifyFinished() by imageChanged(). BUG=587663 ========== to ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] - Adding |isNotifyingFinish| parameter to ImageResourceObserver::imageChanged() to make ImageResourceObserver::imageChanged() with |isNotifyingFinish| = true a replacement of ResourceClient::notifyChanged(). Around when ResourceClient::notifyFinished() is called, imageChanged() is called with |isNotifyingFinish| = true, exactly once for each ImageResourceObserver. For the other imageChanged() calls, |isNotifyingFinish| is false. - Replacing LayoutImage::notifyFinished() by imageChanged(). This CL adds |ImageResource::m_finishedObservers| in order to avoid |isNotifyingFinish| to be true for multiple calls of imageChanged(). BUG=587663 ========== 
 Description was changed from ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] - Adding |isNotifyingFinish| parameter to ImageResourceObserver::imageChanged() to make ImageResourceObserver::imageChanged() with |isNotifyingFinish| = true a replacement of ResourceClient::notifyChanged(). Around when ResourceClient::notifyFinished() is called, imageChanged() is called with |isNotifyingFinish| = true, exactly once for each ImageResourceObserver. For the other imageChanged() calls, |isNotifyingFinish| is false. - Replacing LayoutImage::notifyFinished() by imageChanged(). This CL adds |ImageResource::m_finishedObservers| in order to avoid |isNotifyingFinish| to be true for multiple calls of imageChanged(). BUG=587663 ========== to ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] - Adding |isNotifyingFinish| parameter to ImageResourceObserver::imageChanged() to make ImageResourceObserver::imageChanged() with |isNotifyingFinish| = true a replacement of ResourceClient::notifyChanged(). Around when ResourceClient::notifyFinished() is called, imageChanged() is called with |isNotifyingFinish| = true, exactly once for each ImageResourceObserver. For the other imageChanged() calls, |isNotifyingFinish| is false. Except for |isNotifyingFinish|, the behavior of imageChanged() is unchanged. - Replacing LayoutImage::notifyFinished() by imageChanged(). This CL adds |ImageResource::m_finishedObservers| in order to avoid |isNotifyingFinish| to be true for multiple calls of imageChanged(). BUG=587663 ========== 
 Description was changed from ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] - Adding |isNotifyingFinish| parameter to ImageResourceObserver::imageChanged() to make ImageResourceObserver::imageChanged() with |isNotifyingFinish| = true a replacement of ResourceClient::notifyChanged(). Around when ResourceClient::notifyFinished() is called, imageChanged() is called with |isNotifyingFinish| = true, exactly once for each ImageResourceObserver. For the other imageChanged() calls, |isNotifyingFinish| is false. Except for |isNotifyingFinish|, the behavior of imageChanged() is unchanged. - Replacing LayoutImage::notifyFinished() by imageChanged(). This CL adds |ImageResource::m_finishedObservers| in order to avoid |isNotifyingFinish| to be true for multiple calls of imageChanged(). BUG=587663 ========== to ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] This CL makes LayoutImage to be no longer ResourceClient by - Adding |isNotifyingFinish| parameter to ImageResourceObserver::imageChanged() to make ImageResourceObserver::imageChanged() with |isNotifyingFinish| = true a replacement of ResourceClient::notifyChanged(). Around when ResourceClient::notifyFinished() is called, imageChanged() is called with |isNotifyingFinish| = true, exactly once for each ImageResourceObserver. For the other imageChanged() calls, |isNotifyingFinish| is false. Except for |isNotifyingFinish|, the behavior of imageChanged() is unchanged. - Replacing LayoutImage::notifyFinished() by imageChanged(). This CL adds |ImageResource::m_finishedObservers| in order to avoid |isNotifyingFinish| to be true for multiple calls of imageChanged(). BUG=587663 ========== 
 Changed the CL description. Is it clear enough? https://codereview.chromium.org/1728313003/diff/140001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/fetch/ImageResourceObserver.h (right): https://codereview.chromium.org/1728313003/diff/140001/third_party/WebKit/Sou... third_party/WebKit/Source/core/fetch/ImageResourceObserver.h:41: // because we are animating. If not null, the IntRect is the changed rect of the image. On 2016/03/02 01:20:34, yhirano wrote: > Please add some comments about isNotifyingFinish. Done. 
 I'm happy with this patch if esprehn is happy. 
 bool args should usually have their names so we know what they are. I think I'd rather two callbacks, but this is okay if that's too gross for some reason? lgtm w/ nits. https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/css/CSSCrossfadeValue.h (right): https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... third_party/WebKit/Source/core/css/CSSCrossfadeValue.h:90: void imageChanged(bool, ImageResource*, const IntRect* = nullptr) override; what's the argument? bool should have a name. https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/fetch/ImageResource.cpp (right): https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... third_party/WebKit/Source/core/fetch/ImageResource.cpp:178: ImageResourceObserverWalker w(m_finishedObservers); ick, single letter variables. :( https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... third_party/WebKit/Source/core/fetch/ImageResource.cpp:183: ImageResourceObserverWalker w2(m_observers); can we do finishedWalker and walker or something? https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... third_party/WebKit/Source/core/fetch/ImageResource.cpp:311: ImageResourceObserverWalker w(m_finishedObservers); ditto https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/fetch/ImageResourceObserver.h (right): https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... third_party/WebKit/Source/core/fetch/ImageResourceObserver.h:45: virtual void imageChanged(bool isNotifyingFinish, ImageResource*, const IntRect* = 0) { } I think I'd rather two different callbacks for the finished and non finished cases. 
 Patchset #10 (id:180001) has been deleted 
 Patchset #10 (id:200001) has been deleted 
 Description was changed from ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] This CL makes LayoutImage to be no longer ResourceClient by - Adding |isNotifyingFinish| parameter to ImageResourceObserver::imageChanged() to make ImageResourceObserver::imageChanged() with |isNotifyingFinish| = true a replacement of ResourceClient::notifyChanged(). Around when ResourceClient::notifyFinished() is called, imageChanged() is called with |isNotifyingFinish| = true, exactly once for each ImageResourceObserver. For the other imageChanged() calls, |isNotifyingFinish| is false. Except for |isNotifyingFinish|, the behavior of imageChanged() is unchanged. - Replacing LayoutImage::notifyFinished() by imageChanged(). This CL adds |ImageResource::m_finishedObservers| in order to avoid |isNotifyingFinish| to be true for multiple calls of imageChanged(). BUG=587663 ========== to ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] This CL makes LayoutImage to be no longer ResourceClient by adding imageNotifyFinished() to ImageResourceObserver, which is called around when ResourceClient::notifyFinished() would be called. This CL adds |ImageResource::m_finishedObservers| in order to avoid imageNotifyFinished() from being called multiple times. BUG=587663 ========== 
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/240001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/240001 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: Try jobs failed on following builders: win_chromium_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...) 
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/240001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/240001 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: This issue passed the CQ dry run. 
 lgtm 
 https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/css/CSSCrossfadeValue.h (right): https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... third_party/WebKit/Source/core/css/CSSCrossfadeValue.h:90: void imageChanged(bool, ImageResource*, const IntRect* = nullptr) override; On 2016/03/22 23:31:49, esprehn wrote: > what's the argument? bool should have a name. Removed the parameter. https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/fetch/ImageResource.cpp (right): https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... third_party/WebKit/Source/core/fetch/ImageResource.cpp:178: ImageResourceObserverWalker w(m_finishedObservers); On 2016/03/22 23:31:49, esprehn wrote: > ick, single letter variables. :( Done. https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... third_party/WebKit/Source/core/fetch/ImageResource.cpp:183: ImageResourceObserverWalker w2(m_observers); On 2016/03/22 23:31:49, esprehn wrote: > can we do finishedWalker and walker or something? Done. https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... third_party/WebKit/Source/core/fetch/ImageResource.cpp:311: ImageResourceObserverWalker w(m_finishedObservers); On 2016/03/22 23:31:49, esprehn wrote: > ditto Done. https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/fetch/ImageResourceObserver.h (right): https://codereview.chromium.org/1728313003/diff/160001/third_party/WebKit/Sou... third_party/WebKit/Source/core/fetch/ImageResourceObserver.h:45: virtual void imageChanged(bool isNotifyingFinish, ImageResource*, const IntRect* = 0) { } On 2016/03/22 23:31:49, esprehn wrote: > I think I'd rather two different callbacks for the finished and non finished > cases. Done. I added notifyFinished() here also, and revert imageChanged() changes. 
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/260001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/260001 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: This issue passed the CQ dry run. 
 The CQ bit was checked by hiroshige@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/260001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/260001 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: This issue passed the CQ dry run. 
 The CQ bit was checked by hiroshige@chromium.org 
 The patchset sent to the CQ was uploaded after l-g-t-m from esprehn@chromium.org, yhirano@chromium.org Link to the patchset: https://codereview.chromium.org/1728313003/#ps260001 (title: "Rebase.") 
 CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1728313003/260001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1728313003/260001 
 
            
              
                Message was sent while issue was closed.
              
            
             
          
        Description was changed from ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] This CL makes LayoutImage to be no longer ResourceClient by adding imageNotifyFinished() to ImageResourceObserver, which is called around when ResourceClient::notifyFinished() would be called. This CL adds |ImageResource::m_finishedObservers| in order to avoid imageNotifyFinished() from being called multiple times. BUG=587663 ========== to ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] This CL makes LayoutImage to be no longer ResourceClient by adding imageNotifyFinished() to ImageResourceObserver, which is called around when ResourceClient::notifyFinished() would be called. This CL adds |ImageResource::m_finishedObservers| in order to avoid imageNotifyFinished() from being called multiple times. BUG=587663 ========== 
 
            
              
                Message was sent while issue was closed.
              
            
             
          
        Committed patchset #12 (id:260001) 
 
            
              
                Message was sent while issue was closed.
              
            
             
          
        Description was changed from ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] This CL makes LayoutImage to be no longer ResourceClient by adding imageNotifyFinished() to ImageResourceObserver, which is called around when ResourceClient::notifyFinished() would be called. This CL adds |ImageResource::m_finishedObservers| in order to avoid imageNotifyFinished() from being called multiple times. BUG=587663 ========== to ========== Split ImageResourceClient into ResourceClient and ImageResourceObserver [2/2] This CL makes LayoutImage to be no longer ResourceClient by adding imageNotifyFinished() to ImageResourceObserver, which is called around when ResourceClient::notifyFinished() would be called. This CL adds |ImageResource::m_finishedObservers| in order to avoid imageNotifyFinished() from being called multiple times. BUG=587663 Committed: https://crrev.com/ba00e4a1b03fa6ca3f2498397c1e6f1628027b5d Cr-Commit-Position: refs/heads/master@{#383441} ========== 
 
            
              
                Message was sent while issue was closed.
              
            
             
          
        Patchset 12 (id:??) landed as https://crrev.com/ba00e4a1b03fa6ca3f2498397c1e6f1628027b5d Cr-Commit-Position: refs/heads/master@{#383441}  | 
    
