parent
ac6c5b0ce1
commit
b8ad7b57da
6 changed files with 119 additions and 5 deletions
@ -1,15 +1,36 @@ |
|||||||
import React from "react"; |
import React, {useState, useEffect} from "react"; |
||||||
|
|
||||||
|
import Toggle from "../shared/Toggle"; |
||||||
|
|
||||||
const General = () => { |
const General = () => { |
||||||
|
const [restoreWindow, setRestoreWindow] = useState(false); |
||||||
|
|
||||||
|
useEffect(() => { |
||||||
|
(async () => { |
||||||
|
setRestoreWindow(await window.appSettings.get("restoreWindow", false)); |
||||||
|
})(setRestoreWindow); |
||||||
|
}, []); |
||||||
|
|
||||||
|
const changeRestoreWindow = event => { |
||||||
|
const value = event.target.checked === true; |
||||||
|
setRestoreWindow(value); |
||||||
|
window.appSettings.set("restoreWindow", value); |
||||||
|
}; |
||||||
|
|
||||||
const reset = () => { |
const reset = () => { |
||||||
window.appSettings.reset(); |
window.appSettings.reset(); |
||||||
} |
} |
||||||
|
|
||||||
return ( |
return ( |
||||||
<section style={{textAlign : "center"}}> |
<> |
||||||
<button className="danger" onClick={reset}>reset all settings to default</button> |
<section className="grid mb"> |
||||||
</section> |
<label>Restore window size:</label> |
||||||
|
<Toggle checked={restoreWindow} onChange={changeRestoreWindow} /> |
||||||
|
</section> |
||||||
|
<section style={{textAlign : "center"}}> |
||||||
|
<button className="danger" onClick={reset}>reset all settings to default</button> |
||||||
|
</section> |
||||||
|
</> |
||||||
); |
); |
||||||
}; |
}; |
||||||
|
|
||||||
|
@ -0,0 +1,12 @@ |
|||||||
|
import React from "react"; |
||||||
|
|
||||||
|
const Toggle = ({...props}) => { |
||||||
|
return ( |
||||||
|
<label className="toggle"> |
||||||
|
<input type="checkbox" {...props} /> |
||||||
|
<span className="slider round"></span> |
||||||
|
</label> |
||||||
|
); |
||||||
|
}; |
||||||
|
|
||||||
|
export default Toggle; |
Loading…
Reference in new issue