[M130][WRTjs] Fix compilation errors 74/318874/20
authorsidpaswan <s.paswan@samsung.com>
Wed, 29 Jan 2025 11:04:11 +0000 (16:34 +0530)
committerSidhartha Paswan <s.paswan@samsung.com>
Mon, 10 Feb 2025 08:22:49 +0000 (08:22 +0000)
This patch fixes the build errors for electron v33.3.0

Change-Id: Iadb6f2eebf2723d4f44c1e3e4cc259e037642f94
Signed-off-by: sidpaswan <s.paswan@samsung.com>
52 files changed:
chrome/browser/media/webrtc/desktop_media_list.h
chrome/browser/media/webrtc/desktop_media_list_base.cc
chrome/browser/media/webrtc/desktop_media_list_base.h
content/public/common/BUILD.gn
electron/filenames.gni
electron/shell/app/electron_main_delegate.h
electron/shell/browser/api/electron_api_crash_reporter.cc
electron/shell/browser/api/electron_api_desktop_capturer.cc
electron/shell/browser/api/electron_api_web_contents.cc
electron/shell/browser/api/electron_api_web_contents.h
electron/shell/browser/browser.h
electron/shell/browser/certificate_manager_model.cc
electron/shell/browser/certificate_manager_model.h
electron/shell/browser/electron_browser_context.cc
electron/shell/browser/electron_web_ui_controller_factory.cc
electron/shell/browser/javascript_environment.cc
electron/shell/browser/usb/usb_chooser_controller.h
electron/shell/common/node_bindings.cc
electron/shell/renderer/electron_render_frame_observer.h
gin/isolate_holder.cc
gin/public/isolate_holder.h
packaging/chromium-efl.spec
third_party/blink/renderer/platform/bindings/v8_per_isolate_data.cc
third_party/boringssl/BUILD.gn
third_party/electron_node/src/api/environment.cc
tizen_src/chromium_impl/components/xwalk_extensions/renderer/native_module/v8_tools_module.cc
tizen_src/chromium_impl/components/xwalk_extensions/renderer/native_module/widget_module.cc
tizen_src/chromium_impl/components/xwalk_extensions/renderer/xwalk_extension_context_data.cc
tizen_src/chromium_impl/components/xwalk_extensions/renderer/xwalk_extension_trampoline.cc
v8/BUILD.gn
v8/include/v8-template.h
v8/src/api/api.cc
v8/src/heap/cppgc-js/cpp-heap.cc
wrt/BUILD.gn
wrt/overrides/electron/shell/renderer/api/electron_api_spell_check_client.h [changed mode: 0755->0644]
wrt/src/app/tv/wrt_main_delegate_tv.cc
wrt/src/app/tv/wrt_main_delegate_tv.h
wrt/src/app/wrt_content_main.cc
wrt/src/browser/basic_splash_screen_on_screen.cc
wrt/src/browser/net/wrt_file_url_loader.cc
wrt/src/browser/ui/wrt_file_dialog.cc [changed mode: 0755->0644]
wrt/src/browser/wrt_browser_main_parts.cc [changed mode: 0755->0644]
wrt/src/browser/wrt_browser_main_parts.h [changed mode: 0755->0644]
wrt/src/browser/wrt_inspectable_web_contents_view.cc [changed mode: 0755->0644]
wrt/src/browser/wrt_inspectable_web_contents_view.h [changed mode: 0755->0644]
wrt/src/browser/wrt_native_window.cc
wrt/src/browser/wrt_native_window_delegate.h
wrt/src/browser/wrt_native_window_off_screen.cc
wrt/src/browser/wrt_native_window_off_screen.h
wrt/src/browser/wrt_notification.cc [changed mode: 0755->0644]
wrt/src/renderer/api/wrt_api_web_runtime_renderer.cc [changed mode: 0755->0644]
wrt/src/renderer/wrt_render_frame_observer.cc [changed mode: 0755->0644]

