Commit Graph

97 Commits

Author SHA1 Message Date
Natsumi
e1de8508c6 cleanup 2023-06-07 01:03:29 +12:00
Teacup
7d6ca28f86 feat: Add /getall, logging to .NET, fix manager not getting traveling world (#554)
* fix: Fix world-db not getting current world properly when traveling

* fix: Stop redundant and exception-prone funcResult definition

* Fix: fetching current location

* refactor: Move constructing responseData to its own functions

* Fix: ignore own string requests

* feat: Add NLog dependency, and add some logging to .NET, mostly worlddb

* fix: I missed a semicolon

* refactor: Add more debug logging, change log format, archive less

* feat: Add /getall endpoint

---------

Co-authored-by: Natsumi <cmcooper123@hotmail.com>
2023-06-02 12:59:31 +12:00
Teacup
0101f3474f Add systems for local world persistence (#553)
* chore: Change vscode workspace settings to work with omnisharp

* refactor(.NET): Use connection string builder to init sqlite database

* docs(.NET): Add method documentation to most things that matter

* docs(.NET): Add more docs I forgot to commit apparently

* feat: Add PoC world database structure ^& http listener

* fix: Send a response if VRCX isn't initialized rather than hanging

* feat: Initialize world db schema on startup

* feat: Allow worlds to store data in db through logfile

* use existing current location for worldDB

* Add tooltips

* chore: Make it so vscode can format C# files without prettier

* refactor: Add sqlite-net to (eventually) replace sqlite impl

* refactor: Make use of sqlite-net for world database

* docs: Add todo for fixing some random exception

* refactor: Remove now-unused SQLiteWorld

* refactor: Fix DB init query and change table structure again

* refactor: Add WorldDataRequest, add attributes for camelcase json keys

* Support current user location from API in addition to gameLog

* Change current location check for worldDB

* feat: Take store requests in JSON, identify worlds by GUID on store.

* refactor: Remove unused worldId param from connection key generator

* docs: Add more documentation to the methods for the world database

* fix: Hey wait that's not a primary key

* feat: Add a 10MB data cap for worlds shared across all of their rows.

* fix: Don't calculate size of world date twice when inserting

* refactor: Discard the guid variable since we only check for validity

* docs: Add docs/comments for new data cap functionality

* feat: Implement /getbulk API endpoint

* fix: Correct WorldDB init query typo

* fix: Update data entries properly instead of using 'OR REPLACE'

* refactor: Move endpoint processing to separate methods

* refactor: Add another check for error 503, remove old code

* feat: Add debug capability to /vrcx/getbulk

* fix: Correct the usage of getUser in actuallyGetCurrentLocation

* feat: Add store errors, implement external reading, stop 404ing

* docs: Add docs for new world db funcs

* refactor: Change world db server listen port to 22500

* fix: Use getUser correctly, dumb dumb

* fix: This error set shouldn't be here

* feat: Future-proof api endpoints. Add /status endpoint

---------

Co-authored-by: Natsumi <cmcooper123@hotmail.com>
2023-06-01 10:34:50 +12:00
Natsumi
a2777e6190 chore(.NET): update to Cef 113 2023-05-23 19:55:56 +12:00
Teacup
0a9f8f0a34 chore(.NET): Remove unused System.Management reference 2023-05-18 10:59:50 +12:00
Natsumi
bb31ce5736 feat: Add an automatic app launcher (#541)
* refactor: Change OpenImageFolder to use a winapi call

It will open the given file in any existing explorer instances instead of opening a new shell every time, handle longer paths, and work with third-party filesystem viewers with winapi hooks(well, this one).

* feat: Add an automatic app launcher

The launcer will automatically launch apps in the 'startup' folder under the VRCX appdata folder when VRChat has started, and close them when VRChat dies(or is closed).

* refactor: Add new class for monitoring VRC processes

This replaces the old AppApi functionality that would poll all processes twice to grab the status of both VRChat and vrserver.exe every... *checks app.js* 500ms.

It also raises events for when a monitored process is started/closed, mainly for the new AppLauncher feature, which is now using this class instead of monitoring vrchat itself.

* refactor: Add tooltip for launch folder button

* docs: Add some notes on potential issues with Process.HasExited

* Change CheckGameRunning from polling to events

---------

Co-authored-by: Teacup <git@teadev.xyz>
2023-05-10 16:57:25 +12:00
Teacup
f184dc8475 feat: Add drag/drop functionality to the screenshot viewer (#536)
* feat: Add drag/drop functionality to the screenshot viewer

* feat: Add arrow key controls for screenshot carousel
2023-05-08 14:50:52 +12:00
Natsumi
ea6f8695b5 chore(.NET): update Cef 112.3 2023-04-29 10:23:15 +12:00
Natsumi
1ed71c2596 chore(.NET): update Cef 111 2023-03-25 03:58:31 +13:00
Natsumi
bb8c3dcfa9 Refactor IPC 2023-03-21 03:03:42 +13:00
Teacup
0f3b8c732a feat: Add options to save the current world name/id to screenshot metadata/filenames 2023-02-11 18:30:53 -05:00
Natsumi
403578ec8e chore(.NET): update Cef 110 2023-02-12 00:20:57 +13:00
Natsumi
f3a04c2dcc chore(.NET): update deps 2023-01-22 21:39:28 +13:00
Natsumi
b5edf2a37b Downgrade Cef to 107 to fix crash at startup
has exited with code 3221225477 (0xc0000005) 'Access violation'.
2023-01-01 09:51:24 +13:00
Natsumi
8c8d302402 chore(.NET): update deps 2022-12-25 02:35:22 +13:00
Natsumi
c630c97c06 Image download handler 2022-12-13 21:50:01 +13:00
Natsumi
1a44f59572 chore(.NET): update deps 2022-12-07 12:28:54 +13:00
Natsumi
3d966de4db chore(.NET): update deps 2022-11-15 10:18:42 +13:00
Natsumi
8e5175b4f2 chore(.NET): update deps 2022-11-05 00:57:37 +13:00
Natsumi
41cbdcf354 update Discord RPC 2022-10-26 04:29:50 +13:00
Natsumi
aca0c9a827 Downgrade Cef to fix image upload crash 2022-10-05 02:01:40 +13:00
Natsumi
7a70772c6f chore(.NET): update deps 2022-10-04 01:54:48 +13:00
Natsumi
053e85047e Version file 2022-10-04 01:54:38 +13:00
Natsumi
6206d8ac8a Downgrade Cef, add app manifest 2022-09-14 23:12:52 +12:00
Natsumi
9ea66fb331 chore(.NET): update deps 2022-09-12 20:52:46 +12:00
Natsumi
c8086ccf88 chore(.NET): update deps 2022-08-28 00:55:59 +12:00
Natsumi
50f5a2ba59 chore(.NET): update deps 2022-08-14 20:18:49 +12:00
Natsumi
2128a6adfa isGameNoVR, remove steam login, remove copy instance, Fix PortalSpawn 2022-07-29 21:31:49 +12:00
Natsumi
b0109e60d3 Remove Steam auth 2022-07-29 21:31:45 +12:00
Natsumi
78238ad7e8 chore(.NET): update deps 2022-07-09 00:17:48 +12:00
Natsumi
f2b174d6a3 Companion 1.1.0 update 2022-06-25 19:46:00 +12:00
Natsumi
ebd50c8bff chore(.NET): update deps 2022-06-24 18:52:20 +12:00
Natsumi
2037469dd4 chore(.NET): update deps 2022-05-24 23:25:59 +12:00
Natsumi
dc0d1883d6 Discord world images 2022-05-09 00:59:11 +12:00
Natsumi
7d0425d61f chore(.NET): update deps 2022-04-25 18:18:14 +12:00
Natsumi
90a89d8a25 Remove world/avatar caching
https://www.youtube.com/watch?v=6kguaGI7aZg
2022-03-27 14:53:00 +13:00
Natsumi
319e55770f chore(.NET): update deps 2022-03-27 03:13:36 +13:00
Usman Shafiq
ce9ab560fe Replaced InvisPopup with Opacity to force redraw 2022-03-24 10:54:27 -04:00
Usman Shafiq
8b66fd5825 Moved PInvoke stuff to seperate class, Added jank force refresh of window on theme change 2022-03-23 22:12:35 -04:00
Usman Shafiq
c9bd9cd9d3 Light/Dark themer added for Winform title bar 2022-03-23 19:21:34 -04:00
Natsumi
7ad28fbc24 Remove default context menu 2022-03-21 09:29:35 +13:00
Natsumi
194295e02a chore(.NET): update deps 2022-03-13 20:06:08 +13:00
Natsumi
dcd5077202 chore(.NET): update deps 2022-03-01 12:09:38 +13:00
Natsumi
8a064d9365 chore(.NET): update deps 2022-02-13 10:31:51 +13:00
Natsumi
be051c3c59 chore(.NET): update deps 2021-12-24 20:01:09 +13:00
Natsumi
7321bffea1 chore(.NET): update deps 2021-12-07 01:36:17 +13:00
Natsumi
3a102a2c2c Photon logging support 2021-11-20 23:53:37 +13:00
Natsumi
eae9de77b1 chore(.NET): update deps 2021-11-20 00:10:03 +13:00
Natsumi
55ac5233d7 chore(.NET): update deps 2021-11-01 19:05:10 +13:00
Natsumi
dbf4200c52 update cef 2021-10-07 11:52:23 +13:00