diff --git a/Core/FormBrowser.cs b/Core/FormBrowser.cs index 04d03739..7be865c6 100644 --- a/Core/FormBrowser.cs +++ b/Core/FormBrowser.cs @@ -350,6 +350,10 @@ public void TriggerTweetScreenshot(){ browser.TriggerTweetScreenshot(); } + public void ReloadColumns(){ + browser.ReloadColumns(); + } + public void ApplyROT13(){ browser.ApplyROT13(); } diff --git a/Core/TweetDeckBrowser.cs b/Core/TweetDeckBrowser.cs index 639d04a2..919d7bdc 100644 --- a/Core/TweetDeckBrowser.cs +++ b/Core/TweetDeckBrowser.cs @@ -231,6 +231,10 @@ public void TriggerTweetScreenshot(){ browser.ExecuteScriptAsync("TDGF_triggerScreenshot()"); } + public void ReloadColumns(){ + browser.ExecuteScriptAsync("TDGF_reloadColumns()"); + } + public void ApplyROT13(){ browser.ExecuteScriptAsync("TDGF_applyROT13()"); } diff --git a/Resources/Plugins/timeline-polls/browser.js b/Resources/Plugins/timeline-polls/browser.js index dbd3102d..6eef2976 100644 --- a/Resources/Plugins/timeline-polls/browser.js +++ b/Resources/Plugins/timeline-polls/browser.js @@ -1,8 +1,4 @@ enabled(){ - this.reloadColumns = () => { - Object.values(TD.controller.columnManager.getAll()).forEach(column => column.reloadTweets()); - }; - // styles this.css = window.TDPF_createCustomStyle(this); @@ -10,17 +6,17 @@ enabled(){ // utility functions - var hasPoll = function(tweet){ + const hasPoll = function(tweet){ return tweet.hasPoll && tweet.hasPoll(); }; - var renderTweetPoll = function(tweet){ + const renderTweetPoll = function(tweet){ return `<div class='td-timeline-poll'>${TD.ui.template.render("status/poll", $.extend({}, tweet, { chirp: tweet }))}</div>`; }; - var renderPollHook = function(tweet, html){ + const renderPollHook = function(tweet, html){ let ele = null; if (hasPoll(tweet)){ @@ -67,7 +63,7 @@ enabled(){ }; this.prevRenderFuncs = funcs; - this.reloadColumns(); + window.TDPF_reloadColumns(); } disabled(){ @@ -76,5 +72,5 @@ disabled(){ TD.components.TweetDetailView.prototype._renderChirp = this.prevRenderFuncs.TweetDetailView; this.css.remove(); - this.reloadColumns(); -} \ No newline at end of file + window.TDPF_reloadColumns(); +} diff --git a/Resources/Scripts/code.js b/Resources/Scripts/code.js index 71cb53f8..99020a0e 100644 --- a/Resources/Scripts/code.js +++ b/Resources/Scripts/code.js @@ -1116,6 +1116,13 @@ }); }); + // + // Block: Setup global function to refresh all columns. + // + window.TDGF_reloadColumns = function(){ + Object.values(TD.controller.columnManager.getAll()).forEach(column => column.reloadTweets()); + }; + // // Block: Allow applying ROT13 to input selection. // diff --git a/Resources/Scripts/plugins.browser.js b/Resources/Scripts/plugins.browser.js index e43658a7..56aa7690 100644 --- a/Resources/Scripts/plugins.browser.js +++ b/Resources/Scripts/plugins.browser.js @@ -107,5 +107,6 @@ // Block: Setup bridges to global functions. // window.TDPF_playVideo = window.TDGF_playVideo; + window.TDPF_reloadColumns = window.TDGF_reloadColumns; window.TDPF_prioritizeNewestEvent = window.TDGF_prioritizeNewestEvent; })();