aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Modules/Tango.PPC.Browser/Helpers/BoundObjectsHelper.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/PPC/Modules/Tango.PPC.Browser/Helpers/BoundObjectsHelper.cs')
-rw-r--r--Software/Visual_Studio/PPC/Modules/Tango.PPC.Browser/Helpers/BoundObjectsHelper.cs72
1 files changed, 0 insertions, 72 deletions
diff --git a/Software/Visual_Studio/PPC/Modules/Tango.PPC.Browser/Helpers/BoundObjectsHelper.cs b/Software/Visual_Studio/PPC/Modules/Tango.PPC.Browser/Helpers/BoundObjectsHelper.cs
deleted file mode 100644
index fe68ee848..000000000
--- a/Software/Visual_Studio/PPC/Modules/Tango.PPC.Browser/Helpers/BoundObjectsHelper.cs
+++ /dev/null
@@ -1,72 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Reflection;
-using Tango.PPC.Browser.Attributes;
-using CefSharp;
-using CefSharp.Wpf;
-using Tango.Core.Helpers;
-using System.Windows.Threading;
-
-namespace Tango.PPC.Browser.Helpers
-{
- public static class BoundObjectsHelper
- {
- private static DispatcherTimer _timer;
- private static Dispatcher _dispatcher;
- private static ChromiumWebBrowser _browser;
-
- private static List<String> _scripts = new List<string>();
-
- public static void RegisterAllBoundObjects(ChromiumWebBrowser browser, Dispatcher dispatcher)
- {
- _dispatcher = dispatcher;
- _browser = browser;
-
- _timer = new DispatcherTimer(DispatcherPriority.Background, dispatcher);
- _timer.Tick += _timer_Tick;
- _timer.Interval = TimeSpan.FromSeconds(2);
- _timer.Stop();
-
- foreach (var type in typeof(BoundObjectsHelper).Assembly.GetTypes().Where(x => x.GetCustomAttribute<BoundObjectAttribute>() != null))
- {
- var att = type.GetCustomAttribute<BoundObjectAttribute>();
-
- var script = EmbeddedResourceHelper.GetEmbeddedResourceText($"Tango.PPC.Browser.Scripts.{att.ScriptFile}");
- _scripts.Add(script);
-
- browser.JavascriptObjectRepository.Register(att.Name, Activator.CreateInstance(type), true);
-
- browser.FrameLoadEnd += Browser_FrameLoadEnd;
- }
- }
-
- private static void Browser_FrameLoadEnd(object sender, FrameLoadEndEventArgs e)
- {
- _timer.Stop();
- _timer.Start();
- }
-
- private static void _timer_Tick(object sender, EventArgs e)
- {
- try
- {
- _timer.Stop();
-
- _dispatcher.BeginInvoke(new Action(() =>
- {
- foreach (var script in _scripts)
- {
- _browser.GetMainFrame().ExecuteJavaScriptAsync(script);
- }
- }));
- }
- catch
- {
- _timer.Start();
- }
- }
- }
-}