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

Side by Side Diff: content/renderer/render_thread_impl.h

Issue 1931793002: Stop using nested message loop for alert() and other JS dialogs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: use infinite loop instead of 10 secs Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #ifndef CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ 5 #ifndef CONTENT_RENDERER_RENDER_THREAD_IMPL_H_
6 #define CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ 6 #define CONTENT_RENDERER_RENDER_THREAD_IMPL_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after
222 cc::TaskGraphRunner* GetTaskGraphRunner() override; 222 cc::TaskGraphRunner* GetTaskGraphRunner() override;
223 bool AreImageDecodeTasksEnabled() override; 223 bool AreImageDecodeTasksEnabled() override;
224 bool IsThreadedAnimationEnabled() override; 224 bool IsThreadedAnimationEnabled() override;
225 225
226 // Synchronously establish a channel to the GPU plugin if not previously 226 // Synchronously establish a channel to the GPU plugin if not previously
227 // established or if it has been lost (for example if the GPU plugin crashed). 227 // established or if it has been lost (for example if the GPU plugin crashed).
228 // If there is a pending asynchronous request, it will be completed by the 228 // If there is a pending asynchronous request, it will be completed by the
229 // time this routine returns. 229 // time this routine returns.
230 gpu::GpuChannelHost* EstablishGpuChannelSync(CauseForGpuLaunch); 230 gpu::GpuChannelHost* EstablishGpuChannelSync(CauseForGpuLaunch);
231 231
232 // This method modifies how the next message is sent. Normally, when sending
233 // a synchronous message that runs a nested message loop, we need to suspend
234 // callbacks into WebKit. This involves disabling timers and deferring
235 // resource loads. However, there are exceptions when we need to customize
236 // the behavior.
237 void DoNotNotifyWebKitOfModalLoop();
238
239 // True if we are running layout tests. This currently disables forwarding 232 // True if we are running layout tests. This currently disables forwarding
240 // various status messages to the console, skips network error pages, and 233 // various status messages to the console, skips network error pages, and
241 // short circuits size update and focus events. 234 // short circuits size update and focus events.
242 bool layout_test_mode() const { 235 bool layout_test_mode() const {
243 return layout_test_mode_; 236 return layout_test_mode_;
244 } 237 }
245 void set_layout_test_mode(bool layout_test_mode) { 238 void set_layout_test_mode(bool layout_test_mode) {
246 layout_test_mode_ = layout_test_mode; 239 layout_test_mode_ = layout_test_mode;
247 } 240 }
248 241
(...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after
574 567
575 // The count of hidden RenderWidgets running through this thread. 568 // The count of hidden RenderWidgets running through this thread.
576 int hidden_widget_count_; 569 int hidden_widget_count_;
577 570
578 // The current value of the idle notification timer delay. 571 // The current value of the idle notification timer delay.
579 int64_t idle_notification_delay_in_ms_; 572 int64_t idle_notification_delay_in_ms_;
580 573
581 // The number of idle handler calls that skip sending idle notifications. 574 // The number of idle handler calls that skip sending idle notifications.
582 int idle_notifications_to_skip_; 575 int idle_notifications_to_skip_;
583 576
584 bool notify_webkit_of_modal_loop_;
585 bool webkit_shared_timer_suspended_; 577 bool webkit_shared_timer_suspended_;
586 578
587 // The following flag is used to control layout test specific behavior. 579 // The following flag is used to control layout test specific behavior.
588 bool layout_test_mode_; 580 bool layout_test_mode_;
589 581
590 // Timer that periodically calls IdleHandler. 582 // Timer that periodically calls IdleHandler.
591 base::RepeatingTimer idle_timer_; 583 base::RepeatingTimer idle_timer_;
592 584
593 // The channel from the renderer process to the GPU process. 585 // The channel from the renderer process to the GPU process.
594 scoped_refptr<gpu::GpuChannelHost> gpu_channel_; 586 scoped_refptr<gpu::GpuChannelHost> gpu_channel_;
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
709 DISALLOW_COPY_AND_ASSIGN(RenderThreadImpl); 701 DISALLOW_COPY_AND_ASSIGN(RenderThreadImpl);
710 }; 702 };
711 703
712 #if defined(COMPILER_MSVC) 704 #if defined(COMPILER_MSVC)
713 #pragma warning(pop) 705 #pragma warning(pop)
714 #endif 706 #endif
715 707
716 } // namespace content 708 } // namespace content
717 709
718 #endif // CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ 710 #endif // CONTENT_RENDERER_RENDER_THREAD_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698