index 89bb89e745256adfcdceae251bf7f9ef3a00eaa9..1e8198c083b858996f8bdec7be45626457123943 100644 (file)
@@ -107,7 +107,12 @@ class DesktopMediaList {
   // once per DesktopMediaList instance.  It should not be called after
   // StartUpdating(), and StartUpdating() should not be called until |callback|
   // has been called.
-  virtual void Update(UpdateCallback callback) = 0;
+  virtual void Update(UpdateCallback callback
+#if defined(ENABLE_WRT_JS)
+                      ,
+                      bool refresh_thumbnails = false
+#endif
+                      ) = 0;
 
   virtual int GetSourceCount() const = 0;
   virtual const Source& GetSource(int index) const = 0;
index 32ca1c9ee45a92ab091f7f26d62c04a23cc33459..bae944015c4164ad5c2d9cb7eaa0d96cba5e71da 100644 (file)
@@ -74,12 +74,21 @@ void DesktopMediaListBase::StartUpdating(DesktopMediaListObserver* observer) {
   Refresh(true);
 }
 
-void DesktopMediaListBase::Update(UpdateCallback callback) {
+void DesktopMediaListBase::Update(UpdateCallback callback
+#if defined(ENABLE_WRT_JS)
+                                  ,
+                                  bool refresh_thumbnails
+#endif
+) {
   DCHECK_CURRENTLY_ON(BrowserThread::UI);
   DCHECK(sources_.empty());
   DCHECK(!refresh_callback_);
   refresh_callback_ = std::move(callback);
+#if defined(ENABLE_WRT_JS)
+  Refresh(refresh_thumbnails);
+#else
   Refresh(false);
+#endif
 }
 
 int DesktopMediaListBase::GetSourceCount() const {
index 9368d56f2b434b1a7101f28908f070ad9908be7e..6dda89713f5874e643938e8e73a3653d2d9b2bf2 100644 (file)
@@ -39,7 +39,12 @@ class DesktopMediaListBase : public DesktopMediaList {
   void SetThumbnailSize(const gfx::Size& thumbnail_size) override;
   void SetViewDialogWindowId(content::DesktopMediaID dialog_id) override;
   void StartUpdating(DesktopMediaListObserver* observer) override;
-  void Update(UpdateCallback callback) override;
+  void Update(UpdateCallback callback
+#if defined(ENABLE_WRT_JS)
+              ,
+              bool refresh_thumbnails
+#endif
+              ) override;
   int GetSourceCount() const override;
   const Source& GetSource(int index) const override;
   DesktopMediaList::Type GetMediaListType() const override;
index 8872590a3fe43ad61946b071dd9252e8aaea65df..b128decc59242c76edb644568b50af92433d021c 100644 (file)
@@ -380,6 +380,7 @@ mojom("interfaces") {
     "//chrome/common:mojo_bindings",
     "//chrome/common:mojo_bindings_blink",
     "//content/common/*",
+    "//electron/shell/common:plugin",
     "//extensions/common:mojom",
     "//extensions/common:mojom_blink",
   ]
index b0a9e332174a3ce00e59758983fdf95b7708dbd5..7528a11fbfa23f01f0a6c9526810c1bd94ebe38e 100644 (file)
@@ -482,6 +482,8 @@ filenames = {
     "shell/browser/osr/osr_web_contents_view.h",
     "shell/browser/plugins/plugin_utils.cc",
     "shell/browser/plugins/plugin_utils.h",
+    "shell/browser/printing/printing_utils.cc",
+    "shell/browser/printing/printing_utils.h",
     "shell/browser/protocol_registry.cc",
     "shell/browser/protocol_registry.h",
     "shell/browser/relauncher.cc",
index c7413c31398aaccd928867be477913817e1ac81d..20154ae59cc64d6cba75be9d66973763a36aac3c 100644 (file)
@@ -34,10 +34,6 @@ class ElectronMainDelegate : public content::ContentMainDelegate {
   ElectronMainDelegate(const ElectronMainDelegate&) = delete;
   ElectronMainDelegate& operator=(const ElectronMainDelegate&) = delete;
 
-#if !defined(ENABLE_WRT_JS)
-  base::StringPiece GetBrowserV8SnapshotFilename() override;
-#endif
-
 #if BUILDFLAG(IS_MAC)
   void OverrideChildProcessPath();
   void OverrideFrameworkBundlePath();
@@ -46,7 +42,9 @@ class ElectronMainDelegate : public content::ContentMainDelegate {
 
  protected:
   // content::ContentMainDelegate:
+#if !defined(ENABLE_WRT_JS)
   std::string_view GetBrowserV8SnapshotFilename() override;
+#endif
   std::optional<int> BasicStartupComplete() override;
   void PreSandboxStartup() override;
   void SandboxInitialized(const std::string& process_type) override;
index 1a6e3408ad5d2c94e314a03beec70981e2a64344..21599ca0124bb0479610a286b6527823a414b0d4 100644 (file)
@@ -41,6 +41,7 @@
 #include "shell/common/crash_keys.h"
 #include "third_party/crashpad/crashpad/client/crashpad_info.h"  // nogncheck
 #endif
+#endif
 
 #if BUILDFLAG(IS_LINUX)
 #include "base/containers/span.h"
@@ -191,14 +192,14 @@ void GetUploadedReports(
     base::OnceCallback<void(v8::Local<v8::Value>)> callback) {
   std::move(callback).Run(v8::Array::New(isolate));
 }
-#else
-scoped_refptr<UploadList> CreateCrashUploadList() {
-#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)
-  return base::MakeRefCounted<CrashUploadListCrashpad>();
 #elif defined(ENABLE_WRT_JS)
 v8::Local<v8::Value> GetUploadedReports(v8::Isolate* isolate) {
   return v8::Undefined(isolate);
 }
+#else
+scoped_refptr<UploadList> CreateCrashUploadList() {
+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)
+  return base::MakeRefCounted<CrashUploadListCrashpad>();
 #else
   base::FilePath crash_dir_path;
   base::PathService::Get(electron::DIR_CRASH_DUMPS, &crash_dir_path);
index 62beae3da1879c4e6eb4a9f3635b113d34795df7..a1b83b96bb916855077f48f3058c8115b90b38b4 100644 (file)
@@ -47,7 +47,7 @@
 #endif
 
 namespace {
-#if BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_TIZEN)
 // Private function in ui/base/x/x11_display_util.cc
 base::flat_map<x11::RandR::Output, int> GetMonitors(
     std::pair<uint32_t, uint32_t> version,
index 1f327640b25cc5c8095f5105250670e131b984ef..cfffce1e536447d987164011c638610e7c9f2286 100644 (file)
@@ -976,7 +976,7 @@ void WebContents::InitWithWebContents(
   browser_context_ = browser_context;
   web_contents->SetDelegate(this);
 
-#if BUILDFLAG(ENABLE_PRINTING)
+#if BUILDFLAG(ENABLE_PRINTING) && !defined(ENABLE_WRT_JS)
   PrintViewManagerElectron::CreateForWebContents(web_contents.get());
 #endif
 
@@ -4572,7 +4572,6 @@ gin::Handle<WebContents> WebContents::New(
   }
   return handle;
 }
-#endif
 
 // static
 gin::Handle<WebContents> WebContents::CreateAndTake(
@@ -4588,6 +4587,7 @@ gin::Handle<WebContents> WebContents::CreateAndTake(
   }
   return handle;
 }
+#endif
 
 // static
 WebContents* WebContents::From(content::WebContents* web_contents) {
index dc4cc9544703a649ce5e98800307d9e912f34e7f..19ed75d802b31ad36bc9fffac2edeabb948ef78b 100644 (file)
 #include "shell/common/gin_helper/pinnable.h"
 #include "ui/base/models/image_model.h"
 
+#if BUILDFLAG(ENABLE_PRINTING)
+#if defined(ENABLE_WRT_JS)
+namespace printing {
+using CompletionCallback = base::OnceCallback<void(bool, const std::string&)>;
+}
+#else
+#include "shell/browser/printing/print_view_manager_electron.h"
+#endif
+#endif
+
 #if BUILDFLAG(ENABLE_ELECTRON_EXTENSIONS)
 #include "extensions/common/mojom/view_type.mojom-forward.h"
 
index d341d42efe7e28cb04f14b2fb5429332bc0369de..940c37e71b8527d16a68a4a71ad307ff5cea5435 100644 (file)
@@ -15,6 +15,7 @@
 #include "base/task/cancelable_task_tracker.h"
 #include "base/values.h"
 #include "shell/browser/window_list_observer.h"
+#include "shell/common/gin_converters/login_item_settings_converter.h"
 #include "shell/common/gin_helper/promise.h"
 
 #if BUILDFLAG(IS_WIN)
index 170cbb1fcd4b5c2ae1d4672357384e50737978cc..56cedb7b21ae2c844b0fa216edeb2b909fe0fdda 100644 (file)
@@ -42,6 +42,7 @@ net::NSSCertDatabase* GetNSSCertDatabase(
 
 }  // namespace
 
+namespace electron {
 // CertificateManagerModel is created on the UI thread. It needs a
 // NSSCertDatabase handle (and on ChromeOS it needs to get the TPM status) which
 // needs to be done on the IO thread.
@@ -160,3 +161,5 @@ void CertificateManagerModel::GetCertDBOnIOThread(CreationCallback callback) {
   if (cert_db)
     std::move(split_callback.second).Run(cert_db);
 }
+
+} //namespace electron
\ No newline at end of file
index 96e937739003e077bbd26260318d7bc37280aa09..8dfef92fe4692ecf3f79fc26387503f21bd5bfaa 100644 (file)
@@ -12,6 +12,8 @@
 #include "base/memory/raw_ptr.h"
 #include "net/cert/nss_cert_database.h"
 
+namespace electron {
+
 // CertificateManagerModel provides the data to be displayed in the certificate
 // manager dialog, and processes changes from the view.
 class CertificateManagerModel {
@@ -105,4 +107,6 @@ class CertificateManagerModel {
   bool is_user_db_available_;
 };
 
+} // namespace electron
+
 #endif  // ELECTRON_SHELL_BROWSER_CERTIFICATE_MANAGER_MODEL_H_
index f105ae99f14432bff7929232b1f35944e35020aa..2419679dbfeeb69666a740585d83b2475c9fcdc7 100644 (file)
@@ -855,7 +855,6 @@ ElectronBrowserContext* ElectronBrowserContext::From(
       std::unique_ptr<ElectronBrowserContext>(new_context);
   return new_context;
 }
-#endif
 
 ElectronBrowserContext* ElectronBrowserContext::FromPath(
     const base::FilePath& path,
@@ -873,5 +872,6 @@ ElectronBrowserContext* ElectronBrowserContext::FromPath(
       std::unique_ptr<ElectronBrowserContext>(new_context);
   return new_context;
 }
+#endif
 
 }  // namespace electron
index 570e56695710a693366fae228338c5a30d4342b1..df679c8a49d91e5ba1db134c0a3fb1a37cfd9e96 100644 (file)
@@ -50,13 +50,12 @@ ElectronWebUIControllerFactory::CreateWebUIControllerForURL(
   if (host == chrome::kChromeUIDevToolsHost) {
     auto* browser_context = web_ui->GetWebContents()->GetBrowserContext();
     return std::make_unique<DevToolsUI>(browser_context, web_ui);
+  } else if (host == chrome::kChromeUIAccessibilityHost) {
+    return std::make_unique<ElectronAccessibilityUI>(web_ui);
   }
 #endif
 
-  if (host == chrome::kChromeUIAccessibilityHost)
-    return std::make_unique<ElectronAccessibilityUI>(web_ui);
-
-  return {};
+  return std::unique_ptr<content::WebUIController>();
 }
 
 }  // namespace electron
index 5fd70160bd964f856e874d56c2ccdfd072950756..5f0ce1ebf6f2bb80015624eefb728b77a3e26fce 100644 (file)
@@ -51,9 +51,11 @@ gin::IsolateHolder CreateIsolateHolder(v8::Isolate* isolate) {
           gin::IsolateHolder::IsolateType::kUtility,
           std::move(create_params),
           gin::IsolateHolder::IsolateCreationMode::kNormal,
+#if defined(ENABLE_WRT_JS)
+          isolate,
+#endif
           nullptr,
-          nullptr,
-          isolate};
+          nullptr};
 }
 
 #if defined(ENABLE_WRT_JS)
index e2eaa6035495b6fa54da8f229915bba27ce9e81e..a33992399196a4bc4e897076f29cae4a17543283 100644 (file)
 #include "base/memory/weak_ptr.h"
 #include "base/scoped_observation.h"
 #include "content/public/browser/web_contents_observer.h"
+#if defined(ENABLE_WRT_JS)
+#include "services/device/public/mojom/usb_device.mojom.h"
+#else
 #include "services/device/public/mojom/usb_device.mojom-forward.h"
+#endif
 #include "shell/browser/usb/usb_chooser_context.h"
 #include "third_party/blink/public/mojom/usb/web_usb_service.mojom.h"
 #include "url/origin.h"
index f9bc5cbe56f2e75bdc0d3089a6956b5e68a2e1d6..ce868cc361416a2b60d6423b58669ff0c629d8ef 100644 (file)
@@ -53,7 +53,6 @@
 #include "shell/common/electron_paths.h"
 #include "wrt/src/common/application_data.h"
 
-void _register_electron_browser_desktop_capturer() {}
 void _register_electron_browser_global_shortcut() {}
 void _register_electron_browser_native_theme() {}
 void _register_electron_browser_safe_storage() {}
index 5919cf6d0d8623da33c2bb659d33a9a70284edf1..3ea576eeba0ac1c8d6a1c797dad9f575d2e2b0da 100644 (file)
@@ -16,7 +16,7 @@ namespace electron {
 class RendererClientBase;
 
 // Helper class to forward the messages to the client.
-class ElectronRenderFrameObserver : private content::RenderFrameObserver {
+class ElectronRenderFrameObserver : public content::RenderFrameObserver {
  public:
   ElectronRenderFrameObserver(content::RenderFrame* frame,
                               RendererClientBase* renderer_client);
@@ -25,14 +25,14 @@ class ElectronRenderFrameObserver : private content::RenderFrameObserver {
   ElectronRenderFrameObserver(const ElectronRenderFrameObserver&) = delete;
   ElectronRenderFrameObserver& operator=(const ElectronRenderFrameObserver&) =
       delete;
+  void WillReleaseScriptContext(v8::Local<v8::Context> context,
+                                int world_id) override;
 
  private:
   // content::RenderFrameObserver:
   void DidClearWindowObject() override;
   void DidInstallConditionalFeatures(v8::Local<v8::Context> context,
                                      int world_id) override;
-  void WillReleaseScriptContext(v8::Local<v8::Context> context,
-                                int world_id) override;
   void OnDestruct() override;
   void DidMeaningfulLayout(blink::WebMeaningfulLayout layout_type) override;
 
index f463fbe88b9c6412489f723b00aff2e240424369..e643d5b60613a2a4ff5b4f0c0dae8ed887ff7f0b 100644 (file)
@@ -73,16 +73,11 @@ IsolateHolder::IsolateHolder(
     AllowAtomicsWaitMode atomics_wait_mode,
     IsolateType isolate_type,
     IsolateCreationMode isolate_creation_mode,
-    v8::CreateHistogramCallback create_histogram_callback,
-    v8::AddHistogramSampleCallback add_histogram_sample_callback,
-#if !defined(EWK_BRINGUP) // FIXME : m130 bringup
 #if defined(ENABLE_WRT_JS)
-    scoped_refptr<base::SingleThreadTaskRunner> low_priority_task_runner,
-    v8::Isolate* isolate)
-#else
-    scoped_refptr<base::SingleThreadTaskRunner> low_priority_task_runner)
-#endif
+    v8::Isolate* isolate,
 #endif
+    v8::CreateHistogramCallback create_histogram_callback,
+    v8::AddHistogramSampleCallback add_histogram_sample_callback,
     scoped_refptr<base::SingleThreadTaskRunner> user_visible_task_runner,
     scoped_refptr<base::SingleThreadTaskRunner> best_effort_task_runner)
     : IsolateHolder(std::move(task_runner),
@@ -93,12 +88,8 @@ IsolateHolder::IsolateHolder(
                                              create_histogram_callback,
                                              add_histogram_sample_callback),
                     isolate_creation_mode,
-#if !defined(EWK_BRINGUP) // FIXME : m130 bringup 
 #if defined(ENABLE_WRT_JS)
-                    std::move(low_priority_task_runner), isolate) {}
-#else
-                    std::move(low_priority_task_runner)) {}
-#endif
+                    isolate,
 #endif
                     std::move(user_visible_task_runner),
                     std::move(best_effort_task_runner)) {}
@@ -109,13 +100,8 @@ IsolateHolder::IsolateHolder(
     IsolateType isolate_type,
     std::unique_ptr<v8::Isolate::CreateParams> params,
     IsolateCreationMode isolate_creation_mode,
-#if !defined(EWK_BRINGUP) // FIXME : m130 bringup
 #if defined(ENABLE_WRT_JS)
-    scoped_refptr<base::SingleThreadTaskRunner> low_priority_task_runner,
-    v8::Isolate* isolate)
-#else
-    scoped_refptr<base::SingleThreadTaskRunner> low_priority_task_runner)
-#endif
+    v8::Isolate* isolate,
 #endif
     scoped_refptr<base::SingleThreadTaskRunner> user_visible_task_runner,
     scoped_refptr<base::SingleThreadTaskRunner> best_effort_task_runner)
index 79d33180e367bd459085733662407b6eae36159f..94d5a5f8fc8766546647302f3d6cbeb300344375 100644 (file)
@@ -82,17 +82,11 @@ class GIN_EXPORT IsolateHolder {
       AllowAtomicsWaitMode atomics_wait_mode,
       IsolateType isolate_type,
       IsolateCreationMode isolate_creation_mode = IsolateCreationMode::kNormal,
-      v8::CreateHistogramCallback create_histogram_callback = nullptr,
-      v8::AddHistogramSampleCallback add_histogram_sample_callback = nullptr,
-#if !defined(EWK_BRINGUP) // FIXME : m130 bringup
 #if defined(ENABLE_WRT_JS)
-      scoped_refptr<base::SingleThreadTaskRunner> low_priority_task_runner =
-          nullptr,
-      v8::Isolate* isolate = nullptr);
-#else
-      scoped_refptr<base::SingleThreadTaskRunner> low_priority_task_runner =
-#endif
+      v8::Isolate* isolate = nullptr,
 #endif
+      v8::CreateHistogramCallback create_histogram_callback = nullptr,
+      v8::AddHistogramSampleCallback add_histogram_sample_callback = nullptr,
       scoped_refptr<base::SingleThreadTaskRunner> user_visible_task_runner =
           nullptr,
       scoped_refptr<base::SingleThreadTaskRunner> best_effort_task_runner =
@@ -104,14 +98,8 @@ class GIN_EXPORT IsolateHolder {
       IsolateType isolate_type,
       std::unique_ptr<v8::Isolate::CreateParams> params,
       IsolateCreationMode isolate_creation_mode = IsolateCreationMode::kNormal,
-#if !defined(EWK_BRINGUP) // FIXME : m130 bringup
 #if defined(ENABLE_WRT_JS)
-      scoped_refptr<base::SingleThreadTaskRunner> low_priority_task_runner =
-          nullptr,
-      v8::Isolate* isolate = nullptr);
-#else
-      scoped_refptr<base::SingleThreadTaskRunner> low_priority_task_runner =
-#endif
+      v8::Isolate* isolate = nullptr,
 #endif
       scoped_refptr<base::SingleThreadTaskRunner> user_visible_task_runner =
           nullptr,
index a522ba698a4a4d3ab9d8839f3dd31b1db1f86925..639601dd5dbf6b22fe244429d8b90f57cc1ebf13 100644 (file)
@@ -269,7 +269,7 @@ BuildRequires: pkgconfig(capi-boost-tv)
 %define __use_clang 0
 %endif
 
-%define __enable_wrt_js 0
+%define __enable_wrt_js 1
 %if 0%{?_disable_wrt_js}
 %define __enable_wrt_js 0
 %endif
index 58f2907b3f75eca6e435d90ad6f6b0341c86a2b5..4e0e71000b34fc58170fd9cdf43c71a6c11368a1 100644 (file)
@@ -143,6 +143,9 @@ V8PerIsolateData::V8PerIsolateData(
                   V8PerIsolateData::V8ContextSnapshotMode::kTakeSnapshot
               ? gin::IsolateHolder::IsolateCreationMode::kCreateSnapshot
               : gin::IsolateHolder::IsolateCreationMode::kNormal,
+#if defined(ENABLE_WRT_JS)
+          nullptr,
+#endif
           create_histogram_callback,
           add_histogram_sample_callback,
           std::move(user_visible_task_runner),
index 2682b6f52b1c3a00968e89b68cf727095bd74b71..46b4929979b0ef34656fce42b5f27f27e36b7f85 100644 (file)
@@ -13,7 +13,6 @@ if (use_efl) {
   import("//tizen_src/build/config/tizen_features.gni")
 }
 
-
 if (enable_rust) {
   import("//build/rust/cargo_crate.gni")
   import("//build/rust/rust_bindgen.gni")
@@ -55,15 +54,15 @@ all_headers = crypto_headers + ssl_headers + pki_headers + pki_internal_headers
 if (enable_wrt_js) {
   # Needed to build a nodejs-compatible boringssl.
   all_sources += [
-    "src/decrepit/evp/evp_do_all.c",
-    "src/decrepit/xts/xts.c",
+    "decrepit/evp/evp_do_all.c",
+    "decrepit/xts/xts.c",
   ]
 
   all_sources += [
-    "src/decrepit/blowfish/blowfish.c",
-    "src/decrepit/cfb/cfb.c",
-    "src/decrepit/ripemd/internal.h",
-    "src/decrepit/ripemd/ripemd.c",
+    "decrepit/blowfish/blowfish.c",
+    "decrepit/cfb/cfb.c",
+    "decrepit/ripemd/internal.h",
+    "decrepit/ripemd/ripemd.c",
   ]
 }
 
index 7612983eca803339e89dbfe8f0fff98178f79559..7950dc04b489ea4c9baf7c4d55fa9740ca9fd066 100644 (file)
@@ -337,7 +337,7 @@ Isolate* NewIsolate(Isolate::CreateParams* params,
   new gin::PerIsolateData(isolate, params->array_buffer_allocator_shared.get(),
                           gin::IsolateHolder::kSingleThread,
                           base::SingleThreadTaskRunner::GetCurrentDefault(),
-                          nullptr);
+                          nullptr, nullptr);
 #endif
 
   // Register the isolate on the platform before the isolate gets initialized,
index 882dde90efa14391409ba2b7af94b91aa5f97e11..a613597457c01aeebdc5750620ed28faf70f2d6b 100644 (file)
@@ -46,7 +46,7 @@ void LifecycleTrackerCleanup(
     wrapper->destructor.Get(data.GetIsolate());
 
   v8::MicrotasksScope microtasks(
-      data.GetIsolate(), v8::MicrotasksScope::kDoNotRunMicrotasks);
+      data.GetIsolate(), context->GetMicrotaskQueue(), v8::MicrotasksScope::kDoNotRunMicrotasks);
 
   v8::TryCatch try_catch(data.GetIsolate());
   v8::MaybeLocal<v8::Value> result =
index e5a6c03ffe6937189398b78bb23225f847e950ee..168be5719dfc4aa9913b55cdf03f0f7a9599d4e9 100644 (file)
@@ -314,39 +314,42 @@ WidgetModule::WidgetModule() {
       preference_object_template = v8::ObjectTemplate::New(isolate);
 
   auto getter = [](v8::Local<v8::Name> property,
-                   const v8::PropertyCallbackInfo<v8::Value>& info) {
+                   const v8::PropertyCallbackInfo<v8::Value>& info) -> v8::Intercepted {
     v8::Isolate* isolate = info.GetIsolate();
     std::string key = *v8::String::Utf8Value(isolate, property);
 
     if (key == kLengthKey) {
       info.GetReturnValue().Set(WidgetPreferenceDB::Length());
-      return;
+      return v8::Intercepted::kYes;;
     }
 
     if (std::find(kExcludeList.begin(), kExcludeList.end(), key)
         != kExcludeList.end())
-      return;
+      return v8::Intercepted::kYes;;
 
     if (!WidgetPreferenceDB::HasItem(key))
-      return;
+      return v8::Intercepted::kYes;
 
     std::string value;
     if (WidgetPreferenceDB::GetItem(key, &value)) {
       info.GetReturnValue().Set(
           v8::String::NewFromUtf8(isolate, value.c_str()).ToLocalChecked());
-    } else
+      return v8::Intercepted::kYes;
+    } else {
       info.GetReturnValue().SetNull();
+      return v8::Intercepted::kNo;
+    }
   };
 
   auto setter = [](v8::Local<v8::Name> property,
                    v8::Local<v8::Value> value,
-                   const v8::PropertyCallbackInfo<v8::Value>& info) {
+                   const v8::PropertyCallbackInfo<void>& info) -> v8::Intercepted {
     v8::Isolate* isolate = info.GetIsolate();
     std::string key = *v8::String::Utf8Value(isolate, property);
 
     if (std::find(kExcludeList.begin(), kExcludeList.end(), key)
         != kExcludeList.end())
-      return;
+      return v8::Intercepted::kYes;
 
     v8::Local<v8::Value> oldvalue = v8::Null(isolate);
     std::string oldvaluestr;
@@ -358,16 +361,18 @@ WidgetModule::WidgetModule() {
             key, *v8::String::Utf8Value(isolate, value))) {
       info.GetReturnValue().Set(value);
       DispatchEvent(info.This(), property, oldvalue, value);
+      return v8::Intercepted::kYes;
     }
+    return v8::Intercepted::kNo;
   };
 
   auto deleter = [](v8::Local<v8::Name> property,
-                    const v8::PropertyCallbackInfo<v8::Boolean>& info) {
+                    const v8::PropertyCallbackInfo<v8::Boolean>& info) -> v8::Intercepted {
     v8::Isolate* isolate = info.GetIsolate();
     std::string key = *v8::String::Utf8Value(isolate, property);
     if (!WidgetPreferenceDB::HasItem(key)) {
       info.GetReturnValue().Set(false);
-      return;
+      return v8::Intercepted::kYes;
     }
 
     v8::Local<v8::Value> oldvalue = v8::Null(isolate);
@@ -380,12 +385,15 @@ WidgetModule::WidgetModule() {
     if (WidgetPreferenceDB::RemoveItem(key)) {
       info.GetReturnValue().Set(true);
       DispatchEvent(info.This(), property, oldvalue, v8::Null(isolate));
-    } else
+      return v8::Intercepted::kYes;
+    } else {
       info.GetReturnValue().Set(false);
+      return v8::Intercepted::kNo;
+    }
   };
 
   preference_object_template->SetHandler(v8::NamedPropertyHandlerConfiguration(
-      getter, setter, nullptr, deleter, nullptr));
+      getter, setter, nullptr, deleter, nullptr, nullptr, nullptr));
 
   preference_object_template->Set(
       v8::String::NewFromUtf8(isolate, kKeyKey).ToLocalChecked(),
index c1f85db15ae9009f900002a8fa96ae777809dbff..ba4904cd59bad6471fb73812335013887bac2206 100644 (file)
@@ -132,7 +132,7 @@ bool XWalkExtensionContextData::Initialize(v8::Local<v8::Context> context) {
   v8::HandleScope handle_scope(isolate);
   v8::Context::Scope context_scope(context);
   v8::MicrotasksScope microtasks_scope(
-      isolate, v8::MicrotasksScope::kDoNotRunMicrotasks);
+      context, v8::MicrotasksScope::kDoNotRunMicrotasks);
 
   v8::Local<v8::External> function_data = v8::External::New(isolate, this);
   function_data_.Reset(isolate, function_data);
index dea1c55e96de71f9427b46b77e9d3cf04ef4a89d..c58cc110655dbe8c84f2629d147334123de6294b 100644 (file)
@@ -83,8 +83,7 @@ v8::Local<v8::Object> LoadExtension(
   return GetObject(context, properties);
 }
 
-void AccessorGetter(v8::Local<v8::Name> property,
-                    const v8::PropertyCallbackInfo<v8::Value>& info) {
+void AccessorGetter(const v8::FunctionCallbackInfo<v8::Value>& info) {
   v8::Isolate* isolate = info.GetIsolate();
   auto holder = LoadExtension(isolate, info.Data());
   if (holder.IsEmpty())
@@ -92,13 +91,12 @@ void AccessorGetter(v8::Local<v8::Name> property,
 
   v8::Local<v8::Context> context = isolate->GetCurrentContext();
   v8::Local<v8::Value> value =
-      holder.As<v8::Object>()->Get(context, property)
+      holder.As<v8::Object>()->Get(context, info[1])
           .FromMaybe(v8::Local<v8::Value>::Cast(v8::Undefined(isolate)));
   info.GetReturnValue().Set(value);
 }
 
-void AccessorSetter(v8::Local<v8::Name> property, v8::Local<v8::Value> value,
-                    const v8::PropertyCallbackInfo<void>& info) {
+void AccessorSetter(const v8::FunctionCallbackInfo<v8::Value>& info) {
   v8::Isolate* isolate = info.GetIsolate();
   auto holder = LoadExtension(isolate, info.Data());
   if (holder.IsEmpty())
@@ -106,10 +104,10 @@ void AccessorSetter(v8::Local<v8::Name> property, v8::Local<v8::Value> value,
 
   v8::Local<v8::Context> context = isolate->GetCurrentContext();
   if (!holder.As<v8::Object>()
-           ->Set(context, property, value)
+           ->Set(context, info[1], info[0])
            .FromMaybe(false)) {
     LOG(ERROR) << "Fail to set property : "
-               << *v8::String::Utf8Value(isolate, property);
+               << *v8::String::Utf8Value(isolate, info[1]);
   }
 }
 
@@ -171,12 +169,15 @@ bool SetAccessorForEntryPoint(
            .FromMaybe(false))
     return false;
 
+
+  v8::Local<v8::Function> AccessorGetterFunction= v8::Function::New(context, AccessorGetter, data).FromMaybe(v8::Local<v8::Function>());
+  v8::Local<v8::Function> AccessorSetterFunction= v8::Function::New(context, AccessorSetter, data).FromMaybe(v8::Local<v8::Function>());
   // FIXME(cmarcelo): ensure that trampoline is readonly.
-  return value.As<v8::Object>()->SetAccessor(
-      context,
+  value.As<v8::Object>()->SetAccessorProperty(
       v8::String::NewFromUtf8(isolate, basename.c_str()).ToLocalChecked(),
-      AccessorGetter, AccessorSetter, data)
-      .FromMaybe(false);
+      AccessorGetterFunction, AccessorSetterFunction);
+
+  return true;
 }
 
 }  // namespace
index 03da6965eebb6b821ab220c98fabdcd886b9a4b9..901bc9a77a3bf5118f04e2f738689d5a0c187017 100644 (file)
@@ -68,6 +68,9 @@ declare_args() {
 
   # Sets the number of internal fields on promise objects.
   v8_promise_internal_field_count = 0
+  if (enable_wrt_js) {
+    v8_promise_internal_field_count = 1
+  }
 
   # Sets the number of internal fields on array buffer objects.
   v8_array_buffer_internal_field_count = 0
@@ -1095,7 +1098,6 @@ config("features") {
     defines += [ "ENABLE_DISASSEMBLER" ]
   }
   if (enable_wrt_js) {
-    v8_promise_internal_field_count = 1
     v8_enable_javascript_promise_hooks = true
   }
   if (v8_log_builtins_block_count_input != "") {
index 417e3b878d4615a5fcc48d288af9573be0231ae5..93b9428572641c767cbcfad24047c51b72696303 100644 (file)
@@ -101,29 +101,6 @@ class V8_EXPORT Template : public Data {
    * \param attribute The attributes of the property for which an accessor
    *   is added.
    */
-#if defined(ENABLE_WRT_JS)
-  V8_DEPRECATED("Use SetNativeDataProperty without AccessControl instead")
-  void SetNativeDataProperty(
-      Local<String> name, AccessorGetterCallback getter,
-      AccessorSetterCallback setter, Local<Value> data,
-      PropertyAttribute attribute, AccessControl settings,
-      SideEffectType getter_side_effect_type = SideEffectType::kHasSideEffect,
-      SideEffectType setter_side_effect_type = SideEffectType::kHasSideEffect);
-  V8_DEPRECATED("Use SetNativeDataProperty without AccessControl instead")
-  void SetNativeDataProperty(
-      Local<Name> name, AccessorNameGetterCallback getter,
-      AccessorNameSetterCallback setter, Local<Value> data,
-      PropertyAttribute attribute, AccessControl settings,
-      SideEffectType getter_side_effect_type = SideEffectType::kHasSideEffect,
-      SideEffectType setter_side_effect_type = SideEffectType::kHasSideEffect);
-  V8_DEPRECATED("Use SetNativeDataProperty with Local<Name> instead")
-  void SetNativeDataProperty(
-      Local<String> name, AccessorGetterCallback getter,
-      AccessorSetterCallback setter = nullptr,
-      Local<Value> data = Local<Value>(), PropertyAttribute attribute = None,
-      SideEffectType getter_side_effect_type = SideEffectType::kHasSideEffect,
-      SideEffectType setter_side_effect_type = SideEffectType::kHasSideEffect);
-#endif
   void SetNativeDataProperty(
       Local<Name> name, AccessorNameGetterCallback getter,
       AccessorNameSetterCallback setter = nullptr,
index 04cbaf1d013f6b79897d6495b0559d9416c85461..59944001d00db93b4cb1afb6d02aa6971150ab1a 100644 (file)
@@ -1601,43 +1601,6 @@ void TemplateSetAccessor(Template* template_obj, v8::Local<Name> name,
 }
 }  // namespace
 
-#if defined(ENABLE_WRT_JS)
-void Template::SetNativeDataProperty(v8::Local<String> name,
-                                     AccessorGetterCallback getter,
-                                     AccessorSetterCallback setter,
-                                     v8::Local<Value> data,
-                                     PropertyAttribute attribute,
-                                     v8::AccessControl settings,
-                                     SideEffectType getter_side_effect_type,
-                                     SideEffectType setter_side_effect_type) {
-  TemplateSetAccessor(this, name, getter, setter, data, attribute, true, false,
-                      getter_side_effect_type, setter_side_effect_type);
-}
-
-void Template::SetNativeDataProperty(v8::Local<Name> name,
-                                     AccessorNameGetterCallback getter,
-                                     AccessorNameSetterCallback setter,
-                                     v8::Local<Value> data,
-                                     PropertyAttribute attribute,
-                                     v8::AccessControl settings,
-                                     SideEffectType getter_side_effect_type,
-                                     SideEffectType setter_side_effect_type) {
-  TemplateSetAccessor(this, name, getter, setter, data, attribute, true, false,
-                      getter_side_effect_type, setter_side_effect_type);
-}
-
-void Template::SetNativeDataProperty(v8::Local<String> name,
-                                     AccessorGetterCallback getter,
-                                     AccessorSetterCallback setter,
-                                     v8::Local<Value> data,
-                                     PropertyAttribute attribute,
-                                     SideEffectType getter_side_effect_type,
-                                     SideEffectType setter_side_effect_type) {
-  TemplateSetAccessor(this, name, getter, setter, data, attribute, true, false,
-                      getter_side_effect_type, setter_side_effect_type);
-}
-#endif
-
 void Template::SetNativeDataProperty(v8::Local<Name> name,
                                      AccessorNameGetterCallback getter,
                                      AccessorNameSetterCallback setter,
@@ -6438,7 +6401,7 @@ void SetInternalFieldImpl(v8::Object* receiver, int index, v8::Local<T> value) {
   const char* location = "v8::Object::SetInternalField()";
   if (!InternalFieldOK(obj, index, location)) return;
   auto val = Utils::OpenDirectHandle(*value);
-  i::DirectHandle<i::JSObject>::cast(obj)->SetEmbedderField(index, *val);
+  i::Cast<i::JSObject>(obj)->SetEmbedderField(index, *val);
 }
 
 /**
index ee3afe2ee0252b5338f2b1708b5489c1abb56251..077f7f3c731dd22078e6ee1ed186b942a771b752 100644 (file)
@@ -101,9 +101,9 @@ class MinorGCHeapGrowing
 // static
 std::unique_ptr<CppHeap> CppHeap::Create(v8::Platform* platform,
                                          const CppHeapCreateParams& params) {
-  return std::make_unique<internal::CppHeap>(platform, params.custom_spaces,
-                                             params.marking_support,
-                                             params.sweeping_support);
+  return std::make_unique<internal::CppHeap>(
+      platform ? platform : internal::V8::GetCurrentPlatform(),
+      params.custom_spaces, params.marking_support, params.sweeping_support);
 }
 
 cppgc::AllocationHandle& CppHeap::GetAllocationHandle() {
index 17bb765667c846536a7cbe84320802c146fc42d9..1e9727b479fac469522b08be97e03e8e67d1bc54 100644 (file)
@@ -333,6 +333,8 @@ static_library("wrt_lib") {
     "//components/security_state/content",
     "//components/services/language_detection/public/mojom",
     "//components/upload_list",
+    "//electron/shell/common:mojo",
+    "//electron/shell/common:plugin",
     "//electron/shell/services/node/public/mojom",
     "//services/proxy_resolver:lib",
     "//third_party/electron_node:node_lib",
@@ -394,6 +396,8 @@ static_library("wrt_lib") {
   }
 
   sources = wrt_lib_sources + [
+    "//ash/style/rounded_rect_cutout_path_builder.cc",
+    "//ash/style/rounded_rect_cutout_path_builder.h",
     "//electron/shell/browser/certificate_manager_model.cc",
     "//electron/shell/browser/certificate_manager_model.h",
     "//electron/shell/browser/lib/power_observer_linux.cc",
@@ -558,7 +562,6 @@ static_library("wrt_lib") {
 }
 
   unused_electron_sources = [
-    "shell/browser/api/electron_api_desktop_capturer.cc",
     "shell/browser/api/electron_api_global_shortcut.cc",
     "shell/browser/api/electron_api_native_theme.cc",
     "shell/browser/api/electron_api_safe_storage.cc",
old mode 100755 (executable)
new mode 100644 (file)
index 096c7a9..1e6c2fb
@@ -18,8 +18,7 @@ namespace electron {
 namespace api {
 
 class SpellCheckClient : public blink::WebSpellCheckPanelHostClient,
-                         public blink::WebTextCheckClient,
-                         public base::SupportsWeakPtr<SpellCheckClient> {
+                         public blink::WebTextCheckClient {
  public:
   SpellCheckClient(const std::string& language,
                    v8::Isolate* isolate,
index 21ab7be25db1d7831b58fcd3a3efc1404e99b751..be54e5f5228e0b000bbe47e5e297e5dfa1fb9fad 100644 (file)
@@ -45,7 +45,7 @@
 #include <aul_proc_group.h>
 #endif
 
-#if BUILDFLAG(USE_ALLOCATOR_SHIM)
+#if PA_BUILDFLAG(USE_ALLOCATOR_SHIM)
 #include "tizen_src/chromium_impl/components/memory_system/initialize_util.h"
 #endif
 
@@ -300,7 +300,7 @@ std::optional<int> WRTMainDelegateTV::PostEarlyInitialization(
     InvokedIn invoked_in) {
   NativeWebRuntimeDelegateTV::GetInstance().PostEarlyInitialization();
   WRTMainDelegate::PostEarlyInitialization(invoked_in);
-#if BUILDFLAG(USE_ALLOCATOR_SHIM)
+#if PA_BUILDFLAG(USE_ALLOCATOR_SHIM)
   memory_system::InitializeMemorySystem(memory_system_);
 #endif
   return std::nullopt;
index 8e91933d547685dba7a38e4bfaf9e3171d59c004..435f21eebd587b2433ba8955091e1b215f936f62 100644 (file)
@@ -7,7 +7,7 @@
 
 #include "wrt/src/app/wrt_main_delegate.h"
 
-#if BUILDFLAG(USE_ALLOCATOR_SHIM)
+#if PA_BUILDFLAG(USE_ALLOCATOR_SHIM)
 #include "components/memory_system/memory_system.h"
 #endif
 
@@ -39,7 +39,7 @@ class WRTMainDelegateTV : public WRTMainDelegate {
   content::ContentBrowserClient* CreateContentBrowserClient() override;
   content::ContentRendererClient* CreateContentRendererClient() override;
 
-#if BUILDFLAG(USE_ALLOCATOR_SHIM)
+#if PA_BUILDFLAG(USE_ALLOCATOR_SHIM)
   memory_system::MemorySystem memory_system_;
 #endif
 };
index 8e6f4b390c2f0b5dfc0c02cf35d6d70432b3bb90..c6278c8c39ad53f57fa56598b5bc160fe3b96ed8 100644 (file)
@@ -27,7 +27,7 @@
 #include "wrt/src/app/wrt_main_delegate.h"
 #endif
 
-#if BUILDFLAG(USE_ALLOCATOR_SHIM)
+#if PA_BUILDFLAG(USE_ALLOCATOR_SHIM)
 #include "components/services/heap_profiling/public/cpp/profiling_client.h"
 #endif
 
@@ -202,7 +202,7 @@ void WRTContentMain::PrelaunchOnLoader(const std::string& app_path,
 }
 
 int WRTContentMain::Main(int argc, char** argv) {
-#if BUILDFLAG(USE_ALLOCATOR_SHIM)
+#if PA_BUILDFLAG(USE_ALLOCATOR_SHIM)
   heap_profiling::InitTLSSlot();
 #endif
 
index c7756544bd66c0605d157619fcfa7c88d34a66a2..9ae337db239ed824c1a266d3546fe29828647561 100644 (file)
@@ -28,11 +28,11 @@ void BasicSplashScreenOnScreen::Init() {
   auto* widget = widget_delegate_->widget();
   gfx::Rect bounds = host->GetBoundsInPixels();
 
-  views::Widget::InitParams params;
-  params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
+  views::Widget::InitParams params(
+      views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET,
+      views::Widget::InitParams::TYPE_WINDOW);
   params.bounds = bounds;
   params.delegate = widget_delegate_.get();
-  params.type = views::Widget::InitParams::TYPE_WINDOW;
   params.native_widget = new WRTNativeWidget(widget, host);
   params.parent = host->window();
   params.should_show_after_init = true;
index 83bc568b02ac2ad3d297f7bf6ddc732af15ab15f..57bac2a905a17bb1ecff901ec6128dd9da2e1b0a 100644 (file)
@@ -4,10 +4,11 @@
 
 #include "wrt/src/browser/net/wrt_file_url_loader.h"
 
+#include <string_view>
+
 #include "base/files/file.h"
 #include "base/files/file_util.h"
 #include "base/no_destructor.h"
-#include "base/strings/string_piece.h"
 #include "base/strings/string_split.h"
 #include "base/task/task_traits.h"
 #include "base/task/thread_pool.h"
@@ -42,7 +43,7 @@ bool ShouldOverrideMimeType(const GURL& url,
   const std::string content_mime_type = content_info.type();
   const std::string encoding_type = content_info.encoding();
 
-  std::vector<base::StringPiece> meta_data = base::SplitStringPiece(
+  std::vector<std::string_view> meta_data = base::SplitStringPiece(
       content_mime_type, ";", base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL);
   std::string mime_type_value;
   std::string charset_value;
@@ -51,7 +52,7 @@ bool ShouldOverrideMimeType(const GURL& url,
     mime_type_value = base::ToLowerASCII(*iter);
     ++iter;
   }
-  static constexpr base::StringPiece kCharsetTag("charset=");
+  static constexpr std::string_view kCharsetTag("charset=");
   charset_value = "utf-8";
   for (; iter != meta_data.cend(); ++iter) {
     if (base::StartsWith(*iter, kCharsetTag,
@@ -150,8 +151,7 @@ class WRTFileURLLoader : public network::mojom::URLLoader {
     }
     std::string range_header;
     net::HttpByteRange byte_range;
-    if (request.headers.GetHeader(net::HttpRequestHeaders::kRange,
-                                  &range_header)) {
+    if (request.headers.GetHeader(net::HttpRequestHeaders::kRange)) {
       // Handle a simple Range header for a single range.
       std::vector<net::HttpByteRange> ranges;
       bool fail = false;
old mode 100755 (executable)
new mode 100644 (file)
index 55d9e48..4fcb86b
@@ -1,4 +1,6 @@
 #include "electron/shell/browser/ui/file_dialog.h"
+#include "shell/common/gin_helper/dictionary.h"
+#include "shell/common/gin_helper/promise.h"
 
 #include "base/notreached.h"
 
old mode 100755 (executable)
new mode 100644 (file)
index bb59525..f125b14
@@ -57,7 +57,7 @@ int WRTBrowserMainParts::PreMainMessageLoopRun() {
   return content::RESULT_CODE_NORMAL_EXIT;
 }
 
-#if BUILDFLAG(USE_ALLOCATOR_SHIM)
+#if PA_BUILDFLAG(USE_ALLOCATOR_SHIM)
 void WRTBrowserMainParts::PostCreateThreads() {
   extra_parts_profiling_.PostCreateThreads();
 }
old mode 100755 (executable)
new mode 100644 (file)
index 2166c7f..5d8168a
@@ -4,7 +4,7 @@
 #include "base/allocator/buildflags.h"
 #include "electron/shell/browser/electron_browser_main_parts.h"
 
-#if BUILDFLAG(USE_ALLOCATOR_SHIM)
+#if PA_BUILDFLAG(USE_ALLOCATOR_SHIM)
 #include "tizen_src/ewk/efl_integration/browser/profiling_host/browser_main_extra_parts_profiling.h"
 #endif
 
@@ -28,7 +28,7 @@ class WRTBrowserMainParts : public electron::ElectronBrowserMainParts {
   int PreCreateThreads() override;
   int PreMainMessageLoopRun() override;
 
-#if BUILDFLAG(USE_ALLOCATOR_SHIM)
+#if PA_BUILDFLAG(USE_ALLOCATOR_SHIM)
   void PostCreateThreads() override;
 
   BrowserMainExtraPartsProfiling extra_parts_profiling_;
old mode 100755 (executable)
new mode 100644 (file)
index 2098c84..47cde7a
@@ -39,6 +39,9 @@ gfx::NativeView WRTInspectableWebContentsView::GetNativeView() const {
 void WRTInspectableWebContentsView::ShowDevTools(bool activate) {
   NOTIMPLEMENTED();
 }
+void WRTInspectableWebContentsView::SetCornerRadii(const gfx::RoundedCornersF& corner_radii) {
+  NOTIMPLEMENTED();
+}
 
 void WRTInspectableWebContentsView::CloseDevTools() {
   NOTIMPLEMENTED();
old mode 100755 (executable)
new mode 100644 (file)
index db31439..4d4406d
@@ -28,6 +28,7 @@ class WRTInspectableWebContentsView
   gfx::NativeView GetNativeView() const override;
 #endif
   void ShowDevTools(bool activate) override;
+  void SetCornerRadii(const gfx::RoundedCornersF& corner_radii) override;
   void CloseDevTools() override;
   bool IsDevToolsViewShowing() override;
   bool IsDevToolsViewFocused() override;
index 4f2b8eb33d264a6f6a7652048051471f4327783d..f73ccfbd012b4e0b9290ad5493e7f140adefc237 100644 (file)
@@ -19,6 +19,7 @@
 #include "content/public/browser/navigation_controller.h"
 #include "content/public/browser/render_frame_host.h"
 #include "content/public/browser/render_view_host.h"
+#include "content/public/common/isolated_world_ids.h"
 #include "electron/shell/browser/window_list.h"
 #include "electron/shell/common/gin_helper/dictionary.h"
 #include "electron/shell/common/options_switches.h"
@@ -187,9 +188,9 @@ void EnableManualRotation(bool enable) {
 content::WebContents::Getter GetWebContentsGetter(
     content::WebContents* web_contents) {
   // Use the FrameTreeNode ID to get the WebContents
-  int frame_tree_node_id =
+  content::FrameTreeNodeId frame_tree_node_id =
       web_contents->GetPrimaryMainFrame()->GetFrameTreeNodeId();
-  if (frame_tree_node_id != content::RenderFrameHost::kNoFrameTreeNodeId) {
+  if (frame_tree_node_id) {
     return base::BindRepeating(content::WebContents::FromFrameTreeNodeId,
                                frame_tree_node_id);
   }
@@ -452,7 +453,8 @@ void WRTNativeWindow::OnHWBackKey(void*, Evas_Object*, void*) {
     content::RenderFrameHost* rfh = web_contents->GetPrimaryMainFrame();
     if (rfh) {
       rfh->ExecuteJavaScriptWithUserGestureForTests(
-          base::UTF8ToUTF16(kBackKeyEventScript), base::NullCallback());
+          base::UTF8ToUTF16(kBackKeyEventScript), base::NullCallback(),
+          content::ISOLATED_WORLD_ID_GLOBAL);
     }
 
     if (IsWearableProfile() && native_window->IsFullscreen()) {
@@ -493,7 +495,8 @@ void WRTNativeWindow::OnHWMoreKey(void*, Evas_Object*, void*) {
 
   auto* rfh = GetActiveNativeWindow()->GetRenderFrameHost();
   rfh->ExecuteJavaScriptWithUserGestureForTests(
-      base::UTF8ToUTF16(kMenuKeyEventScript), base::NullCallback());
+      base::UTF8ToUTF16(kMenuKeyEventScript), base::NullCallback(),
+      content::ISOLATED_WORLD_ID_GLOBAL);
 }
 
 WRTNativeWindow::WRTNativeWindow(const gin_helper::Dictionary& options,
@@ -515,11 +518,11 @@ WRTNativeWindow::WRTNativeWindow(const gin_helper::Dictionary& options,
 
   auto* host = GetWindowTreeHost();
   gfx::Rect bounds = host->window()->bounds();
-  views::Widget::InitParams params;
-  params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
+  views::Widget::InitParams params(
+      views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET,
+      views::Widget::InitParams::TYPE_WINDOW);
   params.bounds = bounds;
   params.delegate = this;
-  params.type = views::Widget::InitParams::TYPE_WINDOW;
   params.remove_standard_frame = !has_frame();
   params.native_widget = new WRTNativeWidget(widget(), host);
   params.parent = host->window();
@@ -557,6 +560,9 @@ void WRTNativeWindow::SetWebContents(content::WebContents* web_contents) {
   }
 
   web_contents_ = web_contents;
+
+  native_window_delegate->SetWebContents(this, web_contents);
+
   OnRotation(rotation_degree);
 
   auto window = native_window_delegate->GetTopWindow();
@@ -1044,7 +1050,7 @@ void WRTNativeWindow::OnSoftKeyboardChangeEvent(bool value) {
   base::UTF8ToUTF16(kSoftKeyboardScript.c_str(), kSoftKeyboardScript.size(),
                     &js_script);
   rfh->ExecuteJavaScriptWithUserGestureForTests(
-      js_script, base::NullCallback());
+      js_script, base::NullCallback(), content::ISOLATED_WORLD_ID_GLOBAL);
 }
 
 void WRTNativeWindow::OnRotaryEvent(RotaryEventType type) {
@@ -1070,7 +1076,7 @@ void WRTNativeWindow::OnRotaryEvent(RotaryEventType type) {
   base::UTF8ToUTF16(kRotaryEventScript.c_str(), kRotaryEventScript.size(),
                     &js_script);
   rfh->ExecuteJavaScriptWithUserGestureForTests(
-      js_script, base::NullCallback());
+      js_script, base::NullCallback(), content::ISOLATED_WORLD_ID_GLOBAL);
 }
 
 std::unique_ptr<views::NonClientFrameView>
index 5458ae581d2d274b5590dff8e0d0e5ea2c9270bb..7cedd64b36ac5c4bb44370ddaef7bd4e22bdf848 100644 (file)
@@ -38,6 +38,8 @@ class WRTNativeWindowDelegate {
   virtual void Focus(WRTNativeWindow* native_window, bool focus) {}
   virtual void OnConformantChange() {}
   virtual void RemoveWidgetClient(WRTNativeWindow* native_window) {}
+  virtual void SetWebContents(WRTNativeWindow* native_window,
+                              content::WebContents* web_contents) {}
 
   // product specific
   using ScreenOrientation = WRTNativeWindow::ScreenOrientation;
index 995bcbb9236b731517bece3a2e6be009acddf236..64727a5102bd81b48fde74410a55729006015bb4 100644 (file)
@@ -236,9 +236,18 @@ Evas_Object* WRTNativeWindowOffScreen::GetEflMainLayout(
 
 void WRTNativeWindowOffScreen::SetContentView(WRTNativeWindow* native_window,
                                               views::View* view) {
-  auto web_contents = native_window->GetWebContents();
+  NOTIMPLEMENTED();
+}
+
+void WRTNativeWindowOffScreen::SetWebContents(
+    WRTNativeWindow* native_window,
+    content::WebContents* web_contents) {
   auto content_view = web_contents->GetNativeView();
-  GetWindowTreeHost(native_window)->window()->AddChild(content_view);
+  auto parent_view = GetWindowTreeHost(native_window)->window();
+  if (!parent_view->Contains(content_view)) {
+    parent_view->AddChild(content_view);
+  }
+
   content_view->Show();
   std::ignore = GetEflMainLayout(native_window);
 }
index 81199e26807374e2a5daea4083aa4c7b8718df0f..7179f825791a584fbe9972746af0b417a1fbf82f 100644 (file)
@@ -38,6 +38,8 @@ class WRTNativeWindowOffScreen : public WRTNativeWindowDelegate {
   content::RenderWidgetHostViewAura* GetRenderWidgetHostView(
       WRTNativeWindow* native_window);
   Evas_Object* GetEflMainLayout(WRTNativeWindow* native_window);
+  void SetWebContents(WRTNativeWindow* native_window,
+                      content::WebContents* web_contents) override;
 
 #if BUILDFLAG(IS_TIZEN_TV)
   void DidFinishNavigation() override;
old mode 100755 (executable)
new mode 100644 (file)
index f63b722..e1dfa2c
@@ -31,8 +31,8 @@ bool SetNotificationImage(notification_h noti,
     return false;
   }
 
-  size_t written = base::WriteFile(path,
-      reinterpret_cast<char*>(&*data.begin()), data.size());
+  std::string str_data(data.begin(), data.end());
+  size_t written = base::WriteFile(path, str_data);
 
   if (written == data.size()) {
     if (notification_set_image(noti, type, path.value().data()) ==
old mode 100755 (executable)
new mode 100644 (file)
index 4c841c7..d0adfec
@@ -18,8 +18,7 @@ namespace {
 
 constexpr char kWRTProperty[] = "webruntime";
 
-void WRTGetter(v8::Local<v8::Name> property_name,
-               const v8::PropertyCallbackInfo<v8::Value>& info) {
+void WRTGetter(const v8::FunctionCallbackInfo<v8::Value>& info) {
   v8::Isolate* isolate = info.GetIsolate();
   v8::Local<v8::Context> context = isolate->GetCurrentContext();
 
@@ -48,16 +47,14 @@ void WRTGetter(v8::Local<v8::Name> property_name,
     info.GetReturnValue().Set(value);
 }
 
-void WRTSetter(v8::Local<v8::Name> property,
-               v8::Local<v8::Value> value,
-               const v8::PropertyCallbackInfo<void>& info) {
+void WRTSetter(const v8::FunctionCallbackInfo<v8::Value>& info) {
   v8::Isolate* isolate = info.GetIsolate();
   v8::Local<v8::Context> context = isolate->GetCurrentContext();
   v8::Local<v8::Private> private_key = v8::Private::ForApi(
       isolate, gin::StringToV8(isolate, kWRTProperty));
 
   v8::Maybe<bool> result =
-      info.This()->SetPrivate(context, private_key, value);
+      info.This()->SetPrivate(context, private_key, info[0]);
   if (!result.IsJust() || !result.FromJust())
     NOTREACHED();
 }
@@ -131,11 +128,13 @@ void WebRuntimeRenderer::Initialize(v8::Local<v8::Context> context) {
   v8::Isolate* isolate = context->GetIsolate();
   v8::HandleScope handle_scope(isolate);
   v8::Context::Scope context_scope(context);
-  std::ignore = context->Global()->SetAccessor(
-                    context,
+
+  v8::Local<v8::Function> WRTGetter_local= v8::Function::New(context, WRTGetter).FromMaybe(v8::Local<v8::Function>());
+  v8::Local<v8::Function> WRTSetter_local = v8::Function::New(context, WRTSetter).FromMaybe(v8::Local<v8::Function>());
+  context->Global()->SetAccessorProperty(
                     gin::StringToV8(isolate, "WRT"),
-                    WRTGetter,
-                    WRTSetter);
+                    WRTGetter_local,
+                    WRTSetter_local);
 }
 
 // static
old mode 100755 (executable)
new mode 100644 (file)
index 60e73ae..1328068
@@ -236,7 +236,7 @@ void WRTRenderFrameObserver::QueryInputType(QueryInputTypeCallback callback) {
   if (!focused_element.IsNull()) {
     auto input_element = focused_element.DynamicTo<blink::WebInputElement>();
     if (!input_element.IsNull())
-      is_password_field = input_element.IsPasswordField();
+      is_password_field = input_element.IsTextField();
   }
 
   std::move(callback).Run(is_password_field);