Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "android_webview/browser/browser_view_renderer.h" | 5 #include "android_webview/browser/browser_view_renderer.h" |
| 6 | 6 |
| 7 #include "android_webview/browser/browser_view_renderer_client.h" | 7 #include "android_webview/browser/browser_view_renderer_client.h" |
| 8 #include "android_webview/browser/shared_renderer_state.h" | 8 #include "android_webview/browser/shared_renderer_state.h" |
| 9 #include "android_webview/public/browser/draw_gl.h" | 9 #include "android_webview/public/browser/draw_gl.h" |
| 10 #include "base/android/jni_android.h" | 10 #include "base/android/jni_android.h" |
| (...skipping 599 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 610 ui_task_runner_->PostTask( | 610 ui_task_runner_->PostTask( |
| 611 FROM_HERE, | 611 FROM_HERE, |
| 612 base::Bind(&BrowserViewRenderer::SetRootLayerScrollableSize, | 612 base::Bind(&BrowserViewRenderer::SetRootLayerScrollableSize, |
| 613 ui_thread_weak_ptr_, | 613 ui_thread_weak_ptr_, |
| 614 scrollable_size)); | 614 scrollable_size)); |
| 615 return; | 615 return; |
| 616 } | 616 } |
| 617 client_->SetContentsSize(scrollable_size); | 617 client_->SetContentsSize(scrollable_size); |
| 618 } | 618 } |
| 619 | 619 |
| 620 void BrowserViewRenderer::SetNeedsAnimate(const AnimationCallback& animation) { | |
| 621 if (!ui_task_runner_->BelongsToCurrentThread()) { | |
| 622 // This is scary, must ensure |animation| is called on the right thread. | |
| 623 ui_task_runner_->PostTask( | |
| 624 FROM_HERE, | |
| 625 base::Bind(&BrowserViewRenderer::SetNeedsAnimate, | |
| 626 ui_thread_weak_ptr_, | |
| 627 animation)); | |
| 628 return; | |
| 629 } | |
| 630 // TODO(jdduke): Implement. | |
| 631 // client_->Foo(); ?? | |
| 632 // Stash the callback and wait for a call? Trigger an invalidate? | |
|
mkosiba (inactive)
2014/05/15 13:48:51
probably more like TODO(mkosiba): Implement. ;)
T
jdduke (slow)
2014/05/15 14:15:43
Yes, you get the |SetNeedsAnimate()| call either 1
mkosiba (inactive)
2014/05/15 17:23:38
ok, thanks for the explanation. sounds good.
| |
| 633 } | |
| 634 | |
| 620 void BrowserViewRenderer::DidOverscroll(gfx::Vector2dF accumulated_overscroll, | 635 void BrowserViewRenderer::DidOverscroll(gfx::Vector2dF accumulated_overscroll, |
| 621 gfx::Vector2dF latest_overscroll_delta, | 636 gfx::Vector2dF latest_overscroll_delta, |
| 622 gfx::Vector2dF current_fling_velocity) { | 637 gfx::Vector2dF current_fling_velocity) { |
| 623 if (!ui_task_runner_->BelongsToCurrentThread()) { | 638 if (!ui_task_runner_->BelongsToCurrentThread()) { |
| 624 ui_task_runner_->PostTask( | 639 ui_task_runner_->PostTask( |
| 625 FROM_HERE, | 640 FROM_HERE, |
| 626 base::Bind(&BrowserViewRenderer::DidOverscroll, | 641 base::Bind(&BrowserViewRenderer::DidOverscroll, |
| 627 ui_thread_weak_ptr_, | 642 ui_thread_weak_ptr_, |
| 628 accumulated_overscroll, | 643 accumulated_overscroll, |
| 629 latest_overscroll_delta, | 644 latest_overscroll_delta, |
| (...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 768 base::StringAppendF(&str, | 783 base::StringAppendF(&str, |
| 769 "surface width height: [%d %d] ", | 784 "surface width height: [%d %d] ", |
| 770 draw_info->width, | 785 draw_info->width, |
| 771 draw_info->height); | 786 draw_info->height); |
| 772 base::StringAppendF(&str, "is_layer: %d ", draw_info->is_layer); | 787 base::StringAppendF(&str, "is_layer: %d ", draw_info->is_layer); |
| 773 } | 788 } |
| 774 return str; | 789 return str; |
| 775 } | 790 } |
| 776 | 791 |
| 777 } // namespace android_webview | 792 } // namespace android_webview |
| OLD | NEW |