#include "chrome/browser/pdf/pdf_extension_test_util.h"
#include <stddef.h>
#include <string>
#include <vector>
#include "base/containers/flat_set.h"
#include "base/feature_list.h"
#include "base/functional/bind.h"
#include "base/strings/stringprintf.h"
#include "base/test/bind.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "components/pdf/common/pdf_util.h"
#include "content/public/browser/render_frame_host.h"
#include "content/public/browser/render_process_host.h"
#include "content/public/browser/render_widget_host_view.h"
#include "content/public/browser/web_contents.h"
#include "content/public/test/browser_test_utils.h"
#include "content/public/test/focus_changed_observer.h"
#include "content/public/test/hit_test_region_observer.h"
#include "extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h"
#include "pdf/pdf_features.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "url/origin.h"
namespace pdf_extension_test_util {
namespace {
bool IsPluginFrame(content::RenderFrameHost& frame) { … }
}
content::RenderFrameHost* GetPdfExtensionHostFromEmbedder(
content::RenderFrameHost* embedder_host,
bool allow_multiple_frames) { … }
content::RenderFrameHost* GetOnlyPdfExtensionHost(
content::WebContents* contents) { … }
std::vector<content::RenderFrameHost*> GetPdfExtensionHosts(
content::WebContents* contents) { … }
content::RenderFrameHost* GetOnlyPdfPluginFrame(
content::WebContents* contents) { … }
std::vector<content::RenderFrameHost*> GetPdfPluginFrames(
content::WebContents* contents) { … }
size_t CountPdfPluginProcesses(Browser* browser) { … }
testing::AssertionResult EnsurePDFHasLoaded(
const content::ToRenderFrameHost& frame) { … }
testing::AssertionResult EnsurePDFHasLoadedWithOptions(
const content::ToRenderFrameHost& frame,
const EnsurePDFHasLoadedOptions& options) { … }
gfx::Point ConvertPageCoordToScreenCoord(
content::ToRenderFrameHost guest_main_frame,
const gfx::Point& point) { … }
void SetInputFocusOnPlugin(extensions::MimeHandlerViewGuest* guest) { … }
void SetInputFocusOnPlugin(content::RenderFrameHost* extension_host,
content::WebContents* embedder_web_contents) { … }
extensions::MimeHandlerViewGuest* GetOnlyMimeHandlerView(
content::WebContents* embedder_contents) { … }
}