blob: 23f0bee2958a43614313cc8a369fd683c2f597cf [file] [log] [blame]
Rakina Zata Amni65a5dc42025-03-03 02:51:551// Copyright 2025 The Chromium Authors
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CONTENT_BROWSER_ANDROID_PAGE_PROXY_H_
6#define CONTENT_BROWSER_ANDROID_PAGE_PROXY_H_
7
8#include "base/android/jni_string.h"
9#include "base/android/scoped_java_ref.h"
10#include "base/memory/raw_ptr.h"
11#include "net/http/http_request_headers.h"
12
13namespace content {
14
15class PageImpl;
16
17// JNI Bridge in between:
18// - [C++] Page
19// - [Java] Page
20class PageProxy final {
21 public:
22 explicit PageProxy(PageImpl* cpp_page);
23 ~PageProxy();
24
25 void WillDeletePage(bool is_prerendering);
26
27 const base::android::JavaRef<jobject>& java_page() const {
28 return java_page_;
29 }
30
31 private:
32 base::android::ScopedJavaGlobalRef<jobject> java_page_;
33};
34
35} // namespace content
36
37#endif // CONTENT_BROWSER_ANDROID_PAGE_PROXY_H_