cef/libcef/browser/hang_monitor.h
Marshall Greenblatt b8f91c5431 Add callbacks for unresponsive render process (fixes #3661)
The client can optionally wait or terminate the render process.

Expose process exit codes via OnRenderProcessTerminated and
CefGetExitCode (fixes #2126).

cefclient: Add a new https://tests/hang page for testing hang behavior.

cefclient: Move message and resource handling to a new BaseClientHandler
class to support loading of test pages in default Chrome UI windows.
2024-03-18 17:45:31 -04:00

38 lines
1.2 KiB
C++

// Copyright 2024 The Chromium Embedded Framework Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be found
// in the LICENSE file.
#ifndef CEF_LIBCEF_BROWSER_HANG_MONITOR_H_
#define CEF_LIBCEF_BROWSER_HANG_MONITOR_H_
#pragma once
#include "include/cef_unresponsive_process_callback.h"
#include "base/functional/callback.h"
namespace content {
class RenderWidgetHost;
}
class CefBrowserHostBase;
namespace hang_monitor {
// Called from WebContentsDelegate::RendererUnresponsive.
// Returns false for default handling.
bool RendererUnresponsive(CefBrowserHostBase* browser,
content::RenderWidgetHost* render_widget_host,
base::RepeatingClosure hang_monitor_restarter);
// Called from WebContentsDelegate::RendererResponsive.
// Returns false for default handling.
bool RendererResponsive(CefBrowserHostBase* browser,
content::RenderWidgetHost* render_widget_host);
// Detach an existing callback object.
void Detach(CefRefPtr<CefUnresponsiveProcessCallback> callback);
} // namespace hang_monitor
#endif // CEF_LIBCEF_BROWSER_HANG_MONITOR_H_