fixed injection with back-forward cache enabled (#2334)

Co-authored-by: Carmelo Messina <uazo@users.noreply.github.com>
This commit is contained in:
uazo
2022-09-28 01:23:30 +02:00
committed by GitHub
co-authored by Carmelo Messina
parent 42b1cc902b
commit ebb00aec78
@@ -133,12 +133,12 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../renderer/user_scripts_dispatcher.cc | 36 +
.../renderer/user_scripts_dispatcher.h | 49 ++
.../renderer/user_scripts_renderer_client.cc | 105 +++
.../renderer/user_scripts_renderer_client.h | 37 +
.../renderer/user_scripts_renderer_client.h | 36 +
.../renderer/web_ui_injection_host.cc | 40 +
.../renderer/web_ui_injection_host.h | 27 +
.../strings/userscripts_strings.grdp | 57 ++
tools/gritsettings/resource_ids.spec | 6 +
111 files changed, 9595 insertions(+), 2 deletions(-)
111 files changed, 9594 insertions(+), 2 deletions(-)
create mode 100644 components/user_scripts/README.md
create mode 100755 components/user_scripts/android/BUILD.gn
create mode 100644 components/user_scripts/android/java/res/layout/accept_script_item.xml
@@ -10405,15 +10405,15 @@ new file mode 100755
+ enabled_ = params.allow_userscript;
+ if (!enabled_) return;
+
+ if (loaded_ == false) {
+ loaded_ = true;
+ ExtensionFrameHelper* frame_helper = ExtensionFrameHelper::Get(render_frame);
+ if (!frame_helper) {
+ new user_scripts::ExtensionFrameHelper(render_frame);
+ dispatcher_->OnRenderFrameCreated(render_frame);
+ }
+}
+
+void UserScriptsRendererClient::RunScriptsAtDocumentStart(content::RenderFrame* render_frame) {
+ if (!enabled_ || !loaded_) return;
+ if (!enabled_) return;
+
+ ExtensionFrameHelper* frame_helper = ExtensionFrameHelper::Get(render_frame);
+ if (!frame_helper)
@@ -10424,7 +10424,7 @@ new file mode 100755
+}
+
+void UserScriptsRendererClient::RunScriptsAtDocumentEnd(content::RenderFrame* render_frame) {
+ if (!enabled_ || !loaded_) return;
+ if (!enabled_) return;
+
+ ExtensionFrameHelper* frame_helper = ExtensionFrameHelper::Get(render_frame);
+ if (!frame_helper)
@@ -10435,7 +10435,7 @@ new file mode 100755
+}
+
+void UserScriptsRendererClient::RunScriptsAtDocumentIdle(content::RenderFrame* render_frame) {
+ if (!enabled_ || !loaded_) return;
+ if (!enabled_) return;
+
+ ExtensionFrameHelper* frame_helper = ExtensionFrameHelper::Get(render_frame);
+ if (!frame_helper)
@@ -10446,12 +10446,11 @@ new file mode 100755
+}
+
+}
\ No newline at end of file
diff --git a/components/user_scripts/renderer/user_scripts_renderer_client.h b/components/user_scripts/renderer/user_scripts_renderer_client.h
new file mode 100755
--- /dev/null
+++ b/components/user_scripts/renderer/user_scripts_renderer_client.h
@@ -0,0 +1,37 @@
@@ -0,0 +1,36 @@
+#ifndef USERSCRIPTS_RENDER_CLIENT_H_
+#define USERSCRIPTS_RENDER_CLIENT_H_
+
@@ -10483,7 +10482,6 @@ new file mode 100755
+ private:
+ std::unique_ptr<UserScriptsDispatcher> dispatcher_;
+ bool enabled_ = false;
+ bool loaded_ = false;
+};
+
+}