|
|
Created:
3 years, 10 months ago by Saman Sami Modified:
3 years, 10 months ago CC:
chromium-reviews, rjkroege Target Ref:
refs/pending/heads/master Project:
chromium Visibility:
Public. |
DescriptionFrameGenerator should not be created until an AcceleratedWidget is available
FrameGenerator does not have anything useful to do until an
AcceleratedWidget is provided. This CL delays the creation of
FrameGenerator until a widget is available.
We also remove the unit test because it's not doing anything useful
right now.
BUG=683732
Review-Url: https://codereview.chromium.org/2694043003
Cr-Commit-Position: refs/heads/master@{#452329}
Committed: https://chromium.googlesource.com/chromium/src/+/c46bbe24124bdef62daa0e396bb4baa2681fd817
Patch Set 1 #
Total comments: 1
Patch Set 2 : Move server_window_ to initializer list #Patch Set 3 : Remove frame_generator_unittest.cc #
Total comments: 10
Patch Set 4 : c #Patch Set 5 : Use MakeUnique #
Total comments: 2
Patch Set 6 : Fix frame size #
Messages
Total messages: 49 (32 generated)
Description was changed from ========== FrameGeneartor should not be created until an AcceleratedWidget is available BUG=683732 ========== to ========== FrameGenerator should not be created until an AcceleratedWidget is available BUG=683732 ==========
The CQ bit was checked by samans@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...
samans@chromium.org changed reviewers: + fsamuel@chromium.org
Hooray for code cleanup! https://codereview.chromium.org/2694043003/diff/1/services/ui/ws/platform_dis... File services/ui/ws/platform_display_default.cc (right): https://codereview.chromium.org/2694043003/diff/1/services/ui/ws/platform_dis... services/ui/ws/platform_display_default.cc:40: root_window_ = init_params.root_window; It seems like this should just be in the initializer list. Then you don't need to initialize it elsewhere.
The CQ bit was checked by samans@chromium.org to run a CQ dry run
samans@chromium.org changed reviewers: + sky@chromium.org
sky@: Please review all files.
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_compile_dbg_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
Description was changed from ========== FrameGenerator should not be created until an AcceleratedWidget is available BUG=683732 ========== to ========== FrameGenerator should not be created until an AcceleratedWidget is available FrameGenerator does not have anything useful to do until an AcceleratedWidget is provided. This CL delays the creation FrameGenerator until a widget is available. BUG=683732 ==========
The CQ bit was checked by samans@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 ========== FrameGenerator should not be created until an AcceleratedWidget is available FrameGenerator does not have anything useful to do until an AcceleratedWidget is provided. This CL delays the creation FrameGenerator until a widget is available. BUG=683732 ========== to ========== FrameGenerator should not be created until an AcceleratedWidget is available FrameGenerator does not have anything useful to do until an AcceleratedWidget is provided. This CL delays the creation of FrameGenerator until a widget is available. BUG=683732 ==========
Description was changed from ========== FrameGenerator should not be created until an AcceleratedWidget is available FrameGenerator does not have anything useful to do until an AcceleratedWidget is provided. This CL delays the creation of FrameGenerator until a widget is available. BUG=683732 ========== to ========== FrameGenerator should not be created until an AcceleratedWidget is available FrameGenerator does not have anything useful to do until an AcceleratedWidget is provided. This CL delays the creation of FrameGenerator until a widget is available. We also remove the unit test because it's not doing anything useful right now. BUG=683732 ==========
https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/frame_ge... File services/ui/ws/frame_generator.cc (right): https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/frame_ge... services/ui/ws/frame_generator.cc:49: FrameGenerator::~FrameGenerator() { Style guide says order of declaration and definition should be the same, so move this before SetDeviceScaleFactor. https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/frame_ge... services/ui/ws/frame_generator.cc:50: compositor_frame_sink_.reset(); Is there a reason you need to explicitly destroy this? https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/platform... File services/ui/ws/platform_display_default.cc (right): https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/platform... services/ui/ws/platform_display_default.cc:250: frame_generator_.reset(new FrameGenerator(this, root_window_, widget_)); Use MakeUnique (see threads on chromium-dev for details). https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/platform... services/ui/ws/platform_display_default.cc:250: frame_generator_.reset(new FrameGenerator(this, root_window_, widget_)); I'm inclined to pass in the initial scale factor. Less error prone that way.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
This is generally a good cleanup and I'm supportive of wrapping it up and landing, for what it's worth :-)
The CQ bit was checked by samans@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...
PTAL https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/frame_ge... File services/ui/ws/frame_generator.cc (right): https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/frame_ge... services/ui/ws/frame_generator.cc:49: FrameGenerator::~FrameGenerator() { On 2017/02/13 23:21:07, sky wrote: > Style guide says order of declaration and definition should be the same, so move > this before SetDeviceScaleFactor. Done. https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/frame_ge... services/ui/ws/frame_generator.cc:50: compositor_frame_sink_.reset(); On 2017/02/13 23:21:07, sky wrote: > Is there a reason you need to explicitly destroy this? I don't think so. https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/platform... File services/ui/ws/platform_display_default.cc (right): https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/platform... services/ui/ws/platform_display_default.cc:250: frame_generator_.reset(new FrameGenerator(this, root_window_, widget_)); On 2017/02/13 23:21:08, sky wrote: > Use MakeUnique (see threads on chromium-dev for details). I tried and I got "error: cannot cast 'ui::ws::PlatformDisplayDefault' to its private base class 'ui::ws::FrameGeneratorDelegate'" https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/platform... services/ui/ws/platform_display_default.cc:250: frame_generator_.reset(new FrameGenerator(this, root_window_, widget_)); On 2017/02/13 23:21:07, sky wrote: > I'm inclined to pass in the initial scale factor. Less error prone that way. Done.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_...)
The CQ bit was checked by samans@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.
https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/platform... File services/ui/ws/platform_display_default.cc (right): https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/platform... services/ui/ws/platform_display_default.cc:250: frame_generator_.reset(new FrameGenerator(this, root_window_, widget_)); On 2017/02/17 16:31:50, Saman Sami wrote: > On 2017/02/13 23:21:08, sky wrote: > > Use MakeUnique (see threads on chromium-dev for details). > > I tried and I got "error: cannot cast 'ui::ws::PlatformDisplayDefault' to its > private base class 'ui::ws::FrameGeneratorDelegate'" That's because this class privately implements FrameGeneratorDelegate, which the style guide says not to do. Is there a reason the inheritance is private and not public?
The CQ bit was checked by samans@chromium.org to run a CQ dry run
PTAL https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/platform... File services/ui/ws/platform_display_default.cc (right): https://codereview.chromium.org/2694043003/diff/40001/services/ui/ws/platform... services/ui/ws/platform_display_default.cc:250: frame_generator_.reset(new FrameGenerator(this, root_window_, widget_)); On 2017/02/17 20:40:51, sky wrote: > On 2017/02/17 16:31:50, Saman Sami wrote: > > On 2017/02/13 23:21:08, sky wrote: > > > Use MakeUnique (see threads on chromium-dev for details). > > > > I tried and I got "error: cannot cast 'ui::ws::PlatformDisplayDefault' to its > > private base class 'ui::ws::FrameGeneratorDelegate'" > > That's because this class privately implements FrameGeneratorDelegate, which the > style guide says not to do. Is there a reason the inheritance is private and not > public? I don't believe there is a good reason. I'll fix it.
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
https://codereview.chromium.org/2694043003/diff/80001/services/ui/ws/frame_ge... File services/ui/ws/frame_generator.cc (right): https://codereview.chromium.org/2694043003/diff/80001/services/ui/ws/frame_ge... services/ui/ws/frame_generator.cc:76: frame_size = frame.render_pass_list[0]->output_rect.size(); This is wrong actually. You should grab the last item in the render_pass_list, not the first.
The CQ bit was checked by samans@chromium.org to run a CQ dry run
PTAL https://codereview.chromium.org/2694043003/diff/80001/services/ui/ws/frame_ge... File services/ui/ws/frame_generator.cc (right): https://codereview.chromium.org/2694043003/diff/80001/services/ui/ws/frame_ge... services/ui/ws/frame_generator.cc:76: frame_size = frame.render_pass_list[0]->output_rect.size(); On 2017/02/22 23:40:01, Fady Samuel wrote: > This is wrong actually. You should grab the last item in the render_pass_list, > not the first. Done.
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
lgtm
LGTM - thanks
The CQ bit was unchecked by samans@chromium.org
The CQ bit was checked by samans@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": 100001, "attempt_start_ts": 1487811872159260, "parent_rev": "919b5796526c5c9764ae73ab5f5f50829597556f", "commit_rev": "c46bbe24124bdef62daa0e396bb4baa2681fd817"}
Message was sent while issue was closed.
Description was changed from ========== FrameGenerator should not be created until an AcceleratedWidget is available FrameGenerator does not have anything useful to do until an AcceleratedWidget is provided. This CL delays the creation of FrameGenerator until a widget is available. We also remove the unit test because it's not doing anything useful right now. BUG=683732 ========== to ========== FrameGenerator should not be created until an AcceleratedWidget is available FrameGenerator does not have anything useful to do until an AcceleratedWidget is provided. This CL delays the creation of FrameGenerator until a widget is available. We also remove the unit test because it's not doing anything useful right now. BUG=683732 Review-Url: https://codereview.chromium.org/2694043003 Cr-Commit-Position: refs/heads/master@{#452329} Committed: https://chromium.googlesource.com/chromium/src/+/c46bbe24124bdef62daa0e396bb4... ==========
Message was sent while issue was closed.
Committed patchset #6 (id:100001) as https://chromium.googlesource.com/chromium/src/+/c46bbe24124bdef62daa0e396bb4...
Message was sent while issue was closed.
A revert of this CL (patchset #6 id:100001) has been created in https://codereview.chromium.org/2717453002/ by hajimehoshi@chromium.org. The reason for reverting is: This might cause the crash (crbug/695371).
Message was sent while issue was closed.
On 2017/02/23 10:06:31, hajimehoshi wrote: > A revert of this CL (patchset #6 id:100001) has been created in > https://codereview.chromium.org/2717453002/ by mailto:hajimehoshi@chromium.org. > > The reason for reverting is: This might cause the crash (crbug/695371). Correct bug: crbug.com/695375 This is suspected of causing the failures in RenderWidgetHostViewGuestTest.VisibilityTest (not with very high confidence, but nothing else in the blame list looks related). |