mirror of
https://github.com/chylex/TweetDuck.git
synced 2025-05-09 05:34:05 +02:00
Refactor UpdateHandler to reference ITweetDeckBrowser
This commit is contained in:
parent
155a79f2ec
commit
41acd8c15b
@ -91,7 +91,7 @@ public FormBrowser(UpdaterSettings updaterSettings){
|
||||
|
||||
UpdateTrayIcon();
|
||||
|
||||
this.updates = browser.CreateUpdateHandler(updaterSettings);
|
||||
this.updates = new UpdateHandler(browser, updaterSettings);
|
||||
this.updates.UpdateAccepted += updates_UpdateAccepted;
|
||||
this.updates.UpdateDismissed += updates_UpdateDismissed;
|
||||
|
||||
|
@ -13,7 +13,6 @@
|
||||
using TweetDuck.Plugins.Enums;
|
||||
using TweetDuck.Plugins.Events;
|
||||
using TweetDuck.Resources;
|
||||
using TweetDuck.Updates;
|
||||
|
||||
namespace TweetDuck.Core{
|
||||
sealed class TweetDeckBrowser : ITweetDeckBrowser, IDisposable{
|
||||
@ -209,10 +208,6 @@ private void UserConfig_SoundNotificationInfoChanged(object sender, EventArgs e)
|
||||
|
||||
// external handling
|
||||
|
||||
public UpdateHandler CreateUpdateHandler(UpdaterSettings settings){
|
||||
return new UpdateHandler(browser, settings);
|
||||
}
|
||||
|
||||
public void HideVideoOverlay(bool focus){
|
||||
if (focus){
|
||||
browser.GetBrowser().GetHost().SendFocusEvent(true);
|
||||
|
@ -1,14 +1,14 @@
|
||||
using CefSharp;
|
||||
using CefSharp.WinForms;
|
||||
using System;
|
||||
using System.Windows.Forms;
|
||||
using TweetDuck.Core;
|
||||
using TweetDuck.Core.Controls;
|
||||
using TweetDuck.Core.Utils;
|
||||
using TweetDuck.Resources;
|
||||
|
||||
namespace TweetDuck.Updates{
|
||||
sealed class UpdateHandler{
|
||||
private readonly ChromiumWebBrowser browser;
|
||||
private readonly ITweetDeckBrowser browser;
|
||||
private readonly UpdaterSettings settings;
|
||||
|
||||
public event EventHandler<UpdateEventArgs> UpdateAccepted;
|
||||
@ -18,19 +18,17 @@ sealed class UpdateHandler{
|
||||
private int lastEventId;
|
||||
private UpdateInfo lastUpdateInfo;
|
||||
|
||||
public UpdateHandler(ChromiumWebBrowser browser, UpdaterSettings settings){
|
||||
public UpdateHandler(ITweetDeckBrowser browser, UpdaterSettings settings){
|
||||
this.browser = browser;
|
||||
this.settings = settings;
|
||||
|
||||
browser.FrameLoadEnd += browser_FrameLoadEnd;
|
||||
browser.RegisterAsyncJsObject("$TDU", new Bridge(this));
|
||||
browser.OnFrameLoaded(OnFrameLoaded);
|
||||
browser.RegisterBridge("$TDU", new Bridge(this));
|
||||
}
|
||||
|
||||
private void browser_FrameLoadEnd(object sender, FrameLoadEndEventArgs e){
|
||||
if (e.Frame.IsMain && TwitterUtils.IsTweetDeckWebsite(e.Frame)){
|
||||
ScriptLoader.ExecuteFile(e.Frame, "update.js");
|
||||
Check(false);
|
||||
}
|
||||
private void OnFrameLoaded(IFrame frame){
|
||||
ScriptLoader.ExecuteFile(frame, "update.js");
|
||||
Check(false);
|
||||
}
|
||||
|
||||
public int Check(bool force){
|
||||
@ -39,7 +37,7 @@ public int Check(bool force){
|
||||
settings.DismissedUpdate = null;
|
||||
}
|
||||
|
||||
browser.ExecuteScriptAsync("TDUF_runUpdateCheck", ++lastEventId, Program.VersionTag, settings.DismissedUpdate ?? string.Empty, settings.AllowPreReleases);
|
||||
browser.ExecuteFunction("TDUF_runUpdateCheck", ++lastEventId, Program.VersionTag, settings.DismissedUpdate ?? string.Empty, settings.AllowPreReleases);
|
||||
return lastEventId;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user