Compare commits

..
417 Commits
Author SHA1 Message Date
galister d93b74cc8a Release 26.7.1 2026-07-14 22:08:11 +09:00
galister 2def8c3a6d fmt 2026-07-14 18:05:04 +09:00
galister 30d786eaa1 feat: window snap angles 2026-07-14 18:04:36 +09:00
galister 779baaf86c fix stereo mouse on apps 2026-07-14 17:36:01 +09:00
galister 7c7e7edbfb fix some xml inconsistencies 2026-07-14 14:33:58 +09:00
galister b1e09910a2 monado tab order switch 2026-07-14 14:18:44 +09:00
galister 5407e53700 fix checkbox tooltips + fmt 2026-07-14 14:14:10 +09:00
galister e895a61ea0 fix openxr recenter 2026-07-14 14:08:42 +09:00
galister 4ed52f0214 clarify some tutorial instructions 2026-07-14 14:08:35 +09:00
galister fcc84e56b3 custom palettes 2026-07-14 00:30:59 +09:00
galister c74c51f7cd fix tooltips staying after parent is gone 2026-07-13 22:03:40 +09:00
galister acaabead52 refactor components_by_widget_id 2026-07-13 22:03:40 +09:00
galister fd8a327395 palette selector improvements 2026-07-13 22:03:40 +09:00
galister 952b6e10b6 nicer palette selector 2026-07-13 15:08:14 +09:00
galister 245666ab06 translations 2026-07-13 13:56:43 +09:00
galister 227e3851bc tweak onBackgroundVariant on Default 2026-07-13 13:54:00 +09:00
galister 4e9b893304 keycaps theming 2026-07-13 13:48:01 +09:00
galister d311813899 standardize button colors 2026-07-13 13:07:54 +09:00
galister 075a6dd63b dont tint app icons 2026-07-13 11:17:08 +09:00
galister 83b9a1920f openxr: recenter also recenters yaw 2026-07-13 10:41:50 +09:00
galister 635cfef63e do not install SteamVR manifest by default 2026-07-13 10:29:38 +09:00
galister a8262c1de4 fix wrapped text flying around 2026-07-13 10:23:02 +09:00
galister a3e3101ab0 log if appimage 2026-07-13 09:46:46 +09:00
galister 28442ac6a8 bundle xwayland-satellite with appimage 2026-07-13 09:41:10 +09:00
galister d6268c0c20 Merge branch 'main' into wgui_named_colors 2026-07-13 09:02:14 +09:00
galister 5c0ae395a2 app launcher button themes 2026-07-13 04:54:13 +09:00
galister 962ed32452 parent_color attrib to fix app icons 2026-07-13 04:50:22 +09:00
galister f3438b1867 screencast.xml colors 2026-07-13 04:04:14 +09:00
galister e0ab4be8e3 fix use_bg_color label anims 2026-07-13 03:48:14 +09:00
galister c4655b7b9a default secondary 2026-07-13 03:30:17 +09:00
Aleksander c32e3ef86e dash-frontend: fix more colors, wgui: fix possible flicker 2026-07-12 20:23:32 +02:00
galister 2ea3b222f3 use_bg_color for label 2026-07-13 03:21:34 +09:00
Aleksander 6f5be3a157 dash-frontend: tweak apps.xml 2026-07-12 20:07:43 +02:00
Aleksander db436d4630 wgui: tweak default theme a little bit 2026-07-12 20:04:47 +02:00
galister 895e95dcf4 dash sidebar + bottom buttons 2026-07-13 02:49:29 +09:00
galister 0516270dcb check box hover 2026-07-13 02:23:51 +09:00
galister 28a9ed2c27 slider & checkbox & keycaps 2026-07-13 01:52:20 +09:00
galister b1fb0d9347 monado tab + group box title colors 2026-07-13 01:39:41 +09:00
galister 031157ea8c settings tab styles 2026-07-13 01:33:51 +09:00
galister 6a064248dc palette requires restart + suppress fake errors 2026-07-13 00:30:22 +09:00
galister 7ab47ada4b fmt 2026-07-13 00:23:33 +09:00
galister 1febd4ed0d hide some palettes to make them fit 2026-07-13 00:22:38 +09:00
galister f2e2c37108 commented out light themes for now 2026-07-13 00:15:26 +09:00
galister b3e4e37992 child labels+sprites to inherit on-color from button 2026-07-13 00:08:51 +09:00
galister fb71975019 button sticky_color 2026-07-12 22:43:19 +09:00
galister 02f1de59b2 tweaks 2026-07-12 22:20:45 +09:00
galister 40430ea94e switch downloader from hyper to urec 2026-07-12 21:31:48 +09:00
galister 867c343c9b swich tokio to smol 2026-07-12 21:31:48 +09:00
galister 2e7a528857 swich tokio to smol 2026-07-12 21:31:48 +09:00
galister 0a7f8340d7 color tweaks & fmt 2026-07-12 21:27:44 +09:00
Aleksander e79dfcb719 dash-frontend: fix light theme everywhere 2026-07-12 13:23:32 +02:00
galister cb99676230 palette config loading 2026-07-12 19:51:43 +09:00
galister bc0fad60d5 color palette translation 2026-07-12 19:30:51 +09:00
Aleksander 3d2689c931 fix dashboard.xml and home.xml 2026-07-12 12:30:25 +02:00
galister dc58c1a555 wip palette selection & persistence 2026-07-12 19:27:47 +09:00
galister a4ce23881a rework palettes; add a range of wip themes 2026-07-12 19:01:17 +09:00
galister 62c210fc1d no num_enum 2026-07-12 16:58:29 +09:00
Aleksander c3cbc43f6f remove stale wgui docs, fix xmls for wayvr 2026-07-11 18:28:44 +02:00
Aleksander 155340b78d dash-frontend: finish theming, wayvr: refactoring, compilable version 2026-07-11 17:33:01 +02:00
galister d7bd243c41 update deps 2026-07-11 23:21:54 +09:00
galister 3c7e91c28c workspace deps sorting 2026-07-11 23:14:19 +09:00
Aleksander a00f2ab8db wgui: Color palette (wip)
(uidev & dash-frontend compilable)
2026-07-11 16:02:03 +02:00
galister b83c54334f format 2026-07-11 22:34:21 +09:00
galister f3dc87fa64 rework to having non-blocking screen cast prompts 2026-07-11 22:33:22 +09:00
Aleksander 9f854d0649 wgui: fix cosmic text not rendering anything 2026-07-10 17:47:55 +02:00
galister 000bc3c166 chore: update wgui deps 2026-07-10 22:51:01 +09:00
galister 1820e2b152 chore: update cosmic-text 2026-07-10 22:51:01 +09:00
galister a10b20aea9 chore: update taffy 2026-07-10 22:51:01 +09:00
oo8dev 80237d36cd dash-frontend: Application pinning (#565)
* dash-frontend: App pinning (wip)
* App pinning and unpinning, preserve settings (done)
2026-07-07 16:53:55 +02:00
Aleksander cfeef62215 wlx-common: Audio runner on a separate thread 2026-07-07 15:34:57 +02:00
galister 730b546e84 [skip ci] update readme 2026-07-07 03:35:13 +09:00
galister afdf744e81 update packages; release 26.7.0-1 2026-07-06 22:03:14 +09:00
galister 4f0250671e Release 26.7.0 2026-07-06 20:11:19 +09:00
galister 17dcc8e0cb kindly ask apps to use wayland 2026-07-06 00:53:03 +09:00
galister 3f071a530c fixed hang when dragging some apps *cough* chromium 2026-07-05 23:36:13 +09:00
galister df1cf668a0 resize lerp 2026-07-05 23:24:52 +09:00
galister 4cf84e19f0 make virtual display square 2026-07-05 23:03:13 +09:00
galister ab578b8e35 dont show edit mode overlay while resizing 2026-07-05 22:56:01 +09:00
galister 5dd7339b61 translations & fmt 2026-07-05 22:17:48 +09:00
galister 21749e22ed done: grabbable resize corner 2026-07-05 22:11:32 +09:00
galister 4f76a4abfb wip: grabbable resize corner 2026-07-05 20:02:36 +09:00
galister 137570f548 add setting for default overlay size 2026-07-05 18:28:50 +09:00
galister b2037feacf wvr_server: scale windows based on resolution 2026-07-05 18:14:33 +09:00
galister 2d820f1d1b wayvrctl handsfree controls 2026-07-05 15:49:37 +09:00
galister 1f79f231c0 --wait argument 2026-07-05 14:21:13 +09:00
galister 88493e3ada wvr_server: simplify wl-surface mouse interactions 2026-07-05 14:01:45 +09:00
galister 054d1fd9f4 spawned overlays to not inherit parent scale 2026-07-05 04:37:54 +09:00
galister a9c6599d63 smarter overlay spawning 2026-07-05 04:14:07 +09:00
galister 1cbae4c3ad refactor overlay spawning 2026-07-05 03:45:29 +09:00
galister e378749619 wvr_server: constrain popups to output bounds 2026-07-05 02:39:57 +09:00
galister ea6a6dc6e7 wvr_server: popup input to respect surface tree 2026-07-05 02:24:57 +09:00
galister c6117d99de wvr_server: fix scrolling in some esoteric apps 2026-07-05 02:15:48 +09:00
galister ac93d3176c wvr_server: render popups as surface tree 2026-07-05 01:43:06 +09:00
galister 0abebddffe wvr_server: fix mouse cursor not rendering on the very top layer 2026-07-05 01:39:15 +09:00
galister dbda3de755 wvr_server: wheel to support both discrete and smooth 2026-07-05 01:20:15 +09:00
galister 82af4671f0 wvr_server: tweak wheel values & cleanup 2026-07-05 00:40:04 +09:00
galister e38dec41be wvr_server: surface-aware mouse wheel handling 2026-07-05 00:24:51 +09:00
galister 7c0c699b9a wvr_server: actually set DISPLAY for xwayland support 2026-07-04 23:13:04 +09:00
galister ba29dc5c17 wvr_server: xwayland-satellite integration 2026-07-04 22:33:33 +09:00
galister 6697935ac2 wvr_server: only send Activated when size is known 2026-07-04 21:56:44 +09:00
galister b45c8656bc wvr_server: actually create ViewporterState 2026-07-04 21:52:54 +09:00
galister 8f09a13917 fix xdg-decoration + add wl-viewporter 2026-07-04 21:34:53 +09:00
galister ee82b4ab93 wvr_server: fix mouse input on subsurfaces 2026-07-04 21:34:32 +09:00
galister 82a8e801c2 wvr_server: drain redraw requests 2026-07-04 21:04:20 +09:00
galister 074787d18e wvr_server: actually use dmabuf cache 2026-07-04 20:48:38 +09:00
galister de9805f1e4 wvr_server: SHM importer to respect stride 2026-07-04 20:47:01 +09:00
galister 0e69eec769 subsurfaces use srgb 2026-07-04 20:44:26 +09:00
galister 8b873060b7 cleanup 2026-07-04 20:05:28 +09:00
galister 59bda287ba wvr_server: context menu graphics fix 2026-07-04 20:04:36 +09:00
galister 9b3f315ff1 wvr_server: context menu mouse fixes 2026-07-04 19:39:43 +09:00
galister f0f3402650 wvr_server: rework popup mouse handling 2026-07-04 19:39:43 +09:00
galister 052253f7f4 wvr_server: callbacks after render, force render cases 2026-07-04 19:39:43 +09:00
galister c98791aeb7 wvr_server: output enter & leave for xdg-toplevel 2026-07-04 19:39:43 +09:00
galister 0cea27c066 wvr_server: release dma buffer after next buffer is loaded 2026-07-04 19:39:43 +09:00
galister 8fa29c0e28 wvr_server: dont release dma buffer 2026-07-04 19:39:43 +09:00
galister e16cc7b077 wvr_server: send configure for xdg-decoration 2026-07-04 19:39:43 +09:00
Aleksander 6aba32ae05 Merge branch 'wgui_tooltip_fixes' 2026-07-03 22:12:45 +02:00
Aleksander b8ae840ca4 wgui: fix label wrap code, correct position of out-of-bounds tooltips 2026-07-03 21:52:10 +02:00
galister 3e6fc12f40 update --show doc 2026-07-04 03:50:24 +09:00
Aleksander 1fb2b9ccf2 wgui: bugfix: always recompute layout before refreshing the component
This allows us to get computed widget boundaries inasted of bogus values
2026-07-03 20:50:09 +02:00
galister 3a6b1a2d00 fix ci 2026-07-04 03:49:51 +09:00
galister 28e164d843 cargo fmt 2026-07-04 03:49:51 +09:00
galister 3e8b2ace93 app.tick() + whisper auto-unload 2026-07-04 03:49:51 +09:00
Aleksander 6f8afea588 whisper: host the models inside wayvr.org 2026-07-04 03:49:51 +09:00
galister 2979469a5e whisper enter key 2026-07-04 03:49:51 +09:00
galister b3594e1afb update translations (dash) 2026-07-04 03:49:51 +09:00
galister ed5b005ca6 update translations 2026-07-04 03:49:51 +09:00
galister 8baac0d298 translator: allow specifying llama url 2026-07-04 03:49:51 +09:00
galister 6dd624e046 whisper working 2026-07-04 03:49:51 +09:00
galister dd9838f5ff whisper ui tweaks + osc send 2026-07-04 03:49:51 +09:00
galister 885ee55722 whisper transcription working 2026-07-04 03:49:51 +09:00
galister 37a161c489 only display whisper settings if built with feature 2026-07-04 03:49:51 +09:00
galister 893df87dec whisper to use rodio 2026-07-04 03:49:51 +09:00
galister d6713176c6 whisper ui 2026-07-04 03:49:51 +09:00
galister 6000986d14 file_downloader to handle redirects 2026-07-04 03:49:51 +09:00
galister 1b8c800de5 wip: whisper stt #2 2026-07-04 03:49:51 +09:00
galister 21a0504601 wip: whisper stt 2026-07-04 03:49:51 +09:00
galister 23f1f32d00 fix ci 2026-07-04 03:38:42 +09:00
galister e3ecef9a65 cargo fmt 2026-07-04 03:24:04 +09:00
galister 00a9dd2b2f app.tick() + whisper auto-unload 2026-07-04 03:20:16 +09:00
Aleksander 90f8ecafe5 whisper: host the models inside wayvr.org 2026-07-03 19:44:29 +02:00
galister 3515b15a71 whisper enter key 2026-07-04 02:02:40 +09:00
galister 77eb7e926e do not show tutorial if started with --show 2026-07-04 01:50:31 +09:00
galister 60e98810d9 update translations (dash) 2026-07-04 01:44:22 +09:00
galister 334e741d19 update translations 2026-07-04 01:36:34 +09:00
galister 843240791f translator: allow specifying llama url 2026-07-04 01:36:25 +09:00
galister 8e84e93293 whisper working 2026-07-04 00:52:25 +09:00
galister a54d1a02bb whisper ui tweaks + osc send 2026-07-04 00:52:25 +09:00
galister 341ee333dc whisper transcription working 2026-07-04 00:52:25 +09:00
galister e032363501 only display whisper settings if built with feature 2026-07-04 00:52:25 +09:00
galister 5ec1866613 whisper to use rodio 2026-07-04 00:52:25 +09:00
galister 6f7bad9bd5 whisper ui 2026-07-04 00:52:25 +09:00
galister a13e393f4c file_downloader to handle redirects 2026-07-04 00:52:25 +09:00
galister 0b2c3052f6 wip: whisper stt #2 2026-07-04 00:52:25 +09:00
galister 4fa811d8be wip: whisper stt 2026-07-04 00:52:25 +09:00
galister 3fe47baa2e fix overlay scale controls 2026-07-04 00:52:12 +09:00
oo8dev ad537c9d92 Merge pull request #558 from wayvr-org/feat/welcome2
Welcome screen continued
2026-07-02 21:29:28 +02:00
Aleksander a92b40afad dash-frontend: update thank you
[skip ci]
2026-07-02 21:28:11 +02:00
Aleksander 61cef3aa79 dash-frontend: add wayvr.org button 2026-07-02 21:16:38 +02:00
Aleksander 4432c3d50f dash-frontend: update donation screen, add avatars 2026-07-02 21:11:55 +02:00
galister 57ae20e67b cargo fmt 2026-07-03 03:50:50 +09:00
Aleksander c6bfcf8b17 dash-frontend: Remove "Show welcome screen" button in the troubleshooting tab 2026-07-02 20:50:13 +02:00
Aleksander c949b20ba1 dash-frontend: fix page 0 elements overflowing 2026-07-02 20:43:52 +02:00
galister d40e0cdb00 fix tutorial_graduated not saving 2026-07-03 03:41:48 +09:00
Aleksander 4140534548 dash-frontend: "Finish tutorial" button, machine-translate strings 2026-07-02 20:07:08 +02:00
galister db960212b6 openxr: playspace reset uses last fix_floor 2026-07-03 02:52:23 +09:00
Aleksander bb43da3b08 dash-frontend: clickable links 2026-07-02 19:47:24 +02:00
Aleksander c3f762a0f3 dash-frontend: Donation screen, translation keys for welcome screen 2026-07-02 19:25:20 +02:00
galister 6090be3d9c dashboard welcome mode 2026-07-03 02:12:40 +09:00
galister 4daff7300f fix scale drift when using align_to_hmd 2026-07-03 00:32:56 +09:00
galister ba8dbc9c14 grab help sprites are color_text 2026-07-03 00:32:43 +09:00
galister 3799ae6629 missing string 2026-07-02 22:41:58 +09:00
Aleksander 2523618522 Machine-translate strings
[skip ci]
2026-07-02 14:35:24 +02:00
galister 6563bbd7de more intuitive bindings order 2026-07-02 20:14:59 +09:00
galister a0c33bc744 fix thresholds being backwards 2026-07-02 20:05:50 +09:00
galister c77e465343 fix CI 2026-07-02 19:58:43 +09:00
galister e2e4ff95c0 cargo fmt 2026-07-02 19:48:08 +09:00
Aleksander e166d46806 Rebase main: integrate wgui changes with the new bindings ui 2026-07-02 19:46:58 +09:00
Aleksander 169fa0d32a dash-frontend: Welcome screen: Add "You're all set" 2026-07-02 19:46:58 +09:00
Aleksander 741ffee62e dash-frontend: Welcome screen: Add center marker video 2026-07-02 19:46:58 +09:00
Aleksander 951dbbd87f dash-frontend: Welcome screen: Improve UX 2026-07-02 19:46:58 +09:00
Aleksander 1742d5f589 wgui: <Video> support [Squash]
commit da9ad32fe4cc80fb5fa3aaa0590a92f297c0d0a2
Author: Aleksander <aleksander@oo8.dev>
Date:   Sat Jun 6 14:44:15 2026 +0200

    wgui: video: variable speed control

commit 683b1115bac91748a84862327cf30d48a8a57258
Author: Aleksander <aleksander@oo8.dev>
Date:   Fri Jun 5 18:44:45 2026 +0200

    wgui: video: framerate control, `looping` parameter in <Video>

commit ddf99d0b43b7caf21f6dd49256feed3055f3f27b
Author: Aleksander <aleksander@oo8.dev>
Date:   Fri Jun 5 12:19:44 2026 +0200

    do not break toml 1.0 syntax compatibility

commit 69803ec6cd1bb1952c672e53556e3d3a875a77ba
Author: Aleksander <aleksander@oo8.dev>
Date:   Fri Jun 5 12:08:25 2026 +0200

    wgui: dav1d video playback works

commit 5c929c4feeba8c3d01bf783dac951cff9760b916
Author: Aleksander <aleksander@oo8.dev>
Date:   Thu Jun 4 23:09:30 2026 +0200

    wgui: use dav1d (wip)

commit 3c2ac4b5f1d84fad439c49f3324c53737244c748
Author: Aleksander <aleksander@oo8.dev>
Date:   Thu Jun 4 21:34:44 2026 +0200

    wgui: <Video> tag (wip), Duck IVF parser (video container), add `video` feature
2026-07-02 19:46:58 +09:00
Aleksander 698ff86c14 update translations, use llama.cpp-compatible API instead of ollama, use gemma4 for translations 2026-07-02 19:16:22 +09:00
Aleksander 0d0b5b8633 wgui: use TemplateParams struct 2026-07-02 19:16:22 +09:00
Aleksander 1a11b475ae Welcome screen basics 2026-07-02 19:16:22 +09:00
galister a9986e6b67 EXT_dpad_binding bindings, odyssey ext 2026-07-02 19:09:22 +09:00
galister 34bd920f3b add setting for input provider 2026-07-02 17:36:36 +09:00
galister 07b7d89be6 dont show thresholds for scroll 2026-07-02 17:00:41 +09:00
galister e93bbdba7b add steam frame default bindings 2026-07-02 17:00:41 +09:00
galister b074983a70 fix warning 2026-07-02 17:00:41 +09:00
galister 3f858e5e2f fix weird range slider behavior 2026-07-02 17:00:41 +09:00
galister a3b1fdcd0d move bindings const to wlx-common, cleanups 2026-07-02 17:00:41 +09:00
galister b906bc6656 per-action thresholds 2026-07-02 17:00:41 +09:00
galister 638af5a608 change default threshold 2026-07-02 17:00:41 +09:00
galister ba598ee77f update default profiles 2026-07-02 17:00:41 +09:00
galister 374f85ee81 controller profiles in rust instead of json 2026-07-02 17:00:41 +09:00
galister 5e316fe0d3 ensure pose & haptics for bindings 2026-07-02 17:00:41 +09:00
galister 025c6a0998 ui for thresholds 2026-07-02 17:00:41 +09:00
galister 8a8c41bd9e clean up some bindings ui code 2026-07-02 17:00:41 +09:00
Aleksander 4edc6053ce dash-frontend: Bindings view UX improvements 2026-07-02 17:00:41 +09:00
Aleksander 0962f4c015 wgui: make context menus unfold from the bottom if the mouse position is at the lower half of the screen 2026-07-02 17:00:41 +09:00
galister d4a64d6490 remove khr simple controller 2026-07-02 17:00:41 +09:00
Aleksander e7a9df17cf Improve "Change input bindings" page a little bit 2026-07-02 17:00:41 +09:00
galister 65fd75eb4a remove some profiles, skip saving none values 2026-07-02 17:00:41 +09:00
galister f3bb2e070b wip: bindings ui 2026-07-02 17:00:41 +09:00
galister 5014cda64a watch sprites to all have color_text 2026-07-02 04:23:29 +09:00
galister 6a24399a9c persist static overlays in world space 2026-06-30 22:14:42 +09:00
galister 42a7175b7f persist global overlays 2026-06-30 22:14:42 +09:00
SparkyTD 28da0347ae Implement zwlr_virtual_pointer_v1 and zwp_virtual_keyboard_v1 for better pointer and keyboard support on monitor overlays (#539)
* Refactor HID subsystem to support zwlr_virtual_pointer_v1/zwp_virtual_keyboard_v1, and only use uinput as a fallback

* Add keymap support to HID providers and refactor related functionality

* Replace `expect` with `context` for improved error handling in wl_virtual.rs

* Run `cargo fmt`

* Replace hard panic with Err on failed seat binding
2026-06-30 22:13:59 +09:00
galister da394ec2c7 when exiting edit mode, pin watch before saving state 2026-06-29 13:10:19 +09:00
galister 3c8f878ede add keyboard button to reload keymap (#548) 2026-06-28 12:33:49 +09:00
at://matrixfurry.com 5723c3c1df readme: add Homebrew installation method (#545) 2026-06-21 12:50:27 +09:00
Hiina 37896620eb wlx-capture: avoid busy loop waiting for screencopy events (#537)
* wlx-capture: avoid busy loop waiting for screencopy events

* wlx-capture: block while waiting for screencopy events
2026-06-09 17:52:31 +09:00
galister 6dc76c881f update deps 2026-06-03 18:25:47 +09:00
galister 4b78e39af7 glyph upload fixes (#531)
* remove unused pass cache, cache imageviews instead

* glyph upload batching

* image upload batching (wip)
2026-06-03 17:29:31 +09:00
oo8dev 7f97dc884f wayvr: Space gravity (#520)
* wayvr: Space gravity (wip)

* dash-frontend: dedicated "Space drag" settings tab, deduplicate overlay shift code in xr&vr, account for gravity shift for static overlays

* space reset & gravity conflict bugfix, add ground friction slider

* Space gravity UI improvements

* space gravity: floor level

* wayvr: space gravity: hide in openvr
2026-06-03 09:51:22 +02:00
art0007i 9806027e19 add watch toggle setting (#526)
* add watch toggle setting

* previous commit broke monado workaround, this fixes it

* use active_state to toggle watch

* use the other monado workaround

* fix whitespace

* cargo fmt
2026-06-03 16:22:09 +09:00
Hiina 066f033a91 fix: preserve screencopy transforms for rotated outputs (#530) 2026-06-03 15:55:50 +09:00
galister 1591466a8d fix some supported settings getting hidden 2026-05-17 18:02:47 +09:00
galister 901c18520e hide unsupported settings depending on backend 2026-05-17 12:46:54 +09:00
Sapphire e39085aa2b openvr: Hide lasers and unblock input when dashboard is open 2026-05-17 12:10:44 +09:00
Sapphire 48d58f61d2 openvr: Hide devices without battery status from battery panel 2026-05-17 12:10:44 +09:00
galister 8691cf99d2 clippy + fmt 2026-05-13 16:39:15 +09:00
galister 80bfb177be range sliders in settings 2026-05-13 16:38:15 +09:00
Aleksander 20743f91eb clippy 2026-05-12 21:59:54 +02:00
Aleksander 5cf7b986f3 wayvr: Remember skymap texture across restarts 2026-05-12 21:39:04 +02:00
Aleksander 3d71746ff2 dash-frontend: watch_view_angle setting (Closes #505), re-format language files 2026-05-12 21:21:04 +02:00
Snemby c7b16c5713 fix space rotate
the change in rotation is computed in the untransformed stage space. To produce the correct rotation change the quaternion needs to be rotated using the space offset
2026-05-13 00:59:27 +09:00
galister ed1d708802 mnd playspace: fetch offset on drag/rotate start 2026-05-12 22:58:42 +09:00
steve hocktailandgalister 557a0775c3 add a toast for uinput errors (#494)
* add a toast for uinput errors

this makes it more obvious if missing uinput permissions are the reason your keyboard and mouse aren't working.

* uinput toaster part 2: the cargo formattening

* increase uinput error toast's timeout to 30 seconds

---------

Co-authored-by: galister <22305755+galister@users.noreply.github.com>
2026-05-12 22:53:14 +09:00
galister 2309f89701 update issue template 2026-05-12 17:11:15 +09:00
oo8dev cdd658d4ea wayvr: IPC: Fix dangling fds (#513) 2026-05-07 22:06:54 +02:00
Aleksander ec2e0501c1 wayvr: skip unsupported config files (Closes #510) 2026-05-03 19:35:49 +02:00
Aleksander f30c650bba wgui: add EventResult::ConsumedExclusive for Slider components
This prevents us from accidentally swipe-scrolling the content if the user tries to change a slider value.
2026-05-03 19:13:45 +02:00
Aleksander 45af52ddf9 wgui: Range sliders, fix swipe scrolling <-> slider conflict 2026-05-03 18:54:31 +02:00
galister 10b14794ed update to upstream pipewire-rs (#508)
* update to upstream pipewire-rs

* CI to use 24.04 without no pipewire ppa

* fix build without openxr feature
2026-05-03 14:36:49 +09:00
oo8dev 6b81f07cc8 wgui: Swipe kinetic scrolling support (#504)
* wgui: use DeviceBitmask instead of usize

* wgui: Swipe logic works (wip)

* wgui: Kinetic scrolling, rubberband effect
2026-05-02 19:21:30 +02:00
galister 9734955ebb dont show skymap tab if not openxr 2026-04-23 19:58:02 +09:00
galister dd3108d423 new built-in sky shader 2026-04-23 19:14:05 +09:00
galister bf7276b2dd skybox downloader: apply button for downloaded skymaps 2026-04-23 19:14:05 +09:00
galister 90c4567505 shuffle some options around 2026-04-23 19:14:03 +09:00
galister 6cddb43b0f default skybox is shader skybox 2026-04-23 19:12:32 +09:00
Aleksander f3732c7087 wayvr: improve grid shader, dash-frontend: make pop-up title non-scrollable 2026-04-22 20:22:45 +02:00
Aleksander 07bd841bc6 dash-frontend: skymap browser ui improvements, wayvr: fix context menus not working 2026-04-22 19:03:47 +02:00
galister 9986b71b26 skybox selector 2026-04-22 19:09:26 +09:00
galister 16446f7808 Merge remote-tracking branch 'origin/feat-skybox-catalog' 2026-04-22 18:24:12 +09:00
galister 5615186654 revert: feat: swipe to type (#451) 2026-04-22 17:43:38 +09:00
galister 244822ffb3 add --no-autostart arg 2026-04-22 17:36:04 +09:00
galister 266b0fd507 reconfigure_environment_blend to handle chroma + skybox + alpha 2026-04-17 14:44:25 +09:00
Aleksander 0d8937ff80 dash-frontend: Dialog boxes, Skymap removal dialog, Skymap resolution selector dialog 2026-04-17 12:10:18 +09:00
Aleksander c59e195d94 dash-frontend: Re-work skymap list, show downloaded resolution pips 2026-04-17 12:10:18 +09:00
galister 994dffc4fb png → dds 2026-04-17 12:10:18 +09:00
Aleksander 701e41296b dash-frontend: Remote skymap downloader finished and fully working 2026-04-17 12:10:18 +09:00
Aleksander b0dba25f36 dash-frontend: File saving, close callbacks 2026-04-17 12:10:18 +09:00
Aleksander 1bee41aea9 dash-frontend: http_client: Progress callback, display download status 2026-04-17 12:10:18 +09:00
Aleksander 2035d9ba76 dash-frontend: ViewTrait, refactoring, download_file::View (wip) 2026-04-17 12:10:18 +09:00
Aleksander 24e3099b7b dash-frontend: remove dangling popups immediately 2026-04-17 12:10:18 +09:00
Aleksander aee5bf69da wgui: Simplify Popup usage 2026-04-17 12:10:18 +09:00
Aleksander 62881c08b3 rebase changes from feat/chroma-key 2026-04-17 12:10:18 +09:00
Aleksander 0c87d47ce6 wgui: Simplify usage and code, no more start_common(), Layout processes alterables 2026-04-17 12:10:18 +09:00
Aleksander 47bb5ab7a2 dash-frontend: skymap downloader dialog 2026-04-17 12:10:18 +09:00
Aleksander e5e798b599 dash-frontend: rename download_skymaps -> remote_skymap_list 2026-04-17 12:10:18 +09:00
Aleksander 68daa5b3df dash-frontend: skymap preview fetch (done), reformat Cargo.toml files 2026-04-17 12:10:18 +09:00
Aleksander f2dcdcc6c3 dash-frontend: list skymaps from the server (wip), loading spinner, wgui: animation bugfix 2026-04-17 12:10:18 +09:00
Aleksander a3460fbe70 dash-frontend: use SettingsTab trait for each settings tab 2026-04-17 12:10:18 +09:00
Aleksander 7f822b6787 dash-frontend: Skymap catalog fetch 2026-04-17 12:10:18 +09:00
Aleksander 1d8b22d992 dash-frontend: "Skybox" tab 2026-04-17 12:10:18 +09:00
galister 1238808d87 fix chroma_key_params not saving 2026-04-14 12:32:54 +09:00
Aleksander 26f5be36b6 dash-frontend: Chroma key settings 2026-04-11 13:48:49 +02:00
Aleksander 0c1b0906c1 wgui: Add ColorSelector component 2026-04-11 00:22:24 +02:00
galister 5eb258e310 update libmonado-rs & oxr chroma key 2026-04-10 20:01:39 +09:00
galister bec00c6f48 fmt 2026-04-10 14:47:36 +09:00
Diamond White db1675d399 feat: swipe to type (#451)
* start to integrate swipetype with keyboardstate

* successful debug implementation

* change to git dependency

* add manual trigger to app image build to test

* use latest swipeType lib to test including binaries

* use clipboard to paste swipe output

* use new prediction engine, move swipe type related logic to its own module

* update appimage bulid to support building ort runtime

* implement swipe selection ui in keyboard overlay

* only add motion data for the device that started the swipe

* process swipes on separate thread to not block ui

* add toggle to settings.rs

* default swipe to type config to false

* remove println, minor fix

* use correct key_dimensions

* use latest swipe_type library version

* optionally use wayvr compositor clipboard when pasting

* remove unused imports

* fix typo in log::error

* fix within key positioning

* run swipes on AltGr keycaps
2026-04-10 14:46:22 +09:00
Aleksander 18f99b5daf dash-frontend: settings: use generics instead of macros, separate each settings tab by a separate file 2026-04-03 00:11:26 +02:00
oo8dev 543f157895 Merge pull request #445 from wayvr-org/feat-monado-timings
feat: Monado debug timings graph
2026-04-02 17:57:46 +02:00
Aleksander 8ad31cfa28 Add feat-monado-timings build feature 2026-04-02 17:43:26 +02:00
Aleksander 80277e0c12 ParserState: add realize_template, fix sliders not being updated 2026-04-02 17:43:26 +02:00
Aleksander 0a4fc34fac dash-interface: fetch client IDs, toggle filter 2026-04-02 17:43:10 +02:00
Aleksander e035fb9d27 separate debug graphs by session ID, selectable session ID list 2026-04-02 17:43:10 +02:00
Aleksander 97fcde1a3b rebase 2026-04-02 17:43:10 +02:00
Aleksander c16c403966 display debug graphs 2026-04-02 17:43:10 +02:00
Aleksander d5148e2107 wgui: ComponentBarGraph, WidgetCustomDraw 2026-04-02 17:43:10 +02:00
Aleksander 0f6f344c97 protobuf parser, read metrics, move async executor to wlx_common 2026-04-02 17:43:10 +02:00
Aleksander 41c6f43a3c dash-frontend: Monado runtime: Tabs, add stub DebugTimings tab 2026-04-02 17:42:38 +02:00
Aleksander f44c4b78bc cargo clippy 2026-03-31 22:15:14 +02:00
Aleksander 5420efa4d3 wayvr: Fix default locale fallback not working properly (regression caused by PR #411) 2026-03-31 21:02:44 +02:00
Aleksander 89f43b95ef Update FUNDING.yml
[skip ci]
2026-03-28 16:57:40 +01:00
founta 00bc179655 Add space reset to openvr actions (#475)
* Add space reset to openvr actions

* remove additional reset state storage
2026-03-28 14:44:14 +09:00
oo8dev a4115f5e4b Merge pull request #478 from wayvr-org/move-doc
docs: move out docs to a separate repo/website, fix typos
2026-03-25 18:39:59 +00:00
Aleksander 6c896bb956 fix typo 2026-03-25 19:39:20 +01:00
galister d9c8689c18 docs move: continuation
Updated links and references to the new GitHub organization.
2026-03-26 03:33:45 +09:00
Aleksander 5df6ce93f8 docs: move out docs to a separate repo/website, fix typos
[skip ci]
2026-03-24 00:19:27 +01:00
Earthgames ee4bb5ca29 Allow the checkbox to be themed (#462) 2026-03-23 12:24:16 +09:00
hare_ware b89ae4726c Revert "fix bindings for wmr controllers"
This reverts commit 285f6db134.
2026-03-23 12:23:01 +09:00
galister b0bbc25083 dont die if autostart app cant be started 2026-03-20 12:48:52 +09:00
Craig McLure 635df298fe Updated the pipewire reference in Cargo.lock 2026-03-18 22:22:00 +09:00
galister 786847cc2f update pipewire-rs to fix build on arch 2026-03-18 12:31:42 +09:00
Aleksander d9f89faf33 wayvr: "Fix floor" countdown timer and sound
- 5-second timeout sound with countdown timer
- sort locale JSON
- modify toast lerp amount
2026-03-16 13:47:51 +09:00
galister 769978560e oops 2026-03-16 13:46:23 +09:00
galister bebc39e766 dbus notify timeout is ms 2026-03-16 13:38:10 +09:00
oo8dev bb15a4e867 Merge pull request #466 from wlx-team/toast-mp3-update
update toast.mp3 sound
2026-03-14 12:23:30 +00:00
Aleksander 84015c7972 update toast.mp3 sound
[skip ci]
2026-03-14 13:20:48 +01:00
galister f2c34fba8f sticky modifier keys explanation in README 2026-03-11 10:44:01 +09:00
Earthgames 1a74eb1507 Use a more common name 2026-03-08 01:18:35 +09:00
Earthgames 6b3f8a7b42 Only convert locale one time 2026-03-08 01:18:35 +09:00
Earthgames ad78fdab24 Hack in full lang codes
Add British
2026-03-08 01:18:35 +09:00
Earthgames 12ceebec6d Used locale in chrono 2026-03-08 01:18:35 +09:00
Earthgames 6f9ca5b3b7 Added documentation for default colors 2026-03-06 12:23:50 +09:00
oo8dev c54b211872 Merge pull request #460 from wlx-team/defaults-globals-refactor
wgui: separate globals from themes
2026-03-05 21:55:46 +00:00
Aleksander cb899235b4 wgui: separate globals and themes 2026-03-05 19:28:42 +01:00
Aleksander a83af3d833 translations 2026-03-05 12:42:04 +01:00
galister e8c8a67fc0 add wiki links to readme 2026-03-03 02:52:51 +09:00
Earthgames 2b4a0b6a0d Changed old link to the new one 2026-03-01 13:53:49 +09:00
galister 5ffa5e59bf skybox cleanups 2026-02-28 13:33:54 +09:00
galister ed8ca1e068 fix copy-paste fail causing stuck images 2026-02-28 13:33:27 +09:00
galister f21776b123 box CompositionLayerColorScaleBiasKHR 2026-02-28 13:10:02 +09:00
Torge Matthies ab3f873a38 fix grid opacity not updating live 2026-02-27 12:30:27 +09:00
oo8dev de6047107e Merge pull request #450 from openglfreak/feat-grid-opacity
add option for grid opacity
2026-02-25 21:14:11 +01:00
Torge Matthies 39152b8548 add option for grid opacity 2026-02-25 20:59:17 +01:00
Kresny b517afc379 Rebind toggle_dashboard and show_hide (#449) 2026-02-25 14:58:30 +09:00
oo8dev b84d565b1e Merge pull request #443 from wlx-team/feat-editbox
Editbox, wgui fixes, doc
2026-02-21 12:23:49 +01:00
Sapphire 46f3a54203 don't block inputs for headless sessions 2026-02-21 14:13:31 +09:00
Sapphire 4afaa6d048 reduce indentations in block_inputs 2026-02-21 14:13:31 +09:00
Sapphire 26f078d512 unblock inputs on exit 2026-02-21 14:13:31 +09:00
Aleksander 124d817752 fix logic bug in push_scissor_stack 2026-02-16 20:33:43 +01:00
Aleksander 2ddb419676 editbox keyboard input, scrollbars fix (scissoring broken atm), clippy 2026-02-14 22:20:51 +01:00
Aleksander 841241a7e6 wgui: Editbox basics, component focus, minor refactoring 2026-02-14 19:24:36 +01:00
Aleksander c902f0cd44 wgui: widgets.md: document tabs 2026-02-14 19:24:36 +01:00
Aleksander 756c42609d use SlotMap 2026-02-14 16:04:36 +01:00
Aleksander 4fc439abe2 uidev: fix color formats
Current implementation picks up the first available color format, which could be HDR (A2R10G10B10_UNORM_PACK32 in my case), but we don't have any color profiles. Stick back to SDR-only instead.
2026-02-14 10:18:41 +01:00
oo8dev 9685576272 Merge pull request #438 from wlx-team/feat-language-selector
Settings: Language selector, "Requires restart" info
2026-02-13 08:33:32 +01:00
galister d2f01c06ec Add Open Collective link 2026-02-13 13:29:53 +09:00
Aleksander 94c36076af Language selector and "requires restart" info 2026-02-12 20:53:06 +01:00
galister a4134030fe Release 26.2.1 2026-02-11 02:58:18 +09:00
Aleksander ebacbf175a Update lang
[skip ci]
2026-02-10 17:59:27 +01:00
Sefa Eyeoglu 6c987b4492 Add Nix package to README (#432)
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2026-02-10 21:29:01 +09:00
SpookySkeletons 8acb2236bd fix: delete hand bindings from openxr_actions.json5 (#429)
* fix: delete hand bindings from openxr_actions.json5

Presumably fixes handtracking causing laser offsets to tear off of controllers when hands switch to and from handtrack.

* Comment out fallback controller
2026-02-10 17:20:35 +09:00
Sapphire 5dae6f8387 fix openxr aspect ratio calculation (#430) 2026-02-10 17:20:07 +09:00
Sapphire 5ab242f8e0 fix size of set buttons (#431) 2026-02-10 17:19:51 +09:00
galister fcbb5fab73 update workflow for vendor tarball 2026-02-09 02:38:16 +09:00
galister f9a57e58bb Release 26.2.0 2026-02-09 02:34:31 +09:00
Sapphire d713302d0d add option to block poses when using keyboard (OpenXR only) 2026-02-08 01:13:56 +09:00
Sapphire d398e6fb5a update libmonado and use better input blocking when available 2026-02-08 01:13:56 +09:00
Sapphire 903a6b351c allow hotswitch between 12h and 24h clock for keyboard (#426) 2026-02-07 10:21:47 +09:00
galister b3e09b330f screen.frag: force alpha to 1.0 2026-02-06 10:56:33 +09:00
dependabot[bot] c63089b944 Bump time from 0.3.44 to 0.3.47
Bumps [time](https://github.com/time-rs/time) from 0.3.44 to 0.3.47.
- [Release notes](https://github.com/time-rs/time/releases)
- [Changelog](https://github.com/time-rs/time/blob/main/CHANGELOG.md)
- [Commits](https://github.com/time-rs/time/compare/v0.3.44...v0.3.47)

---
updated-dependencies:
- dependency-name: time
  dependency-version: 0.3.47
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-06 09:55:25 +09:00
Sapphire ca770c1c05 disable grabbing for watch in default state
watch should only be grabbable in edit mode
2026-02-06 09:54:52 +09:00
galister ac65bca05a only write non-default attributes to state 2026-02-05 11:55:03 +09:00
Sapphire e61fd66210 remove libmonado active client workaround 2026-02-05 10:25:27 +09:00
Sapphire 1dc7d4340c better filtering for monado app switcher 2026-02-05 10:25:27 +09:00
galister a22bb2bf1a KHR_composition_layer_color_scale_bias instead of raster alpha (#407) 2026-02-04 09:39:57 +09:00
dependabot[bot] e1c72fa446 Bump bytes from 1.11.0 to 1.11.1 (#419)
Bumps [bytes](https://github.com/tokio-rs/bytes) from 1.11.0 to 1.11.1.
- [Release notes](https://github.com/tokio-rs/bytes/releases)
- [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tokio-rs/bytes/compare/v1.11.0...v1.11.1)

---
updated-dependencies:
- dependency-name: bytes
  dependency-version: 1.11.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-04 09:39:21 +09:00
galister 676a96b2cd fix KeySymbol font size 2026-02-02 12:56:20 +09:00
oo8dev 4821123c73 Merge pull request #417 from wlx-team/staging
dash-frontend: UX improvements
2026-01-28 10:47:37 +01:00
galister 32c8b7ae62 uidev: query surface format + color space from gpu 2026-01-28 11:25:18 +09:00
Aleksander d97bbfc796 dash-frontend: games: pagination 2026-01-27 19:49:27 +01:00
Aleksander 19083cfd83 dash-frontend: Top panel title 2026-01-27 19:49:27 +01:00
oo8dev 2c60196ead Merge pull request #416 from wlx-team/staging
wgui: perf: Scissor render culling
2026-01-27 17:53:26 +01:00
Aleksander b17de39ef0 wgui: perf: scissor render culling
Greatly increases rendering performance and minimizes drawcall count for large lists.
2026-01-27 00:36:23 +01:00
ZokuTe 46e54db969 Fix: Refine locale matching logic to support region-specific tags (#411)
* wgui(i18n): Fix language matching logic

* wgui(i18n): Fix locale prefix match
2026-01-25 03:22:59 +00:00
galister 554029aacf fix dropdowns being stuck open; multi button events 2026-01-25 12:21:57 +09:00
galister a5146e0396 fix color bias behavior 2026-01-25 11:44:42 +09:00
galister 6960652379 reset playspace button in settings 2026-01-25 11:44:17 +09:00
galister 3ec1dd7f4e mouse-motion-only handsfree modes 2026-01-25 11:43:44 +09:00
oo8dev 157c88127f Merge pull request #412 from wlx-team/staging
Update ovr_overlay
2026-01-24 15:24:45 +01:00
Aleksander 18e628f083 Update ovr_overlay 2026-01-24 14:32:40 +01:00
ZokuTe ab83d44a5e i18n: add support for zh_CN locale (#409) 2026-01-23 01:30:40 +00:00
galister fa6492a422 fix build without openxr feature 2026-01-22 16:16:59 +09:00
galister 160e84120d fix monado no-layer bug 2026-01-22 01:14:04 +09:00
galister c222c25ddf angle fade (partial, need monado fix) 2026-01-22 01:00:44 +09:00
galister ee8391a45f refactor skybox & passthru realtime switching 2026-01-21 18:26:18 +09:00
Sapphire 3ac6f70725 allow toggling skybox during runtime 2026-01-21 03:47:20 +00:00
Sapphire d23b058d0e allow toggling passthrough during runtime 2026-01-21 03:47:20 +00:00
Orion 37fde4c642 scale grab offset together with the overlay/anchor (#404)
fixes #397
2026-01-21 02:22:12 +00:00
Sapphire 2ade8c542e fix active modifier border color not sticking on unhover (#405) 2026-01-21 02:21:27 +00:00
Aleksander 03a1f449b5 Running games list (Closes #398) 2026-01-18 03:20:29 +00:00
Aleksander 7b3a2a1e48 UI gradient intensity slider, update wgui Defaults for dashboard, prepend ui-related config entries with ui_ 2026-01-18 03:20:29 +00:00
Aleksander dabd122a1d translations, minor refactoring, wgui: gradient intensity in globals, dash-frontend: remove unused window_list, process_list and window_options 2026-01-18 03:20:29 +00:00
Orion 0181119393 input blocking improvements (#399)
* move input blocking hover logic into InteractionState

* add per-window input blocking setting

* OpenVR: per-hand input blocking

* move block_input setting into OverlayWindowState
2026-01-18 03:09:22 +00:00
Orion 2e1d07abc2 fix 2D scroll in apps spawned inside wayvr (#401) 2026-01-18 02:00:31 +00:00
Jay fe61319fc2 OSC: Change ::OscSend format and restore String support to Button Actions. (#388)
* OscSend: support strings poc
- change value delimiter to `;`
- default convert values to String when not converted to another type

* add `_arg<n>="<value>"` format instead of `;` delimiter
that is, vrchat chatbox is controlled like `_press="::OscSend /chatbox/input" _arg0="${send}" _arg1="true" _arg2="true"` now

old format still supported as shorthand, with same "strings can't have spaces" limit as before. `_arg<n>` are appended after these.

* fix accidentally resetting `osc_args` to empty between formats

* update readme to document `::OscSend` paramter-form

* clean up, use `while let` instead of `while match`

* merge `parse_osc_value` into while condition

* remove second log from shortform arg parsing
2026-01-16 02:13:44 +00:00
galister da644c97d3 Fix readme formatting 2026-01-15 12:34:30 +00:00
galister b67914b956 expand vars in paths 2026-01-15 20:47:43 +09:00
Kresny e4caa1d6d4 Fix typos,improve clarity remove Homebrew in README.md (#392)
* Fix typos and improve clarity in README.md

Also replaced wlx with wayvr in build instructions

* Remove Homebrew
2026-01-15 09:13:03 +00:00
galister ea62be8ad7 openvr lines 2026-01-15 18:11:41 +09:00
galister 6ab1db9a76 fix openvr lines 2026-01-15 14:32:36 +09:00
galister cd0d49eaf6 steamvr is broken completely, not just steam link 2026-01-15 02:31:31 +00:00
galister a97ee2cee2 wayvrctl switch-set 2026-01-14 15:01:01 +09:00
galister 9d43068271 adjust mouse for stereo 2026-01-14 14:24:14 +09:00
oo8dev c7ebb7492e Merge pull request #390 from wlx-team/staging
Tooltip improvements
2026-01-13 18:08:38 +01:00
Aleksander c5356724fd Tooltip fade-in animations, implement tooltip for CheckBox and Slider, use FnOnce for layout tasks 2026-01-13 17:51:35 +01:00
galister d02efc2657 always visible checkbox 2026-01-13 23:59:03 +09:00
galister 40cd532134 add help for handsfree mode 2026-01-13 20:00:43 +09:00
galister 869c0ba5e2 bindings for eye + pinch 2026-01-13 19:23:04 +09:00
galister fd24060d7b handsfree mode 2026-01-13 19:15:51 +09:00
Orion 1318f23947 task bar: toggle overlays on right click (#385) 2026-01-13 01:28:16 +00:00
galister d2385fd3b2 exported images to have dedicated allocations 2026-01-12 22:27:26 +09:00
Jay 7059a85742 Re-implement custom audio files support. (#379)
* reimplement custom audio loading for `toast` and `key_click` using `from_mp3`

* run cargo fmt

* `try_bytes_from_config`: output with `log::trace` when file cannot be opened

* rewrite `try_bytes_from_config`

* use file `read_to_end`, log categories

* edit `register_wgui_samples`

* rework audio functions for loading custom wgui sounds
oh hey, it works!

* clean up

* allow custom `startup` and `app_start` sounds
these sounds are loaded on-demand and never registered; this behaviour is unchanged

* edit `bytes_from_config` outputs

* use return value of `read_to_end` instead of `len()` for reported file size

* implement suggested changes
- remove now-unused `register_mp3_sample_from_assets` function
- replace implementation of `try_bytes_from_config`
  - missing the `real_path` context

* swap out `context`s for `inspect_err`s with closures to output `real_path`

* clean up `audio.rs`
- remove unused import
- unify capitalisation + quotes in output messages.
2026-01-12 12:42:03 +00:00
Orion 2e5dcd62c1 add missing test_button checks in button.rs (#384) 2026-01-12 04:16:29 +00:00
galister 72e64ad965 Update documentation for sprite and image widgets
Added emphasis on setting width and height for sprite and image widgets.
2026-01-12 04:07:59 +00:00
galister 0e004e7b3f fix some button actions missing filters 2026-01-12 12:17:30 +09:00
oo8dev 91bc46defe Merge pull request #382 from wlx-team/feat-dash-tabbed-settings
dash-frontend: Tabbed settings, minor fixes
2026-01-11 19:45:26 +01:00
oo8dev b8f266ea6a Merge pull request #383 from BERADQ/chinese/1-11
Add Chinese (Simplified) translation
2026-01-11 19:24:53 +01:00
galister a33d4ec9d0 log svg loads 2026-01-12 02:32:45 +09:00
ZokuTeandAmos Wong 4c3500ea16 chore(i18n): Fix typo in Chinese (Simplified) translation
Co-authored-by: Amos Wong <8733840+amoshydra@users.noreply.github.com>
2026-01-12 01:10:33 +08:00
BERADQ bc1c993e17 chore(i18n): Add Chinese (Simplified) translation 2026-01-11 23:24:08 +08:00
galister 3889c9d2ea fix stereo on wayvr overlays 2026-01-11 23:38:35 +09:00
Aleksander 8eda46fb5e update logo 2026-01-11 15:05:23 +01:00
Aleksander a0451408aa wgui: fix possible panic 2026-01-11 14:59:26 +01:00
Aleksander 84d4fb7cc2 Tabbed settings (Closes #355) 2026-01-11 14:41:47 +01:00
amoshydra b48320c7bc feat: use contextual label for full frame 3d base on stereo mode
show Full-SBS when stereo is LeftRight or RightLeft
show Full-TAB when stereo is TopBottom
show Full-BAT when stereo is BottomTop
2026-01-11 12:03:45 +00:00
amoshydra ce5191ddd1 feat: add full frame 3d support
Related to #346
2026-01-11 12:03:45 +00:00
Aleksander 37e3ab1bda dash-frontend: Scrollable audio device list (Closes #353), wgui: fix scrollbar rendering 2026-01-11 11:11:01 +01:00
Aleksander 6b98d5f188 openxr: Fix 1.0 click threshold (Closes #374), wgi: less aggressive scrolling 2026-01-11 10:45:45 +01:00
oo8dev f059c5668a Merge pull request #373 from wlx-team/staging
Add Italian translations
2026-01-10 21:41:53 +01:00
Aleksander e7fc7be950 Add Italian translations
[skip ci]
2026-01-10 21:40:38 +01:00
galister 6136fae885 Remove button label update instructions from README
Removed section about updating button label from stdout in README.
2026-01-10 17:15:41 +00:00
403 changed files with 33595 additions and 11653 deletions

No files matched your search

+1
View File
@@ -0,0 +1 @@
open_collective: wayvr-org
+13 -10
View File
@@ -22,25 +22,28 @@ If this is a regression, please mention which version was working previously.
**Kernel version**:
**VR Runtime**:
- [ ] Monado/WiVRn
- [ ] SteamVR/ALVR
- [ ] Monado
- [ ] WiVRn
- [ ] ALVR
- [ ] SteamLink
- [ ] SteamVR (not SteamLink)
<!-- Run `vulkaninfo --summary` and paste the devices section from the bottom. -->
**GPU models and driver versions**:
## Overlay Logs
<!-- Start the overlay once more with the following environment variables:
RUST_BACKTRACE=full
RUST_LOG=debug
If your issue is graphical or crash or freeze, also add:
VK_INSTANCE_LAYERS=VK_LAYER_KHRONOS_validation
<!-- Start the overlay from terminal, with additional environment variables:
Next, create the empty log file: echo > /tmp/wlx.log
AppImage:
RUST_BACKTRACE=full RUST_LOG=debug /path/to/WayVR.AppImage
Be sure to go and reproduce the issue once more, after these have been set.
System or AUR package:
RUST_BACKTRACE=full RUST_LOG=debug wayvr
Upload the log file from: /tmp/wlx.log
Reproduce the issue once more, while WayVR is running from the terminal.
Upload the log file from: /tmp/wayvr.log
-->
+1 -1
View File
@@ -11,7 +11,7 @@ env:
jobs:
build:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
defaults:
run:
working-directory: ./wayvr
+4 -1
View File
@@ -15,7 +15,7 @@ env:
jobs:
build_appimage:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
defaults:
run:
working-directory: ./wayvr
@@ -29,6 +29,9 @@ jobs:
- name: Cargo Build
run: |
../.github/workflows/scripts/appimage_build_wlx.sh
- name: Build xwayland-satellite
run: |
../.github/workflows/scripts/appimage_build_satellite.sh
- name: Package AppImage
run: |
../.github/workflows/scripts/appimage_package.sh
+1 -1
View File
@@ -11,7 +11,7 @@ env:
jobs:
build:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
defaults:
run:
working-directory: ./wayvr
+1 -1
View File
@@ -11,7 +11,7 @@ env:
jobs:
build:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
defaults:
run:
working-directory: ./wayvr
+1 -1
View File
@@ -11,7 +11,7 @@ env:
jobs:
build:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
defaults:
run:
working-directory: ./wayvr
+1 -1
View File
@@ -11,7 +11,7 @@ env:
jobs:
build:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
defaults:
run:
working-directory: ./wayvr
+1 -1
View File
@@ -11,7 +11,7 @@ env:
jobs:
build:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
defaults:
run:
working-directory: ./wayvr
+7 -8
View File
@@ -13,7 +13,7 @@ env:
jobs:
make_release:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
defaults:
run:
working-directory: ./wayvr
@@ -36,10 +36,9 @@ jobs:
cargo build --release
- name: Make tarball
run: |
pip install portage pycargoebuild
wget https://github.com/gentoo/gentoo/raw/refs/heads/master/metadata/license-mapping.conf
mkdir dist
pycargoebuild --distdir dist --license-mapping license-mapping.conf --crate-tarball --crate-tarball-path wayvr-crates.tar.xz
cargo vendor > vendor-config.toml
mv vendor-config.toml vendor
tar --xz -cf vendor.tar.xz vendor
- name: Create Release
id: create_release
uses: actions/create-release@v1
@@ -81,12 +80,12 @@ jobs:
asset_name: WayVR-${{ github.ref_name }}-x86_64.AppImage
asset_content_type: application/octet-stream
- name: Upload crates tarball
- name: Upload vendor tarball
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_KEY }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./wayvr/wayvr-crates.tar.xz
asset_name: WayVR-${{ github.ref_name }}-crates.tar.xz
asset_path: ./wayvr/vendor.tar.xz
asset_name: vendor.tar.xz
asset_content_type: application/x-gtar
+17
View File
@@ -0,0 +1,17 @@
#!/bin/sh
sudo apt install \
xwayland \
libxcb1-dev \
libxcb-cursor-dev \
clang \
pkg-config
git clone https://github.com/Supreeeme/xwayland-satellite.git
cd xwayland-satellite
cargo build --release
chmod +x ../target/release/xwayland-satellite
cd ..
cp xwayland-satellite/target/release/xwayland-satellite ${APPDIR}/usr/bin
@@ -1,9 +1,7 @@
#!/bin/sh
sudo add-apt-repository -syn universe
sudo add-apt-repository -syn ppa:pipewire-debian/pipewire-upstream || sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 25088A0359807596
sudo apt-get update
sudo apt-get install -y fuse cmake pkg-config fontconfig libasound2-dev libxkbcommon-dev libxkbcommon-x11-0 libxkbcommon-x11-dev libopenxr-dev libfontconfig-dev libdbus-1-dev libpipewire-0.3-0 libpipewire-0.3-dev libspa-0.2-dev libx11-6 libxext6 libxrandr2 libx11-dev libxext-dev libxrandr-dev libopenvr-dev libopenvr-api1 libwayland-dev libegl-dev libxcb-glx0 libxcb-glx0-dev
sudo apt-get install -y fuse cmake pkg-config fontconfig libasound2-dev libxkbcommon-dev libxkbcommon-x11-0 libxkbcommon-x11-dev libopenxr-dev libfontconfig-dev libdbus-1-dev libpipewire-0.3-0 libpipewire-0.3-dev libspa-0.2-dev libx11-6 libxext6 libxrandr2 libx11-dev libxext-dev libxrandr-dev libopenvr-dev libopenvr-api1 libwayland-dev libegl-dev libxcb-glx0 libxcb-glx0-dev dav1d libdav1d-dev libvulkan-dev glslc vulkan-tools
rustup update
if [ "$APPDIR" != "" ]; then
Generated
+1355 -1387
View File
File diff suppressed because it is too large. Load diff
+60 -36
View File
@@ -1,3 +1,63 @@
[workspace]
resolver = "3"
members = [
"dash-frontend",
"scripts/prost_build",
"uidev",
"wayvr",
"wayvr-ipc",
"wayvrctl",
"wgui",
"wlx-capture",
"wlx-common",
]
[workspace.dependencies]
anyhow = "1.0.100"
async-channel = "2.3"
async-io = "2.1"
bytes = { version = "1.11.1" }
chrono = "0.4.42"
clap = { version = "4.5.53", features = ["derive"] }
dbus = { version = "0.9.12" }
glam = { version = "0.30.9", features = ["mint", "serde"] }
idmap = "0.2.2"
idmap-derive = "0.2.22"
interprocess = { version = "2.2.3" }
libc = "0.2.178"
log = "0.4.29"
pipewire = { version = "0.10", features = ["v0_3_33", "v0_3_65"] }
regex = "1.12.2"
rust-embed = "8.9.0"
serde = { version = "1", features = ["derive"] }
serde_json = "1.0.145"
serde_json5 = "0.2.1"
slotmap = "1.1.1"
smallvec = "1.15.2"
smol = "2.0.2"
strum = { version = "0.27.2", features = ["derive"] }
tracing-subscriber = { version = "0.3.22", features = ["env-filter"] }
uuid = { version = "1.19.0", features = ["fast-rng", "serde", "v4"] }
vulkano = {
version = "0.35.2",
default-features = false,
features = [
"macros",
]
}
vulkano-shaders = "0.35.0"
wayland-client = { version = "0.31" }
wayland-protocols = { version = "0.32" }
wayland-protocols-misc = { version = "0.3.12" }
winit = "0.30.12"
xdg = "3.0.0"
[patch.crates-io]
vulkano = {
git = "https://github.com/galister/vulkano.git",
rev = "cf7f92867928a56ce16b376037c1120f2b167678"
}
[profile.dev]
opt-level = 1
debug = true
@@ -19,39 +79,3 @@ incremental = true
[profile.release-with-debug]
inherits = "release"
debug = true
[workspace]
members = [
"uidev",
"wgui",
"wlx-common",
"wayvr",
"wlx-capture",
"dash-frontend",
"wayvr-ipc",
"wayvrctl",
]
resolver = "3"
[patch.crates-io]
vulkano = { git = "https://github.com/galister/vulkano.git", rev = "cf7f92867928a56ce16b376037c1120f2b167678" }
[workspace.dependencies]
anyhow = "1.0.100"
glam = { version = "0.30.9", features = ["mint", "serde"] }
clap = { version = "4.5.53", features = ["derive"] }
xdg = "3.0.0"
idmap = "0.2.2"
idmap-derive = "0.2.22"
log = "0.4.29"
regex = "1.12.2"
rust-embed = "8.9.0"
serde = { version = "1", features = ["derive"] }
serde_json = "1.0.145"
slotmap = "1.1.1"
strum = { version = "0.27.2", features = ["derive"] }
vulkano = { version = "0.35.2", default-features = false, features = [
"macros",
] }
vulkano-shaders = "0.35.0"
wayland-client = { version = "0.31.11" }
+70 -50
View File
@@ -1,20 +1,20 @@
![WayVR splash screen header](https://github.com/wlx-team/wayvr/blob/guide/wayvr-readme-header.webp?raw=true)
![WayVR splash screen header](https://github.com/wayvr-org/wayvr/blob/guide/wayvr-readme-header.webp?raw=true)
# WayVR (previously WlxOverlay-S)
A lightweight OpenXR/OpenVR overlay for Wayland and X11 desktops.
WayVR lets you to access your desktop screens while in VR, and even launch apps directly in VR.
WayVR lets you access your desktop screens while in VR, and even launch apps directly in VR.
In comparison to similar overlays, WayVR aims to run alongside VR games and experiences while having as little performance impact as possible. The UI appearance and rendering techniques are kept as simple and efficient as possible, while still allowing a high degree of customizability.
![Screenshot of WayVR being used as an OpenXR home environment](https://github.com/wlx-team/wayvr/blob/guide/wayvr-readme-screenshot.webp?raw=true)
![Screenshot of WayVR being used as an OpenXR home environment](https://github.com/wayvr-org/wayvr/blob/guide/wayvr-readme-screenshot.webp?raw=true)
## Join the Linux VR Community
We are available on either **Discord** or **Matrix space**:
[![LVRA Discord](https://img.shields.io/discord/1065291958328758352?style=for-the-badge&logo=discord)](https://discord.gg/EHAYe3tTYa) [![LVRA Matrix](https://img.shields.io/matrix/linux-vr-adventures:matrix.org?logo=matrix&style=for-the-badge)](https://matrix.to/#/#linux-vr-adventures:matrix.org)
[![LVRA Discord](https://img.shields.io/discord/1065291958328758352?style=for-the-badge/&logo=discord)](https://discord.gg/EHAYe3tTYa) [![LVRA Matrix](https://img.shields.io/matrix/linux-vr-adventures:matrix.org?logo=matrix&style=for-the-badge)](https://matrix.to/#/#linux-vr-adventures:matrix.org)
Questions/issues specific to WayVR will be handled in the `wayvr` chat room. Feel free to ask anything.
@@ -24,14 +24,11 @@ Questions/issues specific to WayVR will be handled in the `wayvr` chat room. Fee
There are multiple ways to install WayVR:
1. AppImage: Download from [Releases](https://github.com/wlx-team/wayvr/releases)
1. AUR package: [wayvr](https://aur.archlinux.org/packages/wayvr) or [wayvr-git](https://aur.archlinux.org/packages/wayvr-git)
1. Homebrew:
- Add AtomicXR tap: `brew tap matrixfurry.com/atomicxr https://tangled.sh/@matrixfurry.com/homebrew-atomicxr`
- Install WayVR: `brew install wlx-overlay-s`
1. [Building from source](https://github.com/wlx-team/wayvr/wiki/Building-from-Source).
1. AppImage: Download from [Releases](https://github.com/wayvr-org/wayvr/releases)
1. AUR package: [wayvr](https://aur.archlinux.org/packages/wayvr) or [wayvr-git](https://aur.archlinux.org/packages/wayvr-git)
1. Nix package: [wayvr](https://search.nixos.org/packages?channel=unstable&show=wayvr&query=wayvr) or [unstable package from nixpkgs-xr](https://github.com/nix-community/nixpkgs-xr)
1. [Homebrew-XR](https://tangled.org/matrixfurry.com/homebrew-xr) package (for Bazzite, etc.): [wayvr](https://tangled.org/matrixfurry.com/homebrew-xr/#installing-applications)
1. [Docs: Building from source](https://wayvr.org/docs/basics/building-from-source/).
### General Setup
@@ -44,7 +41,7 @@ There are multiple ways to install WayVR:
For users specifically running **SteamVR via Steam Flatpak**, follow these steps:
1. Grab the latest AppImage from [Releases](https://github.com/wlx-team/wayvr/releases).
1. Grab the latest AppImage from [Releases](https://github.com/wayvr-org/wayvr/releases).
1. `WayVR-*.AppImage --appimage-extract`
1. `chmod +x squashfs-root/AppRun`
1. Move the newly created `squashfs-root` folder to a location accessible by the Steam Flatpak.
@@ -60,15 +57,15 @@ For users specifically running **SteamVR via Steam Flatpak**, follow these steps
In case screens were selected in the wrong order:
- Go to Settings and press `Clear PipeWire tokens` and then `Restart software`
- Pay attention to your notifications, it tells you in which order to pick the screens.
- If notifications don't show, try start WayVR from the terminal and look for instructions in there.
- Pay attention to your notifications, which tell you in which order to pick the screens.
- If notifications don't show, try starting WayVR from the terminal and look for instructions in there.
**WiVRn users**: Select WayVR from the `Application` drop-down. If there's no such entry, select `Custom` and browse to your WayVR executable or AppImage.
**Envision users**: Go to the Plugins menu and select the WayVR plugin. This will download and run the AppImage version of the overlay.
In order to run a standalone installation (for instance from the AUR), create a bash script containing `wayvr --openxr --show` and then set this bash script as a custom Envision plugin.
To run a standalone installation (for instance, from the AUR), create a bash script containing `wayvr --openxr --show` and then set this bash script as a custom Envision plugin.
This will show a home environment with headset passthrough by default or a [customizable background](https://github.com/wlx-team/wayvr/wiki/OpenXR-Skybox)!
This will show a home environment with headset passthrough enabled by default or a [customizable background](https://wayvr.org/docs/various/openxr-skybox/)!
**SteamVR users**: WayVR will register itself for auto-start, so there is no need to start it every time. Disclaimer: SteamVR will sometimes disregard this and not start WayVR anyway.
@@ -78,7 +75,7 @@ This will show a home environment with headset passthrough by default or a [cust
### Working Set
The working set consists of all currently selected overlays; screens, mirrors, keyboard, etc.
The working set consists of all currently selected overlays: screens, mirrors, keyboard, etc.
The working set appears in front of the headset when shown, and can be re-centered by hiding and showing again.
@@ -87,7 +84,9 @@ Show and hide the working set using:
- Non-vive controller: double-tap B or Y on the left controller.
- Vive controller: double-tap the menu button on the left controller (for SteamVR, the `showhide` binding must be bound)
See the [bindings](#default-bindings) section on how to grab, move and resize overlay windows.
Moving overlays: Grab + Joystick
Resizing overlays: Grab + Click + Joystick
### Pointer Modes AKA Laser Colors
@@ -102,23 +101,32 @@ Please see the bindings section below on how to activate these modes.
The guide here uses the colors for ease of getting started.
### Edit mode
Ways to enter Edit mode:
- Edit mode button on Watch face
- Taskbar (top of keyboard) hamburger menu
- Edit mode button on the title bar of WayVR apps (next to X button)
Edit mode lets you grab overlays and reposition them in yourset.
It's also possible to change overlay behavior and tweak your overlays in different way.
While in edit mode, try hovering over various overlays to see their options!
### The watch
Check your left wrist for the watch. The watch is the primary tool for controlling the app.
The top of the watch shows device batteries, and the bottom shows your overlay controls.
Enter edit mode (leftmost button on bottom) to edit your overlay sets.
While in edit mode, the watch can also be grabbed, and passed between your hands.
While in edit mode, the watch can also be grabbed and passed between your hands.
After grabbing, the watch will automatically attach to the hand that's opposite from the one that held it.
In edit mode, try hovering other overlays to see their advanced options!
### The screens
Hovering a pointer over a screen will move the mouse. If there are more than one pointers hovering a screen, the pointer that was last used to click will take precedence.
Hovering a pointer over a screen will move the mouse. If more than one pointer is hovering over a screen, the pointer that was last used to click will take precedence.
The click type depends on the laser color:
@@ -129,42 +137,61 @@ The click type depends on the laser color:
### The keyboard
The keyboard sends keys to the screen or WayVR application with the most recent mouse interaction.
On top of the keyboard is the taskbar, which lists WayVR apps as well as screens, mirrors and panels overlays.
Typing
- Use the BLUE laser when typing regularly.
- While using ORANGE laser, all keystrokes will have SHIFT applied.
- While using the ORANGE laser, all keystrokes will have SHIFT applied.
- Purple laser is customizable via the settings, no modifier by default.
**Modifier Keys** are sticky. They will remain pressed until a non-modifier key is pressed, the modifier gets toggled off, or the keyboard gets hidden.
**Modifier Keys are sticky**. They will remain pressed until either:
- a non-modifier key is pressed
- the modifier is toggled off by clicking again
- the keyboard is hidden (including via show-hide)
### Default Bindings
![Index Controller Bindings](https://github.com/wlx-team/wayvr/blob/guide/wlx-index.png)
![Index Controller Bindings](https://github.com/wayvr-org/wayvr/blob/guide/wlx-index.png)
![Touch Controller Bindings](https://github.com/wlx-team/wayvr/blob/guide/wlx-oculus.png)
![Touch Controller Bindings](https://github.com/wayvr-org/wayvr/blob/guide/wlx-oculus.png)
To customize bindings on OpenXR, refer to the [OpenXR Bindings wiki page](https://github.com/wlx-team/wayvr/wiki/OpenXR-Bindings).
### Changing Bindings
If your bindings are not supported, please reach out. \
We would like to work with you and include additional bindings.
- SteamVR: Simply change the bindings from the SteamVR bindings section.
- If WayVR doesn't show up on the list, select any other title and then press back on the top left. (SteamVR bug)
- Monado/WiVRn: See WayVR Dashboard → Settings → Controls.
## Customization
See these relevant wiki pages:
- For all available config options, check [Docs: Configuration](https://wayvr.org/docs/basics/configuration/)
- Looking to customize look & feel, or add functionality? See [Docs: Customization](https://wayvr.org/docs/basics/customization/)
- Looking to change the OpenXR background? See [Docs: OpenXR Skybox](https://wayvr.org/docs/various/openxr-skybox/)
## Troubleshooting
When an error is detected, we often print tips for fixing into the log file.
When an error is detected, we often print tips for fixing it into the log file.
Logs will be at `/tmp/wayvr.log` for most distros.
Check [here](https://github.com/wlx-team/wayvr/wiki/Troubleshooting) for tips.
Check [here](https://wayvr.org/docs/various/troubleshooting/) for tips.
## Known Issues
### Mouse is not where it should be
### Mouse movement is wrong
If the mouse is moving on a completely different screen, the screens were likely selected in the wrong order:
**If the mouse is moving on a completely different screen**, the screens were likely selected in the wrong order:
- Go to Settings and press `Clear PipeWire tokens` and then `Restart software`
- Pay attention to your notifications, it tells you in which order to pick the screens.
- If notifications don't show, try start WayVR from the terminal and look for instructions in there.
- Pay attention to your notifications, which tell you in which order to pick the screens.
- If notifications don't show, try starting WayVR from the terminal and look for instructions in there.
**If the mouse is on the correct screen but moves in weird ways**, enter Edit Mode, hover the screen and under Mouse Fixes, select the mode that works.
COSMIC desktop:
@@ -176,23 +203,16 @@ X11 users:
- DPI scaling is not supported and will mess with the mouse.
- Upright screens are not supported and will mess with the mouse.
### Screens are blank or black or frozen on Steam Link
### Screens or launched apps don't work when auto-started by SteamVR or WiVRn
As of SteamVR version 2.14.x, PipeWire capture no longer works when using Steam Link.
SteamVR starts WayVR in the Steam runtime, and systemd/flatpak WiVRn can also start WayVR in a sub-optimal environment.
We're unable to completely troubleshoot how and why Steam Link interferes with PipeWire, so consider the following workarounds for the time being:
- Use another streamer, such as WiVRn or ALVR
- If your desktop [supports ScreenCopy](https://wayland.app/protocols/wlr-screencopy-unstable-v1#compositor-support), go to Settings and set `Wayland capture method` to `ScreenCopy`
- If your desktop has an X11 mode, try using that
### Modifiers get stuck
Hiding the keyboard will un-press all of its buttons. Alternatively, go to Settings and use the `Restart software` button.
The easiest fix is to start WayVR separately. It's possible to start WayVR before starting SteamVR/WiVRn by passing `--wait`:
- `wayvr --wait` or `/path/to/WayVR.AppImage --wait`
### X11 limitations
- X11 capture can generally seem slow. This is because zero-copy GPU capture is not supported on the general X11 desktop. Consider trying Wayland.
- DPI scaling is not supported and may cause the mouse to not follow the laser properly.
- Upright screens are not supported and can cause the mouse to not follow the laser properly.
- Screen changes (connecting / disconnecting a display, resolution changes, etc) are not handled at runtime. Restart the overlay for these to take effect.
- Screen changes (connecting/disconnecting a display, resolution changes, etc) are not handled at runtime. Restart the overlay for these to take effect.
+12 -7
View File
@@ -13,22 +13,27 @@ wgui = { path = "../wgui/" }
wlx-common = { path = "../wlx-common" }
anyhow.workspace = true
chrono.workspace = true
glam = { workspace = true, features = ["mint", "serde"] }
log.workspace = true
xdg.workspace = true
rust-embed.workspace = true
serde = { workspace = true, features = ["rc"] }
serde_json.workspace = true
smol = { workspace = true }
strum.workspace = true
uuid.workspace = true
xdg.workspace = true
chrono = "0.4.42"
keyvalues-parser = { git = "https://github.com/CosmicHorrorDev/vdf-rs.git", rev = "fc6dcbea9eb13cacb98dea40063f6f56cde6e145" }
smol = "2.0.2"
hyper = { version = "1.8.1", features = ["client", "http1", "http2"] }
async-native-tls = "0.6.0"
http-body-util = "0.1.3"
async-native-tls = "0.5.0"
keyvalues-parser = {
git = "https://codeberg.org/CosmicHarper/vdf-rs.git",
rev = "fc6dcbea9eb13cacb98dea40063f6f56cde6e145"
}
lz4_flex = { version = "0.13.1", features = ["frame"] }
smol-hyper = "0.1.1"
ureq = "3.3.0"
[features]
default = ["monado" ]
default = ["monado"]
monado = []
@@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Symbols by Google - https://github.com/google/material-design-icons/blob/master/LICENSE -->
<path fill="currentColor" d="m10 18l-6-6l6-6l1.4 1.45L7.85 11H20v2H7.85l3.55 3.55z" />
</svg>

After

Width:  |  Height:  |  Size: 294 B

@@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Symbols by Google - https://github.com/google/material-design-icons/blob/master/LICENSE -->
<path fill="currentColor" d="m14 18l-1.4-1.45L16.15 13H4v-2h12.15L12.6 7.45L14 6l6 6z" />
</svg>

After

Width:  |  Height:  |  Size: 297 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Symbols by Google - https://github.com/google/material-design-icons/blob/master/LICENSE --><path fill="#F55" d="m8.4 17l3.6-3.6l3.6 3.6l1.4-1.4l-3.6-3.6L17 8.4L15.6 7L12 10.6L8.4 7L7 8.4l3.6 3.6L7 15.6zm3.6 5q-2.075 0-3.9-.788t-3.175-2.137T2.788 15.9T2 12t.788-3.9t2.137-3.175T8.1 2.788T12 2t3.9.788t3.175 2.137T21.213 8.1T22 12t-.788 3.9t-2.137 3.175t-3.175 2.138T12 22m0-2q3.35 0 5.675-2.325T20 12t-2.325-5.675T12 4T6.325 6.325T4 12t2.325 5.675T12 20m0-8"/></svg>

After

Width:  |  Height:  |  Size: 573 B

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Symbols by Google - https://github.com/google/material-design-icons/blob/master/LICENSE --><path fill="#33FF99" d="m9.55 18l-5.7-5.7l1.425-1.425L9.55 15.15l9.175-9.175L20.15 7.4z"/></svg>

After

Width:  |  Height:  |  Size: 295 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Symbols by Google - https://github.com/google/material-design-icons/blob/master/LICENSE --><path fill="currentColor" d="M11.7 18q-2.4-.125-4.05-1.85T6 12q0-2.5 1.75-4.25T12 6q2.425 0 4.15 1.65T18 11.7l-2.1-.625q-.325-1.35-1.4-2.212T12 8q-1.65 0-2.825 1.175T8 12q0 1.425.863 2.5t2.212 1.4zm8.825 4.5l-4.275-4.275L15 22l-3-10l10 3l-3.775 1.25l4.275 4.275z"/></svg>

After

Width:  |  Height:  |  Size: 470 B

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Iconoir by Luca Burgio - https://github.com/iconoir-icons/iconoir/blob/main/LICENSE --><g fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="1.5"><path d="M16 6.28a2.28 2.28 0 0 1-.662 1.606c-.976.984-1.923 2.01-2.936 2.958a.597.597 0 0 1-.822-.017l-2.918-2.94a2.28 2.28 0 0 1 0-3.214a2.277 2.277 0 0 1 3.232 0L12 4.78l.106-.107A2.276 2.276 0 0 1 16 6.28Z"/><path stroke-linecap="round" d="m18 20l3.824-3.824a.6.6 0 0 0 .176-.424V10.5A1.5 1.5 0 0 0 20.5 9v0a1.5 1.5 0 0 0-1.5 1.5V15"/><path stroke-linecap="round" d="m18 16l.858-.858a.48.48 0 0 0 .142-.343v0a.49.49 0 0 0-.268-.433l-.443-.221a2 2 0 0 0-2.308.374l-.895.895a2 2 0 0 0-.586 1.414V20M6 20l-3.824-3.824A.6.6 0 0 1 2 15.752V10.5A1.5 1.5 0 0 1 3.5 9v0A1.5 1.5 0 0 1 5 10.5V15"/><path stroke-linecap="round" d="m6 16l-.858-.858A.5.5 0 0 1 5 14.799v0c0-.183.104-.35.268-.433l.443-.221a2 2 0 0 1 2.308.374l.895.895a2 2 0 0 1 .586 1.414V20"/></g></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Symbols by Google - https://github.com/google/material-design-icons/blob/master/LICENSE --><path fill="currentColor" d="m12 16l-5-5l1.4-1.45l2.6 2.6V4h2v8.15l2.6-2.6L17 11zm-6 4q-.825 0-1.412-.587T4 18v-3h2v3h12v-3h2v3q0 .825-.587 1.413T18 20z"/></svg>

After

Width:  |  Height:  |  Size: 360 B

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Symbols by Google - https://github.com/google/material-design-icons/blob/master/LICENSE --><path fill="currentColor" d="m12 22l-4.25-4.25l1.425-1.425L11 18.15V13H5.875L7.7 14.8l-1.45 1.45L2 12l4.225-4.225L7.65 9.2L5.85 11H11V5.85L9.175 7.675L7.75 6.25L12 2l4.25 4.25l-1.425 1.425L13 5.85V11h5.125L16.3 9.2l1.45-1.45L22 12l-4.25 4.25l-1.425-1.425L18.15 13H13v5.125l1.8-1.825l1.45 1.45z"/></svg>

After

Width:  |  Height:  |  Size: 500 B

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Symbols by Google - https://github.com/google/material-design-icons/blob/master/LICENSE --><path fill="#FF4455" d="M12 17q.425 0 .713-.288T13 16t-.288-.712T12 15t-.712.288T11 16t.288.713T12 17m-1-4h2V7h-2zm1 9q-2.075 0-3.9-.788t-3.175-2.137T2.788 15.9T2 12t.788-3.9t2.137-3.175T8.1 2.788T12 2t3.9.788t3.175 2.137T21.213 8.1T22 12t-.788 3.9t-2.137 3.175t-3.175 2.138T12 22m0-2q3.35 0 5.675-2.325T20 12t-2.325-5.675T12 4T6.325 6.325T4 12t2.325 5.675T12 20m0-8"/></svg>

After

Width:  |  Height:  |  Size: 574 B

@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="32"
height="32"
viewBox="0 0 24 24"
version="1.1"
id="svg1"
sodipodi:docname="gravity.svg"
inkscape:version="1.4.4 (dcaf3e7d9e, 2026-05-05)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="23.234375"
inkscape:cx="17.861466"
inkscape:cy="22.488231"
inkscape:window-width="1582"
inkscape:window-height="1302"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="svg1" />
<defs
id="defs1" />
<!-- Icon from Material Symbols by Google - https://github.com/google/material-design-icons/blob/master/LICENSE -->
<!-- Modified it a little bit, there's no "space gravity" icon available. -->
<path
fill="currentColor"
d="m 15.76786,18.274928 -1.391472,0.295932 -0.674684,-2.9751 -3.051267,-0.735557 -2.4062791,-3.292082 -0.8846145,1.824345 1.561484,2.213127 -1.1706157,0.808349 -1.9932655,-2.862487 1.752944,-3.7745856 Q 7.740355,9.2978686 8.2693798,9.1366908 8.7984057,8.9755132 9.3446883,8.9671549 9.9537305,8.9704882 10.547911,8.8283107 11.142091,8.6861403 11.667399,8.364791 12.192707,8.0434408 12.541821,7.5511898 12.890935,7.0589389 13.170167,6.5208564 l 1.228561,0.6477209 q -0.321651,0.575352 -0.696034,1.1164692 -0.374382,0.5411172 -0.890945,0.9726251 -0.466314,0.3718768 -0.998843,0.6112737 -0.532529,0.2393967 -1.117089,0.3386867 L 12,12 l 2.176682,-1.469824 4.352172,0.934365 -0.326914,1.35612 -3.582453,-0.734464 -2.11263,1.442217 2.281549,0.535655 z M 7.5517982,8.9044443 Q 7.0233673,9.1322023 6.4853273,8.9182692 5.9472884,8.7043353 5.7186139,8.1755407 5.4899403,7.6467461 5.7054294,7.108795 5.9209195,6.5708439 6.4475175,6.3423563 6.9741154,6.1138698 7.5149037,6.3288971 8.0556931,6.5439235 8.2807018,7.07126 8.5057095,7.5985974 8.2948017,8.1383704 8.0838948,8.6781445 7.5517982,8.9044443"
id="path1"
style="stroke-width:0.697484" />
<path
id="path2"
style="fill:none;stroke:currentColor;stroke-width:2.43525;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:0, 7.30575"
d="M 22.480952,12 C 22.480952,17.78847 17.78847,22.480952 12,22.480952 6.2115299,22.480952 1.5190477,17.78847 1.5190477,12 1.5190475,6.2115298 6.2115298,1.5190477 12,1.5190477 c 0.653263,0 1.292568,0.059766 1.912744,0.1741274 C 18.787854,2.5921561 22.480952,6.8647934 22.480952,12 Z"
sodipodi:nodetypes="ssssss" />
</svg>

After

Width:  |  Height:  |  Size: 2.8 KiB

@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="48"
height="48"
viewBox="0 0 384.00001 383.99998"
version="1.1"
id="svg1"
sodipodi:docname="hand_left.svg"
inkscape:version="1.4.4 (dcaf3e7d9e, 2026-05-05)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:clip-to-page="false"
inkscape:zoom="8"
inkscape:cx="24"
inkscape:cy="15.9375"
inkscape:window-width="1920"
inkscape:window-height="1016"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg1" />
<defs
id="defs1" />
<!-- Icon from Phosphor by Phosphor Icons - https://github.com/phosphor-icons/core/blob/main/LICENSE -->
<path
fill="currentColor"
d="m 223.99926,120.14002 v 90.93 c 0,46.2 -36.85,84.55 -83,85.06 a 83.7,83.7 0 0 1 -60.400003,-24.59 c -21.81,-23.07 -46.45,-79.4 -46.45,-79.4 a 16,16 0 0 1 6.53,-22.23 c 7.66,-4 17.1,-0.84 21.4,6.62 l 21,36.44 a 6.09,6.09 0 0 0 6,3.09 h 0.12 a 8.19,8.19 0 0 0 6.800001,-8.18 v -103.74 A 16,16 0 0 1 112.76926,88.140018 c 8.61,0.4 15.23,7.82 15.23,16.430002 v 63.57 a 8,8 0 0 0 8.53,8 8.17,8.17 0 0 0 7.47,-8.25 V 88.140018 a 16,16 0 0 1 16.77,-15.999999 c 8.61,0.4 15.23,7.82 15.23,16.429999 v 87.570002 a 8,8 0 0 0 8.53,8 8.17,8.17 0 0 0 7.47,-8.25 v -55.3 c 0,-8.61 6.62,-16 15.23,-16.43 a 16,16 0 0 1 16.77,15.98"
id="path1" />
<path
fill="currentColor"
d="M 263.19112,258.73409 V 112.03922 h 18.49095 v 130.25847 h 64.10196 v 16.4364 z"
id="text1"
aria-label="L" />
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

@@ -0,0 +1,44 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="48"
height="48"
viewBox="0 0 384 383.99998"
version="1.1"
id="svg1"
sodipodi:docname="hand_right.svg"
inkscape:version="1.4.4 (dcaf3e7d9e, 2026-05-05)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="8"
inkscape:cx="24"
inkscape:cy="15.9375"
inkscape:window-width="1920"
inkscape:window-height="1016"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg1" />
<defs
id="defs1" />
<!-- Icon from Phosphor by Phosphor Icons - https://github.com/phosphor-icons/core/blob/main/LICENSE -->
<path
fill="currentColor"
d="M 30.079989,119.60999 V 210.54 c 0,46.2 36.85,84.55 83.000011,85.06 a 83.7,83.7 0 0 0 60.4,-24.59 c 21.81,-23.07 46.45,-79.4 46.45,-79.4 a 16,16 0 0 0 -6.53,-22.23 c -7.66,-4.00001 -17.1,-0.84 -21.4,6.62 l -21,36.44 a 6.09,6.09 0 0 1 -6,3.09 h -0.12 a 8.19,8.19 0 0 1 -6.8,-8.18 V 103.60999 a 16,16 0 0 0 -16.77,-16 c -8.61,0.4 -15.23,7.82 -15.23,16.43 V 167.61 a 8,8 0 0 1 -8.53,8 8.17,8.17 0 0 1 -7.47,-8.25 V 87.60999 A 16,16 0 0 0 93.309986,71.609992 c -8.609997,0.4 -15.229997,7.819999 -15.229997,16.429998 V 175.61 a 8,8 0 0 1 -8.53,8 8.17,8.17 0 0 1 -7.47,-8.25 v -55.30001 c 0,-8.61 -6.62,-16 -15.23,-16.43 a 16,16 0 0 0 -16.77,15.98"
id="path1" />
<path
d="m 301.74274,111.50919 q 27.32551,0 40.26918,10.4782 13.14912,10.27275 13.14912,31.22916 0,11.71094 -4.31456,19.51824 -4.31455,7.80729 -11.09457,12.53275 -6.57456,4.52001 -13.97094,7.19093 l 40.26918,65.7456 h -21.57277 l -35.54372,-60.60923 h -29.17461 v 60.60923 H 261.2681 V 111.50919 Z m -1.02728,16.02549 h -20.95641 v 54.44558 h 21.98369 q 17.87458,0 26.09278,-6.98547 8.2182,-7.19092 8.2182,-20.95642 0,-14.38185 -8.62911,-20.34004 -8.62911,-6.16365 -26.70915,-6.16365 z"
id="text1"
fill="currentColor"
aria-label="R" />
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Symbols by Google - https://github.com/google/material-design-icons/blob/master/LICENSE --><path fill="currentColor" d="M15 14v-2h8v2zm-4 7l-3.175-2.85q-1.8-1.625-3.088-2.9t-2.125-2.4t-1.225-2.175T1 8.475q0-2.35 1.575-3.912T6.5 3q1.3 0 2.475.538T11 5.075q.85-1 2.025-1.537T15.5 3q2.125 0 3.563 1.288T20.85 7.3q-.45-.175-.9-.262t-.875-.088q-2.525 0-4.3 1.763T13 13q0 1.3.525 2.463T15 17.45q-.475.425-1.237 1.088T12.45 19.7z"/></svg>

After

Width:  |  Height:  |  Size: 538 B

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Symbols by Google - https://github.com/google/material-design-icons/blob/master/LICENSE --><path fill="currentColor" d="M18.288 16.713Q18 16.425 18 16v-2h-2q-.425 0-.712-.288T15 13t.288-.712T16 12h2v-2q0-.425.288-.712T19 9t.713.288T20 10v2h2q.425 0 .713.288T23 13t-.288.713T22 14h-2v2q0 .425-.288.713T19 17t-.712-.288M1.75 23.626v-3.8zM10.3 20.2q-.35-.125-.625-.4q-1.1-1-2.6-2.275t-2.85-2.737t-2.287-3.063T1 8.475q0-2.35 1.575-3.912T6.5 3q1.3 0 2.475.538T11 5.075q.85-1 2.025-1.537T15.5 3q1.575 0 2.788.738T20.2 5.6q.275.475-.087.963T19.075 7h-.4q-2.125 0-3.9 1.713T13 13q0 1.05.338 1.988T14.4 16.7q.275.3.238.7t-.338.675l-1.975 1.75q-.275.275-.625.388t-.7.112t-.7-.125"/></svg>

After

Width:  |  Height:  |  Size: 785 B

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Symbols by Google - https://github.com/google/material-design-icons/blob/master/LICENSE --><path fill="currentColor" d="M11 17h2v-6h-2zm1.713-8.287Q13 8.425 13 8t-.288-.712T12 7t-.712.288T11 8t.288.713T12 9t.713-.288M12 22q-2.075 0-3.9-.788t-3.175-2.137T2.788 15.9T2 12t.788-3.9t2.137-3.175T8.1 2.788T12 2t3.9.788t3.175 2.137T21.213 8.1T22 12t-.788 3.9t-2.137 3.175t-3.175 2.138T12 22"/></svg>

After

Width:  |  Height:  |  Size: 501 B

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Design Icons by Pictogrammers - https://github.com/Templarian/MaterialDesign/blob/master/LICENSE --><path fill="currentColor" d="M12 4V2A10 10 0 0 0 2 12h2a8 8 0 0 1 8-8"/></svg>

After

Width:  |  Height:  |  Size: 286 B

@@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Symbols by Google - https://github.com/google/material-design-icons/blob/master/LICENSE -->
<path fill="currentColor" d="M12 19q1.65 0 2.825-1.175T16 15v-4q0-1.65-1.175-2.825T12 7T9.175 8.175T8 11v4q0 1.65 1.175 2.825T12 19m-2-3h4v-2h-4zm0-4h4v-2h-4zm2 9q-1.625 0-3.012-.8T6.8 18H4v-2h2.1q-.075-.5-.088-1T6 14H4v-2h2q0-.5.012-1t.088-1H4V8h2.8q.35-.575.788-1.075T8.6 6.05L7 4.4L8.4 3l2.15 2.15q.7-.225 1.425-.225t1.425.225L15.6 3L17 4.4l-1.65 1.65q.575.375 1.038.862T17.2 8H20v2h-2.1q.075.5.088 1T18 12h2v2h-2q0 .5-.013 1t-.087 1H20v2h-2.8q-.8 1.4-2.187 2.2T12 21" />
</svg>

After

Width:  |  Height:  |  Size: 682 B

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 256 256"><!-- Icon from SVG Logos by Gil Barbara - https://raw.githubusercontent.com/gilbarbara/logos/master/LICENSE.txt --><path fill="#b8d3f4" d="M209.765 128.15c0 16.013-4.9 31.34-13.266 44.575l33.447 33.447a128.9 128.9 0 0 0 25.783-77.35c0-29.265-9.754-55.751-26.47-77.336l-32.776 32.729a79.44 79.44 0 0 1 13.267 43.888z"/><path fill="#7fadf2" d="M127.513 210.355c-45.367-.086-82.125-36.838-82.22-82.205c.069-45.386 36.835-82.166 82.22-82.252c16.732 0 32.058 4.901 44.607 13.267l32.744-32.776A128.97 128.97 0 0 0 127.514.636C57.123.636 0 57.76 0 128.15c0 70.359 57.124 127.513 127.513 127.513a125.13 125.13 0 0 0 77.351-26.501l-33.447-33.431c-11.861 9.754-27.157 14.624-43.904 14.624"/></svg>

After

Width:  |  Height:  |  Size: 772 B

@@ -0,0 +1,54 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="168"
height="28"
viewBox="0 0 168 28"
fill="none"
version="1.1"
id="svg3"
sodipodi:docname="opencollective_logo.svg"
inkscape:version="1.4.4 (dcaf3e7d9e, 2026-05-05)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs3" />
<sodipodi:namedview
id="namedview3"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="5.9872583"
inkscape:cx="56.286197"
inkscape:cy="5.0941513"
inkscape:window-width="3072"
inkscape:window-height="1664"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg3" />
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M106.727 5H108.459C108.494 5 108.529 5.03604 108.565 5.10811V20.1712C108.565 20.2432 108.529 20.2793 108.459 20.2793H106.727C106.657 20.2793 106.621 20.2432 106.621 20.1712V5.10811C106.621 5.03604 106.657 5 106.727 5ZM140.011 9.68468H141.954C141.99 9.68468 142.06 9.75676 142.06 9.79279V11.5586C142.06 11.6306 142.025 11.6667 141.954 11.6667H140.011C139.976 11.6667 139.94 11.7027 139.94 11.7387V20.1712C139.94 20.2432 139.905 20.2793 139.834 20.2793H138.103C138.032 20.2793 137.997 20.2432 137.997 20.1712V11.7387C137.997 11.7027 137.962 11.6667 137.926 11.6667H136.018C135.948 11.6667 135.912 11.6306 135.912 11.5586V9.79279C135.912 9.72072 135.948 9.68468 136.018 9.68468H137.926C137.962 9.68468 137.997 9.64865 137.997 9.61261V5.10811C137.997 5.03604 138.032 5 138.103 5H139.834C139.905 5 139.94 5.03604 139.94 5.10811V9.61261C139.94 9.64865 139.976 9.68468 140.011 9.68468ZM145.523 6.2973H143.792C143.721 6.2973 143.686 6.33334 143.686 6.40541V8.17118C143.686 8.24325 143.721 8.27928 143.792 8.27928H145.523C145.594 8.27928 145.629 8.24325 145.629 8.17118V6.40541C145.629 6.33334 145.594 6.2973 145.523 6.2973ZM159.727 17.3243C160.363 18.0451 161.246 18.4775 162.271 18.4775C163.578 18.4775 164.709 17.7207 165.345 16.6397C165.345 16.5676 165.415 16.5676 165.451 16.5676L167.182 16.8919C167.253 16.8919 167.288 16.964 167.253 17.036C166.44 19.018 164.532 20.4234 162.306 20.4234C159.232 20.4234 156.794 17.8288 156.935 14.6937C157.041 11.8829 159.338 9.61263 162.094 9.50452C164.709 9.39641 166.935 11.2342 167.5 13.7207C167.5 13.7568 167.5 13.7928 167.429 13.8288L165.698 14.5856L159.762 17.1442C159.691 17.1802 159.691 17.2523 159.727 17.3243ZM164.815 12.6757C164.214 11.955 163.295 11.4865 162.271 11.4865C160.363 11.4865 158.808 13.036 158.843 15.018V15.3063C158.843 15.3424 158.914 15.4144 158.985 15.3784C159.055 15.3424 164.779 12.8559 164.779 12.8559C164.85 12.8198 164.85 12.7478 164.815 12.6757ZM156.688 9.68469H154.992C154.957 9.68469 154.921 9.72073 154.886 9.75676L152.13 18.009C152.059 18.1892 151.847 18.1892 151.777 18.009L149.021 9.75676C149.021 9.72073 148.985 9.68469 148.915 9.68469H147.219C147.148 9.68469 147.113 9.75676 147.113 9.82884L150.611 20.2072C150.611 20.2433 150.646 20.2793 150.717 20.2793H153.119C153.155 20.2793 153.19 20.2433 153.225 20.2072L156.723 9.82884C156.794 9.75676 156.759 9.68469 156.688 9.68469ZM143.792 9.68469H145.523C145.594 9.68469 145.629 9.75676 145.629 9.7928V20.1712C145.629 20.2433 145.594 20.2793 145.523 20.2793H143.792C143.721 20.2793 143.686 20.2433 143.686 20.1712V9.7928C143.686 9.72073 143.721 9.68469 143.792 9.68469ZM130.612 18.4775C128.492 18.4775 126.832 16.5315 127.22 14.2973C127.432 13.0721 128.634 11.8108 129.835 11.5586C131.142 11.2703 132.379 11.7387 133.156 12.6396C133.192 12.6757 133.262 12.6757 133.298 12.6396L134.534 11.3784C134.57 11.3423 134.57 11.2703 134.534 11.2342C133.51 10.0811 131.99 9.39639 130.33 9.46847C127.609 9.61261 125.348 11.8829 125.206 14.6577C125.065 17.7928 127.503 20.3874 130.577 20.3874C132.132 20.3874 133.545 19.7027 134.534 18.6216C134.57 18.5856 134.57 18.5495 134.534 18.5135L133.298 17.2523C133.262 17.2162 133.192 17.2162 133.156 17.2523C132.556 18.045 131.637 18.4775 130.612 18.4775ZM112.239 5H110.508C110.437 5 110.402 5.03604 110.402 5.10811V20.1712C110.402 20.2432 110.437 20.2793 110.508 20.2793H112.239C112.31 20.2793 112.345 20.2432 112.345 20.1712V5.10811C112.345 5.03604 112.275 5 112.239 5ZM86.7287 14.2973C86.3401 16.5315 88.0007 18.4775 90.1207 18.4775C91.1454 18.4775 92.064 18.045 92.6647 17.2523C92.7 17.2162 92.7707 17.2162 92.806 17.2523L94.0427 18.5135C94.078 18.5495 94.078 18.5856 94.0427 18.6216C93.0533 19.7027 91.64 20.3874 90.0854 20.3874C87.0114 20.3874 84.5734 17.7928 84.7147 14.6577C84.8561 11.8829 87.1174 9.61261 89.838 9.46847C91.4987 9.39639 93.018 10.0811 94.0427 11.2342C94.078 11.2703 94.078 11.3423 94.0427 11.3784L92.806 12.6396C92.7707 12.6757 92.7 12.6757 92.6647 12.6396C91.8873 11.7387 90.6507 11.2703 89.3434 11.5586C88.142 11.8108 86.9407 13.0721 86.7287 14.2973ZM74.6383 9.5045C73.5076 9.5045 72.2003 10.2252 71.5997 11.0901C71.5643 11.1622 71.423 11.1261 71.423 11.0541V9.79279C71.423 9.75675 71.3877 9.68468 71.317 9.68468H69.5857C69.5503 9.68468 69.4797 9.72072 69.4797 9.79279V15.018V20.2072C69.4797 20.2432 69.515 20.3153 69.5857 20.3153H71.317C71.3523 20.3153 71.423 20.2793 71.423 20.2072V15.018C71.423 13.036 72.7303 11.6306 74.603 11.6306C77.0763 11.6306 77.8183 13.2883 77.8183 15.2342V20.2072C77.8183 20.2432 77.8536 20.3153 77.9243 20.3153H79.6556C79.6909 20.3153 79.7616 20.2793 79.7616 20.2072V15.2342C79.7969 12.2072 78.3836 9.5045 74.6383 9.5045ZM60.6818 17.3243C61.3178 18.045 62.2011 18.4775 63.2257 18.4775C64.5331 18.4775 65.6637 17.7207 66.2997 16.6396C66.2997 16.5676 66.3704 16.5676 66.4057 16.5676L68.137 16.8919C68.2077 16.8919 68.243 16.964 68.2077 17.036C67.395 19.018 65.4871 20.4234 63.2611 20.4234C60.1871 20.4234 57.7491 17.8288 57.8905 14.6937C57.9965 11.8829 60.2931 9.61261 63.0491 9.5045C65.663Line truncated
fill="#4B4E52"
id="path1"
style="fill:#ffffff;fill-opacity:1" />
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M26.009 6.02649C27.5796 8.28932 28.5 11.037 28.5 14C28.5 16.963 27.5796 19.711 26.009 21.9735L22.3826 18.3471C23.0948 17.0585 23.5001 15.5764 23.5001 14C23.5001 12.4236 23.0948 10.9418 22.3826 9.65324L26.009 6.02649Z"
fill="#99CFFF"
id="path2" />
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M22.4735 2.49111L18.8468 6.11758C17.5582 5.40539 16.0764 5.00002 14.5 5.00002C9.5295 5.00002 5.4999 9.02962 5.4999 14.0001C5.4999 18.9706 9.5295 23.0002 14.5 23.0002C16.0764 23.0002 17.5582 22.5949 18.8468 21.8827L22.4735 25.5091C20.2107 27.0796 17.463 28.0001 14.5 28.0001C6.76808 28.0001 0.5 21.732 0.5 14.0001C0.5 6.26819 6.76808 0.00012207 14.5 0.00012207C17.463 0.00012207 20.2107 0.920596 22.4735 2.49111Z"
fill="#1F87FF"
id="path3" />
</svg>

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Symbols by Google - https://github.com/google/material-design-icons/blob/master/LICENSE --><path fill="currentColor" d="M7 21q-.825 0-1.412-.587T5 19V6H4V4h5V3h6v1h5v2h-1v13q0 .825-.587 1.413T17 21zM17 6H7v13h10zM9 17h2V8H9zm4 0h2V8h-2zM7 6v13z"/></svg>

After

Width:  |  Height:  |  Size: 360 B

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Google Material Icons by Material Design Authors - https://github.com/material-icons/material-icons/blob/master/LICENSE --><path fill="currentColor" d="M20 12c0-2.54-1.19-4.81-3.04-6.27L16 0H8l-.95 5.73C5.19 7.19 4 9.45 4 12s1.19 4.81 3.05 6.27L8 24h8l.96-5.73A7.98 7.98 0 0 0 20 12M6 12c0-3.31 2.69-6 6-6s6 2.69 6 6s-2.69 6-6 6s-6-2.69-6-6"/></svg>

After

Width:  |  Height:  |  Size: 448 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

@@ -1,110 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="30"
height="30"
viewBox="0 0 7.9375004 7.9375004"
version="1.1"
id="svg1"
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
sodipodi:docname="dashboard_logo.svg"
inkscape:export-filename="dashboard_logo.png"
inkscape:export-xdpi="409.60001"
inkscape:export-ydpi="409.60001"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="true"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="mm"
inkscape:zoom="16"
inkscape:cx="11.8125"
inkscape:cy="16.78125"
inkscape:window-width="1836"
inkscape:window-height="1185"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="layer1"
showgrid="true"
showguides="false">
<inkscape:grid
id="grid2"
units="mm"
originx="0"
originy="0"
spacingx="0.26458333"
spacingy="0.26458333"
empcolor="#0099e5"
empopacity="0.30196078"
color="#0099e5"
opacity="0.14901961"
empspacing="5"
enabled="true"
visible="true" />
</sodipodi:namedview>
<defs
id="defs1">
<linearGradient
id="linearGradient1"
inkscape:collect="always">
<stop
style="stop-color:#ad70ff;stop-opacity:1;"
offset="0"
id="stop1" />
<stop
style="stop-color:#00ffff;stop-opacity:1;"
offset="0.99844205"
id="stop2" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1"
id="linearGradient2"
x1="0"
y1="8.4666653"
x2="8.4664993"
y2="0"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.93751843,0.93750002)" />
</defs>
<g
inkscape:label="back"
inkscape:groupmode="layer"
id="layer1">
<rect
style="font-variation-settings:'wght' 700;fill:url(#linearGradient2);stroke-width:0.468754;stroke-linecap:round;stroke-linejoin:round"
id="rect1"
width="7.9380002"
height="7.9375"
x="0"
y="0"
rx="1.5874999"
ry="1.5874999" />
<path
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:1.05833;stroke-linecap:butt;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1"
d="m 1.5874998,3.7041664 v 1.3229167 h 1.3229166 v 1.3229165 l 1.3229165,-1e-7"
id="path3"
sodipodi:nodetypes="ccccc" />
<path
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:1.05833;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
d="M 1.5874998,2.6458332 V 1.5875 c 3.1749997,-2e-7 4.7624995,1.5874997 4.7624995,4.7624995 H 5.2916661"
id="path4"
sodipodi:nodetypes="cccc" />
</g>
<g
inkscape:groupmode="layer"
id="layer2"
inkscape:label="front"
style="stroke-width:2.11667;stroke-dasharray:none" />
</svg>

Before

Width:  |  Height:  |  Size: 3.4 KiB

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><!-- Icon from Material Design Icons by Pictogrammers - https://github.com/Templarian/MaterialDesign/blob/master/LICENSE --><path fill="currentColor" d="M1.5 4v1.5c0 4.15 2.21 7.78 5.5 9.8V20h15v-2c0-2.66-5.33-4-8-4h-.25C9 14 5 10 5 5.5V4m9 0a4 4 0 0 0-4 4a4 4 0 0 0 4 4a4 4 0 0 0 4-4a4 4 0 0 0-4-4"/></svg>

After

Width:  |  Height:  |  Size: 391 B

+45 -44
View File
@@ -1,8 +1,7 @@
<layout>
<include src="theme.xml" />
<theme>
<var key="side_size" value="48" />
<var key="top_size" value="40" />
<var key="side_sprite_size" value="26" />
<var key="side_button_size" value="48" />
</theme>
@@ -13,10 +12,8 @@
round="100%"
width="~side_button_size"
height="~side_button_size"
color="#44444400"
hover_color="#333333ff"
border_color="#00000000"
hover_border_color="#555555ff"
color="background_contrast(transparent)"
border_color="background_contrast"
tooltip="${tooltip}"
tooltip_side="${tooltip_side}"
>
@@ -25,13 +22,6 @@
</template>
<elements>
<div position="absolute" width="100%" justify_content="space_between">
<div />
<div padding="6">
<Button id="btn_close" sprite_src_builtin="dashboard/close.svg" color="#000000" border="2" border_color="~color_faded" />
</div>
</div>
<!-- left/right separator (menu and rest) -->
<div flex_direction="row" gap="8" width="100%" height="100%" padding="4" interactable="0">
<!-- LEFT MENU -->
@@ -45,7 +35,7 @@
<rectangle
width="100%"
round="100%"
color="~color_menu_dark"
color="background_contrast"
flex_direction="column"
justify_content="center"
align_items="center"
@@ -55,53 +45,64 @@
<SideButton id="btn_side_apps" src_builtin="dashboard/apps.svg" tooltip="APPLICATIONS" tooltip_side="right" />
<SideButton id="btn_side_games" src_builtin="dashboard/games.svg" tooltip="GAMES" tooltip_side="right" />
<SideButton id="btn_side_monado" src_builtin="dashboard/monado.svg" tooltip="MONADO_RUNTIME" tooltip_side="right" />
<!-- SideButton id="btn_side_processes" src_builtin="dashboard/window.svg" tooltip="PROCESSES" tooltip_side="right" /-->
<rectangle height="2" color="#FFFFFF33" width="~side_sprite_size" />
<rectangle height="2" color="outline" width="~side_sprite_size" />
<SideButton id="btn_side_settings" src_builtin="dashboard/settings.svg" tooltip="SETTINGS" tooltip_side="right" />
</rectangle>
</div>
<!-- REST -->
<!-- content/bottom panel separator -->
<!-- top/content/bottom panel separator -->
<div
flex_direction="column"
gap="8"
width="100%"
height="100%"
overflow_x="scroll">
<!-- CONTENT -->
<!-- TOP PANEL -->
<div position="relative" width="100%" height="~top_size" min_height="~top_size" max_height="~top_size" justify_content="end">
<!-- Title bar -->
<div width="100%" align_items="center" justify_content="center">
<rectangle min_width="300" height="100%" consume_mouse_events="1" round="100%" color="background_contrast" align_items="center" justify_content="center" gap="8">
<sprite id="sprite_titlebar_icon" width="24" height="24" color="on_background_contrast" />
<label id="label_titlebar_title" weight="bold" size="16" text="Title" color="on_background_contrast" />
</rectangle>
</div>
<!-- Close button -->
<Button position="absolute" id="btn_close" color="background_contrast" border_color="background_contrast" round="100%" width="~top_size" height="~top_size" tooltip="CLOSE_WINDOW" tooltip_side="left"
hover_color="danger" hover_border_color="danger(rgb-mult-0.5)" >
<sprite src_builtin="dashboard/close.svg" width="32" height="32" />
</Button>
</div>
<!-- CONTENT -->
<!-- color and color2 alpha will be modified at runtime -->
<rectangle
id="rect_content"
color2="#0d131a00"
color="#252f5300"
color2="background_contrast"
color="background"
gradient="vertical"
round="8"
flex_grow="1"
width="100%"
overflow_y="scroll"
overflow="scroll"
position="relative"
>
<!-- radial gradient -->
<rectangle
position="absolute" width="100%" height="100%"
gradient="radial" color="#44BBFF11" color2="#00000000" />
gradient="radial" color="background_variant(opacity-0.5)" color2="background_variant(transparent)" />
<div
id="content"
flex_direction="column"
overflow_x="scroll"
overflow_y="scroll"
padding_top="8"
padding_bottom="8"
padding_left="16"
padding_right="16"
gap="8"
width="100%"
min_height="100%"
>
<!-- filled-in at runtime -->
<div overflow_x="scroll" overflow_y="scroll" width="100%" height="100%">
<div
id="content"
flex_direction="column"
gap="8"
width="100%"
height="100%"
>
<!-- padding set at runtime -->
<!-- filled-in at runtime -->
</div>
</div>
<div position="absolute" id="popup_manager" width="100%" height="100%" />
</rectangle>
<!-- BOTTOM PANEL -->
@@ -116,36 +117,36 @@
flex_direction="row"
align_items="center"
justify_content="space_between"
color="~color_bottom_panel"
color="background"
>
<!-- left gradient -->
<div position="absolute" width="100%" height="100%" justify_content="start">
<rectangle position="absolute" width="40%" height="100%" color="#0a0a0a" color2="#0a0a0a00" round="8" gradient="horizontal" />
<rectangle position="absolute" width="40%" height="100%" color="shadow" color2="shadow(transparent)" round="8" gradient="horizontal" />
</div>
<!-- right gradient -->
<div position="absolute" width="100%" height="100%" justify_content="end">
<rectangle position="absolute" width="40%" height="100%" color2="#0a0a0a" color="#0a0a0a00" round="8" gradient="horizontal" />
<rectangle position="absolute" width="40%" height="100%" color2="shadow" color="shadow(transparent)" round="8" gradient="horizontal" />
</div>
<!-- top shine -->
<div position="absolute" width="100%" height="100%" justify_content="center">
<rectangle position="absolute" width="99%" height="2" color="#FFFFFF22" round="4" />
<rectangle position="absolute" width="99%" height="2" color="highlight(opacity-0.2)" round="4" />
</div>
<!-- Left bottom side -->
<div margin_left="8">
<Button id="btn_audio" color="#FFFFFF00" border_color="#FFFFFF00" tooltip="AUDIO.VOLUME" tooltip_side="top">
<Button id="btn_audio" color="background(transparent)" border_color="background(transparent)" tooltip="AUDIO.VOLUME" tooltip_side="top">
<sprite src_builtin="dashboard/volume.svg" width="24" height="24" margin="8" />
</Button>
<Button id="btn_recenter" color="#FFFFFF00" border_color="#FFFFFF00" tooltip="ACTIONS.RECENTER_PLAYSPACE" tooltip_side="top">
<Button id="btn_recenter" color="background(transparent)" border_color="background(transparent)" tooltip="ACTIONS.RECENTER_PLAYSPACE" tooltip_side="top">
<sprite src_builtin="dashboard/recenter.svg" width="24" height="24" margin="8" />
</Button>
</div>
<!-- Right bottom side -->
<div margin_right="16">
<label id="label_time" size="16" weight="light" />
<label id="label_time" weight="bold" size="16" color="on_background" />
</div>
</rectangle>
</div>
@@ -1,25 +1,23 @@
<layout>
<include src="theme.xml" />
<macro name="dropdown_button"
flex_direction="row"
border="2"
color="#00000055"
border_color="#FFFFFF66"
color="background"
border_color="outline"
justify_content="space_between" />
<!-- id, text, translation, tooltip -->
<!-- id, text, translation, tooltip, min_width -->
<template name="DropdownButton">
<label text="${text}" translation="${translation}" />
<Button id="${id}" height="32" tooltip="${tooltip}" >
<div padding_left="8" padding_right="8" min_width="200">
<div padding_left="8" padding_right="8" min_width="${min_width}">
<label id="${id}_value" weight="bold" />
</div>
<div gap="2">
<div padding_top="4" padding_bottom="4">
<rectangle width="2" height="100%" color="#FFFFFF66" />
<rectangle width="2" height="100%" color="outline" />
</div>
<sprite margin_left="-4" width="30" height="30" color="~color_text" src_builtin="dashboard/down.svg" />
<sprite margin_left="-4" width="30" height="30" src_builtin="dashboard/down.svg" />
</div>
</Button>
</template>
+7 -9
View File
@@ -1,22 +1,20 @@
<layout>
<include src="theme.xml" />
<macro name="group_box"
flex_direction="column"
align_items="baseline"
border="2"
color="#00000055"
border_color="#FFFFFF66"
color="background_contrast(opacity-0.5)"
border_color="outline"
padding="12"
gap="8"
round="8" />
<!-- src, text, translation -->
<!-- src_builtin, text, translation -->
<template name="GroupBoxTitle">
<div flex_direction="row" align_items="center" gap="8">
<sprite src="${src}" src_builtin="${src_builtin}" width="24" height="24" />
<label text="${text}" translation="${translation}" weight="bold" size="18" />
<sprite src_builtin="${src_builtin}" width="24" height="24" color="secondary" />
<label text="${text}" translation="${translation}" weight="bold" size="18" color="secondary" />
</div>
<rectangle color="#FFFFFF44" width="100%" height="2" />
<rectangle color="outline" width="100%" height="2" />
</template>
</layout>
</layout>
+16
View File
@@ -0,0 +1,16 @@
<layout>
<template name="LoadingWithText">
<div id="root" width="100%" height="100%" align_items="center" justify_content="center">
<div flex_direction="row" gap="8" align_items="center" >
<sprite id="sprite_loading" src_builtin="dashboard/loading.svg" width="32" height="32" color="on_background"/>
<label translation="LOADING" weight="bold"/>
</div>
</div>
</template>
<template name="LoadingWithoutText">
<div id="root" width="100%" height="100%" align_items="center" justify_content="center">
<sprite id="sprite_loading" src_builtin="dashboard/loading.svg" width="32" height="32" color="on_background"/>
</div>
</template>
</layout>
+3 -7
View File
@@ -1,16 +1,12 @@
<layout>
<include src="theme.xml" />
<macro name="home_button" round="8" hover_color="primary" hover_border_color="on_primary" />
<template name="MenuButton">
<Button
id="${id}"
width="120"
height="82"
color="#00000033"
border_color="#FFFFFF77"
hover_color="~color_accent"
hover_border_color="#FFFFFF"
round="8">
macro="home_button">
<div gap="8"
align_items="center"
justify_content="center"
@@ -20,4 +16,4 @@
</div>
</Button>
</template>
</layout>
</layout>
+2 -2
View File
@@ -1,5 +1,5 @@
<layout>
<template name="Separator">
<rectangle width="100%" height="1" color="#FFFFFF77" />
<rectangle width="100%" min_height="2" color="#FFFFFF10" />
</template>
</layout>
</layout>
+16 -10
View File
@@ -1,15 +1,14 @@
<layout>
<include src="t_tab_title.xml" />
<include src="../theme.xml" />
<include src="../t_group_box.xml" />
<!-- tooltip, src, src_ext, name -->
<template name="AppEntry">
<Button
id="button" width="116" max_width="140" min_height="100" flex_grow="1"
id="button" tooltip_side="bottom" tooltip="${tooltip}" width="116" max_width="140" min_height="100" flex_grow="1"
flex_direction="column" overflow="visible" align_items="center" justify_content="center" gap="4"
color="#3385FF10"
>
<div>
<sprite src="${src}" src_ext="${src_ext}" width="64" height="64" />
<sprite src="${src}" src_ext="${src_ext}" width="64" height="64" color="#FFFFFF" parent_color="ignore" />
</div>
<div align_items="center" justify_content="center">
<label width="116" weight="bold" text="${name}" size="12" wrap="1" align="center" padding_left="16" padding_right="16" />
@@ -18,14 +17,13 @@
</template>
<template name="CategoryText">
<rectangle width="100%" flex_direction="column" round="8" border="2" gradient="vertical" color2="#4477FF09" color="#5588FF10" border_color="#FFFFFF00">
<rectangle width="100%" flex_direction="column" round="8" border="2" gradient="vertical" color2="background" color="background_variant" border_color="outline">
<label margin="8" text="${text}" weight="bold" size="22" />
<rectangle height="2" color="~color_accent" margin_left="4" margin_right="4" />
<rectangle height="2" color="primary" margin_left="4" margin_right="4" />
</rectangle>
</template>
<elements>
<TabTitle translation="APPLICATIONS" icon="dashboard/apps.svg" />
<!-- placeholders for now -->
<!--
<div gap="4" align_items="center">
@@ -41,12 +39,20 @@
</rectangle>
</div>
-->
<rectangle macro="group_box">
<div align_items="center" gap="8">
<sprite src_builtin="dashboard/heart_plus.svg" color="primary" min_width="24" min_height="24"/>
<label translation="PINNED_APPS"/>
</div>
<div id="pinned_apps_parent" flex_direction="row" flex_wrap="wrap" gap="4">
<!-- filled-in at runtime -->
</div>
</rectangle>
<div
id="app_list_parent"
flex_direction="row"
flex_wrap="wrap"
gap="4"
overflow_y="scroll"
/>
</elements>
</layout>
</layout>
+47
View File
@@ -0,0 +1,47 @@
<layout>
<include src="../t_group_box.xml" />
<!-- icon, nickname -->
<template name="Avatar">
<div flex_direction="column" gap="12" align_items="center">
<image src_builtin="${icon}" width="72" height="72" round="100%" position="relative">
<rectangle position="absolute" margin_left="-2" margin_top="-2" width="76" height="76" color="highlight" round="100%"/>
</image>
<label size="14" text="${nickname}"/>
</div>
</template>
<elements>
<div position="absolute" width="100%" height="100%" padding="4">
<!-- <rectangle width="100%" height="100%" color="#000000" round="6"/> -->
</div>
<div margin="32" flex_direction="column" align_items="center" justify_content="center" gap="16" height="100%">
<div gap="16" align_items="center" width="100%">
<sprite color="#FFAAAA" src_builtin="dashboard/donate.svg" min_width="64" min_height="64"/>
<label wrap="1" size="20" translation="DONATE.DESCRIPTION" color="on_background"/>
</div>
<div flex_direction="column" gap="8" align_items="center" margin_top="16">
<Button id="btn_donate" tooltip="DONATE.BUTTON_TOOLTIP" align_self="baseline">
<image src_builtin="dashboard/opencollective_logo.svg" width="252" height="42" margin="8" margin_left="16" margin_right="16"/>
</Button>
<label text="opencollective.com/wayvr-org"/>
</div>
<label weight="bold" size="24" translation="DONATE.THANK_YOU_WAYVR" color="on_background"/>
<div gap="32" margin_top="16">
<Avatar icon="dashboard/avatars/galister.png" nickname="galister"/>
<Avatar icon="dashboard/avatars/oo8dev.png" nickname="oo8dev"/>
</div>
<!--
<rectangle color="#FFFFFF33" width="100%" height="2"/>
<rectangle macro="group_box" align_self="start" width="100%">
<label weight="bold" size="18" translation="DONATE.CURRENT_SUPPORTERS"/>
</rectangle>
-->
</div>
</elements>
</layout>
+2 -4
View File
@@ -1,8 +1,6 @@
<layout>
<include src="t_tab_title.xml" />
<elements>
<TabTitle translation="GAMES" icon="dashboard/games.svg" />
<div id="game_list_parent" align_items="center" />
<div id="running_games_list_parent" align_self="center" />
<div id="game_list_parent" align_items="center" flex_direction="column" gap="8" />
</elements>
</layout>
+16 -3
View File
@@ -8,17 +8,30 @@
align_items="center"
flex_grow="1"
gap="24">
<sprite src_builtin="dashboard/wayvr_dashboard.svg" width="96" height="96" />
<label id="label_hello" size="32" weight="bold" />
<image src_builtin="dashboard/splash.png" width="300" height="89" />
<label id="label_hello" size="32" weight="bold" color="on_background" />
<!-- main button list -->
<div flex_direction="row" gap="8">
<MenuButton id="btn_apps" icon="dashboard/apps.svg" translation="APPLICATIONS" />
<MenuButton id="btn_games" icon="dashboard/games.svg" translation="GAMES" />
<MenuButton id="btn_monado" icon="dashboard/monado.svg" text="Monado" />
<!--MenuButton id="btn_processes" icon="dashboard/window.svg" translation="PROCESSES" /-->
<MenuButton id="btn_settings" icon="dashboard/settings.svg" translation="SETTINGS" />
</div>
<div gap="8">
<Button id="btn_welcome_screen" macro="home_button" tooltip="APP_SETTINGS.SHOW_WELCOME_SCREEN">
<sprite src_builtin="dashboard/welcome.svg" width="32" height="32" margin="16" />
</Button>
<Button id="btn_website" macro="home_button" tooltip_str="wayvr.org">
<sprite src_builtin="dashboard/globe.svg" width="32" height="32" margin="16" />
</Button>
<Button id="btn_donate" macro="home_button" tooltip="DONATE.SUPPORT_US">
<sprite src_builtin="dashboard/opencollective.svg" width="32" height="32" margin="16" />
</Button>
</div>
</div>
</elements>
</layout>
+10 -36
View File
@@ -1,40 +1,14 @@
<layout>
<include src="t_tab_title.xml" />
<include src="../t_group_box.xml" />
<!-- key: str, value: str -->
<template name="BoolFlag">
<div flex_direction="row" gap="4">
<label text="${key}" />
<label weight="bold" text="${value}" />
</div>
</template>
<!-- name, checked, flag_* -->
<template name="Cell">
<rectangle macro="group_box">
<CheckBox id="checkbox" text="${name}" checked="${checked}" />
<div flex_direction="row" gap="8">
<BoolFlag key="Active:" value="${flag_active}" />
<BoolFlag key="Focused:" value="${flag_focused}" />
<BoolFlag key="IO active:" value="${flag_io_active}" />
<BoolFlag key="Overlay:" value="${flag_overlay}" />
<BoolFlag key="Primary:" value="${flag_primary}" />
<BoolFlag key="Visible:" value="${flag_visible}" />
</div>
</rectangle>
</template>
<elements>
<TabTitle translation="MONADO_RUNTIME" icon="dashboard/monado.svg" />
<label translation="DISPLAY_BRIGHTNESS" />
<Slider id="slider_brightness" width="300" height="24" min_value="0" max_value="140" />
<label translation="LIST_OF_PROCESSES" />
<div id="list_parent" flex_direction="column" gap="8">
<!-- filled at runtime -->
<div gap="4">
<Tabs id="tabs">
<Tab name="process_list" translation="PROCESS_LIST" sprite_src_builtin="dashboard/cpu.svg" />
<Tab name="general_settings" translation="GENERAL_SETTINGS" sprite_src_builtin="dashboard/settings.svg" />
<Tab name="debug_timings" translation="DEBUG_INFO" sprite_src_builtin="dashboard/not_a_bug.svg" />
</Tabs>
<div gap="4" id="content" width="100%">
<!-- filled-in at runtime -->
</div>
</div>
</elements>
</layout>
</layout>
@@ -0,0 +1,27 @@
<layout>
<include src="../t_group_box.xml" />
<!-- name, limit_min, limit_max -->
<template name="DebugGraph">
<rectangle flex_direction="column" align_items="center" gap="8" border="2" color="#ffffff11" color2="#ffffff22" gradient="vertical" border_color="#ffffff33" round="4" padding="4">
<label text="${name}" size="9" weight="bold" />
<BarGraph id="graph" width="180" height="70" unit="ms" limit_min="${limit_min}" limit_max="${limit_max}" capacity="50" />
</rectangle>
</template>
<!-- text -->
<template name="SessionButton">
<Button id="button" text="${text}" />
</template>
<elements>
<rectangle macro="group_box">
<GroupBoxTitle src_builtin="dashboard/apps.svg" text="Sessions" />
<div id="session_list_parent" flex_wrap="wrap" flex_direction="row" gap="8" />
<GroupBoxTitle src_builtin="dashboard/not_a_bug.svg" text="Debug timings" />
<div id="timings_parent" flex_wrap="wrap" flex_direction="row" gap="8">
<label text="Please select which session you want to monitor" />
</div>
</rectangle>
</elements>
</layout>
@@ -0,0 +1,56 @@
<layout>
<include src="../t_group_box.xml" />
<macro name="slider" width="100%" height="24"/>
<theme>
<var key="s_width" value="500"/>
</theme>
<elements>
<div flex_direction="column" gap="8">
<rectangle macro="group_box">
<GroupBoxTitle src_builtin="dashboard/settings.svg" translation="GENERAL_SETTINGS" />
<label translation="DISPLAY_BRIGHTNESS" />
<Slider id="slider_brightness" width="300" height="24" min_value="0" max_value="140" />
</rectangle>
<rectangle macro="group_box">
<GroupBoxTitle src_builtin="dashboard/settings.svg" translation="APP_SETTINGS.COLOR_KEYING" />
<div gap="8" width="~s_width">
<div gap="8" flex_direction="column" width="100%">
<label text="Color"/>
<ColorSelector id="cs_keying" height="24" width="100%"/>
</div>
<div gap="8" flex_direction="column" width="100%">
<label text="Despill"/>
<Slider id="slider_keying_despill" min_value="0" max_value="100" macro="slider"/>
</div>
<div gap="8" flex_direction="column" width="100%">
<label text="Curve (0 = disabled)"/>
<Slider id="slider_keying_curve" min_value="0" max_value="100" macro="slider"/>
</div>
</div>
<div gap="8" width="~s_width">
<div gap="8" flex_direction="column" width="100%">
<label text="Hue range"/>
<Slider id="slider_keying_hue_range" min_value="0" max_value="100" macro="slider"/>
</div>
<div gap="8" flex_direction="column" width="100%">
<label text="Saturation range"/>
<Slider id="slider_keying_saturation_range" min_value="0" max_value="100" macro="slider"/>
</div>
<div gap="8" flex_direction="column" width="100%">
<label text="Value range"/>
<Slider id="slider_keying_value_range" min_value="0" max_value="100" macro="slider"/>
</div>
</div>
</rectangle>
</div>
</elements>
</layout>
@@ -0,0 +1,35 @@
<layout>
<include src="../t_group_box.xml" />
<!-- key: str, value: str -->
<template name="BoolFlag">
<div flex_direction="row" gap="4">
<label text="${key}" />
<label weight="bold" text="${value}" />
</div>
</template>
<!-- name, checked, flag_* -->
<template name="Cell">
<rectangle macro="group_box">
<CheckBox id="checkbox" text="${name}" checked="${checked}" />
<div flex_direction="row" gap="8" flex_wrap="wrap">
<BoolFlag key="Active:" value="${flag_active}" />
<BoolFlag key="Focused:" value="${flag_focused}" />
<BoolFlag key="IO active:" value="${flag_io_active}" />
<BoolFlag key="Overlay:" value="${flag_overlay}" />
<BoolFlag key="Primary:" value="${flag_primary}" />
<BoolFlag key="Visible:" value="${flag_visible}" />
</div>
</rectangle>
</template>
<elements>
<rectangle macro="group_box">
<GroupBoxTitle src_builtin="dashboard/cpu.svg" translation="PROCESS_LIST" />
<div id="list_parent" flex_direction="column" gap="8">
<!-- filled at runtime -->
</div>
</rectangle>
</elements>
</layout>
@@ -1,10 +0,0 @@
<layout>
<include src="t_tab_title.xml" />
<elements>
<TabTitle translation="LIST_OF_WINDOWS" icon="dashboard/window.svg" />
<div id="window_list_parent" />
<TabTitle translation="LIST_OF_PROCESSES" icon="dashboard/cpu.svg" />
<div id="process_list_parent" />
</elements>
</layout>
+36 -9
View File
@@ -1,5 +1,4 @@
<layout>
<include src="t_tab_title.xml" />
<include src="../t_group_box.xml" />
<include src="../t_dropdown_button.xml" />
@@ -14,8 +13,13 @@
</template>
<template name="SliderSetting">
<label text="${text}" translation="${translation}" />
<Slider id="${id}" width="250" height="24" min_value="${min}" max_value="${max}" step="${step}" value="${value}" tooltip="${tooltip}" />
<Slider id="${id}" width="200" height="24" min_value="${min}" max_value="${max}" step="${step}" value="${value}" tooltip="${tooltip}" />
<label text="${text}" weight="bold" translation="${translation}" />
</template>
<template name="RangeSetting">
<Slider id="${id}" width="200" height="24" min_value="${min}" max_value="${max}" step="${step}" value="${value}" value2="${value2}" tooltip="${tooltip}" />
<label text="${text}" weight="bold" translation="${translation}" />
</template>
<template name="SelectSetting">
@@ -27,8 +31,15 @@
<RadioBox text="${text}" translation="${translation}" value="${value}" tooltip="${tooltip}" />
</template>
<template name="ButtonText">
<Button id="${id}" height="32" tooltip="${translation}_HELP" padding="4" gap="8">
<sprite src_builtin="${icon}" height="24" width="24" />
<label align="left" translation="${translation}" weight="bold" min_width="200" />
</Button>
</template>
<template name="DangerButton">
<Button id="${id}" color="#AA3333" height="32" tooltip="${translation}_HELP" padding="4" gap="8" >
<Button id="${id}" color="danger" border_color="danger(rgb-mult-0.5)" height="32" tooltip="${translation}_HELP" padding="4" gap="8">
<sprite src_builtin="${icon}" height="24" width="24" />
<label align="left" translation="${translation}" weight="bold" min_width="200" />
</Button>
@@ -36,17 +47,33 @@
<template name="AutostartApp">
<div id="${id}_root" flex_direction="row">
<Button id="${id}" color="#AA3333" height="24" padding="4" margin_top="-2" margin_bottom="-2" >
<Button id="${id}" color="#AA3333" height="24" padding="4" margin_top="-2" margin_bottom="-2"
hover_color="danger" hover_border_color="danger(rgb-mult-0.5)" >
<sprite src_builtin="dashboard/close.svg" height="20" width="20" />
</Button>
<div padding_left="8" >
<label align="left" text="${text}" weight="bold" overflow="hidden"/>
<div padding_left="8">
<label align="left" text="${text}" weight="bold" overflow="hidden" />
</div>
</div>
</template>
<macro name="tab_style" color="background" />
<elements>
<TabTitle translation="SETTINGS" icon="dashboard/settings.svg" />
<div flex_wrap="wrap" justify_content="stretch" gap="4" id="settings_root" />
<div gap="4">
<Tabs id="tabs">
<Tab macro="tab_style" name="look_and_feel" translation="APP_SETTINGS.LOOK_AND_FEEL" sprite_src_builtin="dashboard/palette.svg" />
<Tab macro="tab_style" name="skybox" translation="APP_SETTINGS.SKYBOX" sprite_src_builtin="dashboard/globe.svg" />
<Tab macro="tab_style" name="features" translation="APP_SETTINGS.FEATURES" sprite_src_builtin="dashboard/options.svg" />
<Tab macro="tab_style" name="controls" translation="APP_SETTINGS.CONTROLS" sprite_src_builtin="dashboard/controller.svg" />
<Tab macro="tab_style" name="space_drag" translation="APP_SETTINGS.SPACE_DRAG" sprite_src_builtin="dashboard/drag.svg" />
<Tab macro="tab_style" name="misc" translation="APP_SETTINGS.MISC" sprite_src_builtin="dashboard/blocks.svg" />
<Tab macro="tab_style" name="autostart_apps" translation="APP_SETTINGS.AUTOSTART_APPS" sprite_src_builtin="dashboard/apps.svg" />
<Tab macro="tab_style" name="troubleshooting" translation="APP_SETTINGS.TROUBLESHOOTING" sprite_src_builtin="dashboard/cpu.svg" />
</Tabs>
<div flex_wrap="wrap" justify_content="stretch" gap="4" id="settings_root" width="100%">
<!-- filled-in at runtime -->
</div>
</div>
</elements>
</layout>
@@ -0,0 +1,14 @@
<layout>
<include src="../t_group_box.xml" />
<elements>
<div id="common_options_parent" flex_direction="column" gap="8"/>
<rectangle macro="group_box">
<GroupBoxTitle src_builtin="dashboard/gravity.svg" translation="APP_SETTINGS.SPACE_GRAVITY_GRAVITY" />
<div id="gravity_enabled_parent"/>
<div id="space_gravity_parent" flex_direction="column" gap="8">
<!-- filled-in at runtime -->
</div>
</rectangle>
</elements>
</layout>
@@ -1,9 +0,0 @@
<layout>
<!-- translation, icon -->
<template name="TabTitle">
<div gap="8" align_items="center">
<sprite src_builtin="${icon}" width="24" height="24" />
<label translation="${translation}" size="18" weight="bold" />
</div>
</template>
</layout>
+24
View File
@@ -0,0 +1,24 @@
<layout>
<template name="Pip">
<rectangle id="pip" width="8" height="8" round="100%" color="${COLOR}"/>
</template>
<elements>
<div position="relative" flex_grow="1">
<!-- Content -->
<div position="absolute" id="content" flex_direction="column" flex_grow="1" align_items="center" justify_content="center" gap="16" width="100%" height="100%">
<!-- filled-in at runtime -->
</div>
<!-- Page buttons -->
<div position="absolute" align_self="end" justify_self="end" width="100%" flex_direction="column" align_items="center" margin_bottom="8">
<div flex_direction="row" gap="8" align_items="center">
<Button id="btn_prev" width="32" height="32" round="100%" sprite_src_builtin="dashboard/arrow_left.svg" />
<div id="pips" gap="4" align_items="center">
<!-- filled-in at runtime -->
</div>
<Button id="btn_next" width="32" height="32" round="100%" sprite_src_builtin="dashboard/arrow_right.svg" />
</div>
</div>
</div>
</elements>
</layout>
@@ -0,0 +1,22 @@
<layout>
<!-- icon, title -->
<template name="PageTitle">
<div position="absolute" align_self="start" justify_self="center" width="100%" margin_top="16" gap="8" align_items="center" justify_content="center">
<sprite width="48" height="48" src_builtin="${icon}" color="#FFFFFF"/>
<label size="28" weight="bold" translation="${translation}" color="#FFFFFF" shadow="#000000" shadow_x="3" shadow_y="3" />
</div>
</template>
<!-- text -->
<template name="TextDesc">
<label wrap="1" translation="${translation}" size="20" width="500" color="#FFFFFF" shadow="#000000" weight="bold"/>
</template>
<template name="TextDescBig">
<label translation="${translation}" size="24" shadow="#000000" weight="bold" color="${color}"/>
</template>
<macro name="video_overlay_component" looping="1" width="100%" height="auto" max_height="100%" aspect_ratio="1.777777" position="relative"/>
<macro name="video_overlay_content" new_pass="1" position="absolute" width="100%" height="100%" padding_bottom="32"/>
</layout>
@@ -0,0 +1,26 @@
<layout>
<elements>
<image src_builtin="dashboard/splash.png" min_width="336" min_height="100" />
<rectangle color="#FFFFFF11" width="100%" height="2"/>
<label weight="bold" size="28" translation="WELCOME.GREETING"/>
<label weight="bold" size="16" translation="WELCOME.THANKS_FOR_INSTALLING"/>
<label size="20" translation="WELCOME.GUIDE_INTRO"/>
<div gap="4" align_items="center" margin_top="8">
<sprite min_width="16" min_height="16" src_builtin="dashboard/info.svg" color="on_background"/>
<label wrap="1" size="14" translation="WELCOME.REPOSITION_THIS_WINDOW_BY_GRABBING"/>
</div>
<div gap="4" align_items="center">
<sprite min_width="16" min_height="16" src_builtin="dashboard/info.svg" color="on_background"/>
<label wrap="1" size="14" translation="WELCOME.LAST_PAGE_INFO"/>
</div>
<label size="20" weight="bold" translation="WELCOME.NEXT_BUTTON"/>
<div height="38"/> <!-- empty space -->
</elements>
</layout>
@@ -0,0 +1,15 @@
<layout>
<include src_builtin="welcome_common.xml"/>
<elements>
<rectangle color="#103142" width="100%" height="100%" position="absolute"/>
<Video macro="video_overlay_component" src_builtin="video/onboarding_watch.ivf" aspect_ratio="1.0">
<div macro="video_overlay_content">
<PageTitle icon="dashboard/watch.svg" translation="WELCOME.WATCH"/>
<div position="relative" align_self="end" padding="16">
<TextDesc translation="WELCOME.LOOK_AT_LEFT_WRIST"/>
</div>
</div>
</Video>
</elements>
</layout>
@@ -0,0 +1,14 @@
<layout>
<include src_builtin="welcome_common.xml"/>
<elements>
<Video macro="video_overlay_component" src_builtin="video/onboarding_double_press.ivf">
<div macro="video_overlay_content">
<PageTitle icon="dashboard/panorama.svg" translation="WELCOME.WORKING_SET"/>
<div position="relative" align_self="end" padding="16">
<TextDesc translation="WELCOME.DOUBLE_PRESS_TO_TOGGLE"/>
</div>
</div>
</Video>
</elements>
</layout>
@@ -0,0 +1,19 @@
<layout>
<include src_builtin="welcome_common.xml"/>
<elements>
<Video macro="video_overlay_component" src_builtin="video/onboarding_laser_colors.ivf">
<div macro="video_overlay_content">
<PageTitle icon="dashboard/click.svg" translation="WELCOME.LASER_COLORS"/>
<div position="relative" flex_direction="row" gap="16" margin="16" align_self="end" justify_self="end" align_items="center">
<rectangle flex_direction="column" gap="8" padding="8" round="4" border_color="outline" border="2" >
<label size="12" weight="bold" color="#00FFFF" translation="WELCOME.REGULAR_MODE_BLUE_LASER"/>
<label size="12" weight="bold" color="#FFAA00" translation="WELCOME.RIGHT_CLICK_MODE_ORANGE_LASER"/>
<label size="12" weight="bold" color="#FF88FF" translation="WELCOME.MIDDLE_CLICK_MODE_PURPLE_LASER"/>
</rectangle>
<label wrap="1" size="18" width="450" weight="bold" color="#ffffff" shadow="#000000" translation="WELCOME.LASER_FUNCTIONALITY"/>
</div>
</div>
</Video>
</elements>
</layout>
@@ -0,0 +1,20 @@
<layout>
<include src_builtin="welcome_common.xml"/>
<elements>
<rectangle color="#0A2939" width="100%" height="100%" position="absolute"/>
<Video macro="video_overlay_component" src_builtin="video/onboarding_center_marker.ivf" aspect_ratio="1.33333">
<div macro="video_overlay_content">
<PageTitle icon="dashboard/panorama.svg" translation="WELCOME.MOVING_YOUR_SET"/>
<div position="relative" align_self="end" padding="16" flex_direction="column" gap="4">
<label shadow="#000000" size="14" weight="bold" wrap="1" color="#aaffcc" translation="WELCOME.GRAB_ONE_HAND"/>
<label shadow="#000000" size="14" weight="bold" wrap="1" color="#ccaaff" translation="WELCOME.GRAB_BOTH_HANDS"/>
<div align_items="center" gap="8">
<sprite src_builtin="dashboard/info.svg" min_width="48" min_height="48" max_width="48" max_height="48" color="#ffff00"/>
<label shadow="#000000" size="16" weight="bold" wrap="1" color="#ffff00" translation="WELCOME.CENTER_MARKER"/>
</div>
</div>
</div>
</Video>
</elements>
</layout>
@@ -0,0 +1,28 @@
<layout>
<include src_builtin="welcome_common.xml"/>
<elements>
<div flex_direction="row" align_items="center">
<image src_builtin="dashboard/check_3d.png" width="256" height="256"/>
<div flex_direction="column" gap="16" max_width="480">
<TextDescBig translation="WELCOME.ALL_SET" color="tertiary"/>
<rectangle color="#AAFFAA33" width="100%" min_height="2"/>
<label size="16" wrap="1" translation="WELCOME.BASICS"/>
<label size="16" wrap="1" translation="WELCOME.FEATURES_DOCUMENTATION"/>
<Button id="btn_wayvr_org" align_self="baseline" min_height="32">
<sprite src_builtin="dashboard/globe.svg" width="24" height="24" margin="8"/>
<label size="18" weight="bold" text="wayvr.org" margin_right="8" />
</Button>
<rectangle color="#FFFFFF33" width="100%" min_height="2"/>
<Button id="btn_home_screen" min_height="48" >
<sprite src_builtin="dashboard/check.svg" width="32" height="32" margin="8"/>
<label color="on_background" size="20" weight="bold" translation="WELCOME.FINISH_TUTORIAL" margin_right="8" />
</Button>
</div>
</div>
</elements>
</layout>
-7
View File
@@ -1,7 +0,0 @@
<layout>
<theme>
<var key="color_menu_dark" value="#0A0A0ACC" />
<var key="color_accent" value="#008cff" />
<var key="color_bottom_panel" value="#141e28" />
</theme>
</layout>
+27 -21
View File
@@ -1,8 +1,8 @@
<layout>
<template name="Subtext">
<div flex_direction="row" gap="8">
<label weight="bold" text="${title}" />
<label id="${label_id}" />
<div flex_direction="row" gap="8" max_width="100%">
<label weight="bold" text="${title}" wrap="1" />
<label id="${label_id}" wrap="1" />
</div>
</template>
@@ -15,12 +15,10 @@
<elements>
<div flex_direction="row" gap="16" flex_grow="1">
<rectangle macro="group_box" id="icon_parent" padding="16" color="#0033aa66" color2="#00000022" gradient="vertical" justify_content="center">
</rectangle>
<div flex_direction="column" gap="8" flex_grow="1" max_width="720">
<rectangle macro="group_box" id="icon_parent" padding="16" color="background_variant(opacity-0.5)" color2="background(opacity-0.5)" gradient="vertical" justify_content="center"/>
<div flex_direction="column" gap="8" flex_grow="1">
<label id="label_title" weight="bold" size="32" overflow="hidden" />
<Subtext label_id="label_exec" overflow="hidden" />
<Subtext label_id="label_exec"/>
<Separator />
<RadioGroup id="radio_compositor" flex_direction="row" gap="16">
<RadioBox translation="APP_LAUNCHER.MODE.NATIVE" value="Native" checked="1" />
@@ -30,32 +28,40 @@
<label translation="APP_LAUNCHER.RES_TITLE" />
<RadioGroup id="radio_res" flex_direction="row" gap="16">
<RadioBox text="1440p" value="Res1440" />
<RadioBox text="1080p" value="Res1080" checked="1" />
<RadioBox text="1080p" value="Res1080"/>
<RadioBox text="720p" value="Res720" />
<RadioBox text="480p" value="Res480" />
</RadioGroup>
<Separator />
<label translation="APP_LAUNCHER.ASPECT_TITLE" />
<RadioGroup id="radio_orientation" flex_direction="row" gap="16">
<RadioBox translation="APP_LAUNCHER.ASPECT.WIDE" value="Wide" tooltip="16:9" checked="1" />
<RadioBox translation="APP_LAUNCHER.ASPECT.SEMI_WIDE" value="SemiWide" tooltip="3:2" />
<RadioBox translation="APP_LAUNCHER.ASPECT.SQUARE" value="Square" tooltip="1:1" />
<RadioBox translation="APP_LAUNCHER.ASPECT.SEMI_TALL" value="SemiTall" tooltip="2:3" />
<RadioBox translation="APP_LAUNCHER.ASPECT.TALL" value="Tall" tooltip="9:16" />
<RadioBox translation="APP_LAUNCHER.ASPECT.WIDE" value="Wide" tooltip_str="16:9"/>
<RadioBox translation="APP_LAUNCHER.ASPECT.SEMI_WIDE" value="SemiWide" tooltip_str="3:2" />
<RadioBox translation="APP_LAUNCHER.ASPECT.SQUARE" value="Square" tooltip_str="1:1" />
<RadioBox translation="APP_LAUNCHER.ASPECT.SEMI_TALL" value="SemiTall" tooltip_str="2:3" />
<RadioBox translation="APP_LAUNCHER.ASPECT.TALL" value="Tall" tooltip_str="9:16" />
</RadioGroup>
<!-- Separator /> // saved settings override this, so let's hide it for now
<label translation="APP_LAUNCHER.POS_TITLE" />
<RadioGroup id="radio_pos" flex_direction="row" gap="16">
<RadioBox translation="APP_LAUNCHER.POS.FLOATING" value="Floating" tooltip="APP_LAUNCHER.POS.FLOATING_HELP" />
<RadioBox translation="APP_LAUNCHER.POS.ANCHORED" value="Anchored" tooltip="APP_LAUNCHER.POS.ANCHORED_HELP" checked="1" />
<RadioBox translation="APP_LAUNCHER.POS.STATIC" value="Static" tooltip="APP_LAUNCHER.POS.STATIC_HELP" />
<RadioBox translation="APP_LAUNCHER.POS.FLOATING" value="Floating" tooltip_str="APP_LAUNCHER.POS.FLOATING_HELP" />
<RadioBox translation="APP_LAUNCHER.POS.ANCHORED" value="Anchored" tooltip_str="APP_LAUNCHER.POS.ANCHORED_HELP" checked="1" />
<RadioBox translation="APP_LAUNCHER.POS.STATIC" value="Static" tooltip_str="APP_LAUNCHER.POS.STATIC_HELP" />
</RadioGroup -->
<Separator />
<div flex_direction="row" justify_content="space_between" gap="16">
<CheckBox id="cb_autostart" translation="APP_LAUNCHER.AUTOSTART" />
<Button id="btn_launch" align_self="baseline" color="#44ce22FF" padding_top="4" padding_bottom="4" round="8" padding_right="12" min_height="40">
<CheckBox id="cb_autostart" translation="APP_LAUNCHER.AUTOSTART" align_self="baseline"/>
<div flex_direction="row" align_items="end" justify_content="center" gap="8" margin_top="8">
<Button id="btn_unpin" color="danger" padding_left="8" padding_right="8" round="8" min_height="40">
<sprite src_builtin="dashboard/heart_minus.svg" width="32" height="32" />
<label translation="REMOVE_FROM_FAVOURITES" weight="bold" size="17" />
</Button>
<Button id="btn_pin" color="secondary" padding_left="8" padding_right="8" round="8" min_height="40" tooltip="ADD_TO_FAVOURITES_HINT">
<sprite src_builtin="dashboard/heart_plus.svg" width="32" height="32" />
<label translation="ADD_TO_FAVOURITES" weight="bold" size="17" />
</Button>
<Button id="btn_launch" color="primary" padding_left="8" padding_right="8" round="8" min_width="200" min_height="40">
<sprite src_builtin="dashboard/play.svg" width="32" height="32" />
<label translation="APP_LAUNCHER.LAUNCH" weight="bold" size="17" shadow="#00000099" />
<label translation="APP_LAUNCHER.LAUNCH" weight="bold" size="17" />
</Button>
</div>
</div>
@@ -1,16 +1,16 @@
<layout>
<include src="../t_group_box.xml" />
<include src_builtin="../t_group_box.xml" />
<!-- device_name, device_icon -->
<template name="DeviceSlider">
<rectangle macro="group_box">
<div width="100%" align_items="center" justify_content="center" gap="8">
<sprite src="${device_icon}" width="16" height="16" />
<label text="${device_name}" margin_right="8" size="12" weight="bold" />
<sprite src_builtin="${device_icon}" width="16" height="16" color="on_background" />
<label text="${device_name}" margin_right="8" size="12" weight="bold" color="on_background" />
</div>
<div width="100%" align_items="center">
<CheckBox id="checkbox" />
<Button sprite_src="${volume_icon}" id="btn_mute" width="32" />
<Button sprite_src_builtin="${volume_icon}" id="btn_mute" width="32" />
<Slider id="slider" flex_grow="1" height="16" min_value="0" max_value="150" margin_left="8" />
</div>
</rectangle>
@@ -20,7 +20,7 @@
<template name="Card">
<rectangle macro="group_box">
<div width="100%" align_items="center" justify_content="center">
<label text="${card_name}" size="12" weight="bold" />
<label text="${card_name}" size="12" weight="bold" color="on_background" />
</div>
<Button id="btn_card" text="${profile_name}" width="100%" height="32" />
</rectangle>
@@ -29,7 +29,7 @@
<template name="SelectAudioProfileText">
<div align_items="center" gap="8">
<Button width="48" height="32" id="btn_back">
<sprite src_builtin="dashboard/back.svg" width="24" height="24" />
<sprite src_builtin="dashboard/back.svg" width="24" height="24" color="on_background" />
</Button>
<label translation="AUDIO.SELECT_AUDIO_CARD_PROFILE" size="14" weight="bold" />
</div>
@@ -41,28 +41,31 @@
flex_grow="1"
id="${id}"
translation="${translation}"
sprite_src="${src}">
sprite_src_builtin="${src}">
</Button>
</template>
<elements>
<div id="devices" flex_direction="column" gap="4">
<div flex_direction="column" gap="4">
<div id="devices" flex_direction="column" gap="4" max_height="400" overflow_y="scroll">
</div>
</div>
<!-- bottom buttons -->
<div flex_direction="row" gap="4">
<Button
id="btn_auto"
sprite_src_builtin="dashboard/magic_wand.svg"
min_width="32"
tooltip="AUDIO.AUTO_SWITCH_TO_VR_AUDIO"
color="~color_accent"
tooltip_side="right" />
<!-- bottom buttons -->
<div flex_direction="row" gap="4">
<Button
id="btn_auto"
sprite_src_builtin="dashboard/magic_wand.svg"
min_width="32"
tooltip="AUDIO.AUTO_SWITCH_TO_VR_AUDIO"
color="primary"
sprite_color="on_primary"
tooltip_side="right" />
<BottomButton id="btn_sinks" src_builtin="dashboard/volume.svg" translation="AUDIO.SPEAKERS" />
<BottomButton id="btn_sources" src_builtin="dashboard/microphone.svg" translation="AUDIO.MICROPHONES" />
<BottomButton id="btn_cards" src_builtin="dashboard/cpu.svg" translation="AUDIO.CARDS" />
<BottomButton id="btn_sinks" src_builtin="dashboard/volume.svg" translation="AUDIO.SPEAKERS" />
<BottomButton id="btn_sources" src_builtin="dashboard/microphone.svg" translation="AUDIO.MICROPHONES" />
<BottomButton id="btn_cards" src_builtin="dashboard/cpu.svg" translation="AUDIO.CARDS" />
</div>
</div>
</elements>
</layout>
</layout>
@@ -0,0 +1,35 @@
<layout>
<include src="../t_group_box.xml" />
<!-- used at runtime [!!!] -->
<include src="../t_dropdown_button.xml" />
<!-- id, min, max, step, value, value2, tooltip -->
<template name="ThresholdSlider">
<Slider id="${id}" width="200" height="24" min_value="${min}" max_value="${max}" step="${step}" value="${value}" value2="${value2}" tooltip="${tooltip}" />
</template>
<!-- id, translation -->
<template name="ActionRow">
<rectangle macro="group_box" id="${id}">
<!-- top row -->
<div flex_direction="row" gap="8" align_items="center">
<sprite src_builtin="dashboard/controller.svg" width="24" height="24" color="on_background"/>
<label translation="${translation}" color="primary" weight="bold" size="14" />
</div>
<!-- filled-in at runtime -->
</rectangle>
</template>
<elements>
<div flex_direction="column" gap="8" width="100%">
<div flex_direction="column" gap="8" align_items="center" overflow_y="scroll" width="100%" padding="16">
<div id="list_parent" flex_direction="column" gap="6" width="100%"></div>
</div>
<rectangle color="background_contrast" flex_direction="row" gap="8" justify_content="end" padding="8">
<Button id="btn_cancel" sprite_src_builtin="dashboard/cancel.svg" min_width="100" height="32" translation="APP_SETTINGS.CANCEL" />
<Button id="btn_save" sprite_src_builtin="dashboard/check.svg" min_width="100" height="32" translation="APP_SETTINGS.SAVE" />
</rectangle>
</div>
</elements>
</layout>
@@ -0,0 +1,27 @@
<layout>
<template name="ColorPaletteButton">
<Button id="${id}" width="350" flex_direction="column" justify_content="space_around" tooltip="${tooltip}" tooltip_side="bottom"
color="${background}" hover_color="${background_variant}" border_color="${outline}" hover_border_color="${highlight}" padding="16" margin="4" >
<label text="${text}" size="24" weight="bold" color="${on_background}" parent_color="ignore"/>
<div flex_direction="row" width="100%" justify_content="space_evenly" padding_top="16" >
<rectangle round="100%" width="32" height="32" color="${primary}" border="2" border_color="${on_primary}" />
<rectangle round="100%" width="32" height="32" color="${secondary}" border="2" border_color="${on_secondary}" />
<rectangle round="100%" width="32" height="32" color="${tertiary}" border="2" border_color="${on_tertiary}" />
<rectangle round="100%" width="32" height="32" color="${danger}" border="2" border_color="${on_danger}" />
</div>
</Button>
</template>
<template name="CustomPaletteButton">
<Button id="custom_btn" width="350" flex_direction="column" justify_content="space_around" padding="16" margin="4" >
<label translation="APP_SETTINGS.COLOR_PALETTE_CUSTOM_URL" size="16" weight="bold" />
<label translation="APP_SETTINGS.COLOR_PALETTE_CUSTOM_URL2" size="14" color="on_background_variant" />
</Button>
</template>
<elements>
<div flex_direction="column" gap="8" width="100%" align_items="center">
<div id="list_parent" flex_grow="1" flex_wrap="wrap" flex_direction="row" gap="4" width="100%" justify_content="center"></div>
</div>
</elements>
</layout>
@@ -0,0 +1,15 @@
<layout>
<template name="DialogBoxButton">
<Button id="btn" translation="CLOSE_WINDOW" align_self="start" sprite_src_builtin="${icon}"/>
</template>
<elements>
<div flex_direction="column" align_items="center" justify_content="center" width="100%" gap="32">
<label id="label_message" size="18" weight="bold"/>
<div id="buttons" gap="8">
<!-- filled-in at runtime -->
</div>
</div>
</elements>
</layout>
@@ -0,0 +1,22 @@
<layout>
<include src="../t_separator.xml"/>
<template name="btn_close">
<Button id="btn" translation="CLOSE_WINDOW" align_self="start" sprite_src_builtin="dashboard/check.svg"/>
</template>
<elements>
<div align_items="center" justify_content="center" width="100%">
<div id="content" flex_direction="column" gap="8" width="100%">
<label translation="DOWNLOADING_FILE" size="24" weight="bold"/>
<Separator/>
<label id="label_target_path" color="on_background" />
<div gap="8" align_items="center">
<div id="loading_parent"/>
<label id="label_status"/>
</div>
</div>
</div>
</elements>
</layout>
@@ -9,11 +9,11 @@
<label weight="bold" id="label_author" text="Unknown" />
</div>
<label id="label_description" wrap="1" text="No description available" />
<Button id="btn_launch" align_self="baseline" color="#44ce22FF" padding_top="4" padding_bottom="4" round="8" padding_right="12" min_width="200" min_height="40">
<Button id="btn_launch" align_self="baseline" color="primary" border_color="primary(rgb-mult-0.5)" padding_top="4" padding_bottom="4" round="8" padding_right="12" min_width="200" min_height="40">
<sprite src_builtin="dashboard/play.svg" width="32" height="32" />
<label text="Launch" weight="bold" size="17" shadow="#00000099" />
<label text="Launch" weight="bold" size="17" />
</Button>
</div>
</div>
</elements>
</layout>
</layout>
+8 -3
View File
@@ -1,7 +1,12 @@
<layout>
<include src="../t_group_box.xml" />
<elements>
<div id="list_parent" gap="8" flex_direction="row" flex_wrap="wrap" justify_content="center" />
<div flex_direction="column" padding_top="8" padding_bottom="8">
<div id="list_parent" gap="8" flex_direction="row" flex_wrap="wrap" justify_content="center" />
</div>
<div align_items="center" justify_content="center" gap="16">
<Button id="btn_prev" sprite_src_builtin="dashboard/arrow_left.svg" width="32" height="32" />
<label id="label_page" text="Page X" weight="bold" />
<Button id="btn_next" sprite_src_builtin="dashboard/arrow_right.svg" width="32" height="32" />
</div>
</elements>
</layout>
@@ -0,0 +1,15 @@
<layout>
<!-- id, text -->
<template name="InputProfileButton">
<Button id="${id}" width="350" gap="8" justify_content="start" >
<sprite margin_left="8" src_builtin="dashboard/controller.svg" min_width="24" min_height="24" />
<label text="${text}" weight="bold"/>
</Button>
</template>
<elements>
<div flex_direction="column" gap="8" width="100%" align_items="center">
<div id="list_parent" flex_grow="1" flex_wrap="wrap" flex_direction="row" gap="4" width="100%" justify_content="center"></div>
</div>
</elements>
</layout>
+18 -14
View File
@@ -1,6 +1,4 @@
<layout>
<include src="../theme.xml" />
<elements>
<div
consume_mouse_events="1"
@@ -9,37 +7,43 @@
width="100%"
height="100%"
flex_direction="column"
position="absolute"
>
<!-- Top black bar -->
<!-- Top bar -->
<rectangle
position="relative"
color="#000000"
color="background_contrast"
width="100%" height="48"
>
<!-- Shine effect at the top -->
<rectangle position="absolute" width="100%" height="2" round="4" color="#ffffff22" />
<rectangle position="absolute" width="100%" height="3" round="4" color="highlight(opacity-0.1)" />
<!-- Top bar contents -->
<div gap="16" align_items="center">
<!-- Back button -->
<Button id="but_back" width="48" height="48" color="#ffffff00" border_color="#ffffff00">
<Button id="but_back" width="48" height="48" color="on_background_contrast(transparent)" border_color="on_background_contrast(transparent)">
<sprite src_builtin="dashboard/back.svg" width="24" height="24" />
</Button>
<!-- Title -->
<label id="popup_title" weight="bold" size="18" />
<label id="popup_title" color="on_background_contrast" weight="bold" size="18" />
</div>
</rectangle>
<!-- Content -->
<rectangle height="100%"
color="#010310fe"
color2="#051c55fc"
<rectangle
width="100%"
height="100%"
color="background_contrast(opacity-0.98)"
color2="background(opacity-0.99)"
gradient="vertical"
padding="16"
id="content">
position="relative"
>
<div id="content" width="100%" height="100%" position="absolute" overflow_y="scroll">
<!-- Padding set at runtime -->
<!-- Content, filled-in at runtime -->
</div>
</rectangle>
</div>
</elements>
</layout>
</layout>
@@ -1,9 +0,0 @@
<layout>
<include src="../t_group_box.xml" />
<elements>
<rectangle macro="group_box" flex_direction="row" align_items="center">
<div id="list_parent" gap="8" flex_direction="column" flex_wrap="wrap" flex_grow="1" />
</rectangle>
</elements>
</layout>
@@ -0,0 +1,36 @@
<layout>
<!--
parameters:
"text"
"sprite"
ids:
"button"
-->
<template name="ResolutionButton">
<Button id="button" sprite_src_builtin="${sprite}" text="${text}"/>
</template>
<include src="../t_separator.xml"/>
<elements>
<div gap="8" flex_direction="column" min_width="100%" overflow_y="scroll">
<div gap="8" flex_direction="column" align_items="center">
<div id="resolution_buttons" gap="8" flex_direction="row">
<!-- filled-in at runtime -->
</div>
<image id="image" width="400" height="200" round="8" border="2" border_color="primary"/>
<label id="label_author" weight="bold"/>
<label id="label_description" wrap="1"/>
<Separator/>
<!-- nerdy stuff below -->
<div gap="24" justify_content="center">
<label size="10" id="label_creation_date"/>
<label size="10" id="label_modification_date"/>
<label size="10" id="label_version"/>
</div>
</div>
</div>
</elements>
</layout>
@@ -0,0 +1,7 @@
<layout>
<elements>
<div id="list" gap="8" flex_wrap="wrap" align_self="baseline">
<!-- filled-in at runtime -->
</div>
</elements>
</layout>
@@ -0,0 +1,20 @@
<layout>
<include src="../t_group_box.xml" />
<template name="RunningGameCell">
<rectangle macro="group_box" flex_direction="row">
<Button id="btn_stop" sprite_src_builtin="dashboard/remove_circle.svg" tooltip="PROCESS.STOP" />
<Button id="btn_kill" sprite_src_builtin="dashboard/knife.svg" tooltip="PROCESS.FORCE_KILL" />
<label id="label_name" weight="bold" />
</rectangle>
</template>
<elements>
<div align_items="center" gap="8">
<Button id="btn_refresh" tooltip="REFRESH" width="32" height="32" sprite_src_builtin="dashboard/refresh.svg" />
<sprite src_builtin="dashboard/cpu.svg" width="24" height="24" />
<label translation="GAME_LIST.RUNNING_GAMES_LIST" />
</div>
<div id="list_parent" gap="8" />
</elements>
</layout>
@@ -0,0 +1,11 @@
<layout>
<elements>
<div flex_direction="column" gap="8" width="100%" align_items="center">
<div flex_direction="row" gap="4" align_self="end">
<Button id="btn_refresh" tooltip="RELOAD_FROM_DISK" width="32" height="32" sprite_src_builtin="dashboard/refresh.svg" />
<Button id="btn_download_skymaps" height="32" translation="APP_SETTINGS.BROWSE_ONLINE_CATALOG" sprite_src_builtin="dashboard/download.svg"/>
</div>
<div id="list_parent" gap="8" flex_direction="row" flex_wrap="wrap" />
</div>
</elements>
</layout>
@@ -0,0 +1,40 @@
<layout>
<!--
ids:
"button"
"image_preview"
"label_title"
"label_desc"
-->
<template name="Cell">
<Button
id="button"
padding="8"
round="8"
flex_direction="column"
gap="4"
width="256"
align_items="center"
align_self="start">
<image id="image_preview" width="100%" height="128" round="6">
<!-- new_pass is required, because we need to render rectangles at the top of the image. Sorry. -->
<div new_pass="1" id="resolution_pips" gap="4" margin="6"/>
</image>
<label id="label_title" wrap="1" weight="bold"/>
<label id="label_author" wrap="1"/>
</Button>
</template>
<!--
params:
"color"
"text"
-->
<template name="ResolutionPip">
<rectangle color="${color}" padding_left="4" padding_right="4" padding_top="2" padding_bottom="2" round="3" align_self="start">
<label text="${text}" weight="bold" size="12" color="#FFFFFF" shadow="#000000" shadow_x="2" shadow_y="2"/>
</rectangle>
</template>
</layout>
+316 -151
View File
@@ -1,153 +1,318 @@
{
"HOME_SCREEN": "Startbildschirm",
"MONADO_RUNTIME": "Monado-Laufzeitumgebung",
"APPLICATIONS": "Anwendungen",
"GAMES": "Spiele",
"SETTINGS": "Einstellungen",
"PROCESSES": "Prozesse",
"HELLO_USER": "Hallo, {USER}!",
"GENERAL_SETTINGS": "Allgemeine Einstellungen",
"APPLICATION_LAUNCHER": "Anwendung Launcher",
"APP_SETTINGS": {
"HIDE_USERNAME": "Benutzernamen ausblenden",
"OPAQUE_BACKGROUND": "Undurchsichtiger Hintergrund",
"WLX": {},
"LOOK_AND_FEEL": "Aussehen und Verhalten",
"HIDE_GRAB_HELP": "Greif-Hilfe ausblenden",
"ANIMATION_SPEED": "UI-Animationsgeschwindigkeit",
"ROUND_MULTIPLIER": "UI-Kantenrundung",
"USE_SKYBOX": "Skybox aktivieren",
"USE_PASSTHROUGH": "Passthrough aktivieren",
"CLOCK_12H": "12-Stunden-Uhr",
"FEATURES": "Funktionen",
"NOTIFICATIONS_ENABLED": "Benachrichtigungen aktivieren",
"NOTIFICATIONS_SOUND_ENABLED": "Benachrichtigungstöne",
"KEYBOARD_SOUND_ENABLED": "Tastengeräusche",
"SPACE_DRAG_MULTIPLIER": "Raum-Drag-Multiplikator",
"SPACE_DRAG_UNLOCKED": "Erlaube Space-Drag auf allen Achsen",
"SPACE_ROTATE_UNLOCKED": "Erlaube Drehungen in allen Achsen",
"BLOCK_GAME_INPUT": "Spieleingabe blockieren",
"BLOCK_GAME_INPUT_IGNORE_WATCH": "Ignoriere Watch beim Blockieren der Eingabe",
"CONTROLS": "Steuerung",
"FOCUS_FOLLOWS_MOUSE_MODE": "Mausbewegung bei Triggerberührung",
"LEFT_HANDED_MOUSE": "Linkshändige Maus",
"ALLOW_SLIDING": "Stabinteraktion während des Greifens",
"INVERT_SCROLL_DIRECTION_X": "Horizontale Scrollrichtung umkehren",
"INVERT_SCROLL_DIRECTION_Y": "Vertikale Bildlaufrichtung umkehren",
"SCROLL_SPEED": "Scrollgeschwindigkeit",
"LONG_PRESS_DURATION": "Dauer für lange Drückvorgänge",
"POINTER_LERP_FACTOR": "Zeigerglättung",
"XR_CLICK_SENSITIVITY": "XR-Klicksensitivität",
"XR_CLICK_SENSITIVITY_RELEASE": "XR-Loslassempfindlichkeit",
"CLICK_FREEZE_TIME_MS": "Klick-Freeze-Zeit (ms)",
"MISC": "Verschiedenes",
"XWAYLAND_BY_DEFAULT": "Standardmäßig Apps im Kompatibilitätsmodus ausführen",
"UPRIGHT_SCREEN_FIX": "Bildschirm-Drehkorrektur",
"DOUBLE_CURSOR_FIX": "Doppelter Cursor Fix",
"SCREEN_RENDER_DOWN": "Bildschirm bei niedrigerer Auflösung rendern",
"UPRIGHT_SCREEN_FIX_HELP": "Behebt hochstehende Bildschirme auf einigen Desktops",
"DOUBLE_CURSOR_FIX_HELP": "Aktivieren Sie dies, wenn Sie 2 Cursor sehen",
"XR_CLICK_SENSITIVITY_HELP": "Analoge Trigger-Empfindlichkeit",
"XR_CLICK_SENSITIVITY_RELEASE_HELP": "Muss niedriger als Klick sein",
"CLICK_FREEZE_TIME_MS_HELP": "Hilft bei der Präzision von Doppelklicks",
"LEFT_HANDED_MOUSE_HELP": "Verwenden Sie diese Option, wenn die Maustasten vertauscht sind",
"BLOCK_GAME_INPUT_HELP": "Blockiert alle Eingaben, wenn ein Overlay angefahren wird",
"BLOCK_GAME_INPUT_IGNORE_WATCH_HELP": "Blockiere die Eingabe nicht, wenn die Überwachung aktiviert ist",
"USE_SKYBOX_HELP": "Zeige einen Skybox, wenn keine Szenen-App oder Passthrough vorhanden ist",
"USE_PASSTHROUGH_HELP": "Aktiviere Passthrough, falls die XR-Laufzeitumgebung dies unterstützt",
"SCREEN_RENDER_DOWN_HELP": "Hilft bei Aliasing auf hochauflösenden Bildschirmen",
"SETS_ON_WATCH": "Sets auf der Watch",
"TROUBLESHOOTING": "Fehlerbehebung",
"CLEAR_SAVED_STATE": "Gespeicherten Zustand löschen",
"CLEAR_PIPEWIRE_TOKENS": "PipeWire Tokens löschen",
"DELETE_ALL_CONFIGS": "Konfiguration löschen",
"RESTART_SOFTWARE": "Software neu starten",
"CLEAR_SAVED_STATE_HELP": "Sets und Overlay-Positionen zurücksetzen",
"CLEAR_PIPEWIRE_TOKENS_HELP": "Bildschirmauswahl beim nächsten Start abfragen",
"DELETE_ALL_CONFIGS_HELP": "Entfernen Sie alle Konfigurationsdateien aus conf.d",
"RESTART_SOFTWARE_HELP": "Einstellungen anwenden, die einen Neustart erfordern",
"CAPTURE_METHOD": "Wayland-Bildschirmaufnahme",
"CAPTURE_METHOD_HELP": "Versuchen Sie, dies zu ändern, wenn Sie\nschwarze oder fehlerhafte Bildschirme erleben",
"KEYBOARD_MIDDLE_CLICK": "Keyboard-Mittelklick",
"KEYBOARD_MIDDLE_CLICK_HELP": "Modifikator bei Eingabe mit violettem Laser",
"OPTION": {
"AUTO": "Automatisch",
"AUTO_HELP": "Bildschirmkopie GPU falls unterstützt,\nansonsten PipeWire GPU.",
"PIPEWIRE_HELP": "Schnelle GPU-Erfassung,\nStandard auf allen Desktops.",
"PW_FALLBACK_HELP": "Langsame Methode mit hoher CPU-Auslastung.\nVersuchen Sie es, falls PipeWire GPU nicht funktioniert.",
"SCREENCOPY_GPU_HELP": "Schnell, keine Bildschirmfreigabe-Popups.\nFunktioniert mit: Hyprland, Niri, River, Sway",
"SCREENCOPY_HELP": "Langsam, keine Bildschirmfreigabe-Popups.\nFunktioniert mit: Hyprland, Niri, River, Sway"
},
"AUTOSTART_APPS": "Anwendungen, die beim Start ausgeführt werden sollen"
},
"HELLO": "Hallo!",
"AUDIO": {
"VOLUME": "Lautstärke",
"SETTINGS": "Audioeinstellungen",
"AUTO_SWITCH_TO_VR_AUDIO": "Automatisch auf VR-Audio umschalten",
"SPEAKERS": "Lautsprecher",
"MICROPHONES": "Mikrofone",
"CARDS": "Sound-Karten",
"SELECT_AUDIO_CARD_PROFILE": "Wählen Sie das Sound-Kartenprofil",
"NO_VR_SPEAKERS_FOUND_SWITCH_MANUALLY": "Keine VR-Lautsprecher gefunden. Schalten Sie diese manuell um.",
"NO_VR_MICROPHONE_SWITCH_MANUALLY": "Kein VR-Mikrofon gefunden. Schalten Sie es manuell um.",
"FAILED_TO_SWITCH_MICROPHONE": "Fehler beim Wechseln des Mikrofons",
"MICROPHONE_SET_SUCCESSFULLY": "Mikrofon erfolgreich umgeschaltet",
"SPEAKERS_SET_SUCCESSFULLY": "Lautsprecher erfolgreich umgeschaltet"
},
"ACTIONS": {
"RECENTER_PLAYSPACE": "Playspace neu zentrieren"
},
"LIST_OF_PROCESSES": "Prozessliste",
"POPUP_ADD_DISPLAY": {
"RESOLUTION": "Auflösung"
},
"WIDTH": "Breite",
"HEIGHT": "Höhe",
"HIDE": "Verbergen",
"REMOVE": "Entfernen",
"SHOW": "Anzeigen",
"PROCESS_LIST": {
"NO_PROCESSES_FOUND": "Keine Prozesse gefunden",
"LOCATED_ON": "auf",
"TERMINATE_PROCESS_NAMED_X": "Prozess \"{PROCESS_NAME}\" beenden"
},
"FAILED_TO_LAUNCH_APPLICATION": "Fehler beim Starten der Anwendung:",
"NO_WINDOWS_FOUND": "Keine Fenster gefunden",
"WINDOW_OPTIONS": "Fensteroptionen",
"APPLICATION_STARTED": "Anwendung gestartet",
"LIST_OF_WINDOWS": "Fensterliste",
"CLOSE_WINDOW": "Fenster schließen",
"GAME_LIST": {
"NO_GAMES_FOUND": "Keine Spiele gefunden"
},
"TERMINATE_PROCESS": "Prozess beenden",
"GAME_LAUNCHED": "Spiel gestartet",
"APP_LAUNCHER": {
"MODE": {
"NATIVE": "Nativer Modus",
"CAGE": "Kompatibilitätsmodus (Cage)"
},
"RES_TITLE": "Auflösung",
"ASPECT_TITLE": "Seitenverhältnis",
"ASPECT": {
"WIDE": "Breit",
"SEMI_WIDE": "Halb-breit",
"SQUARE": "Quadratisch",
"SEMI_TALL": "Halbhoch",
"TALL": "Hoch"
},
"POS_TITLE": "Positionierung",
"POS": {
"FLOATING": "Schwebend",
"ANCHORED": "Verankert",
"STATIC": "Statisch",
"FLOATING_HELP": "Bewegt sich unabhängig, zentriert sich bei Anzeige neu.",
"ANCHORED_HELP": "Bleibt relativ zur Mittelmarkierung an Ort und Stelle.",
"STATIC_HELP": "Keine Set zugeordnet. Wird nicht zentriert."
},
"AUTOSTART": "Automatisch beim Start ausführen",
"LAUNCH": "Starten"
},
"DISPLAY_BRIGHTNESS": "Bildschirmhelligkeit"
"HOME_SCREEN": "Startbildschirm",
"MONADO_RUNTIME": "Monado-Laufzeitumgebung",
"APPLICATIONS": "Anwendungen",
"GAMES": "Spiele",
"SETTINGS": "Einstellungen",
"HELLO_USER": "Hallo, {USER}!",
"GENERAL_SETTINGS": "Allgemeine Einstellungen",
"APPLICATION_LAUNCHER": "Anwendung Launcher",
"APP_SETTINGS": {
"HIDE_USERNAME": "Benutzernamen ausblenden",
"OPAQUE_BACKGROUND": "Undurchsichtiger Hintergrund",
"LOOK_AND_FEEL": "Aussehen und Verhalten",
"HIDE_GRAB_HELP": "Greif-Hilfe ausblenden",
"ANIMATION_SPEED": "UI-Animationsgeschwindigkeit",
"ROUND_MULTIPLIER": "UI-Kantenrundung",
"USE_SKYBOX": "Skybox aktivieren",
"USE_PASSTHROUGH": "Passthrough aktivieren",
"CLOCK_12H": "12-Stunden-Uhr",
"FEATURES": "Funktionen",
"NOTIFICATIONS_ENABLED": "Benachrichtigungen aktivieren",
"NOTIFICATIONS_SOUND_ENABLED": "Benachrichtigungstöne",
"KEYBOARD_SOUND_ENABLED": "Tastengeräusche",
"SPACE_DRAG_MULTIPLIER": "Raum-Drag-Multiplikator",
"SPACE_DRAG_UNLOCKED": "Erlaube Space-Drag auf allen Achsen",
"SPACE_ROTATE_UNLOCKED": "Erlaube Drehungen in allen Achsen",
"BLOCK_GAME_INPUT": "Spieleingabe blockieren",
"BLOCK_GAME_INPUT_IGNORE_WATCH": "Ignoriere Watch beim Blockieren der Eingabe",
"CONTROLS": "Steuerung",
"FOCUS_FOLLOWS_MOUSE_MODE": "Mausbewegung bei Triggerberührung",
"LEFT_HANDED_MOUSE": "Linkshändige Maus",
"ALLOW_SLIDING": "Stabinteraktion während des Greifens",
"INVERT_SCROLL_DIRECTION_X": "Horizontale Scrollrichtung umkehren",
"INVERT_SCROLL_DIRECTION_Y": "Vertikale Bildlaufrichtung umkehren",
"SCROLL_SPEED": "Scrollgeschwindigkeit",
"LONG_PRESS_DURATION": "Dauer für lange Drückvorgänge",
"POINTER_LERP_FACTOR": "Zeigerglättung",
"CLICK_FREEZE_TIME_MS": "Klick-Freeze-Zeit (ms)",
"MISC": "Verschiedenes",
"XWAYLAND_BY_DEFAULT": "Standardmäßig Apps im Kompatibilitätsmodus ausführen",
"UPRIGHT_SCREEN_FIX": "Bildschirm-Drehkorrektur",
"DOUBLE_CURSOR_FIX": "Doppelter Cursor Fix",
"SCREEN_RENDER_DOWN": "Bildschirm bei niedrigerer Auflösung rendern",
"UPRIGHT_SCREEN_FIX_HELP": "Behebt hochstehende Bildschirme auf einigen Desktops",
"DOUBLE_CURSOR_FIX_HELP": "Aktivieren Sie dies, wenn Sie 2 Cursor sehen",
"CLICK_FREEZE_TIME_MS_HELP": "Hilft bei der Präzision von Doppelklicks",
"LEFT_HANDED_MOUSE_HELP": "Verwenden Sie diese Option, wenn die Maustasten vertauscht sind",
"BLOCK_GAME_INPUT_HELP": "Blockiert alle Eingaben, wenn ein Overlay angefahren wird",
"BLOCK_GAME_INPUT_IGNORE_WATCH_HELP": "Blockiere die Eingabe nicht, wenn die Überwachung aktiviert ist",
"USE_SKYBOX_HELP": "Zeige einen Skybox, wenn keine Szenen-App oder Passthrough vorhanden ist",
"USE_PASSTHROUGH_HELP": "Aktiviere Passthrough, falls die XR-Laufzeitumgebung dies unterstützt",
"SCREEN_RENDER_DOWN_HELP": "Hilft bei Aliasing auf hochauflösenden Bildschirmen",
"SETS_ON_WATCH": "Sets auf der Watch",
"TROUBLESHOOTING": "Fehlerbehebung",
"CLEAR_SAVED_STATE": "Gespeicherten Zustand löschen",
"CLEAR_PIPEWIRE_TOKENS": "PipeWire Tokens löschen",
"DELETE_ALL_CONFIGS": "Konfiguration löschen",
"RESTART_SOFTWARE": "Software neu starten",
"CLEAR_SAVED_STATE_HELP": "Sets und Overlay-Positionen zurücksetzen",
"CLEAR_PIPEWIRE_TOKENS_HELP": "Bildschirmauswahl beim nächsten Start abfragen",
"DELETE_ALL_CONFIGS_HELP": "Entfernen Sie alle Konfigurationsdateien aus conf.d",
"RESTART_SOFTWARE_HELP": "Einstellungen anwenden, die einen Neustart erfordern",
"CAPTURE_METHOD": "Wayland-Bildschirmaufnahme",
"CAPTURE_METHOD_HELP": "Versuchen Sie, dies zu ändern, wenn Sie\nschwarze oder fehlerhafte Bildschirme erleben",
"KEYBOARD_MIDDLE_CLICK": "Keyboard-Mittelklick",
"KEYBOARD_MIDDLE_CLICK_HELP": "Modifikator bei Eingabe mit violettem Laser",
"OPTION": {
"AUTO": "Automatisch",
"AUTO_HELP": "Bildschirmkopie GPU falls unterstützt,\nansonsten PipeWire GPU.",
"PIPEWIRE_HELP": "Schnelle GPU-Erfassung,\nStandard auf allen Desktops.",
"PW_FALLBACK_HELP": "Langsame Methode mit hoher CPU-Auslastung.\nVersuchen Sie es, falls PipeWire GPU nicht funktioniert.",
"SCREENCOPY_GPU_HELP": "Schnell, keine Bildschirmfreigabe-Popups.\nFunktioniert mit: Hyprland, Niri, River, Sway",
"SCREENCOPY_HELP": "Langsam, keine Bildschirmfreigabe-Popups.\nFunktioniert mit: Hyprland, Niri, River, Sway",
"NONE": "Keine",
"HMD_PINCH": "HMD + Kneifen",
"EYE_PINCH": "Auge + Kneifen",
"EYE_ONLY": "Nur Auge",
"HMD_ONLY": "Nur HMD",
"NONE_INPUT_HELP": "Maus und Tastatur nicht emulieren.\nEs wird nicht möglich sein, mit Displays zu interagieren.",
"UINPUT": "Gerätesimulation",
"UINPUT_HELP": "Verwendet das uinput-Modul, um ein Gerät zu emulieren.\nIhr Benutzer muss in der Gruppe „input“ sein.\nBekannt dafür, auf den meisten Desktops gut zu funktionieren.",
"WL_VIRTUAL": "Wayland-virtueller Input",
"WL_VIRTUAL_HELP": "Sendet Ereignisse an den Wayland-Compositor unter Verwendung von\nzwlr_virtual_pointer und zwp_virtual_keyboard.\nFunktioniert nur zuverlässig auf einigen Desktops.\nFunktioniert NICHT auf KDE, GNOME oder COSMIC."
},
"AUTOSTART_APPS": "Anwendungen, die beim Start ausgeführt werden sollen",
"HANDSFREE_POINTER": "Freihändige Modus",
"HANDSFREE_POINTER_HELP": "Eingabe, die bei Bewegung\nder Controller verwendet wird, wenn diese nicht verfügbar sind.\nLinkes Kneifen greift, rechtes klickt.",
"UI_GRADIENT_INTENSITY": "UI-Verlaufsintensität",
"RESET_PLAYSPACE": "Spielbereich zurücksetzen",
"RESET_PLAYSPACE_HELP": "Den Abstand des Spielbereichs zurücksetzen.",
"BLOCK_POSES_ON_KBD_INTERACTION": "Posen beim Interagieren mit der Tastatur blockieren",
"BLOCK_POSES_ON_KBD_INTERACTION_HELP": "Verhindert, dass das Spiel Posen empfängt, wenn die Tastatur angefahren wird und „Spieleingabe blockieren“ aktiviert ist",
"LANGUAGE": "Sprache",
"REQUIRES_RESTART": "Erfordert Neustart",
"GRID_OPACITY": "Bodenraster-Undurchsichtigkeit",
"GRID_OPACITY_HELP": "Undurchsichtigkeit des Bodenrasters, wenn der Skybox aktiviert ist",
"BROWSE_ONLINE_CATALOG": "Online-Katalog durchsuchen...",
"BROWSE_SKYMAPS": "Skymaps durchsuchen",
"COLOR_KEYING": "Farbschlüsselung",
"NO_SKYMAPS_FOUND": "Keine Skymaps gefunden",
"SELECT_VARIANT": "Variante auswählen",
"SHOW_WELCOME_SCREEN": "Begrüßungsbildschirm anzeigen",
"SKYBOX": "Skybox",
"SKYMAP_ALREADY_DOWNLOADED": "Diese Skymap wurde bereits heruntergeladen. Wählen Sie die gewünschte Aktion aus.",
"WATCH_VIEW_ANGLE": "Betrachtungswinkel der Watch",
"WATCH_VIEW_ANGLE_HELP": "Steuerung, wie die Watch ausgeblendet wird",
"BINDINGS": {
"COMP": {
"CLICK": "Klicken",
"FORCE": "Kraft",
"TOUCH": "Berührung",
"VALUE": "Wert",
"PROXIMITY": "Nähe",
"X_AXIS": "X-Achse",
"Y_AXIS": "Y-Achse"
},
"TYPE": {
"BUMPER": "Bumper",
"DPAD_UP": "D-Pad oben",
"DPAD_DOWN": "D-Pad Runter",
"DPAD_LEFT": "D-Pad Links",
"DPAD_RIGHT": "D-Pad Rechts",
"JOYSTICK": "Joystick",
"MENU": "Menü",
"SHOULDER": "Schulter",
"SQUEEZE": "Greifen",
"SYSTEM": "System",
"THUMBREST": "Daumenuflage",
"THUMBSTICK": "Thumbstick",
"TRACKPAD": "Trackpad",
"TRIGGER": "Trigger",
"VIEW": "Ansehen"
},
"CLICK": {
"ANY": "Beliebig",
"DOUBLE": "Doppeltippen",
"TRIPLE": "Dreifach-Tippen",
"TYPE": "Anzahl der Taps"
},
"ACTION": {
"CLICK": "Klick*",
"GRAB": "Greifen*",
"ALT_CLICK": "Benutzerdefiniertes Shell-Exec (alt_click in Konfiguration festlegen)",
"SHOW_HIDE": "Anzeigen, ausblenden, neuzentrieren*",
"TOGGLE_DASHBOARD": "Dashboard umschalten",
"SPACE_DRAG": "Playspace-Drag",
"SPACE_ROTATE": "Playspace rotieren",
"SPACE_RESET": "Playspace zurücksetzen",
"CLICK_MODIFIER_RIGHT": "Rechtsklick-Modifikator",
"CLICK_MODIFIER_MIDDLE": "Mittlere Maustaste-Modifier",
"MOVE_MOUSE": "Maus bewegen (falls standardmäßig deaktiviert)",
"SCROLL": "Scrollen*"
},
"LEFT": "Links",
"RIGHT": "Rechts",
"COMPONENT": "Auslösetyp",
"SUBPATH": "Betätigungskontrolle",
"THRESHOLD": "Aktivieren, wenn oberer Wert überschritten\nDeaktivieren, wenn unterer Wert unterschritten"
},
"ENABLED": "Aktiviert",
"INPUT_EMULATION_METHOD": "Methode zur Eingabeemulation",
"INPUT_EMULATION_METHOD_HELP": "Versuchen Sie dies zu ändern, falls Maus- oder\nTastatureingaben nicht registriert werden.",
"INPUT_PROFILES": "Eingabesteuerungen ändern",
"INPUT_PROFILES_HELP": "OpenXR-Controller-Eingabebindungen",
"NOT_SUPPORTED": "Nicht unterstützt",
"ENABLE_WATCH": "Watch aktivieren",
"SPACE_DRAG": "Space-drag",
"SPACE_GRAVITY_DAMPING": "Dämpfung",
"SPACE_GRAVITY_DAMPING_HELP": "Künstlicher Widerstand, um die Bewegung zu verlangsamen. 0,1 - hoher Widerstand, 1,0 - kein Widerstand",
"SPACE_GRAVITY_FLING_STRENGTH": "Wurfstärke",
"SPACE_GRAVITY_FLING_STRENGTH_HELP": "Intensitätsmultiplikator der Schwerkraft-Abstoßungskraft nach dem Space-drag.\n0.0 - gar keine Bewegung, 2.0 - doppelte Intensität",
"SPACE_GRAVITY_GRAVITY": "Gravitation",
"SPACE_GRAVITY_GRAVITY_HELP": "Betrag der Abwärtskraft. 0.0 - keine Schwerkraft",
"SPACE_GRAVITY_GROUND_FRICTION": "Bodenreibung",
"SPACE_GRAVITY_GROUND_FRICTION_HELP": "Das Ausmaß der Reibung, das Sie verlangsamt, wenn Sie den Boden berühren.\n0.0 - keine Reibung (wie auf Eis), 1.0 - raue Oberfläche",
"SPACE_GRAVITY_FLOOR_HEIGHT": "Bodenhöhe",
"SPACE_GRAVITY_FLOOR_HEIGHT_HELP": "Die Y-Position, an der sich der Boden befindet. Die Schwerkraft wird gestoppt, wenn Sie diese Höhe erreichen.",
"SAVE": "Speichern",
"CANCEL": "Abbrechen",
"WHISPER": {
"NEED_TO_DOWNLOAD_MODEL": "Das ausgewählte Modell muss heruntergeladen werden.\nJetzt herunterladen?",
"REMOVE_UNUSED_MODELS": "Sie schalten die Sprache-zu-Text-Funktion aus.\nMöchten Sie die heruntergeladenen Whisper-Modelle entfernen, um Speicherplatz freizugeben?"
},
"WHISPER_MODEL": "Sprach-zu-Text-Modell",
"WHISPER_MODEL_HELP": "Zu verwendendes Whisper-Modell.\nGrößere Modelle liefern genauere\nErgebnisse, verbrauchen jedoch mehr VRAM.",
"DEFAULT_OVERLAY_SCALE": "Standardgröße des Overlays",
"DEFAULT_OVERLAY_SCALE_HELP": "Neue Overlays werden in dieser Skalierung erstellt.",
"COLOR_PALETTE": "Farbpalette",
"COLOR_PALETTES": "Farbpaletten",
"COLOR_PALETTE_CURRENT": "Derzeit aktives Thema.",
"COLOR_PALETTE_ACTIVATE": "Klicken Sie hier, um dieses Thema zu verwenden.",
"APPLY_CHANGES_RESTART": "WayVR neu starten, um die Änderungen zu übernehmen?",
"COLOR_PALETTE_HELP": "Klicken, um Farbpaletten zu durchsuchen.\nUm eigene zu erstellen, besuche die Webseite!",
"COLOR_PALETTE_CUSTOM_URL": "Füge dein eigenes benutzerdefiniertes Thema hinzu!",
"COLOR_PALETTE_CUSTOM_URL2": "Klicken Sie hier, um das Web-Handbuch zu öffnen.",
"SNAP_ANGLE_DEG": "Snap-Winkel für Fensterneigung und Rollwinkel",
"SNAP_ANGLE_DEG_HELP": "Gegriffene Fenster rasten in diesem Winkel auf der Nick- und Rollachse ein."
},
"HELLO": "Hallo!",
"AUDIO": {
"VOLUME": "Lautstärke",
"SETTINGS": "Audioeinstellungen",
"AUTO_SWITCH_TO_VR_AUDIO": "Automatisch auf VR-Audio umschalten",
"SPEAKERS": "Lautsprecher",
"MICROPHONES": "Mikrofone",
"CARDS": "Sound-Karten",
"SELECT_AUDIO_CARD_PROFILE": "Wählen Sie das Sound-Kartenprofil",
"NO_VR_SPEAKERS_FOUND_SWITCH_MANUALLY": "Keine VR-Lautsprecher gefunden. Schalten Sie diese manuell um.",
"NO_VR_MICROPHONE_SWITCH_MANUALLY": "Kein VR-Mikrofon gefunden. Schalten Sie es manuell um.",
"FAILED_TO_SWITCH_MICROPHONE": "Fehler beim Wechseln des Mikrofons",
"MICROPHONE_SET_SUCCESSFULLY": "Mikrofon erfolgreich umgeschaltet",
"SPEAKERS_SET_SUCCESSFULLY": "Lautsprecher erfolgreich umgeschaltet"
},
"ACTIONS": {
"RECENTER_PLAYSPACE": "Playspace neu zentrieren"
},
"POPUP_ADD_DISPLAY": {
"RESOLUTION": "Auflösung"
},
"WIDTH": "Breite",
"HEIGHT": "Höhe",
"HIDE": "Verbergen",
"REMOVE": "Entfernen",
"SHOW": "Anzeigen",
"FAILED_TO_LAUNCH_APPLICATION": "Fehler beim Starten der Anwendung:",
"APPLICATION_STARTED": "Anwendung gestartet",
"CLOSE_WINDOW": "Fenster schließen",
"GAME_LIST": {
"NO_GAMES_FOUND": "Keine Spiele gefunden",
"RUNNING_GAMES_LIST": "Liste der laufenden Spiele"
},
"TERMINATE_PROCESS": "Prozess beenden",
"GAME_LAUNCHED": "Spiel gestartet",
"APP_LAUNCHER": {
"MODE": {
"NATIVE": "Nativer Modus",
"CAGE": "Kompatibilitätsmodus (Cage)"
},
"RES_TITLE": "Auflösung",
"ASPECT_TITLE": "Seitenverhältnis",
"ASPECT": {
"WIDE": "Breit",
"SEMI_WIDE": "Halb-breit",
"SQUARE": "Quadratisch",
"SEMI_TALL": "Halbhoch",
"TALL": "Hoch"
},
"POS_TITLE": "Positionierung",
"POS": {
"FLOATING": "Schwebend",
"ANCHORED": "Verankert",
"STATIC": "Statisch",
"FLOATING_HELP": "Bewegt sich unabhängig, zentriert sich bei Anzeige neu.",
"ANCHORED_HELP": "Bleibt relativ zur Mittelmarkierung an Ort und Stelle.",
"STATIC_HELP": "Keine Set zugeordnet. Wird nicht zentriert."
},
"AUTOSTART": "Automatisch beim Start ausführen",
"LAUNCH": "Starten"
},
"DISPLAY_BRIGHTNESS": "Bildschirmhelligkeit",
"PROCESS_LIST": "Prozessliste",
"REFRESH": "Aktualisieren",
"PROCESS": {
"STOP": "Stopp",
"FORCE_KILL": "Erzwinge Beenden"
},
"DEBUG_INFO": "Debug-Informationen",
"CREATION_DATE": "Erstellungsdatum",
"DOWNLOADER": "Downloader",
"DOWNLOAD_AGAIN": "Erneut herunterladen",
"DOWNLOADING_FILE": "Datei wird heruntergeladen...",
"GETTING_STARTED": "Erste Schritte",
"MODIFICATION_DATE": "Änderungsdatum",
"LOADING": "Laden...",
"APPLY": "Anwenden",
"RELOAD_FROM_DISK": "Von Festplatte neu laden",
"TARGET_PATH": "Zielpfad",
"VERSION": "Version",
"DONATE": {
"SUPPORT_US": "Unterstütze uns",
"DESCRIPTION": "Wir sind ein kleines Team aus zwei Entwicklern, die WayVR in ihrer Freizeit bauen. Wenn Ihnen die Nutzung dieser Software Spaß macht, unterstützen Sie uns bitte – jede Spende hilft uns, weiterzumachen.",
"BUTTON_TOOLTIP": "Spenden über Open Collective",
"CURRENT_SUPPORTERS": "Aktuelle Unterstützer",
"THANK_YOU_WAYVR": "Vielen Dank vom WayVR-Team!"
},
"WELCOME": {
"ALL_SET": "Du bist startklar!",
"BASICS": "Diese Grundlagen ermöglichen Ihnen einen einfachen Einstieg in die Nutzung von WayVR.",
"FEATURES_DOCUMENTATION": "Es gibt viele weitere Funktionen, die es wert sind, angepasst zu werden. Weitere Informationen finden Sie in der Dokumentation unter",
"FINISH_TUTORIAL": "Tutorial beenden",
"GRAB_BOTH_HANDS": "Greifen Sie es mit beiden Händen, wenn Sie ein bestimmtes Overlay in Ihrem Set bewegen möchten.",
"GRAB_ONE_HAND": "Greife es mit einer Hand, um dein Set zu bewegen.",
"GREETING": "Hallo!",
"GUIDE_INTRO": "Lassen Sie sich durch Ihre ersten Schritte führen.",
"LASER_COLORS": "Laserfarben",
"LASER_FUNCTIONALITY": "Ein Großteil der Funktionalität in WayVR hängt davon ab, welche Laserfarbe verwendet wird, um mit einem UI-Element zu interagieren. Sie müssen diese Schaltflächen nicht drücken, berühren Sie sie einfach!",
"LAST_PAGE_INFO": "Dieses Tutorial wird nicht mehr angezeigt, sobald du die letzte Seite erreicht hast.",
"LOOK_AT_LEFT_WRIST": "Schau auf dein linkes Handgelenk. Das ist deine Watch.",
"MIDDLE_CLICK_MODE_PURPLE_LASER": "— Mittlere Maustaste-Modus: Lila Laser",
"MOVING_YOUR_SET": "Ihr Set wird verschoben",
"NEXT_BUTTON": "Drücke die Schaltfläche „Weiter“ unten, um zu beginnen.",
"REGULAR_MODE_BLUE_LASER": "— Regulärer Modus: Blauer Laser",
"REPOSITION_THIS_WINDOW_BY_GRABBING": "Positionieren Sie dieses Fenster neu, indem Sie die Greifaktion Ihres Controllers verwenden.",
"RIGHT_CLICK_MODE_ORANGE_LASER": "— Rechtsklick-Modus: Oranger Laser",
"THANKS_FOR_INSTALLING": "Vielen Dank für die Installation von WayVR!",
"WATCH": "Watch",
"WORKING_SET": "Arbeits-Set",
"DOUBLE_PRESS_TO_TOGGLE": "Drücke B (beim Index) oder Y (beim Meta) doppelt, um dein Set anzuzeigen, neu zu zentrieren oder auszublenden. Probier es jetzt aus.",
"CENTER_MARKER": "Der Zentrierungsmarker ist das, was bei der Neuzentrierung vor dir erscheint. Platziere Overlays darum herum!"
},
"DOWNLOAD": "Herunterladen",
"SAVED_TO_FAVOURITES": "Zu Favoriten hinzugefügt",
"ADD_TO_FAVOURITES": "Zu Favoriten hinzufügen",
"ADD_TO_FAVOURITES_HINT": "Voreinstellung speichern und an den App-Drawer anheften",
"REMOVE_FROM_FAVOURITES": "Aus Favoriten entfernen",
"EMPTY": "Leer",
"PINNED_APPS": "Angepinnte Anwendungen"
}
+182 -16
View File
@@ -31,12 +31,79 @@
"APP_SETTINGS": {
"ALLOW_SLIDING": "Stick interaction during grab",
"ANIMATION_SPEED": "UI Animation speed",
"AUTOSTART_APPS": "Apps to run on startup",
"BLOCK_GAME_INPUT": "Block game input",
"BLOCK_GAME_INPUT_HELP": "Blocks all input when an overlay is hovered",
"BLOCK_GAME_INPUT_IGNORE_WATCH": "Ignore watch when blocking input",
"BLOCK_GAME_INPUT_IGNORE_WATCH_HELP": "Do not block input when watch is hovered",
"BLOCK_POSES_ON_KBD_INTERACTION": "Block poses when interacting with keyboard",
"BLOCK_POSES_ON_KBD_INTERACTION_HELP": "Blocks the game from receiving poses when the keyboard is hovered and 'Block game input' is enabled",
"BINDINGS": {
"COMP": {
"CLICK": "Click",
"FORCE": "Force",
"TOUCH": "Touch",
"VALUE": "Value",
"PROXIMITY": "Proximity",
"X_AXIS": "X axis",
"Y_AXIS": "Y axis"
},
"TYPE": {
"BUMPER": "Bumper",
"DPAD_UP": "D-pad Up",
"DPAD_DOWN": "D-pad Down",
"DPAD_LEFT": "D-pad Left",
"DPAD_RIGHT": "D-pad Right",
"JOYSTICK": "Joystick",
"MENU": "Menu",
"SHOULDER": "Shoulder",
"SQUEEZE": "Grip",
"SYSTEM": "System",
"THUMBREST": "Thumbrest",
"THUMBSTICK": "Thumbstick",
"TRACKPAD": "Trackpad",
"TRIGGER": "Trigger",
"VIEW": "View"
},
"CLICK": {
"ANY": "Any",
"DOUBLE": "Double-tap",
"TRIPLE": "Triple-tap",
"TYPE": "Tap count"
},
"ACTION": {
"CLICK": "Click*",
"GRAB": "Grab*",
"ALT_CLICK": "Custom shell exec (set alt_click in config)",
"SHOW_HIDE": "Show, hide, recenter*",
"TOGGLE_DASHBOARD": "Toggle dashboard",
"SPACE_DRAG": "Playspace drag",
"SPACE_ROTATE": "Playspace rotate",
"SPACE_RESET": "Playspace reset",
"CLICK_MODIFIER_RIGHT": "Right-click modifier",
"CLICK_MODIFIER_MIDDLE": "Middle-click modifier",
"MOVE_MOUSE": "Move mouse (if off by default)",
"SCROLL": "Scroll*"
},
"LEFT": "Left",
"RIGHT": "Right",
"COMPONENT": "Actuation type",
"SUBPATH": "Actuating control",
"THRESHOLD": "Activate when above upper value\nDeactivate when below lower value"
},
"BROWSE_ONLINE_CATALOG": "Browse online catalog...",
"BROWSE_SKYMAPS": "Browse skymaps",
"CAPTURE_METHOD": "Wayland screen capture",
"CAPTURE_METHOD_HELP": "Try changing this if you are\nexperiencing black or glitchy screens",
"COLOR_KEYING": "Color keying",
"COLOR_PALETTE": "Color palette",
"COLOR_PALETTE_HELP": "Click to browse color palettes.\nTo create custom ones, see website!",
"COLOR_PALETTES": "Color palettes",
"COLOR_PALETTE_CURRENT": "Currently active theme.",
"COLOR_PALETTE_CUSTOM_URL": "Add your own custom theme!",
"COLOR_PALETTE_CUSTOM_URL2": "Click to open web manual.",
"COLOR_PALETTE_ACTIVATE": "Click to use this theme.",
"APPLY_CHANGES_RESTART": "Restart WayVR to apply changes?",
"CLEAR_PIPEWIRE_TOKENS": "Clear PipeWire tokens",
"CLEAR_PIPEWIRE_TOKENS_HELP": "Prompt for screen selection on next start",
"CLEAR_SAVED_STATE": "Clear saved state",
@@ -49,15 +116,25 @@
"DELETE_ALL_CONFIGS_HELP": "Remove all configuration files from conf.d",
"DOUBLE_CURSOR_FIX": "Double cursor fix",
"DOUBLE_CURSOR_FIX_HELP": "Enable this if you see 2 cursors",
"DEFAULT_OVERLAY_SCALE": "Default overlay size",
"DEFAULT_OVERLAY_SCALE_HELP": "Spawn new overlays at this scale.",
"ENABLED": "Enabled",
"FEATURES": "Features",
"FOCUS_FOLLOWS_MOUSE_MODE": "Mouse move on trigger touch",
"HANDSFREE_POINTER": "Handsfree mode",
"HANDSFREE_POINTER_HELP": "Input to use when motion\ncontrollers are unavailable.\nLeft pinch is grab, right is click.",
"HIDE_GRAB_HELP": "Hide grab help",
"HIDE_USERNAME": "Hide username",
"INPUT_EMULATION_METHOD": "Input emulation method",
"INPUT_EMULATION_METHOD_HELP": "Try change this in case mouse or\nkeyboard input does not register.",
"INPUT_PROFILES": "Change Input Bindings",
"INPUT_PROFILES_HELP": "OpenXR controller input bindings",
"INVERT_SCROLL_DIRECTION_X": "Invert horizontal scroll direction",
"INVERT_SCROLL_DIRECTION_Y": "Invert vertical scroll direction",
"KEYBOARD_MIDDLE_CLICK": "Keyboard middle click",
"KEYBOARD_MIDDLE_CLICK_HELP": "Modifier to use when typing\nwith purple laser",
"KEYBOARD_SOUND_ENABLED": "Keyboard sounds",
"LANGUAGE": "Language",
"LEFT_HANDED_MOUSE": "Left-handed mouse",
"LEFT_HANDED_MOUSE_HELP": "Use this if mouse buttons are swapped",
"LONG_PRESS_DURATION": "Long press duration",
@@ -65,39 +142,80 @@
"MISC": "Miscellaneous",
"NOTIFICATIONS_ENABLED": "Enable notifications",
"NOTIFICATIONS_SOUND_ENABLED": "Notification sounds",
"NOT_SUPPORTED": "Not supported",
"NO_SKYMAPS_FOUND": "No skymaps found",
"OPAQUE_BACKGROUND": "Opaque background",
"OPTION": {
"AUTO": "Automatic",
"AUTO_HELP": "ScreenCopy GPU if supported,\notherwise PipeWire GPU.",
"EYE_ONLY": "Eye only",
"EYE_PINCH": "Eye + pinch",
"HMD_ONLY": "HMD only",
"HMD_PINCH": "HMD + pinch",
"NONE": "None",
"NONE_INPUT_HELP": "Do not emulate mouse and keyboard.\nWill not be able to interact with screens.",
"PIPEWIRE_HELP": "Fast GPU capture,\nstandard on all desktops.",
"PW_FALLBACK_HELP": "Slow method with high CPU usage.\nTry in case PipeWire GPU doesn't work",
"SCREENCOPY_GPU_HELP": "Fast, no screen share popups.\nWorks on: Hyprland, Niri, River, Sway",
"SCREENCOPY_HELP": "Slow, no screen share popups.\nWorks on: Hyprland, Niri, River, Sway"
"SCREENCOPY_HELP": "Slow, no screen share popups.\nWorks on: Hyprland, Niri, River, Sway",
"UINPUT": "Device emulation",
"UINPUT_HELP": "Uses the uinput module to emulate a device.\nYour user must be in the input group.\nKnown to work well on most desktops.",
"WL_VIRTUAL": "Wayland virtual input",
"WL_VIRTUAL_HELP": "Send events to the Wayland compositor using\nzwlr_virtual_pointer and zwp_virtual_keyboard.\nOnly works reliably on some desktops.\nDoes NOT work on KDE, GNOME or COSMIC."
},
"POINTER_LERP_FACTOR": "Pointer smoothing",
"REQUIRES_RESTART": "Requires restart",
"RESET_PLAYSPACE": "Reset playspace",
"RESET_PLAYSPACE_HELP": "Clear the stage space offset.",
"RESTART_SOFTWARE": "Restart software",
"RESTART_SOFTWARE_HELP": "Apply settings that require a restart",
"ROUND_MULTIPLIER": "UI Edge roundness",
"SCREEN_RENDER_DOWN": "Render screen at lower resolution",
"SCREEN_RENDER_DOWN_HELP": "Helps with aliasing on high-res screens",
"SCROLL_SPEED": "Scroll speed",
"SELECT_VARIANT": "Select variant",
"SNAP_ANGLE_DEG": "Window pitch & roll snap angle",
"SNAP_ANGLE_DEG_HELP": "Grabbed windows snap to this angle on pitch and roll axis.",
"ENABLE_WATCH": "Enable watch",
"SETS_ON_WATCH": "Sets on watch",
"SHOW_WELCOME_SCREEN": "Show welcome screen",
"SKYBOX": "Skybox",
"SKYMAP_ALREADY_DOWNLOADED": "This skymap is already downloaded. Select desired action.",
"SPACE_DRAG": "Space drag",
"SPACE_DRAG_MULTIPLIER": "Space drag multiplier",
"SPACE_DRAG_UNLOCKED": "Allow space drag on all axes",
"SPACE_GRAVITY_DAMPING": "Damping",
"SPACE_GRAVITY_DAMPING_HELP": "Artificial drag to slow down movement. 0.1 - high drag, 1.0 - no drag",
"SPACE_GRAVITY_FLING_STRENGTH": "Fling strength",
"SPACE_GRAVITY_FLING_STRENGTH_HELP": "Intensity multiplier of gravitational launch force after space-drag.\n0.0 - no movement at all, 2.0 - double intensity",
"SPACE_GRAVITY_GRAVITY": "Gravity",
"SPACE_GRAVITY_GRAVITY_HELP": "Amount of downwards force. 0.0 - no gravity",
"SPACE_GRAVITY_GROUND_FRICTION": "Ground friction",
"SPACE_GRAVITY_GROUND_FRICTION_HELP": "Amount of friction slowing you down if you're touching the ground.\n0.0 - no friction (just like on ice), 1.0 - rough surface",
"SPACE_GRAVITY_FLOOR_HEIGHT": "Floor height",
"SPACE_GRAVITY_FLOOR_HEIGHT_HELP": "The Y position where the floor is. Gravity stops when you reach this height.",
"SPACE_ROTATE_UNLOCKED": "Allow space rotate on all axes",
"TROUBLESHOOTING": "Troubleshooting",
"UI_GRADIENT_INTENSITY": "UI Gradient intensity",
"UPRIGHT_SCREEN_FIX": "Upright screen fix",
"UPRIGHT_SCREEN_FIX_HELP": "Fixes upright screens on some desktops",
"USE_PASSTHROUGH": "Enable passthrough",
"USE_PASSTHROUGH_HELP": "Allow passthrough if the XR runtime supports it",
"USE_SKYBOX": "Enable skybox",
"USE_SKYBOX_HELP": "Show a skybox if there's no scene app or passthrough",
"XR_CLICK_SENSITIVITY": "XR click sensitivity",
"XR_CLICK_SENSITIVITY_HELP": "Analog trigger sensitivity",
"XR_CLICK_SENSITIVITY_RELEASE": "XR release sensitivity",
"XR_CLICK_SENSITIVITY_RELEASE_HELP": "Must be lower than click",
"WATCH_VIEW_ANGLE": "Watch view angles",
"WATCH_VIEW_ANGLE_HELP": "Control how the watch fades away",
"WHISPER": {
"NEED_TO_DOWNLOAD_MODEL": "The selected model needs to be downloaded.\nDownload it right now?",
"REMOVE_UNUSED_MODELS": "You are turning off the speech-to-text feature.\nWould you like to remove downloaded Whisper models to free up space?"
},
"WHISPER_MODEL": "Speech-to-text model",
"WHISPER_MODEL_HELP": "Whisper model to use.\nLarger models produce more accurate\nresults, but consume more VRAM.",
"GRID_OPACITY": "Floor grid opacity",
"GRID_OPACITY_HELP": "Opacity of the floor grid when the skybox is enabled",
"XWAYLAND_BY_DEFAULT": "Run apps in Compatibility mode by default",
"AUTOSTART_APPS": "Apps to run on startup"
"SAVE": "Save",
"CANCEL": "Cancel"
},
"APPLICATION_LAUNCHER": "Application launcher",
"APPLICATION_STARTED": "Application started",
@@ -117,36 +235,84 @@
"VOLUME": "Volume"
},
"CLOSE_WINDOW": "Close window",
"CREATION_DATE": "Creation date",
"DEBUG_INFO": "Debug info",
"DISPLAY_BRIGHTNESS": "Display brightness",
"DONATE": {
"SUPPORT_US": "Support us",
"DESCRIPTION": "We're a small team of 2 developers building WayVR in our free time. If you enjoy using this software, please consider supporting us - every donation helps us keep going.",
"THANK_YOU_WAYVR": "Thank you from the WayVR Team!",
"BUTTON_TOOLTIP": "Donate via Open Collective",
"CURRENT_SUPPORTERS": "Current Supporters"
},
"DOWNLOAD": "Download",
"DOWNLOADER": "Downloader",
"WELCOME": {
"ALL_SET": "You're all set!",
"BASICS": "These basics will allow you to start using WayVR with ease.",
"CENTER_MARKER": "Center marker is what will appear in front of you when recentering. Place overlays around it!",
"DOUBLE_PRESS_TO_TOGGLE": "Double-press B (on Index) or Y (on Meta) to show, recenter or hide your set. Try it now.",
"FEATURES_DOCUMENTATION": "There are many other features worth customizing. For more information, check the documentation at",
"FINISH_TUTORIAL": "Finish tutorial",
"GRAB_BOTH_HANDS": "Grab it with both hands if you want to move a specific overlay in your set.",
"GRAB_ONE_HAND": "Grab it with one hand to move your set.",
"GREETING": "Hi there!",
"GUIDE_INTRO": "Let us guide you through your first steps.",
"LASER_COLORS": "Laser Colors",
"LASER_FUNCTIONALITY": "Much of the functionality in WayVR depends on what color of laser is used to interact with a UI element. You don't need to press these buttons, just touch them!",
"LAST_PAGE_INFO": "This tutorial will stop showing up once you get to the last page.",
"LOOK_AT_LEFT_WRIST": "Look at your left wrist. That's your watch.",
"MIDDLE_CLICK_MODE_PURPLE_LASER": "— Middle-click Mode: Purple laser",
"MOVING_YOUR_SET": "Moving your set",
"NEXT_BUTTON": "Press \"Next\" button below to get started.",
"REGULAR_MODE_BLUE_LASER": "— Regular Mode: Blue laser",
"REPOSITION_THIS_WINDOW_BY_GRABBING": "Reposition this window using your controller's grip action.",
"RIGHT_CLICK_MODE_ORANGE_LASER": "— Right-click Mode: Orange laser",
"THANKS_FOR_INSTALLING": "Thank you for installing WayVR!",
"WATCH": "Watch",
"WORKING_SET": "Working Set"
},
"DOWNLOAD_AGAIN": "Download again",
"DOWNLOADING_FILE": "Downloading file...",
"FAILED_TO_LAUNCH_APPLICATION": "Failed to launch a application:",
"GAME_LAUNCHED": "Game launched",
"GAME_LIST": {
"NO_GAMES_FOUND": "No games found"
"NO_GAMES_FOUND": "No games found",
"RUNNING_GAMES_LIST": "List of running games"
},
"GAMES": "Games",
"GENERAL_SETTINGS": "General settings",
"GETTING_STARTED": "Getting started",
"HEIGHT": "Height",
"HELLO": "Hello!",
"HELLO_USER": "Hello, {USER}!",
"HIDE": "Hide",
"HOME_SCREEN": "Home",
"LIST_OF_PROCESSES": "Process list",
"LIST_OF_WINDOWS": "Window list",
"MODIFICATION_DATE": "Modification date",
"MONADO_RUNTIME": "Monado runtime",
"NO_WINDOWS_FOUND": "No windows found",
"LOADING": "Loading...",
"POPUP_ADD_DISPLAY": {
"RESOLUTION": "Resolution"
},
"PROCESS_LIST": {
"LOCATED_ON": "on",
"NO_PROCESSES_FOUND": "No processes found",
"TERMINATE_PROCESS_NAMED_X": "Terminate process \"{PROCESS_NAME}\""
"PROCESS": {
"FORCE_KILL": "Force-kill",
"STOP": "Stop"
},
"PROCESSES": "Processes",
"PROCESS_LIST": "Process list",
"REFRESH": "Refresh",
"REMOVE": "Remove",
"APPLY": "Apply",
"RELOAD_FROM_DISK": "Reload from disk",
"SETTINGS": "Settings",
"SHOW": "Show",
"TARGET_PATH": "Target path",
"TERMINATE_PROCESS": "Terminate process",
"VERSION": "Version",
"WIDTH": "Width",
"WINDOW_OPTIONS": "Window options"
"SAVED_TO_FAVOURITES": "Saved to favourites",
"ADD_TO_FAVOURITES": "Add to favourites",
"ADD_TO_FAVOURITES_HINT": "Save preset and pin it to the app drawer",
"REMOVE_FROM_FAVOURITES": "Remove from favourites",
"EMPTY": "Empty",
"PINNED_APPS": "Pinned applications"
}
+316 -151
View File
@@ -1,153 +1,318 @@
{
"HOME_SCREEN": "Inicio",
"MONADO_RUNTIME": "Monado tiempo de ejecución",
"APPLICATIONS": "Aplicaciones",
"GAMES": "Juegos",
"SETTINGS": "Ajustes",
"PROCESSES": "Procesos",
"HELLO_USER": "¡Hola, {USER}!",
"GENERAL_SETTINGS": "Ajustes generales",
"APPLICATION_LAUNCHER": "Lanzador de aplicaciones",
"APP_SETTINGS": {
"HIDE_USERNAME": "Ocultar nombre de usuario",
"OPAQUE_BACKGROUND": "Fondo opaco",
"WLX": {},
"LOOK_AND_FEEL": "Apariencia y estilo",
"HIDE_GRAB_HELP": "Ocultar ayuda para agarrar",
"ANIMATION_SPEED": "Velocidad de animación de la IU",
"ROUND_MULTIPLIER": "Redondeo de bordes de la IU",
"USE_SKYBOX": "Activar skybox",
"USE_PASSTHROUGH": "Activar passthrough",
"CLOCK_12H": "Reloj de 12 horas",
"FEATURES": "Funciones",
"NOTIFICATIONS_ENABLED": "Habilitar notificaciones",
"NOTIFICATIONS_SOUND_ENABLED": "Sonidos de notificación",
"KEYBOARD_SOUND_ENABLED": "Sonidos del teclado",
"SPACE_DRAG_MULTIPLIER": "Multiplicador de arrastre espacial",
"SPACE_DRAG_UNLOCKED": "Permitir arrastre del espacio en todos los ejes",
"SPACE_ROTATE_UNLOCKED": "Permitir rotación espacial en todos los ejes",
"BLOCK_GAME_INPUT": "Bloquear entrada del juego",
"BLOCK_GAME_INPUT_IGNORE_WATCH": "Ignorar watch al bloquear la entrada",
"CONTROLS": "Controles",
"FOCUS_FOLLOWS_MOUSE_MODE": "El movimiento del ratón en el disparador",
"LEFT_HANDED_MOUSE": "Ratón para zurdos",
"ALLOW_SLIDING": "Interacción con el stick durante el agarre",
"INVERT_SCROLL_DIRECTION_X": "Invertir dirección de desplazamiento horizontal",
"INVERT_SCROLL_DIRECTION_Y": "Invertir la dirección del desplazamiento vertical",
"SCROLL_SPEED": "Velocidad de desplazamiento",
"LONG_PRESS_DURATION": "Duración de la pulsación larga",
"POINTER_LERP_FACTOR": "Suavizado del puntero",
"XR_CLICK_SENSITIVITY": "Sensibilidad del clic XR",
"XR_CLICK_SENSITIVITY_RELEASE": "Sensibilidad de liberación de OpenXR",
"CLICK_FREEZE_TIME_MS": "Tiempo de congelación al hacer clic (ms)",
"MISC": "Miscelánea",
"XWAYLAND_BY_DEFAULT": "Ejecutar aplicaciones en modo de compatibilidad por defecto",
"UPRIGHT_SCREEN_FIX": "Corrección de pantalla vertical",
"DOUBLE_CURSOR_FIX": "Solución de doble cursor",
"SCREEN_RENDER_DOWN": "Renderizar pantalla a menor resolución",
"UPRIGHT_SCREEN_FIX_HELP": "Corrige pantallas en posición vertical en algunos escritorios",
"DOUBLE_CURSOR_FIX_HELP": "Habilita esto si ves 2 cursores",
"XR_CLICK_SENSITIVITY_HELP": "Sensibilidad del gatillo analógico",
"XR_CLICK_SENSITIVITY_RELEASE_HELP": "Debe ser inferior a 'click'",
"CLICK_FREEZE_TIME_MS_HELP": "Ayuda con la precisión de los dobles clics",
"LEFT_HANDED_MOUSE_HELP": "Utilice esto si los botones del ratón están intercambiados",
"BLOCK_GAME_INPUT_HELP": "Bloquea toda la entrada cuando se pasa el cursor sobre un overlay",
"BLOCK_GAME_INPUT_IGNORE_WATCH_HELP": "No bloquear la entrada cuando el cursor está sobre la ventana",
"USE_SKYBOX_HELP": "Mostrar una skybox si no hay una aplicación de escena o passthrough",
"USE_PASSTHROUGH_HELP": "Permitir passthrough si el entorno de ejecución XR lo admite",
"SCREEN_RENDER_DOWN_HELP": "Ayuda a reducir el aliasing en pantallas de alta resolución",
"SETS_ON_WATCH": "Conjuntos en el reloj",
"TROUBLESHOOTING": "Solución de problemas",
"CLEAR_SAVED_STATE": "Borrar estado guardado",
"CLEAR_PIPEWIRE_TOKENS": "Limpiar tokens de PipeWire",
"DELETE_ALL_CONFIGS": "Borrar configuración",
"RESTART_SOFTWARE": "Reiniciar software",
"CLEAR_SAVED_STATE_HELP": "Restablecer sets y posiciones de superposición",
"CLEAR_PIPEWIRE_TOKENS_HELP": "Solicitar la selección de pantalla al iniciar la próxima vez",
"DELETE_ALL_CONFIGS_HELP": "Eliminar todos los archivos de configuración de conf.d",
"RESTART_SOFTWARE_HELP": "Aplicar la configuración que requiere un reinicio",
"CAPTURE_METHOD": "Captura de pantalla de Wayland",
"CAPTURE_METHOD_HELP": "Intente cambiar esta opción si\nexperimenta pantallas negras o con fallos",
"KEYBOARD_MIDDLE_CLICK": "Clic del botón central del teclado",
"KEYBOARD_MIDDLE_CLICK_HELP": "Modificador para usar al escribir\ncon láser púrpura",
"OPTION": {
"AUTO": "Automático",
"AUTO_HELP": "Copiar pantalla usando la GPU si es compatible,\nde lo contrario, GPU de PipeWire.",
"PIPEWIRE_HELP": "Captura de GPU rápida,\nestándar en todos los escritorios.",
"PW_FALLBACK_HELP": "Método lento con alto uso de CPU.\nPruébalo si PipeWire GPU no funciona",
"SCREENCOPY_GPU_HELP": "Rápido, sin ventanas emergentes de uso compartido de pantalla.\nFunciona en: Hyprland, Niri, River, Sway",
"SCREENCOPY_HELP": "Lento, sin ventanas emergentes de uso compartido de pantalla.\nFunciona en: Hyprland, Niri, River, Sway"
},
"AUTOSTART_APPS": "Aplicaciones a ejecutar al inicio"
},
"HELLO": "¡Hola!",
"AUDIO": {
"VOLUME": "Volumen",
"SETTINGS": "Configuración de audio",
"AUTO_SWITCH_TO_VR_AUDIO": "Conmutar automáticamente al audio VR",
"SPEAKERS": "Altavoces",
"MICROPHONES": "Micrófonos",
"CARDS": "Tarjetas",
"SELECT_AUDIO_CARD_PROFILE": "Seleccionar perfil de tarjeta de audio",
"NO_VR_SPEAKERS_FOUND_SWITCH_MANUALLY": "No se encontraron altavoces VR. Actívelos manualmente.",
"NO_VR_MICROPHONE_SWITCH_MANUALLY": "No se encontró micrófono VR. Actívelo manualmente.",
"FAILED_TO_SWITCH_MICROPHONE": "No se pudo cambiar el micrófono",
"MICROPHONE_SET_SUCCESSFULLY": "Micrófono configurado correctamente",
"SPEAKERS_SET_SUCCESSFULLY": "Altavoces configurados correctamente"
},
"ACTIONS": {
"RECENTER_PLAYSPACE": "Re-centrar espacio de juego"
},
"LIST_OF_PROCESSES": "Lista de procesos",
"POPUP_ADD_DISPLAY": {
"RESOLUTION": "Resolución"
},
"WIDTH": "Ancho",
"HEIGHT": "Altura",
"HIDE": "Ocultar",
"REMOVE": "Eliminar",
"SHOW": "Mostrar",
"PROCESS_LIST": {
"NO_PROCESSES_FOUND": "No se encontraron procesos",
"LOCATED_ON": "en",
"TERMINATE_PROCESS_NAMED_X": "Terminar proceso \"{PROCESS_NAME}\""
},
"FAILED_TO_LAUNCH_APPLICATION": "No se pudo iniciar la aplicación:",
"NO_WINDOWS_FOUND": "No se encontraron ventanas",
"WINDOW_OPTIONS": "Opciones de ventana",
"APPLICATION_STARTED": "Aplicación iniciada",
"LIST_OF_WINDOWS": "Lista de ventanas",
"CLOSE_WINDOW": "Cerrar ventana",
"GAME_LIST": {
"NO_GAMES_FOUND": "No se encontraron juegos"
},
"TERMINATE_PROCESS": "Finalizar proceso",
"GAME_LAUNCHED": "Juego lanzado",
"APP_LAUNCHER": {
"MODE": {
"NATIVE": "Modo nativo",
"CAGE": "Modo de compatibilidad (Cage)"
},
"RES_TITLE": "Resolución",
"ASPECT_TITLE": "Aspecto",
"ASPECT": {
"WIDE": "Ancho",
"SEMI_WIDE": "Semi-ancho",
"SQUARE": "Cuadrado",
"SEMI_TALL": "Semi alto",
"TALL": "Alto"
},
"POS_TITLE": "Posicionamiento",
"POS": {
"FLOATING": "Flotante",
"ANCHORED": "Anclado",
"STATIC": "Estático",
"FLOATING_HELP": "Se mueve independientemente, se recentra al mostrarse.",
"ANCHORED_HELP": "Se mantiene en su lugar con respecto al marcador central.",
"STATIC_HELP": "No pertenece a ningún conjunto. No se recentra."
},
"AUTOSTART": "Ejecutar automáticamente al inicio",
"LAUNCH": "Iniciar"
},
"DISPLAY_BRIGHTNESS": "Brillo de la pantalla"
"HOME_SCREEN": "Inicio",
"MONADO_RUNTIME": "Monado tiempo de ejecución",
"APPLICATIONS": "Aplicaciones",
"GAMES": "Juegos",
"SETTINGS": "Ajustes",
"HELLO_USER": "¡Hola, {USER}!",
"GENERAL_SETTINGS": "Ajustes generales",
"APPLICATION_LAUNCHER": "Lanzador de aplicaciones",
"APP_SETTINGS": {
"HIDE_USERNAME": "Ocultar nombre de usuario",
"OPAQUE_BACKGROUND": "Fondo opaco",
"LOOK_AND_FEEL": "Apariencia y estilo",
"HIDE_GRAB_HELP": "Ocultar ayuda para agarrar",
"ANIMATION_SPEED": "Velocidad de animación de la IU",
"ROUND_MULTIPLIER": "Redondeo de bordes de la IU",
"USE_SKYBOX": "Activar skybox",
"USE_PASSTHROUGH": "Activar passthrough",
"CLOCK_12H": "Reloj de 12 horas",
"FEATURES": "Funciones",
"NOTIFICATIONS_ENABLED": "Habilitar notificaciones",
"NOTIFICATIONS_SOUND_ENABLED": "Sonidos de notificación",
"KEYBOARD_SOUND_ENABLED": "Sonidos del teclado",
"SPACE_DRAG_MULTIPLIER": "Multiplicador de arrastre espacial",
"SPACE_DRAG_UNLOCKED": "Permitir arrastre del espacio en todos los ejes",
"SPACE_ROTATE_UNLOCKED": "Permitir rotación espacial en todos los ejes",
"BLOCK_GAME_INPUT": "Bloquear entrada del juego",
"BLOCK_GAME_INPUT_IGNORE_WATCH": "Ignorar watch al bloquear la entrada",
"CONTROLS": "Controles",
"FOCUS_FOLLOWS_MOUSE_MODE": "El movimiento del ratón en el disparador",
"LEFT_HANDED_MOUSE": "Ratón para zurdos",
"ALLOW_SLIDING": "Interacción con el stick durante el agarre",
"INVERT_SCROLL_DIRECTION_X": "Invertir dirección de desplazamiento horizontal",
"INVERT_SCROLL_DIRECTION_Y": "Invertir la dirección del desplazamiento vertical",
"SCROLL_SPEED": "Velocidad de desplazamiento",
"LONG_PRESS_DURATION": "Duración de la pulsación larga",
"POINTER_LERP_FACTOR": "Suavizado del puntero",
"CLICK_FREEZE_TIME_MS": "Tiempo de congelación al hacer clic (ms)",
"MISC": "Miscelánea",
"XWAYLAND_BY_DEFAULT": "Ejecutar aplicaciones en modo de compatibilidad por defecto",
"UPRIGHT_SCREEN_FIX": "Corrección de pantalla vertical",
"DOUBLE_CURSOR_FIX": "Solución de doble cursor",
"SCREEN_RENDER_DOWN": "Renderizar pantalla a menor resolución",
"UPRIGHT_SCREEN_FIX_HELP": "Corrige pantallas en posición vertical en algunos escritorios",
"DOUBLE_CURSOR_FIX_HELP": "Habilita esto si ves 2 cursores",
"CLICK_FREEZE_TIME_MS_HELP": "Ayuda con la precisión de los dobles clics",
"LEFT_HANDED_MOUSE_HELP": "Utilice esto si los botones del ratón están intercambiados",
"BLOCK_GAME_INPUT_HELP": "Bloquea toda la entrada cuando se pasa el cursor sobre un overlay",
"BLOCK_GAME_INPUT_IGNORE_WATCH_HELP": "No bloquear la entrada cuando el cursor está sobre la ventana",
"USE_SKYBOX_HELP": "Mostrar una skybox si no hay una aplicación de escena o passthrough",
"USE_PASSTHROUGH_HELP": "Permitir passthrough si el entorno de ejecución XR lo admite",
"SCREEN_RENDER_DOWN_HELP": "Ayuda a reducir el aliasing en pantallas de alta resolución",
"SETS_ON_WATCH": "Conjuntos en el reloj",
"TROUBLESHOOTING": "Solución de problemas",
"CLEAR_SAVED_STATE": "Borrar estado guardado",
"CLEAR_PIPEWIRE_TOKENS": "Limpiar tokens de PipeWire",
"DELETE_ALL_CONFIGS": "Borrar configuración",
"RESTART_SOFTWARE": "Reiniciar software",
"CLEAR_SAVED_STATE_HELP": "Restablecer sets y posiciones de superposición",
"CLEAR_PIPEWIRE_TOKENS_HELP": "Solicitar la selección de pantalla al iniciar la próxima vez",
"DELETE_ALL_CONFIGS_HELP": "Eliminar todos los archivos de configuración de conf.d",
"RESTART_SOFTWARE_HELP": "Aplicar la configuración que requiere un reinicio",
"CAPTURE_METHOD": "Captura de pantalla de Wayland",
"CAPTURE_METHOD_HELP": "Intente cambiar esta opción si\nexperimenta pantallas negras o con fallos",
"KEYBOARD_MIDDLE_CLICK": "Clic del botón central del teclado",
"KEYBOARD_MIDDLE_CLICK_HELP": "Modificador para usar al escribir\ncon láser púrpura",
"OPTION": {
"AUTO": "Automático",
"AUTO_HELP": "Copiar pantalla usando la GPU si es compatible,\nde lo contrario, GPU de PipeWire.",
"PIPEWIRE_HELP": "Captura de GPU rápida,\nestándar en todos los escritorios.",
"PW_FALLBACK_HELP": "Método lento con alto uso de CPU.\nPruébalo si PipeWire GPU no funciona",
"SCREENCOPY_GPU_HELP": "Rápido, sin ventanas emergentes de uso compartido de pantalla.\nFunciona en: Hyprland, Niri, River, Sway",
"SCREENCOPY_HELP": "Lento, sin ventanas emergentes de uso compartido de pantalla.\nFunciona en: Hyprland, Niri, River, Sway",
"NONE": "Ninguno",
"HMD_PINCH": "HMD + pellizco",
"EYE_PINCH": "Ojo + pellizco",
"EYE_ONLY": "Solo ojo",
"HMD_ONLY": "Solo HMD",
"NONE_INPUT_HELP": "No emular ratón y teclado.\nNo podrá interactuar con las pantallas.",
"UINPUT": "Emulación de dispositivo",
"UINPUT_HELP": "Utiliza el módulo uinput para emular un dispositivo.\nSu usuario debe estar en el grupo input.\nSe sabe que funciona bien en la mayoría de los escritorios.",
"WL_VIRTUAL": "Entrada virtual de Wayland",
"WL_VIRTUAL_HELP": "Enviar eventos al compositor de Wayland usando\nzwlr_virtual_pointer y zwp_virtual_keyboard.\nSolo funciona de forma fiable en algunos escritorios.\nNO funciona en KDE, GNOME o COSMIC."
},
"AUTOSTART_APPS": "Aplicaciones a ejecutar al inicio",
"HANDSFREE_POINTER": "Modo manos libres",
"HANDSFREE_POINTER_HELP": "Entrada a utilizar cuando no\nestén disponibles los mandos de movimiento.\nPellizco con la izquierda para agarrar, con la derecha para hacer clic.",
"UI_GRADIENT_INTENSITY": "Intensidad del degradado de la IU",
"RESET_PLAYSPACE": "Restablecer espacio de juego",
"RESET_PLAYSPACE_HELP": "Borrar el desplazamiento del espacio de juego.",
"BLOCK_POSES_ON_KBD_INTERACTION": "Bloquear poses al interactuar con el teclado",
"BLOCK_POSES_ON_KBD_INTERACTION_HELP": "Bloquea que el juego reciba poses cuando el teclado está sobre él y 'Bloquear entrada del juego' está habilitado",
"LANGUAGE": "Idioma",
"REQUIRES_RESTART": "Requiere reinicio",
"GRID_OPACITY": "Opacidad de la cuadrícula del suelo",
"GRID_OPACITY_HELP": "Opacidad de la cuadrícula del suelo cuando el skybox está habilitado",
"BROWSE_ONLINE_CATALOG": "Explorar catálogo en línea...",
"BROWSE_SKYMAPS": "Explorar skymaps",
"COLOR_KEYING": "Clave de color",
"NO_SKYMAPS_FOUND": "No se encontraron skymaps",
"SELECT_VARIANT": "Seleccionar variante",
"SHOW_WELCOME_SCREEN": "Mostrar pantalla de bienvenida",
"SKYBOX": "Skybox",
"SKYMAP_ALREADY_DOWNLOADED": "Esta skymap ya ha sido descargada. Selecciona la acción deseada.",
"WATCH_VIEW_ANGLE": "Ángulos de visión del Watch",
"WATCH_VIEW_ANGLE_HELP": "Controla cómo se desvanece el Watch",
"BINDINGS": {
"COMP": {
"CLICK": "Click",
"FORCE": "Fuerza",
"TOUCH": "Tocar",
"VALUE": "Valor",
"PROXIMITY": "Proximidad",
"X_AXIS": "Eje X",
"Y_AXIS": "Eje Y"
},
"TYPE": {
"BUMPER": "Bumper",
"DPAD_UP": "D-pad arriba",
"DPAD_DOWN": "D-pad hacia abajo",
"DPAD_LEFT": "D-pad izquierda",
"DPAD_RIGHT": "D-pad derecha",
"JOYSTICK": "Joystick",
"MENU": "Menú",
"SHOULDER": "Hombro",
"SQUEEZE": "Agarre",
"SYSTEM": "Sistema",
"THUMBREST": "Thumbrest",
"THUMBSTICK": "Stick analógico",
"TRACKPAD": "Trackpad",
"TRIGGER": "Gatillo",
"VIEW": "Ver"
},
"CLICK": {
"ANY": "Cualquiera",
"DOUBLE": "Doble toque",
"TRIPLE": "Triple toque",
"TYPE": "Número de toques"
},
"ACTION": {
"CLICK": "Clic*",
"GRAB": "Agarrar*",
"ALT_CLICK": "Ejecución de shell personalizada (establecer alt_click en la configuración)",
"SHOW_HIDE": "Mostrar, ocultar, recentrar*",
"TOGGLE_DASHBOARD": "Alternar dashboard",
"SPACE_DRAG": "Arrastre del playspace",
"SPACE_ROTATE": "Rotar playspace",
"SPACE_RESET": "Reinicio del Playspace",
"CLICK_MODIFIER_RIGHT": "Modificador de clic derecho",
"CLICK_MODIFIER_MIDDLE": "Modificador de clic central",
"MOVE_MOUSE": "Mover ratón (si está desactivado por defecto)",
"SCROLL": "Desplazamiento*"
},
"LEFT": "Izquierda",
"RIGHT": "Derecha",
"COMPONENT": "Tipo de actuación",
"SUBPATH": "Control de actuación",
"THRESHOLD": "Activar cuando supere el valor superior\nDesactivar cuando sea inferior al valor inferior"
},
"ENABLED": "Activado",
"INPUT_EMULATION_METHOD": "Método de emulación de entrada",
"INPUT_EMULATION_METHOD_HELP": "Prueba a cambiar esto en caso de que la entrada del\nratón o el teclado no se registre.",
"INPUT_PROFILES": "Cambiar la configuración de entrada",
"INPUT_PROFILES_HELP": "Vinculaciones de entrada del controlador OpenXR",
"NOT_SUPPORTED": "No compatible",
"ENABLE_WATCH": "Activar watch",
"SPACE_DRAG": "Space drag",
"SPACE_GRAVITY_DAMPING": "Amortiguación",
"SPACE_GRAVITY_DAMPING_HELP": "Resistencia artificial para ralentizar el movimiento. 0.1 - alta resistencia, 1.0 - sin resistencia",
"SPACE_GRAVITY_FLING_STRENGTH": "Fuerza de lanzamiento",
"SPACE_GRAVITY_FLING_STRENGTH_HELP": "Multiplicador de intensidad de la fuerza de lanzamiento gravitacional tras el space-drag.\n0.0 - sin movimiento alguno, 2.0 - doble intensidad",
"SPACE_GRAVITY_GRAVITY": "Gravedad",
"SPACE_GRAVITY_GRAVITY_HELP": "Cantidad de fuerza hacia abajo. 0.0 - sin gravedad",
"SPACE_GRAVITY_GROUND_FRICTION": "Fricción del suelo",
"SPACE_GRAVITY_GROUND_FRICTION_HELP": "Cantidad de fricción que te ralentiza si estás tocando el suelo.\n0.0 - sin fricción (como si fuera hielo), 1.0 - superficie rugosa",
"SPACE_GRAVITY_FLOOR_HEIGHT": "Altura del suelo",
"SPACE_GRAVITY_FLOOR_HEIGHT_HELP": "La posición Y donde se encuentra el suelo. La gravedad se detiene cuando alcanzas esta altura.",
"SAVE": "Guardar",
"CANCEL": "Cancelar",
"WHISPER": {
"NEED_TO_DOWNLOAD_MODEL": "El modelo seleccionado debe ser descargado.\n¿Deseas descargarlo ahora?",
"REMOVE_UNUSED_MODELS": "Estás desactivando la función de voz a texto.\n¿Te gustaría eliminar los modelos de Whisper descargados para liberar espacio?"
},
"WHISPER_MODEL": "Modelo de voz a texto",
"WHISPER_MODEL_HELP": "Modelo de Whisper a utilizar.\nLos modelos más grandes producen\nresultados más precisos, pero consumen más VRAM.",
"DEFAULT_OVERLAY_SCALE": "Tamaño de la superposición predeterminado",
"DEFAULT_OVERLAY_SCALE_HELP": "Genera nuevas capas de superposición con esta escala.",
"COLOR_PALETTE": "Paleta de colores",
"COLOR_PALETTES": "Paletas de colores",
"COLOR_PALETTE_CURRENT": "Tema actualmente activo.",
"COLOR_PALETTE_ACTIVATE": "Haz clic para usar este tema.",
"APPLY_CHANGES_RESTART": "¿Reiniciar WayVR para aplicar los cambios?",
"COLOR_PALETTE_HELP": "Haz clic para explorar paletas de colores.\nPara crear paletas personalizadas, ¡visita el sitio web!",
"COLOR_PALETTE_CUSTOM_URL": "¡Añade tu propio tema personalizado!",
"COLOR_PALETTE_CUSTOM_URL2": "Haz clic para abrir el manual web.",
"SNAP_ANGLE_DEG": "Ángulo de ajuste de cabeceo y alabeo de la ventana",
"SNAP_ANGLE_DEG_HELP": "Las ventanas agarradas se ajustan a este ángulo en los ejes de cabeceo y balanceo."
},
"HELLO": "¡Hola!",
"AUDIO": {
"VOLUME": "Volumen",
"SETTINGS": "Configuración de audio",
"AUTO_SWITCH_TO_VR_AUDIO": "Conmutar automáticamente al audio VR",
"SPEAKERS": "Altavoces",
"MICROPHONES": "Micrófonos",
"CARDS": "Tarjetas",
"SELECT_AUDIO_CARD_PROFILE": "Seleccionar perfil de tarjeta de audio",
"NO_VR_SPEAKERS_FOUND_SWITCH_MANUALLY": "No se encontraron altavoces VR. Actívelos manualmente.",
"NO_VR_MICROPHONE_SWITCH_MANUALLY": "No se encontró micrófono VR. Actívelo manualmente.",
"FAILED_TO_SWITCH_MICROPHONE": "No se pudo cambiar el micrófono",
"MICROPHONE_SET_SUCCESSFULLY": "Micrófono configurado correctamente",
"SPEAKERS_SET_SUCCESSFULLY": "Altavoces configurados correctamente"
},
"ACTIONS": {
"RECENTER_PLAYSPACE": "Re-centrar espacio de juego"
},
"POPUP_ADD_DISPLAY": {
"RESOLUTION": "Resolución"
},
"WIDTH": "Ancho",
"HEIGHT": "Altura",
"HIDE": "Ocultar",
"REMOVE": "Eliminar",
"SHOW": "Mostrar",
"FAILED_TO_LAUNCH_APPLICATION": "No se pudo iniciar la aplicación:",
"APPLICATION_STARTED": "Aplicación iniciada",
"CLOSE_WINDOW": "Cerrar ventana",
"GAME_LIST": {
"NO_GAMES_FOUND": "No se encontraron juegos",
"RUNNING_GAMES_LIST": "Lista de juegos en ejecución"
},
"TERMINATE_PROCESS": "Finalizar proceso",
"GAME_LAUNCHED": "Juego lanzado",
"APP_LAUNCHER": {
"MODE": {
"NATIVE": "Modo nativo",
"CAGE": "Modo de compatibilidad (Cage)"
},
"RES_TITLE": "Resolución",
"ASPECT_TITLE": "Aspecto",
"ASPECT": {
"WIDE": "Ancho",
"SEMI_WIDE": "Semi-ancho",
"SQUARE": "Cuadrado",
"SEMI_TALL": "Semi alto",
"TALL": "Alto"
},
"POS_TITLE": "Posicionamiento",
"POS": {
"FLOATING": "Flotante",
"ANCHORED": "Anclado",
"STATIC": "Estático",
"FLOATING_HELP": "Se mueve independientemente, se recentra al mostrarse.",
"ANCHORED_HELP": "Se mantiene en su lugar con respecto al marcador central.",
"STATIC_HELP": "No pertenece a ningún conjunto. No se recentra."
},
"AUTOSTART": "Ejecutar automáticamente al inicio",
"LAUNCH": "Iniciar"
},
"DISPLAY_BRIGHTNESS": "Brillo de la pantalla",
"PROCESS_LIST": "Lista de procesos",
"REFRESH": "Actualizar",
"PROCESS": {
"STOP": "Detener",
"FORCE_KILL": "Forzar cierre"
},
"DEBUG_INFO": "Información de depuración",
"CREATION_DATE": "Fecha de creación",
"DOWNLOADER": "Descargador",
"DOWNLOAD_AGAIN": "Descargar de nuevo",
"DOWNLOADING_FILE": "Descargando archivo...",
"GETTING_STARTED": "Primeros pasos",
"MODIFICATION_DATE": "Fecha de modificación",
"LOADING": "Cargando...",
"APPLY": "Aplicar",
"RELOAD_FROM_DISK": "Recargar desde el disco",
"TARGET_PATH": "Ruta de destino",
"VERSION": "Versión",
"DONATE": {
"SUPPORT_US": "Apóyanos",
"DESCRIPTION": "Somos un pequeño equipo de 2 desarrolladores que creamos WayVR en nuestro tiempo libre. Si disfrutas usando este software, por favor considera apoyarnos; cada donación nos ayuda a seguir adelante.",
"BUTTON_TOOLTIP": "Donar vía Open Collective",
"CURRENT_SUPPORTERS": "Colaboradores actuales",
"THANK_YOU_WAYVR": "¡Gracias de parte del equipo de WayVR!"
},
"WELCOME": {
"ALL_SET": "¡Todo listo!",
"BASICS": "Estos conceptos básicos te permitirán empezar a usar WayVR con facilidad.",
"FEATURES_DOCUMENTATION": "Hay muchas otras funciones que merece la pena personalizar. Para más información, consulta la documentación en",
"FINISH_TUTORIAL": "Finalizar tutorial",
"GRAB_BOTH_HANDS": "Agarra el elemento con ambas manos si quieres mover un overlay específico en tu set.",
"GRAB_ONE_HAND": "Agárralo con una mano para mover tu set.",
"GREETING": "¡Hola!",
"GUIDE_INTRO": "Permítenos guiarte en tus primeros pasos.",
"LASER_COLORS": "Colores del láser",
"LASER_FUNCTIONALITY": "Gran parte de la funcionalidad de WayVR depende del color de láser que se utilice para interactuar con un elemento de la interfaz. ¡No hace falta pulsar estos botones, solo tocarlos!",
"LAST_PAGE_INFO": "Este tutorial dejará de aparecer una vez que llegues a la última página.",
"LOOK_AT_LEFT_WRIST": "Mira tu muñeca izquierda. Ese es tu watch.",
"MIDDLE_CLICK_MODE_PURPLE_LASER": "— Modo de clic central: Láser morado",
"MOVING_YOUR_SET": "Moviendo tu set",
"NEXT_BUTTON": "Pulsa el botón \"Siguiente\" de abajo para comenzar.",
"REGULAR_MODE_BLUE_LASER": "— Modo Regular: Láser azul",
"REPOSITION_THIS_WINDOW_BY_GRABBING": "Reposiciona esta ventana usando la acción de agarre de tu controlador.",
"RIGHT_CLICK_MODE_ORANGE_LASER": "— Modo de clic derecho: Láser naranja",
"THANKS_FOR_INSTALLING": "¡Gracias por instalar WayVR!",
"WATCH": "Watch",
"WORKING_SET": "Set de trabajo",
"DOUBLE_PRESS_TO_TOGGLE": "Presiona dos veces B (en Index) o Y (en Meta) para mostrar, recentrar u ocultar tu set. Pruébalo ahora.",
"CENTER_MARKER": "El marcador de centrado es lo que aparecerá frente a ti al recentrar. ¡Coloca las capas alrededor de él!"
},
"DOWNLOAD": "Descargar",
"SAVED_TO_FAVOURITES": "Guardado en favoritos",
"ADD_TO_FAVOURITES": "Añadir a favoritos",
"ADD_TO_FAVOURITES_HINT": "Guarda el ajuste preestablecido y ánclalo al cajón de aplicaciones",
"REMOVE_FROM_FAVOURITES": "Eliminar de favoritos",
"EMPTY": "Vacío",
"PINNED_APPS": "Aplicaciones ancladas"
}
+318
View File
@@ -0,0 +1,318 @@
{
"ACTIONS": {
"RECENTER_PLAYSPACE": "Recentra lo spazio di gioco"
},
"APP_LAUNCHER": {
"ASPECT": {
"SEMI_TALL": "Semi-alto",
"SEMI_WIDE": "Semi-ampio",
"SQUARE": "Quadrato",
"TALL": "Alto",
"WIDE": "Ampio"
},
"ASPECT_TITLE": "Proporzioni",
"AUTOSTART": "Avvia automaticamente all'avvio",
"LAUNCH": "Avvia",
"MODE": {
"CAGE": "Modalità compatibilità (Cage)",
"NATIVE": "Modalità nativa"
},
"POS": {
"ANCHORED": "Ancorato",
"ANCHORED_HELP": "Rimane fermo rispetto al marcatore centrale.",
"FLOATING": "Fluttuante",
"FLOATING_HELP": "Si muove in modo indipendente, si recentra quando viene mostrato.",
"STATIC": "Statico",
"STATIC_HELP": "Non fa parte di alcun set. Non recentra."
},
"POS_TITLE": "Posizionamento",
"RES_TITLE": "Risoluzione"
},
"APP_SETTINGS": {
"ALLOW_SLIDING": "Interazione tramite stick durante l'afferrare",
"ANIMATION_SPEED": "Velocità dell'animazione dell'interfaccia utente",
"BLOCK_GAME_INPUT": "Blocca l'input di gioco",
"BLOCK_GAME_INPUT_HELP": "Blocca tutti gli input quando il cursore è sopra un overlay",
"BLOCK_GAME_INPUT_IGNORE_WATCH": "Ignora il Watch quando si blocca l'input",
"BLOCK_GAME_INPUT_IGNORE_WATCH_HELP": "Non bloccare l'input quando il watch è evidenziato",
"CAPTURE_METHOD": "Acquisizione dello schermo Wayland",
"CAPTURE_METHOD_HELP": "Prova a modificare questa impostazione se riscontri schermate nere o con artefatti.",
"CLEAR_PIPEWIRE_TOKENS": "Cancella i token PipeWire",
"CLEAR_PIPEWIRE_TOKENS_HELP": "Richiedi la selezione dello schermo all'avvio successivo",
"CLEAR_SAVED_STATE": "Cancella stato salvato",
"CLEAR_SAVED_STATE_HELP": "Ripristina set e posizioni degli overlay",
"CLICK_FREEZE_TIME_MS": "Tempo di congelamento del click (ms)",
"CLICK_FREEZE_TIME_MS_HELP": "Aiuta con la precisione dei doppi clic",
"CLOCK_12H": "Orologio a 12 ore",
"CONTROLS": "Controlli",
"DELETE_ALL_CONFIGS": "Elimina configurazione",
"DELETE_ALL_CONFIGS_HELP": "Rimuovi tutti i file di configurazione da conf.d",
"DOUBLE_CURSOR_FIX": "Correzione doppio cursore",
"DOUBLE_CURSOR_FIX_HELP": "Abilita questa opzione se vedi 2 cursori",
"FEATURES": "Funzionalità",
"FOCUS_FOLLOWS_MOUSE_MODE": "Movimento del mouse al tocco del grilletto",
"HIDE_GRAB_HELP": "Nascondi l'aiuto per l'afferrare",
"HIDE_USERNAME": "Nascondi nome utente",
"INVERT_SCROLL_DIRECTION_X": "Inverti direzione dello scorrimento orizzontale",
"INVERT_SCROLL_DIRECTION_Y": "Inverti direzione dello scorrimento verticale",
"KEYBOARD_MIDDLE_CLICK": "Click centrale del tasto",
"KEYBOARD_MIDDLE_CLICK_HELP": "Modificatore da usare durante la digitazione\ncon laser viola",
"KEYBOARD_SOUND_ENABLED": "Suoni della tastiera",
"LEFT_HANDED_MOUSE": "Mouse per mancini",
"LEFT_HANDED_MOUSE_HELP": "Usalo se i pulsanti del mouse sono invertiti",
"LONG_PRESS_DURATION": "Durata pressione prolungata",
"LOOK_AND_FEEL": "Aspetto",
"MISC": "Varie",
"NOTIFICATIONS_ENABLED": "Abilita notifiche",
"NOTIFICATIONS_SOUND_ENABLED": "Suoni di notifica",
"OPAQUE_BACKGROUND": "Sfondo opaco",
"OPTION": {
"AUTO": "Automatico",
"AUTO_HELP": "Copia dello schermo tramite GPU se supportata,\naltrimenti tramite GPU PipeWire.",
"PIPEWIRE_HELP": "Acquisizione GPU veloce,\nstandard su tutti i desktop.",
"PW_FALLBACK_HELP": "Metodo lento con elevato utilizzo della CPU.\nProva in caso PipeWire GPU non funzioni",
"SCREENCOPY_GPU_HELP": "Veloce, senza popup di condivisione schermo.\nFunziona su: Hyprland, Niri, River, Sway",
"SCREENCOPY_HELP": "Lento, nessuna finestra pop-up per la condivisione dello schermo.\nFunziona su: Hyprland, Niri, River, Sway",
"NONE": "Nessuno",
"HMD_PINCH": "HMD + pizzico",
"EYE_PINCH": "Occhio + pizzico",
"EYE_ONLY": "Solo occhio",
"HMD_ONLY": "Solo HMD",
"NONE_INPUT_HELP": "Non emulare mouse e tastiera.\nNon sarà possibile interagire con gli schermi.",
"UINPUT": "Emulazione dispositivo",
"UINPUT_HELP": "Utilizza il modulo uinput per emulare un dispositivo.\nL'utente deve far parte del gruppo input.\nRisultato ottimale su quasi tutti i desktop.",
"WL_VIRTUAL": "Input virtuale Wayland",
"WL_VIRTUAL_HELP": "Invia eventi al compositor Wayland utilizzando\nzwlr_virtual_pointer e zwp_virtual_keyboard.\nFunziona in modo affidabile solo su alcuni desktop.\nNON funziona su KDE, GNOME o COSMIC."
},
"POINTER_LERP_FACTOR": "Smussamento puntatore",
"RESTART_SOFTWARE": "Riavvia il software",
"RESTART_SOFTWARE_HELP": "Applica impostazioni che richiedono un riavvio",
"ROUND_MULTIPLIER": "Arrotondamento bordi UI",
"SCREEN_RENDER_DOWN": "Rendering dello schermo a risoluzione inferiore",
"SCREEN_RENDER_DOWN_HELP": "Aiuta a ridurre l'aliasing su schermi ad alta risoluzione",
"SCROLL_SPEED": "Velocità di scorrimento",
"SETS_ON_WATCH": "Set sul Watch",
"SPACE_DRAG_MULTIPLIER": "Moltiplicatore space-drag",
"SPACE_DRAG_UNLOCKED": "Consenti lo space-drag su tutti gli assi",
"SPACE_ROTATE_UNLOCKED": "Consenti la rotazione dello spazio su tutti gli assi",
"TROUBLESHOOTING": "Risoluzione dei problemi",
"UPRIGHT_SCREEN_FIX": "Correzione schermo verticale",
"UPRIGHT_SCREEN_FIX_HELP": "Corregge schermi verticali su alcuni desktop",
"USE_PASSTHROUGH": "Abilita passthrough",
"USE_PASSTHROUGH_HELP": "Consenti il passthrough se supportato dal runtime XR",
"USE_SKYBOX": "Abilita skybox",
"USE_SKYBOX_HELP": "Mostra uno skybox se non c'è un'app di scena o passthrough",
"XWAYLAND_BY_DEFAULT": "Esegui le app in modalità Compatibilità per impostazione predefinita",
"AUTOSTART_APPS": "App da avviare all'avvio",
"HANDSFREE_POINTER": "Modalità a mani libere",
"HANDSFREE_POINTER_HELP": "Input da usare quando i\ncontroller di movimento non sono disponibili.\nPizzico sinistro per afferrare, destro per cliccare.",
"UI_GRADIENT_INTENSITY": "Intensità gradiente dell'interfaccia utente",
"RESET_PLAYSPACE": "Ripristina playspace",
"RESET_PLAYSPACE_HELP": "Cancella l'offset dello spazio di gioco.",
"BLOCK_POSES_ON_KBD_INTERACTION": "Blocca le pose durante l'interazione con la tastiera",
"BLOCK_POSES_ON_KBD_INTERACTION_HELP": "Impedisce al gioco di ricevere pose quando la tastiera è evidenziata e 'Blocca input di gioco' è abilitato",
"LANGUAGE": "Lingua",
"REQUIRES_RESTART": "Richiede riavvio",
"GRID_OPACITY": "Opacità della griglia del pavimento",
"GRID_OPACITY_HELP": "Opacità della griglia del pavimento quando lo skybox è abilitato",
"BROWSE_ONLINE_CATALOG": "Sfoglia catalogo online...",
"BROWSE_SKYMAPS": "Sfoglia skymap",
"COLOR_KEYING": "Keying del colore",
"NO_SKYMAPS_FOUND": "Nessuna skymap trovata",
"SELECT_VARIANT": "Seleziona variante",
"SHOW_WELCOME_SCREEN": "Mostra schermata di benvenuto",
"SKYBOX": "Skybox",
"SKYMAP_ALREADY_DOWNLOADED": "Questa skymap è già stata scaricata. Seleziona l'azione desiderata.",
"WATCH_VIEW_ANGLE": "Angoli di visualizzazione Watch",
"WATCH_VIEW_ANGLE_HELP": "Controlla come l'orologio sfuma",
"BINDINGS": {
"COMP": {
"CLICK": "Clic",
"FORCE": "Forza",
"TOUCH": "Tocco",
"VALUE": "Valore",
"PROXIMITY": "Prossimità",
"X_AXIS": "Asse X",
"Y_AXIS": "Asse Y"
},
"TYPE": {
"BUMPER": "Bumper",
"DPAD_UP": "D-pad su",
"DPAD_DOWN": "D-pad Giù",
"DPAD_LEFT": "D-pad Sinistra",
"DPAD_RIGHT": "D-pad Destra",
"JOYSTICK": "Joystick",
"MENU": "Menu",
"SHOULDER": "Spalla",
"SQUEEZE": "Grip",
"SYSTEM": "Sistema",
"THUMBREST": "Appoggio del pollice",
"THUMBSTICK": "Thumbstick",
"TRACKPAD": "Trackpad",
"TRIGGER": "Grilletto",
"VIEW": "Visualizza"
},
"CLICK": {
"ANY": "Qualsiasi",
"DOUBLE": "Doppio tocco",
"TRIPLE": "Triplo tocco",
"TYPE": "Numero di tocchi"
},
"ACTION": {
"CLICK": "Click*",
"GRAB": "Afferra*",
"ALT_CLICK": "Esecuzione shell personalizzata (imposta alt_click nella configurazione)",
"SHOW_HIDE": "Mostra, nascondi, recentra*",
"TOGGLE_DASHBOARD": "Attiva/disattiva dashboard",
"SPACE_DRAG": "Trascinamento playspace",
"SPACE_ROTATE": "Rotazione playspace",
"SPACE_RESET": "Reset playspace",
"CLICK_MODIFIER_RIGHT": "Modificatore click destro",
"CLICK_MODIFIER_MIDDLE": "Modificatore click centrale",
"MOVE_MOUSE": "Muovi mouse (se disattivato di default)",
"SCROLL": "Scorrimento*"
},
"LEFT": "Sinistra",
"RIGHT": "Destra",
"COMPONENT": "Tipo di attivazione",
"SUBPATH": "Controllo di attivazione",
"THRESHOLD": "Attiva quando sopra il valore superiore\nDisattiva quando sotto il valore inferiore"
},
"ENABLED": "Abilitato",
"INPUT_EMULATION_METHOD": "Metodo di emulazione input",
"INPUT_EMULATION_METHOD_HELP": "Prova a cambiare questa impostazione nel caso in cui l'input del mouse o \ndella tastiera non venga registrato.",
"INPUT_PROFILES": "Cambia i binding di input",
"INPUT_PROFILES_HELP": "Binding di input del controller OpenXR",
"NOT_SUPPORTED": "Non supportato",
"ENABLE_WATCH": "Abilita watch",
"SPACE_DRAG": "Space drag",
"SPACE_GRAVITY_DAMPING": "Smorzamento",
"SPACE_GRAVITY_DAMPING_HELP": "Resistenza artificiale per rallentare il movimento. 0.1 - alta resistenza, 1.0 - nessuna resistenza",
"SPACE_GRAVITY_FLING_STRENGTH": "Forza del lancio",
"SPACE_GRAVITY_FLING_STRENGTH_HELP": "Moltiplicatore dell'intensità della forza di lancio gravitazionale dopo lo space-drag.\n0.0 - nessun movimento, 2.0 - intensità doppia",
"SPACE_GRAVITY_GRAVITY": "Gravità",
"SPACE_GRAVITY_GRAVITY_HELP": "Quantità di forza verso il basso. 0.0 - nessuna gravità",
"SPACE_GRAVITY_GROUND_FRICTION": "Attrito del terreno",
"SPACE_GRAVITY_GROUND_FRICTION_HELP": "Quantità di attrito che ti rallenta se tocchi il suolo.\n0.0 - nessuna frizione (proprio come sul ghiaccio), 1.0 - superficie ruvida",
"SPACE_GRAVITY_FLOOR_HEIGHT": "Altezza del pavimento",
"SPACE_GRAVITY_FLOOR_HEIGHT_HELP": "La posizione Y in cui si trova il pavimento. La gravità si ferma quando raggiungi questa altezza.",
"SAVE": "Salva",
"CANCEL": "Annulla",
"WHISPER": {
"NEED_TO_DOWNLOAD_MODEL": "Il modello selezionato deve essere scaricato.\nVuoi scaricarlo adesso?",
"REMOVE_UNUSED_MODELS": "Stai disattivando la funzione di sintesi vocale.\nDesideri rimuovere i modelli Whisper scaricati per liberare spazio?"
},
"WHISPER_MODEL": "Modello di sintesi vocale (speech-to-text)",
"WHISPER_MODEL_HELP": "Modello Whisper da utilizzare.\nI modelli più grandi producono risultati\npiù accurati, ma consumano più VRAM.",
"DEFAULT_OVERLAY_SCALE": "Dimensioni overlay predefinite",
"DEFAULT_OVERLAY_SCALE_HELP": "Genera nuovi overlay con questa scala.",
"COLOR_PALETTE": "Tavolozza colori",
"COLOR_PALETTES": "Tavolozze colori",
"COLOR_PALETTE_CURRENT": "Tema attualmente attivo.",
"COLOR_PALETTE_ACTIVATE": "Clicca per usare questo tema.",
"APPLY_CHANGES_RESTART": "Riavviare WayVR per applicare le modifiche?",
"COLOR_PALETTE_HELP": "Clicca per sfogliare le palette di colori.\nPer crearne di personalizzate, visita il sito web!",
"COLOR_PALETTE_CUSTOM_URL": "Aggiungi il tuo tema personalizzato!",
"COLOR_PALETTE_CUSTOM_URL2": "Clicca per aprire il manuale web.",
"SNAP_ANGLE_DEG": "Angolo di scatto beccheggio e rollio finestra",
"SNAP_ANGLE_DEG_HELP": "Le finestre afferrate si allineano a questo angolo sugli assi di beccheggio e rollio."
},
"APPLICATION_LAUNCHER": "Lanciatore applicazioni",
"APPLICATION_STARTED": "Applicazione avviata",
"APPLICATIONS": "Applicazioni",
"AUDIO": {
"AUTO_SWITCH_TO_VR_AUDIO": "Passa automaticamente all'audio VR",
"CARDS": "Schede",
"FAILED_TO_SWITCH_MICROPHONE": "Impossibile cambiare microfono",
"MICROPHONE_SET_SUCCESSFULLY": "Microfono impostato con successo",
"MICROPHONES": "Microfoni",
"NO_VR_MICROPHONE_SWITCH_MANUALLY": "Nessun microfono VR trovato. Attivalo manualmente.",
"NO_VR_SPEAKERS_FOUND_SWITCH_MANUALLY": "Nessun altoparlante VR trovato. Selezionali manualmente.",
"SELECT_AUDIO_CARD_PROFILE": "Seleziona profilo scheda audio",
"SETTINGS": "Impostazioni audio",
"SPEAKERS": "Altoparlanti",
"SPEAKERS_SET_SUCCESSFULLY": "Altoparlanti impostati correttamente",
"VOLUME": "Volume"
},
"CLOSE_WINDOW": "Chiudi finestra",
"DISPLAY_BRIGHTNESS": "Luminosità display",
"FAILED_TO_LAUNCH_APPLICATION": "Impossibile avviare l'applicazione:",
"GAME_LAUNCHED": "Gioco lanciato",
"GAME_LIST": {
"NO_GAMES_FOUND": "Nessun gioco trovato",
"RUNNING_GAMES_LIST": "Lista dei giochi in esecuzione"
},
"GAMES": "Giochi",
"GENERAL_SETTINGS": "Impostazioni generali",
"HEIGHT": "Altezza",
"HELLO": "Ciao!",
"HELLO_USER": "Ciao, {USER}!",
"HIDE": "Nascondi",
"HOME_SCREEN": "Home",
"MONADO_RUNTIME": "Runtime Monado",
"POPUP_ADD_DISPLAY": {
"RESOLUTION": "Risoluzione"
},
"REMOVE": "Rimuovi",
"SETTINGS": "Impostazioni",
"SHOW": "Mostra",
"TERMINATE_PROCESS": "Termina processo",
"WIDTH": "Larghezza",
"PROCESS_LIST": "Elenco processi",
"REFRESH": "Aggiorna",
"PROCESS": {
"STOP": "Interrompi",
"FORCE_KILL": "Uccidi forzatamente"
},
"DEBUG_INFO": "Informazioni di debug",
"CREATION_DATE": "Data di creazione",
"DOWNLOADER": "Downloader",
"DOWNLOAD_AGAIN": "Scarica di nuovo",
"DOWNLOADING_FILE": "Download del file in corso...",
"GETTING_STARTED": "Inizio rapido",
"MODIFICATION_DATE": "Data di modifica",
"LOADING": "Caricamento...",
"APPLY": "Applica",
"RELOAD_FROM_DISK": "Ricarica da disco",
"TARGET_PATH": "Percorso di destinazione",
"VERSION": "Versione",
"DONATE": {
"SUPPORT_US": "Sostienici",
"DESCRIPTION": "Siamo un piccolo team di 2 sviluppatori che crea WayVR nel tempo libero. Se ti piace usare questo software, considera di supportarci: ogni donazione ci aiuta a continuare.",
"BUTTON_TOOLTIP": "Dona tramite Open Collective",
"CURRENT_SUPPORTERS": "Sostenitori attuali",
"THANK_YOU_WAYVR": "Grazie dal team WayVR!"
},
"WELCOME": {
"ALL_SET": "Sei pronto!",
"BASICS": "Queste nozioni di base ti permetteranno di iniziare a usare WayVR con facilità.",
"FEATURES_DOCUMENTATION": "Ci sono molte altre funzioni che vale la pena personalizzare. Per ulteriori informazioni, consulta la documentazione all'indirizzo",
"FINISH_TUTORIAL": "Termina tutorial",
"GRAB_BOTH_HANDS": "Afferralo con entrambe le mani se vuoi spostare un overlay specifico nel tuo set.",
"GRAB_ONE_HAND": "Afferralo con una mano per muovere il tuo set.",
"GREETING": "Ciao!",
"GUIDE_INTRO": "Lascia che ti guidiamo nei tuoi primi passi.",
"LASER_COLORS": "Colori Laser",
"LASER_FUNCTIONALITY": "Gran parte delle funzionalità in WayVR dipende dal colore del laser utilizzato per interagire con un elemento dell'interfaccia utente. Non è necessario premere questi pulsanti, basta toccarli!",
"LAST_PAGE_INFO": "Questo tutorial smetterà di apparire una volta raggiunta l'ultima pagina.",
"LOOK_AT_LEFT_WRIST": "Guarda il tuo polso sinistro. È il tuo watch.",
"MIDDLE_CLICK_MODE_PURPLE_LASER": "— Modalità click centrale: Laser viola",
"MOVING_YOUR_SET": "Spostamento del tuo set",
"NEXT_BUTTON": "Premi il pulsante \"Avanti\" qui sotto per iniziare.",
"REGULAR_MODE_BLUE_LASER": "— Modalità Standard: Laser blu",
"REPOSITION_THIS_WINDOW_BY_GRABBING": "Riposiziona questa finestra usando l'azione grip del tuo controller.",
"RIGHT_CLICK_MODE_ORANGE_LASER": "— Modalità tasto destro: Laser arancione",
"THANKS_FOR_INSTALLING": "Grazie per aver installato WayVR!",
"WATCH": "Watch",
"WORKING_SET": "Set di lavoro",
"DOUBLE_PRESS_TO_TOGGLE": "Premi due volte B (su Index) o Y (su Meta) per mostrare, ricentrare o nascondere il tuo set. Provalo ora.",
"CENTER_MARKER": "Il marker di centraggio è ciò che apparirà davanti a te durante il ricentramento. Posiziona gli overlay intorno ad esso!"
},
"DOWNLOAD": "Scarica",
"SAVED_TO_FAVOURITES": "Salvato nei preferiti",
"ADD_TO_FAVOURITES": "Aggiungi ai preferiti",
"ADD_TO_FAVOURITES_HINT": "Salva il preset e fissalo al cassetto delle app",
"REMOVE_FROM_FAVOURITES": "Rimuovi dai preferiti",
"EMPTY": "Vuoto",
"PINNED_APPS": "Applicazioni fissate"
}
+316 -151
View File
@@ -1,153 +1,318 @@
{
"HOME_SCREEN": "ホーム",
"MONADO_RUNTIME": "「Monado」ランタイム",
"APPLICATIONS": "アプリ",
"GAMES": "ゲーム",
"SETTINGS": "設定",
"PROCESSES": "プロセス",
"HELLO_USER": "こんにちは、{USER}!",
"GENERAL_SETTINGS": "全般設定",
"APPLICATION_LAUNCHER": "アプリケーションランチャー",
"APP_SETTINGS": {
"HIDE_USERNAME": "ユーザー名を非表示",
"OPAQUE_BACKGROUND": "不透明な背景",
"WLX": {},
"LOOK_AND_FEEL": "外観",
"HIDE_GRAB_HELP": "グリップ動作中にのヘルプを非表示",
"ANIMATION_SPEED": "UIアニメーション速度",
"ROUND_MULTIPLIER": "UI の丸み",
"USE_SKYBOX": "スカイボックスを有効",
"USE_PASSTHROUGH": "パススルーを有効",
"CLOCK_12H": "12時間制",
"FEATURES": "機能",
"NOTIFICATIONS_ENABLED": "通知を有効にする",
"NOTIFICATIONS_SOUND_ENABLED": "通知音",
"KEYBOARD_SOUND_ENABLED": "キーボード音",
"SPACE_DRAG_MULTIPLIER": "スペースドラッグ倍率",
"SPACE_DRAG_UNLOCKED": "全軸のスペースドラッグ",
"SPACE_ROTATE_UNLOCKED": "全軸のスペース回転",
"BLOCK_GAME_INPUT": "ゲームの入力をブロック",
"BLOCK_GAME_INPUT_IGNORE_WATCH": "入力ブロック時に監視を無視",
"CONTROLS": "コントロール",
"FOCUS_FOLLOWS_MOUSE_MODE": "トリガータッチでマウス移動",
"LEFT_HANDED_MOUSE": "左利きマウス",
"ALLOW_SLIDING": "グリップ動作中にスティックを有効",
"INVERT_SCROLL_DIRECTION_X": "水平スクロール方向を反転",
"INVERT_SCROLL_DIRECTION_Y": "垂直スクロール方向を反転",
"SCROLL_SPEED": "スクロール速度",
"LONG_PRESS_DURATION": "長押し時間",
"POINTER_LERP_FACTOR": "ポインターのスムージング",
"XR_CLICK_SENSITIVITY": "XRクリック感度",
"XR_CLICK_SENSITIVITY_RELEASE": "XRリリース感度",
"CLICK_FREEZE_TIME_MS": "クリックで一時停止時間 (ms)",
"MISC": "その他",
"XWAYLAND_BY_DEFAULT": "アプリ実行のデフォルトは互換モード",
"UPRIGHT_SCREEN_FIX": "画面の縦向き修正",
"DOUBLE_CURSOR_FIX": "ダブルカーソル修正",
"SCREEN_RENDER_DOWN": "画面の解像度を縮小",
"UPRIGHT_SCREEN_FIX_HELP": "一部のデスクトップで縦向きの画面を修正",
"DOUBLE_CURSOR_FIX_HELP": "2つのカーソルが表示される場合は、これを有効にします",
"XR_CLICK_SENSITIVITY_HELP": "アナログトリガの感度",
"XR_CLICK_SENSITIVITY_RELEASE_HELP": "クリックより低くする必要があります",
"CLICK_FREEZE_TIME_MS_HELP": "ダブルクリックの精度向上に役立ちます",
"LEFT_HANDED_MOUSE_HELP": "マウスボタンが入れ替わっている場合に有効にします",
"BLOCK_GAME_INPUT_HELP": "オーバーレイ上にマウスカーソルがあるときに入力をブロックします",
"BLOCK_GAME_INPUT_IGNORE_WATCH_HELP": "ウォッチがホバーされているときは入力をブロックしない",
"USE_SKYBOX_HELP": "シーンアプリまたはパススルーがない場合にスカイボックスを表示します",
"USE_PASSTHROUGH_HELP": "XRランタイムがサポートしていれば、パススルーを有効にします",
"SCREEN_RENDER_DOWN_HELP": "高解像度スクリーンでのエイリアシングを軽減します",
"SETS_ON_WATCH": "ウォッチのセット",
"TROUBLESHOOTING": "トラブルシューティング",
"CLEAR_SAVED_STATE": "保存された状態をクリア",
"CLEAR_PIPEWIRE_TOKENS": "PipeWire トークンをクリア",
"DELETE_ALL_CONFIGS": "設定を消去",
"RESTART_SOFTWARE": "ソフトウェアを再起動",
"CLEAR_SAVED_STATE_HELP": "セットとオーバーレイの位置をリセット",
"CLEAR_PIPEWIRE_TOKENS_HELP": "次の起動時に画面選択のプロンプトを表示",
"DELETE_ALL_CONFIGS_HELP": "conf.d 内のすべての設定ファイルを削除",
"RESTART_SOFTWARE_HELP": "再起動が必要な設定を適用",
"CAPTURE_METHOD": "Waylandスクリーンキャプチャ",
"CAPTURE_METHOD_HELP": "画面が黒くなる、または乱れる場合は、\nこの設定を変更してみてください。",
"KEYBOARD_MIDDLE_CLICK": "キーボードの中ボタンクリック",
"KEYBOARD_MIDDLE_CLICK_HELP": "紫色のレーザーで入力する際の修飾キー",
"OPTION": {
"AUTO": "自動",
"AUTO_HELP": "サポートされている場合はScreenCopy GPU、\nそうでない場合はPipeWire GPU。",
"PIPEWIRE_HELP": "GPU高速キャプチャ。\nすべてのデスクトップで標準です。",
"PW_FALLBACK_HELP": "CPU使用量が多い低速な方法です。\nPipeWire GPUが動作しない場合に試してください。",
"SCREENCOPY_GPU_HELP": "高速で、スクリーン共有ポップアップはありません。\n動作する環境: Hyprland, Niri, River, Sway",
"SCREENCOPY_HELP": "遅延あり、画面共有ポップアップなし。\n動作する環境: Hyprland, Niri, River, Sway"
},
"AUTOSTART_APPS": "起動時に実行するアプリ"
},
"HELLO": "こんにちは!",
"AUDIO": {
"VOLUME": "音量",
"SETTINGS": "オーディオ設定",
"AUTO_SWITCH_TO_VR_AUDIO": "VRオーディオに自動切り替え",
"SPEAKERS": "スピーカー",
"MICROPHONES": "マイク",
"CARDS": "カード",
"SELECT_AUDIO_CARD_PROFILE": "オーディオカードプロファイルを選択",
"NO_VR_SPEAKERS_FOUND_SWITCH_MANUALLY": "VRスピーカーが見つかりませんでした。手動で切り替えてください。",
"NO_VR_MICROPHONE_SWITCH_MANUALLY": "VRマイクが見つかりませんでした。手動で切り替えてください。",
"FAILED_TO_SWITCH_MICROPHONE": "マイクの切り替えに失敗しました",
"MICROPHONE_SET_SUCCESSFULLY": "マイクの設定が完了しました",
"SPEAKERS_SET_SUCCESSFULLY": "スピーカーを設定しました"
},
"ACTIONS": {
"RECENTER_PLAYSPACE": "プレイスペースを再中央"
},
"LIST_OF_PROCESSES": "プロセスのリスト",
"POPUP_ADD_DISPLAY": {
"RESOLUTION": "解像度"
},
"WIDTH": "幅",
"HEIGHT": "高さ",
"HIDE": "隠す",
"REMOVE": "削除",
"SHOW": "表示",
"PROCESS_LIST": {
"NO_PROCESSES_FOUND": "プロセスが見つかりませんでした",
"LOCATED_ON": "に",
"TERMINATE_PROCESS_NAMED_X": "プロセス \"{PROCESS_NAME}\" を終了します"
},
"FAILED_TO_LAUNCH_APPLICATION": "アプリケーションの起動に失敗しました:",
"NO_WINDOWS_FOUND": "ウィンドウが見つかりませんでした",
"WINDOW_OPTIONS": "ウィンドウオプション",
"APPLICATION_STARTED": "アプリケーションが起動しました",
"LIST_OF_WINDOWS": "ウィンドウ一覧",
"CLOSE_WINDOW": "ウィンドウを閉じる",
"GAME_LIST": {
"NO_GAMES_FOUND": "ゲームが見つかりませんでした"
},
"TERMINATE_PROCESS": "プロセスを終了する",
"GAME_LAUNCHED": "ゲームが起動しました",
"APP_LAUNCHER": {
"MODE": {
"NATIVE": "ネイティブモード",
"CAGE": "互換モード(Cage)"
},
"RES_TITLE": "解像度",
"ASPECT_TITLE": "アスペクト",
"ASPECT": {
"WIDE": "ワイド",
"SEMI_WIDE": "半広角",
"SQUARE": "正方形",
"SEMI_TALL": "半縦長",
"TALL": "縦長"
},
"POS_TITLE": "配置",
"POS": {
"FLOATING": "フローティング",
"ANCHORED": "固定",
"STATIC": "固定",
"FLOATING_HELP": "独立して移動し、表示時に中央に再配置されます。",
"ANCHORED_HELP": "中央マーカーに対して固定された位置に留まります。",
"STATIC_HELP": "どのセットにも属していません。リセンターされません。"
},
"AUTOSTART": "起動時に自動実行",
"LAUNCH": "起動"
},
"DISPLAY_BRIGHTNESS": "ディスプレイの明るさ"
"HOME_SCREEN": "ホーム",
"MONADO_RUNTIME": "「Monado」ランタイム",
"APPLICATIONS": "アプリ",
"GAMES": "ゲーム",
"SETTINGS": "設定",
"HELLO_USER": "こんにちは、{USER}!",
"GENERAL_SETTINGS": "全般設定",
"APPLICATION_LAUNCHER": "アプリケーションランチャー",
"APP_SETTINGS": {
"HIDE_USERNAME": "ユーザー名を非表示",
"OPAQUE_BACKGROUND": "不透明な背景",
"LOOK_AND_FEEL": "外観",
"HIDE_GRAB_HELP": "グリップ動作中にのヘルプを非表示",
"ANIMATION_SPEED": "UIアニメーション速度",
"ROUND_MULTIPLIER": "UI の丸み",
"USE_SKYBOX": "スカイボックスを有効",
"USE_PASSTHROUGH": "パススルーを有効",
"CLOCK_12H": "12時間制",
"FEATURES": "機能",
"NOTIFICATIONS_ENABLED": "通知を有効にする",
"NOTIFICATIONS_SOUND_ENABLED": "通知音",
"KEYBOARD_SOUND_ENABLED": "キーボード音",
"SPACE_DRAG_MULTIPLIER": "スペースドラッグ倍率",
"SPACE_DRAG_UNLOCKED": "全軸のスペースドラッグ",
"SPACE_ROTATE_UNLOCKED": "全軸のスペース回転",
"BLOCK_GAME_INPUT": "ゲームの入力をブロック",
"BLOCK_GAME_INPUT_IGNORE_WATCH": "入力ブロック時に監視を無視",
"CONTROLS": "コントロール",
"FOCUS_FOLLOWS_MOUSE_MODE": "トリガータッチでマウス移動",
"LEFT_HANDED_MOUSE": "左利きマウス",
"ALLOW_SLIDING": "グリップ動作中にスティックを有効",
"INVERT_SCROLL_DIRECTION_X": "水平スクロール方向を反転",
"INVERT_SCROLL_DIRECTION_Y": "垂直スクロール方向を反転",
"SCROLL_SPEED": "スクロール速度",
"LONG_PRESS_DURATION": "長押し時間",
"POINTER_LERP_FACTOR": "ポインターのスムージング",
"CLICK_FREEZE_TIME_MS": "クリックで一時停止時間 (ms)",
"MISC": "その他",
"XWAYLAND_BY_DEFAULT": "アプリ実行のデフォルトは互換モード",
"UPRIGHT_SCREEN_FIX": "画面の縦向き修正",
"DOUBLE_CURSOR_FIX": "ダブルカーソル修正",
"SCREEN_RENDER_DOWN": "画面の解像度を縮小",
"UPRIGHT_SCREEN_FIX_HELP": "一部のデスクトップで縦向きの画面を修正",
"DOUBLE_CURSOR_FIX_HELP": "2つのカーソルが表示される場合は、これを有効にします",
"CLICK_FREEZE_TIME_MS_HELP": "ダブルクリックの精度向上に役立ちます",
"LEFT_HANDED_MOUSE_HELP": "マウスボタンが入れ替わっている場合に有効にします",
"BLOCK_GAME_INPUT_HELP": "オーバーレイ上にマウスカーソルがあるときに入力をブロックします",
"BLOCK_GAME_INPUT_IGNORE_WATCH_HELP": "ウォッチがホバーされているときは入力をブロックしない",
"USE_SKYBOX_HELP": "シーンアプリまたはパススルーがない場合にスカイボックスを表示します",
"USE_PASSTHROUGH_HELP": "XRランタイムがサポートしていれば、パススルーを有効にします",
"SCREEN_RENDER_DOWN_HELP": "高解像度スクリーンでのエイリアシングを軽減します",
"SETS_ON_WATCH": "ウォッチのセット",
"TROUBLESHOOTING": "トラブルシューティング",
"CLEAR_SAVED_STATE": "保存された状態をクリア",
"CLEAR_PIPEWIRE_TOKENS": "PipeWire トークンをクリア",
"DELETE_ALL_CONFIGS": "設定を消去",
"RESTART_SOFTWARE": "ソフトウェアを再起動",
"CLEAR_SAVED_STATE_HELP": "セットとオーバーレイの位置をリセット",
"CLEAR_PIPEWIRE_TOKENS_HELP": "次の起動時に画面選択のプロンプトを表示",
"DELETE_ALL_CONFIGS_HELP": "conf.d 内のすべての設定ファイルを削除",
"RESTART_SOFTWARE_HELP": "再起動が必要な設定を適用",
"CAPTURE_METHOD": "Waylandスクリーンキャプチャ",
"CAPTURE_METHOD_HELP": "画面が黒くなる、または乱れる場合は、\nこの設定を変更してみてください。",
"KEYBOARD_MIDDLE_CLICK": "キーボードの中ボタンクリック",
"KEYBOARD_MIDDLE_CLICK_HELP": "紫色のレーザーで入力する際の修飾キー",
"OPTION": {
"AUTO": "自動",
"AUTO_HELP": "サポートされている場合はScreenCopy GPU、\nそうでない場合はPipeWire GPU。",
"PIPEWIRE_HELP": "GPU高速キャプチャ。\nすべてのデスクトップで標準です。",
"PW_FALLBACK_HELP": "CPU使用量が多い低速な方法です。\nPipeWire GPUが動作しない場合に試してください。",
"SCREENCOPY_GPU_HELP": "高速で、スクリーン共有ポップアップはありません。\n動作する環境: Hyprland, Niri, River, Sway",
"SCREENCOPY_HELP": "遅延あり、画面共有ポップアップなし。\n動作する環境: Hyprland, Niri, River, Sway",
"NONE": "なし",
"HMD_PINCH": "HMD + ピンチ",
"EYE_PINCH": "つまんで目を合わせる",
"EYE_ONLY": "視野のみ",
"HMD_ONLY": "HMDのみ",
"NONE_INPUT_HELP": "マウスとキーボードをエミュレートしません。\nディスプレイを操作できなくなります。",
"UINPUT": "デバイス・エミュレーション",
"UINPUT_HELP": "uinput モジュールを使用してデバイスをエミュレートします。\nユーザーが input グループに属している必要があります。\nほとんどのデスクトップ環境で正常に動作することが確認されています。",
"WL_VIRTUAL": "Wayland 仮想入力",
"WL_VIRTUAL_HELP": "zwlr_virtual_pointer および zwp_virtual_keyboard を使用して、Wayland コンポジタにイベントを送信します。\n一部のデスクトップ環境でのみ、安定して動作します。\nKDE、GNOME、または COSMIC では動作しません。"
},
"AUTOSTART_APPS": "起動時に実行するアプリ",
"HANDSFREE_POINTER": "ハンズフリーモード",
"HANDSFREE_POINTER_HELP": "モーションコントローラーが利用できない場合の入力方法。\n左手のピンチは掴み、右手のピンチはクリックです。",
"UI_GRADIENT_INTENSITY": "UIグラデーションの強さ",
"RESET_PLAYSPACE": "プレイエリアをリセット",
"RESET_PLAYSPACE_HELP": "プレイエリアのオフセットをクリアします。",
"BLOCK_POSES_ON_KBD_INTERACTION": "キーボード操作時のポーズをブロック",
"BLOCK_POSES_ON_KBD_INTERACTION_HELP": "キーボードがホバーされ、「ゲーム入力をブロック」が有効になっている場合、ゲームがポーズを受信することをブロックします",
"LANGUAGE": "言語",
"REQUIRES_RESTART": "再起動が必要です",
"GRID_OPACITY": "フロアグリッドの不透明度",
"GRID_OPACITY_HELP": "スカイボックスが有効なときの床グリッドの不透明度",
"BROWSE_ONLINE_CATALOG": "オンラインカタログを閲覧...",
"BROWSE_SKYMAPS": "Skymapを閲覧",
"COLOR_KEYING": "カラーキーイング",
"NO_SKYMAPS_FOUND": "スカイマップが見つかりません",
"SELECT_VARIANT": "バリアントを選択",
"SHOW_WELCOME_SCREEN": "ウェルカムスクリーンを表示する",
"SKYBOX": "スカイボックス",
"SKYMAP_ALREADY_DOWNLOADED": "このスカイマップは既にダウンロードされています。希望のアクションを選択してください。",
"WATCH_VIEW_ANGLE": "Watchの表示角度",
"WATCH_VIEW_ANGLE_HELP": "ウォッチのフェードアウト具合を調整する",
"BINDINGS": {
"COMP": {
"CLICK": "クリック",
"FORCE": "Force",
"TOUCH": "タッチ",
"VALUE": "値",
"PROXIMITY": "近接度",
"X_AXIS": "X軸",
"Y_AXIS": "Y軸"
},
"TYPE": {
"BUMPER": "バンパー",
"DPAD_UP": "Dパッド上",
"DPAD_DOWN": "Dパッド 下",
"DPAD_LEFT": "Dパッド左",
"DPAD_RIGHT": "Dパッド右",
"JOYSTICK": "ジョイスティック",
"MENU": "メニュー",
"SHOULDER": "ショルダー",
"SQUEEZE": "グリップ",
"SYSTEM": "システム",
"THUMBREST": "サムレスト",
"THUMBSTICK": "サムスティック",
"TRACKPAD": "トラックパッド",
"TRIGGER": "トリガー",
"VIEW": "表示"
},
"CLICK": {
"ANY": "任意",
"DOUBLE": "ダブルタップ",
"TRIPLE": "トリプルタップ",
"TYPE": "タップ回数"
},
"ACTION": {
"CLICK": "クリック*",
"GRAB": "掴む*",
"ALT_CLICK": "カスタムシェル実行 (configでalt_clickを設定)",
"SHOW_HIDE": "表示・非表示、再中心化*",
"TOGGLE_DASHBOARD": "ダッシュボードの切り替え",
"SPACE_DRAG": "Playspaceドラッグ",
"SPACE_ROTATE": "Playspace 回転",
"SPACE_RESET": "Playspace リセット",
"CLICK_MODIFIER_RIGHT": "右クリック修飾キー",
"CLICK_MODIFIER_MIDDLE": "中クリック修飾キー",
"MOVE_MOUSE": "マウスを移動 (デフォルトでオフの場合)",
"SCROLL": "スクロール*"
},
"LEFT": "左",
"RIGHT": "右",
"COMPONENT": "作動タイプ",
"SUBPATH": "アクチュエーション制御",
"THRESHOLD": "上限値を超えたときに有効化\n下限値を下回ったときに無効化"
},
"ENABLED": "有効",
"INPUT_EMULATION_METHOD": "入力エミュレーション方法",
"INPUT_EMULATION_METHOD_HELP": "マウスやキーボードの入力が\n認識されない場合は、ここを変更してみてください。",
"INPUT_PROFILES": "入力バインドの変更",
"INPUT_PROFILES_HELP": "OpenXRコントローラーの入力バインディング",
"NOT_SUPPORTED": "未対応",
"ENABLE_WATCH": "Watchを有効にする",
"SPACE_DRAG": "Space drag",
"SPACE_GRAVITY_DAMPING": "減衰",
"SPACE_GRAVITY_DAMPING_HELP": "動きを減速させるための人工的な抵抗です。0.1 - 強い抵抗、1.0 - 抵抗なし",
"SPACE_GRAVITY_FLING_STRENGTH": "スリングの強さ",
"SPACE_GRAVITY_FLING_STRENGTH_HELP": "Space-drag 後の重力による打ち出し強度の倍率です。\n0.0 - 全く動きません、2.0 - 強度が2倍になります",
"SPACE_GRAVITY_GRAVITY": "重力",
"SPACE_GRAVITY_GRAVITY_HELP": "下向きの力の強さ。0.0 - 重力なし",
"SPACE_GRAVITY_GROUND_FRICTION": "地面の摩擦",
"SPACE_GRAVITY_GROUND_FRICTION_HELP": "地面に触れている際に、移動を遅らせる摩擦の強さです。\n0.0 - 摩擦なし(氷の上のような状態)、1.0 - 粗い表面",
"SPACE_GRAVITY_FLOOR_HEIGHT": "床の高さ",
"SPACE_GRAVITY_FLOOR_HEIGHT_HELP": "床のY座標です。この高さに達すると重力が停止します。",
"SAVE": "保存",
"CANCEL": "キャンセル",
"WHISPER": {
"NEED_TO_DOWNLOAD_MODEL": "選択されたモデルをダウンロードする必要があります。\n今すぐダウンロードしますか?",
"REMOVE_UNUSED_MODELS": "文字起こし機能をオフにします。\n空き容量を増やすために、ダウンロード済みのモデルファイルを削除しますか?"
},
"WHISPER_MODEL": "文字起こしモデル",
"WHISPER_MODEL_HELP": "使用するWhisperモデル。\nモデルが大きいほど精度は向上しますが、\nVRAMの消費量が増加します。",
"DEFAULT_OVERLAY_SCALE": "デフォルトのオーバーレイサイズ",
"DEFAULT_OVERLAY_SCALE_HELP": "新しいオーバーレイをこのスケールで生成します。",
"COLOR_PALETTE": "カラーパレット",
"COLOR_PALETTES": "カラーパレット",
"COLOR_PALETTE_CURRENT": "現在有効なテーマ。",
"COLOR_PALETTE_ACTIVATE": "クリックしてこのテーマを適用します。",
"APPLY_CHANGES_RESTART": "変更を適用するためにWayVRを再起動しますか?",
"COLOR_PALETTE_HELP": "クリックしてカラーパレットを選択してください。\nカスタムパレットの作成については、ウェブサイトを参照してください!",
"COLOR_PALETTE_CUSTOM_URL": "カスタムテーマを追加しましょう!",
"COLOR_PALETTE_CUSTOM_URL2": "クリックしてウェブマニュアルを開く。",
"SNAP_ANGLE_DEG": "ウィンドウのピッチ・ロールのスナップ角度",
"SNAP_ANGLE_DEG_HELP": "掴んでいるウィンドウが、ピッチ軸とロール軸でこの角度にスナップします。"
},
"HELLO": "こんにちは!",
"AUDIO": {
"VOLUME": "音量",
"SETTINGS": "オーディオ設定",
"AUTO_SWITCH_TO_VR_AUDIO": "VRオーディオに自動切り替え",
"SPEAKERS": "スピーカー",
"MICROPHONES": "マイク",
"CARDS": "カード",
"SELECT_AUDIO_CARD_PROFILE": "オーディオカードプロファイルを選択",
"NO_VR_SPEAKERS_FOUND_SWITCH_MANUALLY": "VRスピーカーが見つかりませんでした。手動で切り替えてください。",
"NO_VR_MICROPHONE_SWITCH_MANUALLY": "VRマイクが見つかりませんでした。手動で切り替えてください。",
"FAILED_TO_SWITCH_MICROPHONE": "マイクの切り替えに失敗しました",
"MICROPHONE_SET_SUCCESSFULLY": "マイクの設定が完了しました",
"SPEAKERS_SET_SUCCESSFULLY": "スピーカーを設定しました"
},
"ACTIONS": {
"RECENTER_PLAYSPACE": "プレイスペースを再中央"
},
"POPUP_ADD_DISPLAY": {
"RESOLUTION": "解像度"
},
"WIDTH": "幅",
"HEIGHT": "高さ",
"HIDE": "隠す",
"REMOVE": "削除",
"SHOW": "表示",
"FAILED_TO_LAUNCH_APPLICATION": "アプリケーションの起動に失敗しました:",
"APPLICATION_STARTED": "アプリケーションが起動しました",
"CLOSE_WINDOW": "ウィンドウを閉じる",
"GAME_LIST": {
"NO_GAMES_FOUND": "ゲームが見つかりませんでした",
"RUNNING_GAMES_LIST": "実行中のゲーム一覧"
},
"TERMINATE_PROCESS": "プロセスを終了する",
"GAME_LAUNCHED": "ゲームが起動しました",
"APP_LAUNCHER": {
"MODE": {
"NATIVE": "ネイティブモード",
"CAGE": "互換モード(Cage)"
},
"RES_TITLE": "解像度",
"ASPECT_TITLE": "アスペクト",
"ASPECT": {
"WIDE": "ワイド",
"SEMI_WIDE": "半広角",
"SQUARE": "正方形",
"SEMI_TALL": "半縦長",
"TALL": "縦長"
},
"POS_TITLE": "配置",
"POS": {
"FLOATING": "フローティング",
"ANCHORED": "固定",
"STATIC": "固定",
"FLOATING_HELP": "独立して移動し、表示時に中央に再配置されます。",
"ANCHORED_HELP": "中央マーカーに対して固定された位置に留まります。",
"STATIC_HELP": "どのセットにも属していません。リセンターされません。"
},
"AUTOSTART": "起動時に自動実行",
"LAUNCH": "起動"
},
"DISPLAY_BRIGHTNESS": "ディスプレイの明るさ",
"PROCESS_LIST": "プロセスリスト",
"REFRESH": "更新",
"PROCESS": {
"STOP": "停止",
"FORCE_KILL": "強制終了"
},
"DEBUG_INFO": "デバッグ情報",
"CREATION_DATE": "作成日",
"DOWNLOADER": "ダウンローダー",
"DOWNLOAD_AGAIN": "再ダウンロード",
"DOWNLOADING_FILE": "ファイルをダウンロード中...",
"GETTING_STARTED": "はじめに",
"MODIFICATION_DATE": "更新日",
"LOADING": "読み込み中...",
"APPLY": "適用",
"RELOAD_FROM_DISK": "ディスクからリロード",
"TARGET_PATH": "ターゲットパス",
"VERSION": "バージョン",
"DONATE": {
"SUPPORT_US": "私たちを支援する",
"DESCRIPTION": "私たちは、空き時間にWayVRを開発している2人の開発者からなる小さなチームです。もしこのソフトウェアを気に入っていただけたなら、ぜひ支援をご検討ください。皆様からの寄付は、開発を継続していくための大きな助けとなります。",
"BUTTON_TOOLTIP": "Open Collectiveで寄付する",
"CURRENT_SUPPORTERS": "現在のサポーター",
"THANK_YOU_WAYVR": "WayVRチーム一同より、感謝を込めて!"
},
"WELCOME": {
"ALL_SET": "準備完了です!",
"BASICS": "これらの基本操作を学ぶことで、WayVRを簡単に使い始めることができます。",
"FEATURES_DOCUMENTATION": "他にもカスタマイズする価値のある機能がたくさんあります。詳細については、以下のドキュメントを確認してください。",
"FINISH_TUTORIAL": "チュートリアルを終了する",
"GRAB_BOTH_HANDS": "セット内の特定のオーバーレイを移動させたい場合は、両手で掴んでください。",
"GRAB_ONE_HAND": "片手で掴んでセットを移動させます。",
"GREETING": "こんにちは!",
"GUIDE_INTRO": "最初の手順をご案内します。",
"LASER_COLORS": "レーザーの色",
"LASER_FUNCTIONALITY": "WayVRの機能の多くは、UI要素を操作する際に使用されるレーザーの色に依存しています。これらのボタンは押す必要はなく、ただ触れるだけで操作できます!",
"LAST_PAGE_INFO": "最後のページに到達すると、このチュートリアルは表示されなくなります。",
"LOOK_AT_LEFT_WRIST": "左手首を見てください。それがあなたのWatchです。",
"MIDDLE_CLICK_MODE_PURPLE_LASER": "— ミドルクリックモード:紫色のレーザー",
"MOVING_YOUR_SET": "セットを移動中",
"NEXT_BUTTON": "「次へ」ボタンを押して開始してください。",
"REGULAR_MODE_BLUE_LASER": "— 通常モード: ブルーレーザー",
"REPOSITION_THIS_WINDOW_BY_GRABBING": "コントローラーのグリップアクションを使用して、このウィンドウの位置を再設定します。",
"RIGHT_CLICK_MODE_ORANGE_LASER": "— 右クリックモード:オレンジ色のレーザー",
"THANKS_FOR_INSTALLING": "WayVRをインストールしていただきありがとうございます!",
"WATCH": "Watch",
"WORKING_SET": "ワーキングセット",
"DOUBLE_PRESS_TO_TOGGLE": "Bボタン(Index)またはYボタン(Meta)を2回押して、セットの表示・中心合わせ・非表示を切り替えてください。今すぐ試してみましょう。",
"CENTER_MARKER": "リセンタリング時に目の前に表示されるのがセンターマーカーです。このマーカーを中心にオーバーレイを配置してください!"
},
"DOWNLOAD": "ダウンロード",
"SAVED_TO_FAVOURITES": "お気に入りに保存しました",
"ADD_TO_FAVOURITES": "お気に入りに追加",
"ADD_TO_FAVOURITES_HINT": "プリセットを保存してアプリドロワーにピン留めします",
"REMOVE_FROM_FAVOURITES": "お気に入りから削除",
"EMPTY": "空",
"PINNED_APPS": "ピン留めされたアプリケーション"
}
+316 -151
View File
@@ -1,153 +1,318 @@
{
"ACTIONS": {
"RECENTER_PLAYSPACE": "Wycentruj przestrzeń"
},
"APP_SETTINGS": {
"HIDE_USERNAME": "Ukryj nazwę użytkownika",
"OPAQUE_BACKGROUND": "Nieprzezroczyste tło",
"WLX": {},
"LOOK_AND_FEEL": "Wygląd i działanie",
"HIDE_GRAB_HELP": "Ukryj pomoc dotyczącą chwytania",
"ANIMATION_SPEED": "Prędkość animacji UI",
"ROUND_MULTIPLIER": "Zaokrąglenie krawędzi UI",
"USE_SKYBOX": "Włącz niebo",
"USE_PASSTHROUGH": "Włącz passthrough",
"CLOCK_12H": "Zegar 12-godzinny",
"FEATURES": "Funkcje",
"NOTIFICATIONS_ENABLED": "Włącz powiadomienia",
"NOTIFICATIONS_SOUND_ENABLED": "Dźwięki powiadomień",
"KEYBOARD_SOUND_ENABLED": "Dźwięki klawiatury",
"SPACE_DRAG_MULTIPLIER": "Mnożnik przesuwania przestrzeni",
"SPACE_DRAG_UNLOCKED": "Pozwól na przesuwanie przestrzeni na wszystkich osiach",
"SPACE_ROTATE_UNLOCKED": "Pozwól na rotację przestrzeni na wszystkich osiach",
"BLOCK_GAME_INPUT": "Blokuj input z gry",
"BLOCK_GAME_INPUT_IGNORE_WATCH": "Nie blokuj inputu gry, gdy zegarek jest używany",
"CONTROLS": "Sterowanie",
"FOCUS_FOLLOWS_MOUSE_MODE": "Ruch myszą po dotknięciu spustu",
"LEFT_HANDED_MOUSE": "Myszka dla leworęcznych",
"ALLOW_SLIDING": "Interakcja z drążkami podczas chwytania",
"INVERT_SCROLL_DIRECTION_X": "Odwróć kierunek przewijania w poziomie",
"INVERT_SCROLL_DIRECTION_Y": "Odwróć kierunek przewijania w pionie",
"SCROLL_SPEED": "Prędkość przewijania",
"LONG_PRESS_DURATION": "Czas długiego przytrzymania",
"POINTER_LERP_FACTOR": "Wygładzanie wskaźnika",
"XR_CLICK_SENSITIVITY": "Czułość kliknięć XR",
"XR_CLICK_SENSITIVITY_RELEASE": "Czułość zwalniania XR",
"CLICK_FREEZE_TIME_MS": "Czas zamrożenia po kliknięciu (ms)",
"MISC": "Różne",
"XWAYLAND_BY_DEFAULT": "Uruchamiaj aplikacje domyślnie w trybie kompatybilności",
"UPRIGHT_SCREEN_FIX": "Naprawa pozycji ekranu",
"DOUBLE_CURSOR_FIX": "Naprawa podwójnego kursora",
"SCREEN_RENDER_DOWN": "Renderuj ekran w niższej rozdzielczości",
"UPRIGHT_SCREEN_FIX_HELP": "Naprawia pionowe ekrany na niektórych komputerach",
"DOUBLE_CURSOR_FIX_HELP": "Włącz to, jeśli widzisz 2 kursory",
"XR_CLICK_SENSITIVITY_HELP": "Czułość analogowego spustu",
"XR_CLICK_SENSITIVITY_RELEASE_HELP": "Musi być niższa niż kliknięcie",
"CLICK_FREEZE_TIME_MS_HELP": "Pomaga w precyzji podwójnego kliknięcia",
"LEFT_HANDED_MOUSE_HELP": "Użyj tego, jeśli przyciski myszy są zamienione",
"BLOCK_GAME_INPUT_HELP": "Blokuje wszystkie dane wejściowe, gdy kursor najedzie na nakładkę",
"BLOCK_GAME_INPUT_IGNORE_WATCH_HELP": "Nie blokuj inputu, gdy wskaźnik jest najedzony",
"USE_SKYBOX_HELP": "Wyświetlaj niebo, jeśli nie ma aplikacji sceny lub passthrough",
"USE_PASSTHROUGH_HELP": "Pozwól na passthrough, jeśli runtime XR to obsługuje",
"SCREEN_RENDER_DOWN_HELP": "Pomaga redukować aliasing na ekranach o wysokiej rozdzielczości",
"SETS_ON_WATCH": "Lista zestawów na zegarku",
"TROUBLESHOOTING": "Rozwiązywanie problemów",
"CLEAR_SAVED_STATE": "Wyczyść zapisany stan",
"CLEAR_PIPEWIRE_TOKENS": "Wyczyść tokeny PipeWire",
"DELETE_ALL_CONFIGS": "Wyczyść konfigurację",
"RESTART_SOFTWARE": "Uruchom ponownie oprogramowanie",
"CLEAR_SAVED_STATE_HELP": "Zresetuj zestawy i pozycje nakładek",
"CLEAR_PIPEWIRE_TOKENS_HELP": "Zapytaj o wybór ekranu przy następnym uruchomieniu",
"DELETE_ALL_CONFIGS_HELP": "Usuń wszystkie pliki konfiguracyjne z katalogu conf.d",
"RESTART_SOFTWARE_HELP": "Zastosuj ustawienia wymagające ponownego uruchomienia",
"CAPTURE_METHOD": "Przechwytywanie ekranu Wayland",
"CAPTURE_METHOD_HELP": "Spróbuj zmienić tę opcję, jeśli masz\nproblemy z czarnym lub migoczącym ekranem",
"KEYBOARD_MIDDLE_CLICK": "Środkowy przycisk myszy na klawiaturze",
"KEYBOARD_MIDDLE_CLICK_HELP": "Modyfikator, który ma zostać użyty podczas pisania\nfioletową wiązką lasera",
"OPTION": {
"AUTO": "Automatycznie",
"AUTO_HELP": "Skopiuj ekran za pomocą GPU, jeśli obsługiwane,\nw przeciwnym razie GPU PipeWire.",
"PIPEWIRE_HELP": "Szybkie przechwytywanie GPU,\nstandard na wszystkich komputerach.",
"PW_FALLBACK_HELP": "Powolna metoda z wysokim użyciem procesora.\nWypróbuj w przypadku, gdy PipeWire GPU nie działa",
"SCREENCOPY_GPU_HELP": "Szybkie działanie, brak wyskakujących okien z informacją o udostępnianiu ekranu.\nDziała na: Hyprland, Niri, River, Sway",
"SCREENCOPY_HELP": "Wolne, bez wyskakujących okienek udostępniania ekranu.\nDziała na: Hyprland, Niri, River, Sway"
},
"AUTOSTART_APPS": "Aplikacje do uruchomienia przy starcie"
},
"APPLICATION_LAUNCHER": "Uruchamiacz aplikacji",
"APPLICATIONS": "Aplikacje",
"AUDIO": {
"AUTO_SWITCH_TO_VR_AUDIO": "Automatyczne przełączanie na dźwięk VR",
"CARDS": "Karty",
"FAILED_TO_SWITCH_MICROPHONE": "Nie udało się przełączyć mikrofon",
"MICROPHONE_SET_SUCCESSFULLY": "Mikrofon ustawiono pomyślnie",
"MICROPHONES": "Mikrofony",
"NO_VR_MICROPHONE_SWITCH_MANUALLY": "Brak mikrofonu VR. Włącz go ręcznie.",
"NO_VR_SPEAKERS_FOUND_SWITCH_MANUALLY": "Brak głośników VR. Włącz je ręcznie.",
"SELECT_AUDIO_CARD_PROFILE": "Wybierz profil karty dźwiękowej",
"SETTINGS": "Ustawienia dźwięku",
"SPEAKERS": "Głośniki",
"SPEAKERS_SET_SUCCESSFULLY": "Głośniki ustawiono pomyślnie",
"VOLUME": "Głośność"
},
"GAMES": "Gry",
"GENERAL_SETTINGS": "Ustawienia ogólne",
"HEIGHT": "Wysokość",
"HELLO": "Witaj!",
"HELLO_USER": "Witaj, {USER}!",
"HIDE": "Ukryj",
"HOME_SCREEN": "Ekran główny",
"LIST_OF_PROCESSES": "Lista procesów",
"MONADO_RUNTIME": "Środowisko Monado",
"POPUP_ADD_DISPLAY": {
"RESOLUTION": "Rozdzielczość"
},
"REMOVE": "Usuń",
"SETTINGS": "Ustawienia",
"SHOW": "Pokaż",
"WIDTH": "Szerokość",
"PROCESSES": "Procesy",
"PROCESS_LIST": {
"NO_PROCESSES_FOUND": "Nie znaleziono procesów",
"LOCATED_ON": "na",
"TERMINATE_PROCESS_NAMED_X": "Zakończ proces \"{PROCESS_NAME}\""
},
"FAILED_TO_LAUNCH_APPLICATION": "Nie udało się uruchomić aplikacji:",
"NO_WINDOWS_FOUND": "Nie znaleziono okien",
"WINDOW_OPTIONS": "Opcje okna",
"APPLICATION_STARTED": "Aplikacja uruchomiona",
"LIST_OF_WINDOWS": "Lista okien",
"CLOSE_WINDOW": "Zamknij okno",
"GAME_LIST": {
"NO_GAMES_FOUND": "Nie znaleziono gier"
},
"TERMINATE_PROCESS": "Zakończ proces",
"GAME_LAUNCHED": "Gra uruchomiona",
"APP_LAUNCHER": {
"MODE": {
"NATIVE": "Tryb natywny",
"CAGE": "Tryb kompatybilności (Cage)"
},
"RES_TITLE": "Rozdzielczość",
"ASPECT_TITLE": "Proporcje",
"ASPECT": {
"WIDE": "Szeroki",
"SEMI_WIDE": "Półszeroki",
"SQUARE": "Kwadrat",
"SEMI_TALL": "Pół-wysoki",
"TALL": "Wysoki"
},
"POS_TITLE": "Pozycjonowanie",
"POS": {
"FLOATING": "Pływający",
"ANCHORED": "Przymocowane",
"STATIC": "Statyczny",
"FLOATING_HELP": "Porusza się niezależnie, wycentrowuje się po otwarciu.",
"ANCHORED_HELP": "Pozostaje nieruchoma względem centralnego znacznika.",
"STATIC_HELP": "Nie należy do żadnego zestawu. Nie wyśrodkowuje."
},
"AUTOSTART": "Uruchom automatycznie przy starcie",
"LAUNCH": "Uruchom"
},
"DISPLAY_BRIGHTNESS": "Jasność wyświetlacza"
"ACTIONS": {
"RECENTER_PLAYSPACE": "Wycentruj przestrzeń"
},
"APP_SETTINGS": {
"HIDE_USERNAME": "Ukryj nazwę użytkownika",
"OPAQUE_BACKGROUND": "Nieprzezroczyste tło",
"LOOK_AND_FEEL": "Wygląd i działanie",
"HIDE_GRAB_HELP": "Ukryj pomoc dotyczącą chwytania",
"ANIMATION_SPEED": "Prędkość animacji UI",
"ROUND_MULTIPLIER": "Zaokrąglenie krawędzi UI",
"USE_SKYBOX": "Włącz niebo",
"USE_PASSTHROUGH": "Włącz passthrough",
"CLOCK_12H": "Zegar 12-godzinny",
"FEATURES": "Funkcje",
"NOTIFICATIONS_ENABLED": "Włącz powiadomienia",
"NOTIFICATIONS_SOUND_ENABLED": "Dźwięki powiadomień",
"KEYBOARD_SOUND_ENABLED": "Dźwięki klawiatury",
"SPACE_DRAG_MULTIPLIER": "Mnożnik przesuwania przestrzeni",
"SPACE_DRAG_UNLOCKED": "Pozwól na przesuwanie przestrzeni na wszystkich osiach",
"SPACE_ROTATE_UNLOCKED": "Pozwól na rotację przestrzeni na wszystkich osiach",
"BLOCK_GAME_INPUT": "Blokuj input z gry",
"BLOCK_GAME_INPUT_IGNORE_WATCH": "Nie blokuj inputu gry, gdy zegarek jest używany",
"CONTROLS": "Sterowanie",
"FOCUS_FOLLOWS_MOUSE_MODE": "Ruch myszą po dotknięciu spustu",
"LEFT_HANDED_MOUSE": "Myszka dla leworęcznych",
"ALLOW_SLIDING": "Interakcja z drążkami podczas chwytania",
"INVERT_SCROLL_DIRECTION_X": "Odwróć kierunek przewijania w poziomie",
"INVERT_SCROLL_DIRECTION_Y": "Odwróć kierunek przewijania w pionie",
"SCROLL_SPEED": "Prędkość przewijania",
"LONG_PRESS_DURATION": "Czas długiego przytrzymania",
"POINTER_LERP_FACTOR": "Wygładzanie wskaźnika",
"CLICK_FREEZE_TIME_MS": "Czas zamrożenia po kliknięciu (ms)",
"XWAYLAND_BY_DEFAULT": "Uruchamiaj aplikacje domyślnie w trybie kompatybilności",
"UPRIGHT_SCREEN_FIX": "Naprawa pozycji ekranu",
"DOUBLE_CURSOR_FIX": "Naprawa podwójnego kursora",
"SCREEN_RENDER_DOWN": "Renderuj ekran w niższej rozdzielczości",
"UPRIGHT_SCREEN_FIX_HELP": "Naprawia pionowe ekrany na niektórych komputerach",
"DOUBLE_CURSOR_FIX_HELP": "Włącz to, jeśli widzisz 2 kursory",
"CLICK_FREEZE_TIME_MS_HELP": "Pomaga w precyzji podwójnego kliknięcia",
"LEFT_HANDED_MOUSE_HELP": "Użyj tego, jeśli przyciski myszy są zamienione",
"BLOCK_GAME_INPUT_HELP": "Blokuje wszystkie dane wejściowe, gdy kursor najedzie na nakładkę",
"BLOCK_GAME_INPUT_IGNORE_WATCH_HELP": "Nie blokuj inputu, gdy wskaźnik jest najedzony",
"USE_SKYBOX_HELP": "Wyświetlaj niebo, jeśli nie ma aplikacji sceny lub passthrough",
"USE_PASSTHROUGH_HELP": "Pozwól na passthrough, jeśli runtime XR to obsługuje",
"SCREEN_RENDER_DOWN_HELP": "Pomaga redukować aliasing na ekranach o wysokiej rozdzielczości",
"ENABLE_WATCH": "Włącz zegarek",
"SETS_ON_WATCH": "Lista zestawów na zegarku",
"TROUBLESHOOTING": "Rozwiązywanie problemów",
"CLEAR_SAVED_STATE": "Wyczyść zapisany stan",
"CLEAR_PIPEWIRE_TOKENS": "Wyczyść tokeny PipeWire",
"DELETE_ALL_CONFIGS": "Wyczyść konfigurację",
"RESTART_SOFTWARE": "Restartuj WayVR",
"CLEAR_SAVED_STATE_HELP": "Zresetuj zestawy i pozycje nakładek",
"CLEAR_PIPEWIRE_TOKENS_HELP": "Zapytaj o wybór ekranu przy następnym uruchomieniu",
"DELETE_ALL_CONFIGS_HELP": "Usuń wszystkie pliki konfiguracyjne z katalogu conf.d",
"RESTART_SOFTWARE_HELP": "Zastosuj ustawienia wymagające ponownego uruchomienia",
"CAPTURE_METHOD": "Przechwytywanie ekranu Wayland",
"CAPTURE_METHOD_HELP": "Spróbuj zmienić tę opcję, jeśli masz\nproblemy z czarnym lub migoczącym ekranem",
"KEYBOARD_MIDDLE_CLICK": "Środkowy przycisk myszy na klawiaturze",
"KEYBOARD_MIDDLE_CLICK_HELP": "Modyfikator, który ma zostać użyty podczas pisania\nfioletową wiązką lasera",
"OPTION": {
"AUTO": "Automatycznie",
"AUTO_HELP": "Skopiuj ekran za pomocą GPU, jeśli obsługiwane,\nw przeciwnym razie GPU PipeWire.",
"PIPEWIRE_HELP": "Szybkie przechwytywanie GPU,\nstandard na wszystkich komputerach.",
"PW_FALLBACK_HELP": "Powolna metoda z wysokim użyciem procesora.\nWypróbuj w przypadku, gdy PipeWire GPU nie działa",
"SCREENCOPY_GPU_HELP": "Szybkie działanie, brak wyskakujących okien z informacją o udostępnianiu ekranu.\nDziała na: Hyprland, Niri, River, Sway",
"SCREENCOPY_HELP": "Wolne, bez wyskakujących okienek udostępniania ekranu.\nDziała na: Hyprland, Niri, River, Sway",
"NONE": "Brak",
"HMD_PINCH": "HMD + ściśnięcie placami",
"EYE_PINCH": "Ściśnięcie palcami + oko",
"EYE_ONLY": "Tylko oko",
"HMD_ONLY": "Tylko HMD",
"NONE_INPUT_HELP": "Nie emuluj myszy ani klawiatury.\nBrak możliwości interakcji z ekranami.",
"UINPUT": "Emulacja urządzenia",
"UINPUT_HELP": "Używa modułu uinput do emulowania urządzenia.\nTwoje konto użytkownika musi należeć do grupy input.\nWiadomo, że działa dobrze na większości komputerów stacjonarnych.",
"WL_VIRTUAL": "Wirtualne wejście Wayland",
"WL_VIRTUAL_HELP": "Wysyłaj wejście myszki/klawiatury do kompozytora Wayland za pomocą\nzwlr_virtual_pointer i zwp_virtual_keyboard.\nDziała niezawodnie tylko na niektórych pulpitach.\nNIE działa na KDE, GNOME ani COSMIC."
},
"AUTOSTART_APPS": "Aplikacje auto-start",
"HANDSFREE_POINTER": "Tryb bez użycia rąk",
"HANDSFREE_POINTER_HELP": "Wejście do użycia, gdy kontrolery ruchu\nsą niedostępne. Lewy szczyptak to chwyt,\nprawy to kliknięcie.",
"UI_GRADIENT_INTENSITY": "Intensywność gradientu UI",
"RESET_PLAYSPACE": "Zresetuj przestrzeń gry",
"RESET_PLAYSPACE_HELP": "Wyczyść przesunięcie przestrzeni gry.",
"BLOCK_POSES_ON_KBD_INTERACTION": "Blokuj pozy podczas interakcji z klawiaturą",
"BLOCK_POSES_ON_KBD_INTERACTION_HELP": "Blokuje odbieranie póz przez grę, gdy kursor myszy znajduje się nad klawiaturą i włączona jest opcja 'Blokuj dane wejściowe z gry'",
"LANGUAGE": "Język",
"REQUIRES_RESTART": "Wymaga restartu",
"MISC": "Różne",
"GRID_OPACITY": "Przezroczystość siatki podłogowej",
"GRID_OPACITY_HELP": "Przezroczystość siatki podłogowej, gdy włączony jest skybox",
"BROWSE_ONLINE_CATALOG": "Przeglądaj katalog online...",
"BROWSE_SKYMAPS": "Przeglądaj skymaps",
"COLOR_KEYING": "Kluczowanie kolorem",
"NO_SKYMAPS_FOUND": "Nie znaleziono skymap",
"SELECT_VARIANT": "Wybierz wariant",
"SHOW_WELCOME_SCREEN": "Pokaż ekran powitalny",
"SKYBOX": "Skymap",
"SKYMAP_ALREADY_DOWNLOADED": "Ta skymapa została już pobrana. Wybierz żądaną akcję.",
"WATCH_VIEW_ANGLE": "Kąty widzenia Watch",
"WATCH_VIEW_ANGLE_HELP": "Kontroluj, jak zegarek zanika",
"BINDINGS": {
"COMP": {
"CLICK": "Kliknięcie",
"FORCE": "Siła",
"TOUCH": "Dotyk",
"VALUE": "Wartość",
"PROXIMITY": "Bliskość",
"X_AXIS": "Oś X",
"Y_AXIS": "Oś Y"
},
"TYPE": {
"BUMPER": "Bumper",
"DPAD_UP": "D-pad w górę",
"DPAD_DOWN": "D-pad w dół",
"DPAD_LEFT": "D-pad w lewo",
"DPAD_RIGHT": "D-pad w prawo",
"JOYSTICK": "Joystick",
"MENU": "Menu",
"SHOULDER": "Boczny przycisk",
"SQUEEZE": "Chwyt",
"SYSTEM": "System",
"THUMBREST": "Thumbrest",
"THUMBSTICK": "Thumbstick",
"TRACKPAD": "Trackpad",
"TRIGGER": "Spust",
"VIEW": "Widok"
},
"CLICK": {
"ANY": "Dowolny",
"DOUBLE": "Podwójne kliknięcie",
"TRIPLE": "Potrójne kliknięcie",
"TYPE": "Liczba kliknięć"
},
"ACTION": {
"CLICK": "Kliknięcie*",
"GRAB": "Chwyć*",
"ALT_CLICK": "Własne polecenie shell exec (ustaw alt_click w konfiguracji)",
"SHOW_HIDE": "Pokaż, ukryj, wycentruj ponownie*",
"TOGGLE_DASHBOARD": "Przełącz dashboard",
"SPACE_DRAG": "Przesuwanie Playspace",
"SPACE_ROTATE": "Obrót Playspace",
"SPACE_RESET": "Resetowanie playspace",
"CLICK_MODIFIER_RIGHT": "Modyfikator prawego kliknięcia",
"CLICK_MODIFIER_MIDDLE": "Modyfikator środkowego kliknięcia",
"MOVE_MOUSE": "Ruszaj myszą (jeśli domyślnie wyłączone)",
"SCROLL": "Przewijanie*"
},
"LEFT": "Lewy",
"RIGHT": "Prawy",
"COMPONENT": "Typ aktywacji",
"SUBPATH": "Sterowanie aktywacją",
"THRESHOLD": "Aktywuj po przekroczeniu górnej wartości\nDezaktywuj po spadku poniżej dolnej wartości"
},
"ENABLED": "Włączone",
"INPUT_EMULATION_METHOD": "Metoda emulacji wejścia",
"INPUT_EMULATION_METHOD_HELP": "Spróbuj zmienić tę opcję w przypadku, gdy wejście myszy lub\nklawiatury nie jest rejestrowane.",
"INPUT_PROFILES": "Zmień klawiszologię",
"INPUT_PROFILES_HELP": "Przypisania przycisków kontrolera OpenXR",
"NOT_SUPPORTED": "Nieobsługiwane",
"SPACE_DRAG": "Space-drag",
"SPACE_GRAVITY_DAMPING": "Spowalnianie",
"SPACE_GRAVITY_DAMPING_HELP": "Sztuczne spowalnianie mające na celu zatrzymywanie ruchu po pewnym czasie. 0.1 - wysokie spowolnienie, 1.0 - brak spowolnienia",
"SPACE_GRAVITY_FLING_STRENGTH": "Siła wyrzutu",
"SPACE_GRAVITY_FLING_STRENGTH_HELP": "Mnożnik intensywności siły grawitacyjnego wyrzutu po użyciu funkcji space-drag.\n0.0 - brak ruchu, 2.0 - podwójna intensywność",
"SPACE_GRAVITY_GRAVITY": "Grawitacja",
"SPACE_GRAVITY_GRAVITY_HELP": "Wielkość siły działającej w dół. 0.0 - brak grawitacji",
"SPACE_GRAVITY_GROUND_FRICTION": "Tarcie podłoża",
"SPACE_GRAVITY_GROUND_FRICTION_HELP": "Moc tarcia spowalniającego Cię podczas kontaktu z podłożem.\n0.0 - brak tarcia (jak na lodzie), 1.0 - chropowata powierzchnia",
"SPACE_GRAVITY_FLOOR_HEIGHT": "Wysokość podłogi",
"SPACE_GRAVITY_FLOOR_HEIGHT_HELP": "Pozycja Y, w której znajduje się podłoga. Grawitacja przestaje działać po osiągnięciu tej wysokości.",
"SAVE": "Zapisz",
"CANCEL": "Anuluj",
"WHISPER": {
"NEED_TO_DOWNLOAD_MODEL": "Wybrany model musi zostać pobrany.\nPobrać go teraz?",
"REMOVE_UNUSED_MODELS": "Wyłączasz funkcję zamiany mowy na tekst.\nCzy chcesz usunąć pobrane modele Whisper, aby zwolnić miejsce?"
},
"WHISPER_MODEL": "Model mowy na tekst",
"WHISPER_MODEL_HELP": "Model Whisper do wykorzystania.\nWiększe modele dają dokładniejsze\nwyniki, ale zużywają więcej pamięci VRAM.",
"DEFAULT_OVERLAY_SCALE": "Domyślny rozmiar nakładki",
"DEFAULT_OVERLAY_SCALE_HELP": "Twórz nowe nakładki w tej skali.",
"COLOR_PALETTE": "Paleta kolorów",
"COLOR_PALETTES": "Palety kolorów",
"COLOR_PALETTE_CURRENT": "Obecnie aktywny motyw.",
"COLOR_PALETTE_ACTIVATE": "Kliknij, aby użyć tego motywu.",
"APPLY_CHANGES_RESTART": "Zrestartować WayVR, aby zastosować zmiany?",
"COLOR_PALETTE_HELP": "Kliknij, aby przeglądać palety kolorów.\nAby stworzyć własne, odwiedź stronę internetową!",
"COLOR_PALETTE_CUSTOM_URL": "Dodaj własny motyw!",
"COLOR_PALETTE_CUSTOM_URL2": "Kliknij, aby otworzyć instrukcję internetową.",
"SNAP_ANGLE_DEG": "Kąt przyciągania pochylenia i przechyłu okna",
"SNAP_ANGLE_DEG_HELP": "Chwycone okna przyciągają się do tego kąta na osi pochylenia i obrotu."
},
"APPLICATION_LAUNCHER": "Uruchamiacz aplikacji",
"APPLICATIONS": "Aplikacje",
"AUDIO": {
"AUTO_SWITCH_TO_VR_AUDIO": "Automatyczne przełączanie na dźwięk VR",
"CARDS": "Karty",
"FAILED_TO_SWITCH_MICROPHONE": "Nie udało się przełączyć mikrofon",
"MICROPHONE_SET_SUCCESSFULLY": "Mikrofon ustawiono pomyślnie",
"MICROPHONES": "Mikrofony",
"NO_VR_MICROPHONE_SWITCH_MANUALLY": "Brak mikrofonu VR. Włącz go ręcznie.",
"NO_VR_SPEAKERS_FOUND_SWITCH_MANUALLY": "Brak głośników VR. Włącz je ręcznie.",
"SELECT_AUDIO_CARD_PROFILE": "Wybierz profil karty dźwiękowej",
"SETTINGS": "Ustawienia dźwięku",
"SPEAKERS": "Głośniki",
"SPEAKERS_SET_SUCCESSFULLY": "Głośniki ustawiono pomyślnie",
"VOLUME": "Głośność"
},
"GAMES": "Gry",
"GENERAL_SETTINGS": "Ustawienia ogólne",
"HEIGHT": "Wysokość",
"HELLO": "Witaj!",
"HELLO_USER": "Witaj, {USER}!",
"HIDE": "Ukryj",
"HOME_SCREEN": "Ekran główny",
"MONADO_RUNTIME": "Środowisko Monado",
"POPUP_ADD_DISPLAY": {
"RESOLUTION": "Rozdzielczość"
},
"REMOVE": "Usuń",
"SETTINGS": "Ustawienia",
"SHOW": "Pokaż",
"WIDTH": "Szerokość",
"FAILED_TO_LAUNCH_APPLICATION": "Nie udało się uruchomić aplikacji:",
"APPLICATION_STARTED": "Aplikacja uruchomiona",
"CLOSE_WINDOW": "Zamknij okno",
"GAME_LIST": {
"NO_GAMES_FOUND": "Nie znaleziono gier",
"RUNNING_GAMES_LIST": "Lista uruchomionych gier"
},
"TERMINATE_PROCESS": "Zakończ proces",
"GAME_LAUNCHED": "Gra uruchomiona",
"APP_LAUNCHER": {
"MODE": {
"NATIVE": "Tryb natywny",
"CAGE": "Tryb kompatybilności (Cage)"
},
"RES_TITLE": "Rozdzielczość",
"ASPECT_TITLE": "Proporcje",
"ASPECT": {
"WIDE": "Szeroki",
"SEMI_WIDE": "Półszeroki",
"SQUARE": "Kwadrat",
"SEMI_TALL": "Pół-wysoki",
"TALL": "Wysoki"
},
"POS_TITLE": "Pozycjonowanie",
"POS": {
"FLOATING": "Pływający",
"ANCHORED": "Przymocowane",
"STATIC": "Statyczny",
"FLOATING_HELP": "Porusza się niezależnie, wycentrowuje się po otwarciu.",
"ANCHORED_HELP": "Pozostaje nieruchoma względem centralnego znacznika.",
"STATIC_HELP": "Nie należy do żadnego zestawu. Nie wyśrodkowuje."
},
"AUTOSTART": "Uruchom automatycznie przy starcie",
"LAUNCH": "Uruchom"
},
"DISPLAY_BRIGHTNESS": "Jasność wyświetlacza",
"PROCESS_LIST": "Lista procesów",
"REFRESH": "Odśwież",
"PROCESS": {
"STOP": "Zatrzymaj",
"FORCE_KILL": "Wymuś zakończenie"
},
"DEBUG_INFO": "Informacje debugowania",
"CREATION_DATE": "Data utworzenia",
"DOWNLOADER": "Pobieranie",
"DOWNLOAD_AGAIN": "Pobierz ponownie",
"DOWNLOADING_FILE": "Pobieranie pliku...",
"GETTING_STARTED": "Rozpoczęcie",
"MODIFICATION_DATE": "Data modyfikacji",
"LOADING": "Ładowanie...",
"APPLY": "Zastosuj",
"RELOAD_FROM_DISK": "Przeładuj z dysku",
"TARGET_PATH": "Ścieżka docelowa",
"VERSION": "Wersja",
"DONATE": {
"SUPPORT_US": "Wesprzyj nas",
"DESCRIPTION": "Jesteśmy małym, dwuosobowym zespołem programistów, którzy tworzą WayVR w wolnym czasie. Jeśli korzystanie z tego oprogramowania sprawia Ci przyjemność, rozważ wsparcie nas – każda darowizna pomaga nam działać dalej.",
"BUTTON_TOOLTIP": "Przekaż darowiznę przez Open Collective",
"CURRENT_SUPPORTERS": "Obecni Wspierający",
"THANK_YOU_WAYVR": "Dziękujemy od zespołu WayVR!"
},
"WELCOME": {
"ALL_SET": "Wszystko gotowe!",
"BASICS": "Te podstawowe informacje pozwolą Ci z łatwością zacząć korzystać z WayVR.",
"FEATURES_DOCUMENTATION": "Istnieje wiele innych funkcji, które warto spersonalizować. Aby uzyskać więcej informacji, sprawdź dokumentację pod adresem:",
"FINISH_TUTORIAL": "Zakończ samouczek",
"GRAB_BOTH_HANDS": "Chwyć to obiema rękami, jeśli chcesz przenieść konkretny overlay ze swojego zestawu.",
"GRAB_ONE_HAND": "Chwyć to jedną ręką, aby przemieścić swój zestaw.",
"GREETING": "Cześć!",
"GUIDE_INTRO": "Pozwól nam przeprowadzić Cię przez Twoje pierwsze kroki.",
"LASER_COLORS": "Kolory lasera",
"LASER_FUNCTIONALITY": "Wiele funkcji w WayVR zależy od koloru lasera używanego do interakcji z elementami interfejsu użytkownika. Nie musisz naciskać tych przycisków, wystarczy je dotknąć!",
"LAST_PAGE_INFO": "Ten samouczek przestanie się pojawiać po dotarciu do ostatniej strony.",
"LOOK_AT_LEFT_WRIST": "Spójrz na swój lewy nadgarstek. To jest Twój watch.",
"MIDDLE_CLICK_MODE_PURPLE_LASER": "— Tryb środkowego przycisku: Fioletowy laser",
"MOVING_YOUR_SET": "Przesuwanie Twojego zestawu",
"NEXT_BUTTON": "Naciśnij poniższy przycisk „Dalej”, aby rozpocząć.",
"REGULAR_MODE_BLUE_LASER": "— Tryb regularny: Niebieski laser",
"REPOSITION_THIS_WINDOW_BY_GRABBING": "Zmień położenie tego okna, używając przycisku chwytu (grip) na kontrolerze.",
"RIGHT_CLICK_MODE_ORANGE_LASER": "— Tryb prawego przycisku: Pomarańczowy laser",
"THANKS_FOR_INSTALLING": "Dziękujemy za zainstalowanie WayVR!",
"WATCH": "Watch",
"WORKING_SET": "Aktywny zestaw",
"DOUBLE_PRESS_TO_TOGGLE": "Naciśnij dwukrotnie przycisk B (na Index) lub Y (na Meta), aby wyświetlić, wycentrować lub ukryć swój zestaw. Wypróbuj to teraz.",
"CENTER_MARKER": "Znacznik środka to punkt, który pojawi się przed Tobą podczas centrowania. Umieść wokół niego nakładki!"
},
"DOWNLOAD": "Pobierz",
"SAVED_TO_FAVOURITES": "Dodano do ulubionych",
"ADD_TO_FAVOURITES": "Dodaj do ulubionych",
"ADD_TO_FAVOURITES_HINT": "Zapisz ustawienie i przypnij je do szuflady aplikacji",
"REMOVE_FROM_FAVOURITES": "Usuń z ulubionych",
"EMPTY": "Puste",
"PINNED_APPS": "Przypięte aplikacje"
}
+318
View File
@@ -0,0 +1,318 @@
{
"ACTIONS": {
"RECENTER_PLAYSPACE": "重置游玩区中心"
},
"APP_LAUNCHER": {
"ASPECT": {
"SEMI_TALL": "略高",
"SEMI_WIDE": "略宽",
"SQUARE": "正方形",
"TALL": "高",
"WIDE": "宽"
},
"ASPECT_TITLE": "比例",
"AUTOSTART": "启动时自动运行",
"LAUNCH": "启动",
"MODE": {
"CAGE": "兼容模式 (Cage)",
"NATIVE": "原生模式"
},
"POS": {
"ANCHORED": "锚定",
"ANCHORED_HELP": "相对于中心标记保持固定。",
"FLOATING": "悬浮",
"FLOATING_HELP": "独立移动,显示时自动重置中心。",
"STATIC": "静态",
"STATIC_HELP": "不属于任何集合。不会重置中心。"
},
"POS_TITLE": "定位",
"RES_TITLE": "分辨率"
},
"APP_SETTINGS": {
"ALLOW_SLIDING": "抓取时允许摇杆交互",
"ANIMATION_SPEED": "UI 动画速度",
"BLOCK_GAME_INPUT": "屏蔽游戏输入",
"BLOCK_GAME_INPUT_HELP": "悬停在覆盖层上时屏蔽所有输入",
"BLOCK_GAME_INPUT_IGNORE_WATCH": "屏蔽输入时忽略手表",
"BLOCK_GAME_INPUT_IGNORE_WATCH_HELP": "悬停在手表上时不屏蔽输入",
"CAPTURE_METHOD": "Wayland 屏幕采集",
"CAPTURE_METHOD_HELP": "如果您遇到黑屏或花屏,请尝试更改此项",
"CLEAR_PIPEWIRE_TOKENS": "清除 PipeWire 令牌",
"CLEAR_PIPEWIRE_TOKENS_HELP": "下次启动时提示选择屏幕",
"CLEAR_SAVED_STATE": "清除保存的状态",
"CLEAR_SAVED_STATE_HELP": "重置集合与覆盖层位置",
"CLICK_FREEZE_TIME_MS": "点击冻结时间 (毫秒)",
"CLICK_FREEZE_TIME_MS_HELP": "有助于提高双击精度",
"CLOCK_12H": "12 小时制时钟",
"CONTROLS": "控制",
"DELETE_ALL_CONFIGS": "擦除配置",
"DELETE_ALL_CONFIGS_HELP": "从 conf.d 中删除所有配置文件",
"DOUBLE_CURSOR_FIX": "双光标修复",
"DOUBLE_CURSOR_FIX_HELP": "如果您看到两个光标,请启用此项",
"FEATURES": "功能",
"FOCUS_FOLLOWS_MOUSE_MODE": "触摸扳机时移动鼠标",
"HIDE_GRAB_HELP": "隐藏抓取帮助",
"HIDE_USERNAME": "隐藏用户名",
"INVERT_SCROLL_DIRECTION_X": "反转水平滚动方向",
"INVERT_SCROLL_DIRECTION_Y": "反转垂直滚动方向",
"KEYBOARD_MIDDLE_CLICK": "键盘中键点击",
"KEYBOARD_MIDDLE_CLICK_HELP": "使用紫色激光打字时的修饰键",
"KEYBOARD_SOUND_ENABLED": "键盘音效",
"LEFT_HANDED_MOUSE": "左手鼠标",
"LEFT_HANDED_MOUSE_HELP": "如果鼠标按钮反置,请使用此项",
"LONG_PRESS_DURATION": "长按持续时间",
"LOOK_AND_FEEL": "外观与体验",
"MISC": "杂项",
"NOTIFICATIONS_ENABLED": "启用通知",
"NOTIFICATIONS_SOUND_ENABLED": "通知音效",
"OPAQUE_BACKGROUND": "不透明背景",
"OPTION": {
"AUTO": "自动",
"AUTO_HELP": "如果支持,则使用 ScreenCopy GPU,\n否则使用 PipeWire GPU。",
"PIPEWIRE_HELP": "快速 GPU 采集,\n所有桌面环境的标准方式。",
"PW_FALLBACK_HELP": "高 CPU 占用的慢速方法。\n在 PipeWire GPU 不起作用时尝试。",
"SCREENCOPY_GPU_HELP": "快速,无屏幕共享弹窗。\n支持:Hyprland, Niri, River, Sway",
"SCREENCOPY_HELP": "慢速,无屏幕共享弹窗。\n支持:Hyprland, Niri, River, Sway",
"NONE": "无",
"HMD_PINCH": "HMD + 捏合",
"EYE_PINCH": "眼睛 + 捏合",
"EYE_ONLY": "仅眼球",
"HMD_ONLY": "仅限头显",
"NONE_INPUT_HELP": "不模拟鼠标和键盘。\n将无法与屏幕进行交互。",
"UINPUT": "设备模拟",
"UINPUT_HELP": "使用 uinput 模块来模拟设备。\n您的用户必须处于 input 用户组中。\n已知在大多数桌面上运行良好。",
"WL_VIRTUAL": "Wayland 虚拟输入",
"WL_VIRTUAL_HELP": "使用 zwlr_virtual_pointer 和 zwp_virtual_keyboard 向 Wayland 合成器发送事件。\n仅在部分桌面环境下能可靠工作。\n在 KDE、GNOME 或 COSMIC 上无法工作。"
},
"POINTER_LERP_FACTOR": "指针平滑",
"RESTART_SOFTWARE": "重启软件",
"RESTART_SOFTWARE_HELP": "应用需要重启的设置",
"ROUND_MULTIPLIER": "UI 边缘圆角",
"SCREEN_RENDER_DOWN": "以较低分辨率渲染屏幕",
"SCREEN_RENDER_DOWN_HELP": "有助于解决高分辨率屏幕的锯齿问题",
"SCROLL_SPEED": "滚动速度",
"SETS_ON_WATCH": "在手表上显示集合",
"SPACE_DRAG_MULTIPLIER": "空间拖拽倍率",
"SPACE_DRAG_UNLOCKED": "允许在所有轴上进行空间拖拽",
"SPACE_ROTATE_UNLOCKED": "允许在所有轴上进行空间旋转",
"TROUBLESHOOTING": "故障排除",
"UPRIGHT_SCREEN_FIX": "垂直屏幕修复",
"UPRIGHT_SCREEN_FIX_HELP": "修复某些桌面上的垂直屏幕问题",
"USE_PASSTHROUGH": "启用穿透",
"USE_PASSTHROUGH_HELP": "如果 XR 运行时支持,则允许穿透",
"USE_SKYBOX": "启用天空盒",
"USE_SKYBOX_HELP": "如果没有场景应用或穿透,则显示天空盒",
"XWAYLAND_BY_DEFAULT": "默认以兼容模式运行应用",
"AUTOSTART_APPS": "开机启动应用",
"HANDSFREE_POINTER": "免提模式",
"HANDSFREE_POINTER_HELP": "当运动控制器不可用时使用的输入。\n左手捏合为抓取,右手为点击。",
"UI_GRADIENT_INTENSITY": "UI 渐变强度",
"RESET_PLAYSPACE": "重置游戏空间",
"RESET_PLAYSPACE_HELP": "清除舞台空间偏移。",
"BLOCK_POSES_ON_KBD_INTERACTION": "与键盘交互时阻止姿势",
"BLOCK_POSES_ON_KBD_INTERACTION_HELP": "当键盘悬停且启用“阻止游戏输入”时,阻止游戏接收姿势",
"LANGUAGE": "语言",
"REQUIRES_RESTART": "需要重启",
"GRID_OPACITY": "地面网格不透明度",
"GRID_OPACITY_HELP": "启用天空盒时地板网格的不透明度",
"BROWSE_ONLINE_CATALOG": "浏览在线目录...",
"BROWSE_SKYMAPS": "浏览 Skymaps",
"COLOR_KEYING": "颜色键控",
"NO_SKYMAPS_FOUND": "未找到 Skymaps",
"SELECT_VARIANT": "选择变体",
"SHOW_WELCOME_SCREEN": "显示欢迎屏幕",
"SKYBOX": "Skybox",
"SKYMAP_ALREADY_DOWNLOADED": "此 Skymap 已下载。请选择所需操作。",
"WATCH_VIEW_ANGLE": "Watch 视角角度",
"WATCH_VIEW_ANGLE_HELP": "控制表盘的淡出方式",
"BINDINGS": {
"COMP": {
"CLICK": "点击",
"FORCE": "力度",
"TOUCH": "触摸",
"VALUE": "值",
"PROXIMITY": "临近度",
"X_AXIS": "X 轴",
"Y_AXIS": "Y 轴"
},
"TYPE": {
"BUMPER": "侧键",
"DPAD_UP": "方向键上",
"DPAD_DOWN": "方向键下",
"DPAD_LEFT": "方向键左",
"DPAD_RIGHT": "方向键右",
"JOYSTICK": "摇杆",
"MENU": "菜单",
"SHOULDER": "肩键",
"SQUEEZE": "抓取",
"SYSTEM": "系统",
"THUMBREST": "拇指托",
"THUMBSTICK": "摇杆",
"TRACKPAD": "触控板",
"TRIGGER": "扳机键",
"VIEW": "视图"
},
"CLICK": {
"ANY": "任意",
"DOUBLE": "双击",
"TRIPLE": "三击",
"TYPE": "点击次数"
},
"ACTION": {
"CLICK": "点击*",
"GRAB": "抓取*",
"ALT_CLICK": "自定义 Shell 执行 (在配置中设置 alt_click)",
"SHOW_HIDE": "显示、隐藏、重新中心化*",
"TOGGLE_DASHBOARD": "切换控制面板",
"SPACE_DRAG": "Playspace 拖拽",
"SPACE_ROTATE": "Playspace 旋转",
"SPACE_RESET": "Playspace 重置",
"CLICK_MODIFIER_RIGHT": "右键修饰键",
"CLICK_MODIFIER_MIDDLE": "中键修饰键",
"MOVE_MOUSE": "移动鼠标 (如果默认关闭)",
"SCROLL": "滚动*"
},
"LEFT": "左侧",
"RIGHT": "右",
"COMPONENT": "触发类型",
"SUBPATH": "动作控制",
"THRESHOLD": "高于上限值时激活\n低于下限值时停用"
},
"ENABLED": "已启用",
"INPUT_EMULATION_METHOD": "输入仿真方法",
"INPUT_EMULATION_METHOD_HELP": "如果鼠标或键盘输入未被识别,请尝试更改此设置。",
"INPUT_PROFILES": "更改输入绑定",
"INPUT_PROFILES_HELP": "OpenXR 控制器输入绑定",
"NOT_SUPPORTED": "不支持",
"ENABLE_WATCH": "启用手表",
"SPACE_DRAG": "空间拖拽",
"SPACE_GRAVITY_DAMPING": "阻尼",
"SPACE_GRAVITY_DAMPING_HELP": "用于减缓移动速度的人造阻力。0.1 - 高阻力,1.0 - 无阻力",
"SPACE_GRAVITY_FLING_STRENGTH": "投掷力度",
"SPACE_GRAVITY_FLING_STRENGTH_HELP": "Space-drag 后的重力发射力强度倍数。\n0.0 - 完全没有位移,2.0 - 双倍强度",
"SPACE_GRAVITY_GRAVITY": "重力",
"SPACE_GRAVITY_GRAVITY_HELP": "向下作用的力的大小。0.0 - 无重力",
"SPACE_GRAVITY_GROUND_FRICTION": "地面摩擦力",
"SPACE_GRAVITY_GROUND_FRICTION_HELP": "如果你接触地面时,减慢你移动速度的摩擦力大小。\n0.0 - 无摩擦(就像在冰面上一样),1.0 - 粗糙表面",
"SPACE_GRAVITY_FLOOR_HEIGHT": "地面高度",
"SPACE_GRAVITY_FLOOR_HEIGHT_HELP": "地面所在 Y 轴位置。达到该高度时重力停止。",
"SAVE": "保存",
"CANCEL": "取消",
"WHISPER": {
"NEED_TO_DOWNLOAD_MODEL": "所选模型需要下载。\n现在开始下载吗?",
"REMOVE_UNUSED_MODELS": "您正在关闭语音转文本功能。\n是否删除已下载的 Whisper 模型以释放空间?"
},
"WHISPER_MODEL": "语音转文本模型",
"WHISPER_MODEL_HELP": "要使用的 Whisper 模型。\n模型越大,结果越准确,\n但消耗的显存 (VRAM) 越多。",
"DEFAULT_OVERLAY_SCALE": "默认叠加层大小",
"DEFAULT_OVERLAY_SCALE_HELP": "以该比例生成新的叠加层。",
"COLOR_PALETTE": "调色板",
"COLOR_PALETTES": "配色方案",
"COLOR_PALETTE_CURRENT": "当前激活的主题。",
"COLOR_PALETTE_ACTIVATE": "点击以使用此主题。",
"APPLY_CHANGES_RESTART": "重启 WayVR 以应用更改吗?",
"COLOR_PALETTE_HELP": "点击浏览配色方案。\n如需创建自定义配色,请参阅网站!",
"COLOR_PALETTE_CUSTOM_URL": "添加自定义主题!",
"COLOR_PALETTE_CUSTOM_URL2": "点击打开网页版手册。",
"SNAP_ANGLE_DEG": "窗口俯仰与翻滚捕捉角度",
"SNAP_ANGLE_DEG_HELP": "抓取的窗口在俯仰轴和翻滚轴上将对齐到此角度。"
},
"APPLICATION_LAUNCHER": "应用启动器",
"APPLICATION_STARTED": "应用已启动",
"APPLICATIONS": "应用",
"AUDIO": {
"AUTO_SWITCH_TO_VR_AUDIO": "自动切换到 VR 音频",
"CARDS": "声卡",
"FAILED_TO_SWITCH_MICROPHONE": "切换麦克风失败",
"MICROPHONE_SET_SUCCESSFULLY": "麦克风设置成功",
"MICROPHONES": "麦克风",
"NO_VR_MICROPHONE_SWITCH_MANUALLY": "未找到 VR 麦克风。请手动切换。",
"NO_VR_SPEAKERS_FOUND_SWITCH_MANUALLY": "未找到 VR 扬声器。请手动切换。",
"SELECT_AUDIO_CARD_PROFILE": "选择声卡配置",
"SETTINGS": "音频设置",
"SPEAKERS": "扬声器",
"SPEAKERS_SET_SUCCESSFULLY": "扬声器设置成功",
"VOLUME": "音量"
},
"CLOSE_WINDOW": "关闭窗口",
"DISPLAY_BRIGHTNESS": "显示亮度",
"FAILED_TO_LAUNCH_APPLICATION": "启动应用失败:",
"GAME_LAUNCHED": "游戏已启动",
"GAME_LIST": {
"NO_GAMES_FOUND": "未找到游戏",
"RUNNING_GAMES_LIST": "正在运行的游戏列表"
},
"GAMES": "游戏",
"GENERAL_SETTINGS": "通用设置",
"HEIGHT": "高度",
"HELLO": "你好!",
"HELLO_USER": "你好,{USER}!",
"HIDE": "隐藏",
"HOME_SCREEN": "主页",
"MONADO_RUNTIME": "Monado 运行时",
"POPUP_ADD_DISPLAY": {
"RESOLUTION": "分辨率"
},
"REMOVE": "移除",
"SETTINGS": "设置",
"SHOW": "显示",
"TERMINATE_PROCESS": "终止进程",
"WIDTH": "宽度",
"PROCESS_LIST": "进程列表",
"REFRESH": "刷新",
"PROCESS": {
"STOP": "停止",
"FORCE_KILL": "强制关闭"
},
"DEBUG_INFO": "调试信息",
"CREATION_DATE": "创建日期",
"DOWNLOADER": "下载器",
"DOWNLOAD_AGAIN": "重新下载",
"DOWNLOADING_FILE": "正在下载文件...",
"GETTING_STARTED": "入门指南",
"MODIFICATION_DATE": "修改日期",
"LOADING": "正在加载...",
"APPLY": "应用",
"RELOAD_FROM_DISK": "从磁盘重新加载",
"TARGET_PATH": "目标路径",
"VERSION": "版本",
"DONATE": {
"SUPPORT_US": "支持我们",
"DESCRIPTION": "我们是一个由 2 名开发者组成的精简团队,在业余时间开发 WayVR。如果您喜欢这款软件,请考虑支持我们 —— 每一次捐赠都能帮助我们继续开发下去。",
"BUTTON_TOOLTIP": "通过 Open Collective 捐赠",
"CURRENT_SUPPORTERS": "当前支持者",
"THANK_YOU_WAYVR": "WayVR 团队向您表示感谢!"
},
"WELCOME": {
"ALL_SET": "你已准备就绪!",
"BASICS": "这些基础知识将帮助您轻松开始使用 WayVR。",
"FEATURES_DOCUMENTATION": "还有许多其他值得自定义的功能。欲了解更多信息,请查看文档:",
"FINISH_TUTORIAL": "完成教程",
"GRAB_BOTH_HANDS": "如果你想移动 Set 中的特定叠加层,请用双手抓取。",
"GRAB_ONE_HAND": "用一只手抓取即可移动你的 Set。",
"GREETING": "你好!",
"GUIDE_INTRO": "让我们引导你完成初步设置。",
"LASER_COLORS": "激光颜色",
"LASER_FUNCTIONALITY": "WayVR 中的许多功能都取决于使用何种颜色的激光来与 UI 元素进行交互。您不需要按下这些按钮,只需触摸它们即可!",
"LAST_PAGE_INFO": "一旦你到达最后一页,此教程将不再显示。",
"LOOK_AT_LEFT_WRIST": "看向你的左手腕。那就是你的手表。",
"MIDDLE_CLICK_MODE_PURPLE_LASER": "— 中键模式:紫色激光",
"MOVING_YOUR_SET": "正在移动您的 Set",
"NEXT_BUTTON": "按下下方的“下一步”按钮以开始。",
"REGULAR_MODE_BLUE_LASER": "— 普通模式:蓝色激光",
"REPOSITION_THIS_WINDOW_BY_GRABBING": "使用控制器的抓取操作重新定位此窗口。",
"RIGHT_CLICK_MODE_ORANGE_LASER": "— 右键模式:橙色激光",
"THANKS_FOR_INSTALLING": "感谢安装 WayVR!",
"WATCH": "Watch",
"WORKING_SET": "工作集",
"DOUBLE_PRESS_TO_TOGGLE": "双击 B 键 (Index) 或 Y 键 (Meta) 以显示、重新居中或隐藏您的集合。现在就试一下吧。",
"CENTER_MARKER": "中心标记是重新居中时出现在你面前的标志。请将覆盖层放置在它周围!"
},
"DOWNLOAD": "下载",
"SAVED_TO_FAVOURITES": "已保存至收藏夹",
"ADD_TO_FAVOURITES": "添加到收藏",
"ADD_TO_FAVOURITES_HINT": "保存预设并将其固定到应用抽屉",
"REMOVE_FROM_FAVOURITES": "从收藏中移除",
"EMPTY": "空",
"PINNED_APPS": "已固定应用程序"
}
Binary file not shown.
Binary file not shown.
Loaded 100 of 403 files, more files were not shown because too many files have changed in this diff. Show more