* it feels weird for requireIdleCallback() to be optional while more
modern browser features are required * simplify browser startup feature check a bit
This commit is contained in:
parent
84fe383ed4
commit
143617afb1
11
js/App.js
11
js/App.js
|
@ -688,15 +688,16 @@ const App = {
|
|||
checkBrowserFeatures: function() {
|
||||
let errorMsg = "";
|
||||
|
||||
['MutationObserver'].forEach(function(wf) {
|
||||
if (!(wf in window)) {
|
||||
errorMsg = `Browser feature check failed: <code>window.${wf}</code> not found.`;
|
||||
['MutationObserver', 'requestIdleCallback'].forEach((t) => {
|
||||
if (!(t in window)) {
|
||||
errorMsg = `Browser check failed: <code>window.${t}</code> not found.`;
|
||||
throw new Error(errorMsg);
|
||||
}
|
||||
});
|
||||
|
||||
if (errorMsg) {
|
||||
this.Error.fatal(errorMsg, {info: navigator.userAgent});
|
||||
if (typeof Promise.allSettled == "undefined") {
|
||||
errorMsg = `Browser check failed: <code>Promise.allSettled</code> is not defined.`;
|
||||
throw new Error(errorMsg);
|
||||
}
|
||||
|
||||
return errorMsg == "";
|
||||
|
|
|
@ -311,12 +311,9 @@ const Feeds = {
|
|||
setActive: function(id, is_cat) {
|
||||
console.log('setActive', id, is_cat);
|
||||
|
||||
if ('requestIdleCallback' in window)
|
||||
window.requestIdleCallback(() => {
|
||||
App.Hash.set({f: id, c: is_cat ? 1 : 0});
|
||||
});
|
||||
else
|
||||
window.requestIdleCallback(() => {
|
||||
App.Hash.set({f: id, c: is_cat ? 1 : 0});
|
||||
});
|
||||
|
||||
this._active_feed_id = id;
|
||||
this._active_feed_is_cat = is_cat;
|
||||
|
|
|
@ -76,12 +76,9 @@ const Headlines = {
|
|||
|
||||
Headlines.updateSelectedPrompt();
|
||||
|
||||
if ('requestIdleCallback' in window)
|
||||
window.requestIdleCallback(() => {
|
||||
Headlines.syncModified(modified);
|
||||
});
|
||||
else
|
||||
window.requestIdleCallback(() => {
|
||||
Headlines.syncModified(modified);
|
||||
});
|
||||
}),
|
||||
syncModified: function (modified) {
|
||||
const ops = {
|
||||
|
@ -175,7 +172,7 @@ const Headlines = {
|
|||
});
|
||||
}
|
||||
|
||||
Promise.all(promises).then((results) => {
|
||||
Promise.allSettled(promises).then((results) => {
|
||||
let feeds = [];
|
||||
let labels = [];
|
||||
|
||||
|
|
|
@ -510,12 +510,10 @@ const Helpers = {
|
|||
search: function() {
|
||||
this.search_query = this.attr('value').search.toLowerCase();
|
||||
|
||||
if ('requestIdleCallback' in window)
|
||||
window.requestIdleCallback(() => {
|
||||
this.render_contents();
|
||||
});
|
||||
else
|
||||
window.requestIdleCallback(() => {
|
||||
this.render_contents();
|
||||
});
|
||||
|
||||
},
|
||||
render_contents: function() {
|
||||
const container = dialog.domNode.querySelector(".contents");
|
||||
|
|
Loading…
Reference in New Issue