Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(967)

Issue 2582823002: WIP: Surface Synchronization System

Created:
4 years ago by Fady Samuel
Modified:
3 years, 9 months ago
Reviewers:
mfomitchev
CC:
chromium-reviews, qsr+mojo_chromium.org, viettrungluu+watch_chromium.org, yzshen+watch_chromium.org, abarth-chromium, Aaron Boodman, cc-bugs_chromium.org, darin (slow to review)
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

WIP: Surface Synchronization System BUG= CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel

Patch Set 1 #

Patch Set 2 : Updated #

Patch Set 3 : Cleanup #

Patch Set 4 : Rebased #

Patch Set 5 : Move to Surface and introduce |pending_surface_| in SurfaceFactory #

Patch Set 6 : Cleanup #

Patch Set 7 : Added a unit test #

Patch Set 8 : Tell SurfaceObservers once frame is activated #

Patch Set 9 : current_surface_ => active_surface_ #

Patch Set 10 : Added another unit test #

Patch Set 11 : New unit test: Surface 1 and Surface2 depend on Surface3 #

Patch Set 12 : Surface1 and Surface2 depend on Surface3 #

Patch Set 13 : Added unit test: BeginFrame deadline #

Patch Set 14 : Use pending frames instead of pending surfaces #

Patch Set 15 : Fix some deadline bugs #

Patch Set 16 : Rebase and fix some bugs #

Patch Set 17 : More cleanup + Fixed bug #

Patch Set 18 : Client side work #

Patch Set 19 : Use existing referenced_surfaces instead of blocked_on_surfaces #

Patch Set 20 : Mus+Ash resize works but still gutters a lot #

Patch Set 21 : Plumb new LocalFrameId #

Patch Set 22 : Plumb new LocalFrameId #

Patch Set 23 : Plumb LocalFrameId on NewWindow creation #

Patch Set 24 : Progress! Some things render #

Patch Set 25 : Everythings shows up but incorrectly if we don't respect deadlines #

Patch Set 26 : Rebase complete: Compiles and maintained status quo w00t! #

Patch Set 27 : Only create ClientSurfaceEmbedder if window is visible. Trash it otherwise. #

Total comments: 1

Patch Set 28 : Fix positioning of window content. The next issue is making resize actually smooth. #

Patch Set 29 : Window manager embeds Chrome #

Patch Set 30 : Rebased #

Patch Set 31 : Fix moving windows around #

Patch Set 32 : Throttle Resize in Window Server. TODO: Throttle in child instead #

Patch Set 33 : Works but client area still lags behind. TODO: throttle input and come up with strategy for embeddi… #

Patch Set 34 : Smooth resize #

Patch Set 35 : Rebased #

Patch Set 36 : Rebase. use-mus-in-renderer kind of broken #

Patch Set 37 : Only Ship LocalSurfaceId for Embedded Clients #

Patch Set 38 : Avoid using FrameSinkId where not necessary #

Patch Set 39 : Plumb the true child FrameSinkId to the parent #

Patch Set 40 : Rebase: Compiles but crashes #

Patch Set 41 : Works again #

Patch Set 42 : Fix ReceiveFromChild #

Patch Set 43 : Including pending surface references in ReferencedSurfaceTracker #

Patch Set 44 : Rebased #

Patch Set 45 : Allow creating SurfaceReferences to Children that Don't Yet Exist #

Patch Set 46 : Rebased #

Patch Set 47 : Rebased #

Patch Set 48 : Rebased #

Patch Set 49 : Introduce new WindowMusType #

Patch Set 50 : more cleanup #

Patch Set 51 : Rebased #

Patch Set 52 : Remove ServerWindow::SetBounds throttling #

Patch Set 53 : Revert unnecessary changes #

Patch Set 54 : Rebased #

Patch Set 55 : Rebased #

Patch Set 56 : Rebased #

Patch Set 57 : Remove an unnecessary change #

Patch Set 58 : Cleanup #

Patch Set 59 : Cleanup #

Patch Set 60 : Don't plumb LocalSurfaceId on new ServerWindow #

Patch Set 61 : Remove LocalSurfaceId from NewWindow API #

Patch Set 62 : Fix renderer #

Patch Set 63 : Rebased #

Patch Set 64 : Remove unnecessary changes #

Patch Set 65 : Small changes #

Patch Set 66 : Rebased #

Patch Set 67 : Cleanup some commented out code or unnecessary prints #

Patch Set 68 : More cleanup #

