summaryrefslogtreecommitdiffstats
path: root/ui/src/components/post-form.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'ui/src/components/post-form.tsx')
-rw-r--r--ui/src/components/post-form.tsx14
1 files changed, 14 insertions, 0 deletions
diff --git a/ui/src/components/post-form.tsx b/ui/src/components/post-form.tsx
index 8c693ac0..a88d38c7 100644
--- a/ui/src/components/post-form.tsx
+++ b/ui/src/components/post-form.tsx
@@ -151,8 +151,22 @@ export class PostForm extends Component<PostFormProps, PostFormState> {
setupTippy();
}
+ componentDidUpdate() {
+ if (
+ !this.state.loading &&
+ (this.state.postForm.name ||
+ this.state.postForm.url ||
+ this.state.postForm.body)
+ ) {
+ window.onbeforeunload = () => true;
+ } else {
+ window.onbeforeunload = undefined;
+ }
+ }
+
componentWillUnmount() {
this.subscription.unsubscribe();
+ window.onbeforeunload = null;
}
render() {