| 
    
      
  | 
  
 Chromium Code Reviews
        
  DescriptionMacViews: Be robust against Views manipulating Layers during Widget::Close().
An InkDropHostView may manipulate layers in response the Widget::Hide().
A Hide() occurs synchronously in Widget::Close(), followed by tear down
that occurs asynchronously. Mac's BridgedNativeWidget (and
aura::Window::~Window()) suppress repaints during a close.
BridgedNativeWidget does this by clearing out the compositor. We
shouldn't try to subsequently recreate the compositor (there's a DCHECK
for that).
Manipulating Layers may call Widget::ReorderNativeViews. And
NativeWidgetMac::ReorderNativeViews() currently calls
BridgedNativeWidget::SetRootView() (which updates the compositor). It's
done this since before ReorderChildViews() was implemented, but it's no
longer necessary. It should always be a no-op: the RootView can't
change.
BUG=673991, 674003
Committed: https://crrev.com/c8701123a47788c2dcd15f957ac02492d1138fa4
Cr-Commit-Position: refs/heads/master@{#438653}
   
  Patch Set 1 #Patch Set 2 : Handle Mus #Patch Set 3 : IsAuraMusClient #Patch Set 4 : selfnits #
 Messages
    Total messages: 32 (27 generated)
     
  
  
 The CQ bit was checked by tapted@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 Description was changed from ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). BUG=673991 ========== to ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide() that occurs synchronously in Widget::Close() before the asynchronous tear down. NativeWidgetMac::Close() (and aura::Window::~Window()) suppress repaints during a close. NativeWidgetMac does this by clearing out the compositor. We shouldn't try to subsequently recreate one. NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView(). This is from before ReorderChildViews() was implemented, but it's now no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991 ========== 
 Description was changed from ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide() that occurs synchronously in Widget::Close() before the asynchronous tear down. NativeWidgetMac::Close() (and aura::Window::~Window()) suppress repaints during a close. NativeWidgetMac does this by clearing out the compositor. We shouldn't try to subsequently recreate one. NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView(). This is from before ReorderChildViews() was implemented, but it's now no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991 ========== to ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide() that occurs synchronously in Widget::Close() before the asynchronous tear down. NativeWidgetMac::Close() (and aura::Window::~Window()) suppress repaints during a close. NativeWidgetMac does this by clearing out the compositor. We shouldn't try to subsequently recreate the compositor. NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView(). This is from before ReorderChildViews() was implemented, but it's now no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991 ========== 
 Description was changed from ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide() that occurs synchronously in Widget::Close() before the asynchronous tear down. NativeWidgetMac::Close() (and aura::Window::~Window()) suppress repaints during a close. NativeWidgetMac does this by clearing out the compositor. We shouldn't try to subsequently recreate the compositor. NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView(). This is from before ReorderChildViews() was implemented, but it's now no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991 ========== to ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide() that occurs synchronously in Widget::Close() before the asynchronous tear down. NativeWidgetMac::Close() (and aura::Window::~Window()) suppress repaints during a close. NativeWidgetMac does this by clearing out the compositor. We shouldn't try to subsequently recreate the compositor. Manipulating Layers may call ReorderNativeViews. NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView() (which updates the compositor). It's done this since before ReorderChildViews() was implemented, but it's now no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991 ========== 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) 
 Description was changed from ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide() that occurs synchronously in Widget::Close() before the asynchronous tear down. NativeWidgetMac::Close() (and aura::Window::~Window()) suppress repaints during a close. NativeWidgetMac does this by clearing out the compositor. We shouldn't try to subsequently recreate the compositor. Manipulating Layers may call ReorderNativeViews. NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView() (which updates the compositor). It's done this since before ReorderChildViews() was implemented, but it's now no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991 ========== to ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide() that occurs synchronously in Widget::Close() before the asynchronous tear down. NativeWidgetMac::Close() (and aura::Window::~Window()) suppress repaints during a close. NativeWidgetMac does this by clearing out the compositor. We shouldn't try to subsequently recreate the compositor. Manipulating Layers may call ReorderNativeViews. NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView() (which updates the compositor). It's done this since before ReorderChildViews() was implemented, but it's now no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991, 674003 ========== 
 The CQ bit was checked by tapted@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) 
 The CQ bit was checked by tapted@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: This issue passed the CQ dry run. 
 Description was changed from ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide() that occurs synchronously in Widget::Close() before the asynchronous tear down. NativeWidgetMac::Close() (and aura::Window::~Window()) suppress repaints during a close. NativeWidgetMac does this by clearing out the compositor. We shouldn't try to subsequently recreate the compositor. Manipulating Layers may call ReorderNativeViews. NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView() (which updates the compositor). It's done this since before ReorderChildViews() was implemented, but it's now no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991, 674003 ========== to ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide(). The Hide() occurs synchronously in Widget::Close(), then tear down happens asynchronously. NativeWidgetMac::Close() (and aura::Window::~Window()) suppress repaints during a close. NativeWidgetMac does this by clearing out the compositor. We shouldn't try to subsequently recreate the compositor (there's a DCHECK for that). Manipulating Layers may call ReorderNativeViews. And NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView() (which updates the compositor). It's done this since before ReorderChildViews() was implemented, but it's no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991, 674003 ========== 
 tapted@chromium.org changed reviewers: + sky@chromium.org 
 The CQ bit was checked by tapted@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 Description was changed from ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide(). The Hide() occurs synchronously in Widget::Close(), then tear down happens asynchronously. NativeWidgetMac::Close() (and aura::Window::~Window()) suppress repaints during a close. NativeWidgetMac does this by clearing out the compositor. We shouldn't try to subsequently recreate the compositor (there's a DCHECK for that). Manipulating Layers may call ReorderNativeViews. And NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView() (which updates the compositor). It's done this since before ReorderChildViews() was implemented, but it's no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991, 674003 ========== to ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide(). A Hide() occurs synchronously in Widget::Close(), followed by tear down that occurs asynchronously. Mac's BridgedNativeWidget (and aura::Window::~Window()) suppress repaints during a close. BridgedNativeWidget does this by clearing out the compositor. We shouldn't try to subsequently recreate the compositor (there's a DCHECK for that). Manipulating Layers may call Widget::ReorderNativeViews. And NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView() (which updates the compositor). It's done this since before ReorderChildViews() was implemented, but it's no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991, 674003 ========== 
 Hi sky, please take a look 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: This issue passed the CQ dry run. 
 LGTM 
 The CQ bit was checked by tapted@chromium.org 
 CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 CQ is committing da patch.
Bot data: {"patchset_id": 60001, "attempt_start_ts": 1481754409896110,
"parent_rev": "a9bedfa27c029cbd024820db012fe612a5127c35", "commit_rev":
"0e0843dce6a5b85f123c7e21aeae606620f6f3a0"}
          
 
            
              
                Message was sent while issue was closed.
              
            
             
          
        Description was changed from ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide(). A Hide() occurs synchronously in Widget::Close(), followed by tear down that occurs asynchronously. Mac's BridgedNativeWidget (and aura::Window::~Window()) suppress repaints during a close. BridgedNativeWidget does this by clearing out the compositor. We shouldn't try to subsequently recreate the compositor (there's a DCHECK for that). Manipulating Layers may call Widget::ReorderNativeViews. And NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView() (which updates the compositor). It's done this since before ReorderChildViews() was implemented, but it's no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991, 674003 ========== to ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide(). A Hide() occurs synchronously in Widget::Close(), followed by tear down that occurs asynchronously. Mac's BridgedNativeWidget (and aura::Window::~Window()) suppress repaints during a close. BridgedNativeWidget does this by clearing out the compositor. We shouldn't try to subsequently recreate the compositor (there's a DCHECK for that). Manipulating Layers may call Widget::ReorderNativeViews. And NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView() (which updates the compositor). It's done this since before ReorderChildViews() was implemented, but it's no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991, 674003 Review-Url: https://codereview.chromium.org/2577593002 ========== 
 
            
              
                Message was sent while issue was closed.
              
            
             
          
        Committed patchset #4 (id:60001) 
 
            
              
                Message was sent while issue was closed.
              
            
             
          
        Description was changed from ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide(). A Hide() occurs synchronously in Widget::Close(), followed by tear down that occurs asynchronously. Mac's BridgedNativeWidget (and aura::Window::~Window()) suppress repaints during a close. BridgedNativeWidget does this by clearing out the compositor. We shouldn't try to subsequently recreate the compositor (there's a DCHECK for that). Manipulating Layers may call Widget::ReorderNativeViews. And NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView() (which updates the compositor). It's done this since before ReorderChildViews() was implemented, but it's no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991, 674003 Review-Url: https://codereview.chromium.org/2577593002 ========== to ========== MacViews: Be robust against Views manipulating Layers during Widget::Close(). An InkDropHostView may manipulate layers in response the Widget::Hide(). A Hide() occurs synchronously in Widget::Close(), followed by tear down that occurs asynchronously. Mac's BridgedNativeWidget (and aura::Window::~Window()) suppress repaints during a close. BridgedNativeWidget does this by clearing out the compositor. We shouldn't try to subsequently recreate the compositor (there's a DCHECK for that). Manipulating Layers may call Widget::ReorderNativeViews. And NativeWidgetMac::ReorderNativeViews() currently calls BridgedNativeWidget::SetRootView() (which updates the compositor). It's done this since before ReorderChildViews() was implemented, but it's no longer necessary. It should always be a no-op: the RootView can't change. BUG=673991, 674003 Committed: https://crrev.com/c8701123a47788c2dcd15f957ac02492d1138fa4 Cr-Commit-Position: refs/heads/master@{#438653} ========== 
 
            
              
                Message was sent while issue was closed.
              
            
             
          
        Patchset 4 (id:??) landed as https://crrev.com/c8701123a47788c2dcd15f957ac02492d1138fa4 Cr-Commit-Position: refs/heads/master@{#438653}  | 
    |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
