+1
README.md
+1
README.md
+4
-1
changelog
+4
-1
changelog
···
89
89
- Fixed render being called multiple times per frame when using webkitgtk
90
90
91
91
Dev Stuff:
92
-
- Implemented a view transition handler, should help with transitions when the app is scaled
92
+
- Implemented a view transition handler, should help with transitions when the app is scaled
93
+
94
+
v0.2.5:
95
+
- Fixed the "Start with windows" button appearing on linux
+1
-2
src-tauri/tauri.conf.json
+1
-2
src-tauri/tauri.conf.json
+24
-78
src/Components/SettingsMenu.tsx
+24
-78
src/Components/SettingsMenu.tsx
···
206
206
</label>
207
207
</div>
208
208
209
-
<div class="selector">
210
-
<input type="checkbox" id="start-with-win-check" ref={async ( el ) => {
211
-
el.checked = await invoke('get_config_value_string', { key: 'start-with-win' }) === "true" ? true : false;
212
-
}} onChange={( el ) => {
213
-
if(el.target.checked){
214
-
invoke('set_config_value_string', { key: 'start-with-win', value: 'true' });
215
-
invoke("start_with_win", { start: true });
216
-
} else{
217
-
invoke('set_config_value_string', { key: 'start-with-win', value: 'false' });
218
-
invoke("start_with_win", { start: false });
219
-
}
220
-
}} />
221
-
Start with windows
209
+
<Show when={window.OS === 'windows'}>
210
+
<div class="selector">
211
+
<input type="checkbox" id="start-with-win-check" ref={async ( el ) => {
212
+
el.checked = await invoke('get_config_value_string', { key: 'start-with-win' }) === "true" ? true : false;
213
+
}} onChange={( el ) => {
214
+
if(el.target.checked){
215
+
invoke('set_config_value_string', { key: 'start-with-win', value: 'true' });
216
+
invoke("start_with_win", { start: true });
217
+
} else{
218
+
invoke('set_config_value_string', { key: 'start-with-win', value: 'false' });
219
+
invoke("start_with_win", { start: false });
220
+
}
221
+
}} />
222
+
Start with windows
222
223
223
-
<label for="start-with-win-check">
224
-
<div class="selection-box">
225
-
<div class="icon" style={{ width: '10px', margin: '0', display: 'inline-flex' }}>
226
-
<img draggable="false" width="10" height="10" src="/icon/check-solid.svg"></img>
224
+
<label for="start-with-win-check">
225
+
<div class="selection-box">
226
+
<div class="icon" style={{ width: '10px', margin: '0', display: 'inline-flex' }}>
227
+
<img draggable="false" width="10" height="10" src="/icon/check-solid.svg"></img>
228
+
</div>
227
229
</div>
228
-
</div>
229
-
</label>
230
-
</div>
230
+
</label>
231
+
</div>
232
+
</Show>
231
233
232
234
<div class="selector">
233
235
<input type="checkbox" id="transparent-check" ref={async ( el ) => {
···
315
317
<p>VRChat Photo Manager supports photos with extra metadata provided by VRCX.</p>
316
318
</div>
317
319
<div class="settings-block">
318
-
<h1>Account Settings</h1>
319
-
320
-
<Show when={window.AccountManager.hasAccount()} fallback={
321
-
<div>
322
-
You aren't logged in. To enable cloud sync and sharing features you need to login to your PhazeID.<br /><br />
323
-
<div class="button" onClick={() => {
324
-
window.AccountManager.login();
325
-
}}>Login</div>
326
-
</div>
327
-
}>
328
-
<div class="account-profile">
329
-
<div class="account-pfp" style={{ background: `url('https://cdn.phazed.xyz/id/avatars/${window.AccountManager.Profile()?.id}/${window.AccountManager.Profile()?.avatar}.png')` }}></div>
330
-
<div class="account-desc">
331
-
<div class="reload-photos" onClick={() => window.AccountManager.Refresh()} style={{ opacity: 1 }}>
332
-
<div class="icon" style={{ width: '17px' }}>
333
-
<img draggable="false" width="17" height="17" src="/icon/arrows-rotate-solid.svg"></img>
334
-
</div>
335
-
</div>
336
-
<h2>{ window.AccountManager.Profile()?.username }</h2>
337
-
338
-
<Show when={window.AccountManager.Storage()?.isSyncing}>
339
-
<div class="storage-bar">
340
-
<div class="storage-bar-inner" style={{ width: ((window.AccountManager.Storage()!.used / window.AccountManager.Storage()!.total) * 100) + '%' }}></div>
341
-
</div>
342
-
343
-
<div>
344
-
{ bytesToFormatted(window.AccountManager.Storage()!.used, 0) } / { bytesToFormatted(window.AccountManager.Storage()!.total, 0) }<br /><br />
345
-
346
-
<span style={{ 'font-size': '10px' }}>Server Version: { window.AccountManager.Profile()?.serverVersion }</span>
347
-
</div>
348
-
</Show>
349
-
</div>
350
-
</div>
351
-
352
-
<div class="account-notice">To enable cloud storage or get more storage please contact "_phaz" on discord</div>
353
-
354
-
<div class="account-notice" style={{ display: 'flex' }}>
355
-
<Show when={false} fallback={ "We are deleting your photos, please leave this window open while we delete them." }>
356
-
<div class="button-danger" onClick={() => window.ConfirmationBoxManager.SetConfirmationBox("You are about to delete all your photos from the cloud, and disable syncing. This will NOT delete any local files.", async () => {
357
-
// TODO: Rework all of this
358
-
359
-
// props.setStorageInfo({ used: 0, storage: 0, sync: false });
360
-
// setDeletingPhotos(true);
361
-
362
-
// fetch('https://photos-cdn.phazed.xyz/api/v1/allphotos', {
363
-
// method: 'DELETE',
364
-
// headers: { auth: (await invoke('get_config_value_string', { key: 'token' }))! }
365
-
// })
366
-
// .then(data => data.json())
367
-
// .then(data => {
368
-
// console.log(data);
369
-
// setDeletingPhotos(false);
370
-
// })
371
-
})}>Delete All Photos.</div> <div>This deletes all photos stored in the cloud and disables syncing.</div>
372
-
</Show>
373
-
</div>
374
-
</Show>
320
+
<p>WIP</p>
375
321
</div>
376
322
</div>
377
323
···
386
332
<div class="slider-text" onMouseDown={() => lastClickedButton = 0}>Program Settings</div>
387
333
<div class="slider-dot"></div>
388
334
<div class="slider-dot"></div>
389
-
<div class="slider-text" onMouseDown={() => lastClickedButton = 1}>Account Settings</div>
335
+
<div class="slider-text" onMouseDown={() => lastClickedButton = 1}>Sync Settings</div>
390
336
<div class="slider-dot"></div>
391
337
<div class="slider-dot"></div>
392
338
<div class="slider-dot"></div>