新增: 星座运势+AI资讯+知识卡片+桌面设置窗口+秒显示开关
- 星座运势: 天聚数行API集成,5维进度条+幸运标签+今日概述 - AI资讯: 天聚数行API,图文布局5条展示,文件缓存2小时刷新 - 知识卡片: AI生成,关键字+提示词配置,30分钟刷新 - 桌面设置: 独立WebView2窗口,760x1350,含壁纸/布局/城市/颜色等配置 - 显示控制: 壁纸/时间/天气/星座/知识/AI资讯独立开关,秒显示开关 - 文件缓存: 星座运势+AI资讯缓存到本地,启动即显示上次数据 - initDone防抖: 防止设置窗口初始化触发卡片重载
This commit is contained in:
47
wallpaper.go
47
wallpaper.go
@@ -78,9 +78,39 @@ func buildWallpaperHTML(cfg *Config) string {
|
||||
if bg == "" {
|
||||
bg = themeAurora
|
||||
}
|
||||
html := strings.Replace(overlayHTML, "{{BACKGROUND}}", bg, 1)
|
||||
bgWrapped := fmt.Sprintf(`<div id="bg-layer">%s</div>`, bg)
|
||||
if cfg.HideWallpaper {
|
||||
bgWrapped = `<div id="bg-layer" style="display:none"></div>`
|
||||
}
|
||||
html := strings.Replace(overlayHTML, "{{BACKGROUND}}", bgWrapped, 1)
|
||||
html = strings.Replace(html, "{{LAYOUT}}", string(cfg.Layout), 1)
|
||||
|
||||
var bodyClasses []string
|
||||
if cfg.HideTime {
|
||||
bodyClasses = append(bodyClasses, "hide-time")
|
||||
}
|
||||
if cfg.HideWeather {
|
||||
bodyClasses = append(bodyClasses, "hide-weather")
|
||||
}
|
||||
if cfg.HideZodiac {
|
||||
bodyClasses = append(bodyClasses, "hide-zodiac")
|
||||
}
|
||||
showSec := "false"
|
||||
if cfg.ShowSeconds {
|
||||
showSec = "true"
|
||||
}
|
||||
html = strings.Replace(html, "{{SHOW_SECONDS}}", showSec, 1)
|
||||
if cfg.HideAINews {
|
||||
bodyClasses = append(bodyClasses, "hide-ainews")
|
||||
}
|
||||
if cfg.HideKnowledge {
|
||||
bodyClasses = append(bodyClasses, "hide-knowledge")
|
||||
}
|
||||
if len(bodyClasses) > 0 {
|
||||
cls := strings.Join(bodyClasses, " ")
|
||||
html = strings.Replace(html, `layout-`+string(cfg.Layout), `layout-`+string(cfg.Layout)+" "+cls, 1)
|
||||
}
|
||||
|
||||
// 注入自定义文字
|
||||
if cfg.WallpaperType == WPTheme && cfg.Theme == ThemeText && cfg.WallpaperText != "" {
|
||||
escaped := strings.ReplaceAll(cfg.WallpaperText, `\`, `\\`)
|
||||
@@ -133,3 +163,18 @@ func reloadWallpaper() {
|
||||
go fetchAndPushWeather(city)
|
||||
}()
|
||||
}
|
||||
|
||||
func bingReloadImage() {
|
||||
if wv == nil || wvHwnd == 0 {
|
||||
return
|
||||
}
|
||||
p := getCurrentBingPath()
|
||||
if p == "" {
|
||||
return
|
||||
}
|
||||
src := imageToDataURI(p)
|
||||
if src == "" {
|
||||
return
|
||||
}
|
||||
evalJS(fmt.Sprintf(`var bg=document.querySelector('#bg-layer img'); if(bg) bg.src=%q;`, src))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user