Patch Set 69 : Correct plumbing in cc #

Patch Set 70 : Remove unnecessary changes #

Patch Set 71 : Defer commits until child has a LocalSurfaceId #

Patch Set 72 : Surface Synchronization #

Patch Set 73 : Rebased #

Patch Set 74 : Fixed rendering #

Patch Set 75 : Rebased #

Patch Set 76 : Remove unnecessary FrameGenerator change #

Patch Set 77 : Simplify based on comments from sadrul@ #

Patch Set 78 : Simplify SetBoundsFromServer #

Patch Set 79 : Restore a commented block of code #

Patch Set 80 : Simplify LocalSurfaceId Allocation #

Patch Set 81 : Updated DEPS #

Patch Set 82 : Fix DEPS #

Patch Set 83 : Rebased against other FrameSinkId propagation CL #

Patch Set 84 : Cleanup #

Patch Set 85 : Renders again #

Patch Set 86 : First cut propagating LocalSurfaceId when WindowTreeHost requests resize #

Unified diffs Side-by-side diffs Delta from patch set Stats (+333 lines, -48 lines) Patch
M content/renderer/mus/renderer_window_tree_client.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 4 chunks +10 lines, -0 lines 0 comments Download
M content/renderer/mus/renderer_window_tree_client.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 3 chunks +29 lines, -1 line 0 comments Download
M content/renderer/render_widget.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 1 chunk +6 lines, -0 lines 0 comments Download
M services/ui/public/interfaces/window_manager.mojom View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 2 chunks +4 lines, -0 lines 0 comments Download
M services/ui/public/interfaces/window_tree.mojom View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 1 chunk +4 lines, -0 lines 0 comments Download
M services/ui/public/interfaces/window_tree_constants.mojom View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 2 chunks +4 lines, -0 lines 0 comments Download
M services/ui/ws/test_utils.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 1 chunk +4 lines, -0 lines 0 comments Download
M services/ui/ws/test_utils.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 1 chunk +7 lines, -0 lines 0 comments Download
M services/ui/ws/window_server.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 1 chunk +4 lines, -0 lines 0 comments Download
M services/ui/ws/window_server.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 1 chunk +14 lines, -0 lines 0 comments Download
M services/ui/ws/window_tree.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 2 chunks +7 lines, -0 lines 0 comments Download
M services/ui/ws/window_tree.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 3 chunks +16 lines, -0 lines 0 comments Download
M services/ui/ws/window_tree_client_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 1 chunk +4 lines, -0 lines 0 comments Download
M ui/aura/mus/DEPS View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 1 chunk +2 lines, -0 lines 0 comments Download
M ui/aura/mus/client_surface_embedder.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 1 chunk +2 lines, -0 lines 0 comments Download
M ui/aura/mus/client_surface_embedder.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 1 chunk +6 lines, -0 lines 0 comments Download
M ui/aura/mus/in_flight_change.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 3 chunks +9 lines, -3 lines 0 comments Download
M ui/aura/mus/in_flight_change.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 1 chunk +13 lines, -5 lines 0 comments Download
M ui/aura/mus/window_mus.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 2 chunks +6 lines, -2 lines 0 comments Download
M ui/aura/mus/window_port_mus.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 3 chunks +13 lines, -1 line 0 comments Download
M ui/aura/mus/window_port_mus.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 5 chunks +69 lines, -20 lines 0 comments Download
M ui/aura/mus/window_tree_client.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 4 chunks +11 lines, -2 lines 0 comments Download
M ui/aura/mus/window_tree_client.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 13 chunks +68 lines, -14 lines 0 comments Download
M ui/compositor/layer.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 1 chunk +6 lines, -0 lines 0 comments Download
M ui/compositor/layer.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 1 chunk +15 lines, -0 lines 0 comments Download

Messages

Total messages: 13 (12 generated)
mfomitchev
3 years, 11 months ago (2017-01-25 21:41:18 UTC) #9
https://codereview.chromium.org/2582823002/diff/520001/ui/aura/mus/window_tre...
File ui/aura/mus/window_tree_client.cc (left):

https://codereview.chromium.org/2582823002/diff/520001/ui/aura/mus/window_tre...
ui/aura/mus/window_tree_client.cc:556: return;
Removing this might be problematic. Not entirely sure if this could be causing
the problem you are seeing, but I wouldn't mess with the way root  client
windows are handled.

Powered by Google App Engine
This is Rietveld 408576698