xfangfang / wiliwili

第三方B站客户端,目前可以运行在PC全平台、PSVita、PS4 、Xbox 和 Nintendo Switch上
https://xfangfang.github.io/wiliwili
GNU General Public License v3.0
3.11k stars 145 forks source link

steamdeck端能否加入默认屏幕常亮功能 #186

Open AFKSORRY opened 1 year ago

AFKSORRY commented 1 year ago

steamdeck端播放视频时,几分钟不按任何键后,屏幕就会变暗。请问能否解决这个小问题,谢谢QAQ

xfangfang commented 1 year ago

@AFKSORRY 如果可以找到一个其他的开源的软件可以实现在steamdeck下控制系统锁屏(或者控制不锁屏、不变暗),那我解决起来应该就是一个小问题。如果没有,那就不是小问题。

happytommyl commented 9 months ago

Game Mode下是在/home/deck/.steam/root/config/config.vdf

IdleBacklightDimBatterySeconds IdleBacklightDimACSeconds IdleSuspendBatterySeconds IdleSuspendACSeconds

这几个项目设置的

Desktop Mode下应该可以通过xset设置

xfangfang commented 9 months ago

@happytommyl

Linux的桌面模式已经通过dbus做了支持,steam deck经过测试也是正常的。

steam deck 的游戏模式究竟要怎么做我还不是特别清楚,如果要为steamdeck添加支持,欢迎将代码提交到 borealis,具体的位置在:https://github.com/xfangfang/borealis/blob/f0d33953a0addc252b0a129f6e17c08f16fcaeb3/library/lib/platforms/desktop/desktop_platform.cpp#L608

可以通过 getenv("SteamDeck") 来判断是否是steam deck

mochaaP commented 9 months ago

Possibly related: https://github.com/xfangfang/borealis/issues/36

xfangfang commented 2 months ago

我找到了两种实现的方式,原理都差不多:

  1. 在 wiliwili 内连接到 SteamDeck 的 CEF 调试,调用前端的API
  2. 实现一个 Decky 插件,监听 wiliwili 发出的 D-Bus 请求,调用前端的API

感觉第二种方式受益的群众会广一些,因为其他一些应用在也是发 D-Bus 请求来实现阻止系统熄屏的,这两天腾出空来实现了一下:https://github.com/xfangfang/DeckyInhibitScreenSaver

除了 wiliwili 外还测试了 VLC, Chrome 是支持的,FireFox 不太能支持(他调用的 D-Bus 服务系统提供了 所以不会调用这个插件的服务)

ScreenSaver_b1.zip

解压到 /home/deck/homebrew/plugins 目录下,重启 steam 就行了,或者在插件中打开开发者模式选择压缩包安装等方式。

大家测试没啥问题的话,我就试试传到官方的商店里去。