mirror of
https://github.com/tjy-gitnub/win12.git
synced 2026-08-30 17:49:08 +08:00
ffeaa15e30
- 新增了桌面小组件,可将小组件添加到桌面并调整位置 - 新增了编辑模式,可快捷编辑小组件的位置,并提供了相关的快捷入口 - 新增了窗口全屏且Dock不在使用时自动隐藏的功能 - 为Microsoft Edge浏览器和文件资源管理器新增了后退/前进的功能 - 又双叒叕优化计算器的精度问题与安全性问题 - 重写更新机制,并完善 Windows 更新 - 修复了文件资源管理器中右键文件失效的问题 - 修复了Edge浏览器无法正确进行搜索的问题 - 修复了文件资源管理器中无法正确显示文件夹中文件的问题 - 更换了Python Editor的图标 - 完善了开源说明 - 优化了bios界面 - 其他细节与修复
173 lines
4.4 KiB
JavaScript
173 lines
4.4 KiB
JavaScript
let dymanic = [
|
|
'api.github.com',
|
|
'tjy-gitnub.github.io/win12-theme',
|
|
'win12server.freehk.svipss.top',
|
|
'assets.msn.cn'
|
|
]
|
|
this.addEventListener('fetch', function (event) {
|
|
event.respondWith(
|
|
caches.match(event.request).then(res => {
|
|
let fl = false;
|
|
dymanic.forEach(d => {
|
|
if (event.request.url.indexOf(d) > 0) {
|
|
fl = true;
|
|
return;
|
|
}
|
|
});
|
|
if (fl) {
|
|
console.log('动态请求', event.request.url);
|
|
return fetch(event.request);
|
|
}
|
|
return res ||
|
|
fetch(event.request)
|
|
.then(responese => {
|
|
// console.log(event.request);
|
|
const responeseClone = responese.clone();
|
|
caches.open('def').then(cache => {
|
|
console.log('下载数据', responeseClone.url);
|
|
cache.put(event.request, responeseClone);
|
|
})
|
|
return responese;
|
|
})
|
|
.catch(err => {
|
|
console.log(err);
|
|
});
|
|
})
|
|
)
|
|
});
|
|
const cacheNames = ['def'];
|
|
let nochanges = [
|
|
'/win12/fonts/',
|
|
'/win12/img/',
|
|
'/win12/apps/icons/',
|
|
'/win12/jq.min.js',
|
|
'/win12/bootstrap-icons.css',
|
|
]
|
|
let flag = false;
|
|
|
|
function update(force = false) {
|
|
caches.keys().then(keys => {
|
|
if (keys.includes('def')) {
|
|
caches.open('def').then(cc => {
|
|
cc.keys().then(key => {
|
|
key.forEach(k => {
|
|
let fl = true;
|
|
if (force) {
|
|
console.log('删除数据', k.url);
|
|
return cc.delete(k);
|
|
}
|
|
nochanges.forEach(fi => {
|
|
if (RegExp(fi + '\\S+').test(k.url)) {
|
|
fl = false;
|
|
return;
|
|
}
|
|
});
|
|
if (fl) {
|
|
console.log('删除数据', k.url);
|
|
return cc.delete(k);
|
|
}
|
|
});
|
|
});
|
|
});
|
|
}
|
|
});
|
|
}
|
|
|
|
|
|
this.addEventListener('message', function (e) {
|
|
if (e.data.head == 'update') {
|
|
update(true);
|
|
}
|
|
});
|
|
|
|
this.addEventListener('activate', update);
|
|
|
|
|
|
// let dongtai=[
|
|
// 'api.github.com',
|
|
// 'tjy-gitnub.github.io/win12-theme',
|
|
// 'win12server.freehk.svipss.top',
|
|
// 'assets.msn.cn'
|
|
// ]
|
|
// this.addEventListener('fetch', function (event) {
|
|
// event.respondWith(
|
|
// caches.match(event.request).then(res => {
|
|
// let fl=false;
|
|
// dongtai.forEach(d=>{
|
|
// if(event.request.url.indexOf(d)>0){
|
|
// fl=true;
|
|
// return;
|
|
// }
|
|
// });
|
|
// if(fl){console.log('动态请求',event.request.url);return fetch(event.request);}
|
|
// return res ||
|
|
// fetch(event.request)
|
|
// .then(responese => {
|
|
// // console.log(event.request);
|
|
// const responeseClone = responese.clone();
|
|
// caches.open('def').then(cache => {
|
|
// console.log('下载数据', responeseClone.url);
|
|
// cache.put(event.request, responeseClone);
|
|
// })
|
|
// return responese;
|
|
// })
|
|
// .catch(err => {
|
|
// console.log(err);
|
|
// });
|
|
// })
|
|
// )
|
|
// });
|
|
// const cacheNames = ['def'];
|
|
// let nochanges = [
|
|
// '/win12/fonts/',
|
|
// '/win12/img/',
|
|
// '/win12/apps/icons/',
|
|
// '/win12/jq.min.js',
|
|
// '/win12/bootstrap-icons.css',
|
|
// ]
|
|
// let flag = false;
|
|
// this.addEventListener('activate', function (event) {
|
|
// flag = true;
|
|
// console.log('开始更新');
|
|
// event.waitUntil(
|
|
// caches.keys().then(keys => {
|
|
// if (keys.includes('def')) {
|
|
// caches.open('def').then(cc => {
|
|
// cc.keys().then(key => {
|
|
// key.forEach(k => {
|
|
// let fl = true;
|
|
// nochanges.forEach(fi => {
|
|
// if (RegExp(fi + '\\S+').test(k.url)) {
|
|
// fl = false;
|
|
// return;
|
|
// }
|
|
// });
|
|
// if (fl) {
|
|
// console.log('删除数据', k.url);
|
|
// return cc.delete(k);
|
|
// }
|
|
// });
|
|
// })
|
|
// })
|
|
// }
|
|
// })
|
|
// );
|
|
// event.waitUntil(
|
|
// caches.open('def').then(function (cache) {
|
|
// return cache.addAll([
|
|
// 'bg-dark.svg'
|
|
// ]);
|
|
// })
|
|
// );
|
|
// });
|
|
// this.addEventListener('message', function (e) {
|
|
// if (e.data.head == 'is_update') {
|
|
// if (flag) {
|
|
// e.source.postMessage({
|
|
// head: 'update'
|
|
// });
|
|
// flag = false;
|
|
// }
|
|
// }
|
|
// });
|