From 5e5e05c808fe6ddb0265dce29da684a7d3fb7499 Mon Sep 17 00:00:00 2001 From: SleeplessOne1917 Date: Fri, 23 Jun 2023 15:16:04 -0400 Subject: [PATCH] Fix issue when navigating awat from settings --- src/shared/components/community/create-community.tsx | 4 +++- src/shared/components/home/legal.tsx | 4 +++- src/shared/components/home/login.tsx | 4 +++- src/shared/components/home/setup.tsx | 4 +++- src/shared/components/home/signup.tsx | 4 +++- src/shared/components/person/password-change.tsx | 9 ++++++++- src/shared/components/person/settings.tsx | 5 +++-- src/shared/components/person/verify-email.tsx | 4 +++- 8 files changed, 29 insertions(+), 9 deletions(-) diff --git a/src/shared/components/community/create-community.tsx b/src/shared/components/community/create-community.tsx index 2ce5af5a..aad6630e 100644 --- a/src/shared/components/community/create-community.tsx +++ b/src/shared/components/community/create-community.tsx @@ -4,7 +4,7 @@ import { CreateCommunity as CreateCommunityI, GetSiteResponse, } from "lemmy-js-client"; -import { HttpService, I18NextService } from "../../services"; +import { FirstLoadService, HttpService, I18NextService } from "../../services"; import { HtmlTags } from "../common/html-tags"; import { CommunityForm } from "./community-form"; @@ -22,6 +22,8 @@ export class CreateCommunity extends Component { constructor(props: any, context: any) { super(props, context); this.handleCommunityCreate = this.handleCommunityCreate.bind(this); + + FirstLoadService.isFirstLoad; } get documentTitle(): string { diff --git a/src/shared/components/home/legal.tsx b/src/shared/components/home/legal.tsx index 85a413eb..750a91e9 100644 --- a/src/shared/components/home/legal.tsx +++ b/src/shared/components/home/legal.tsx @@ -2,7 +2,7 @@ import { setIsoData } from "@utils/app"; import { Component } from "inferno"; import { GetSiteResponse } from "lemmy-js-client"; import { mdToHtml } from "../../markdown"; -import { I18NextService } from "../../services"; +import { FirstLoadService, I18NextService } from "../../services"; import { HtmlTags } from "../common/html-tags"; interface LegalState { @@ -17,6 +17,8 @@ export class Legal extends Component { constructor(props: any, context: any) { super(props, context); + + FirstLoadService.isFirstLoad; } get documentTitle(): string { diff --git a/src/shared/components/home/login.tsx b/src/shared/components/home/login.tsx index 1853a82b..d5dd4d29 100644 --- a/src/shared/components/home/login.tsx +++ b/src/shared/components/home/login.tsx @@ -3,7 +3,7 @@ import { isBrowser } from "@utils/browser"; import { validEmail } from "@utils/helpers"; import { Component, linkEvent } from "inferno"; import { GetSiteResponse, LoginResponse } from "lemmy-js-client"; -import { I18NextService, UserService } from "../../services"; +import { FirstLoadService, I18NextService, UserService } from "../../services"; import { HttpService, RequestState } from "../../services/HttpService"; import { toast } from "../../toast"; import { HtmlTags } from "../common/html-tags"; @@ -32,6 +32,8 @@ export class Login extends Component { constructor(props: any, context: any) { super(props, context); + + FirstLoadService.isFirstLoad; } componentDidMount() { diff --git a/src/shared/components/home/setup.tsx b/src/shared/components/home/setup.tsx index bed12620..fb4c710f 100644 --- a/src/shared/components/home/setup.tsx +++ b/src/shared/components/home/setup.tsx @@ -7,7 +7,7 @@ import { LoginResponse, Register, } from "lemmy-js-client"; -import { I18NextService, UserService } from "../../services"; +import { FirstLoadService, I18NextService, UserService } from "../../services"; import { HttpService, RequestState } from "../../services/HttpService"; import { Spinner } from "../common/icon"; import { SiteForm } from "./site-form"; @@ -47,6 +47,8 @@ export class Setup extends Component { super(props, context); this.handleCreateSite = this.handleCreateSite.bind(this); + + FirstLoadService.isFirstLoad; } async componentDidMount() { diff --git a/src/shared/components/home/signup.tsx b/src/shared/components/home/signup.tsx index a2d960dc..3bb7ea0e 100644 --- a/src/shared/components/home/signup.tsx +++ b/src/shared/components/home/signup.tsx @@ -14,7 +14,7 @@ import { } from "lemmy-js-client"; import { joinLemmyUrl } from "../../config"; import { mdToHtml } from "../../markdown"; -import { I18NextService, UserService } from "../../services"; +import { FirstLoadService, I18NextService, UserService } from "../../services"; import { HttpService, RequestState } from "../../services/HttpService"; import { toast } from "../../toast"; import { HtmlTags } from "../common/html-tags"; @@ -84,6 +84,8 @@ export class Signup extends Component { super(props, context); this.handleAnswerChange = this.handleAnswerChange.bind(this); + + FirstLoadService.isFirstLoad; } async componentDidMount() { diff --git a/src/shared/components/person/password-change.tsx b/src/shared/components/person/password-change.tsx index dd85e05b..0403c553 100644 --- a/src/shared/components/person/password-change.tsx +++ b/src/shared/components/person/password-change.tsx @@ -2,7 +2,12 @@ import { myAuth, setIsoData } from "@utils/app"; import { capitalizeFirstLetter } from "@utils/helpers"; import { Component, linkEvent } from "inferno"; import { GetSiteResponse, LoginResponse } from "lemmy-js-client"; -import { HttpService, I18NextService, UserService } from "../../services"; +import { + FirstLoadService, + HttpService, + I18NextService, + UserService, +} from "../../services"; import { RequestState } from "../../services/HttpService"; import { HtmlTags } from "../common/html-tags"; import { Spinner } from "../common/icon"; @@ -30,6 +35,8 @@ export class PasswordChange extends Component { constructor(props: any, context: any) { super(props, context); + + FirstLoadService.isFirstLoad; } get documentTitle(): string { diff --git a/src/shared/components/person/settings.tsx b/src/shared/components/person/settings.tsx index dc542e72..1ef95f5a 100644 --- a/src/shared/components/person/settings.tsx +++ b/src/shared/components/person/settings.tsx @@ -29,7 +29,7 @@ import { SortType, } from "lemmy-js-client"; import { elementUrl, emDash, relTags } from "../../config"; -import { UserService } from "../../services"; +import { FirstLoadService, UserService } from "../../services"; import { HttpService, RequestState } from "../../services/HttpService"; import { I18NextService, languages } from "../../services/I18NextService"; import { setupTippy } from "../../tippy"; @@ -170,6 +170,8 @@ export class Settings extends Component { this.handleBlockPerson = this.handleBlockPerson.bind(this); this.handleBlockCommunity = this.handleBlockCommunity.bind(this); + FirstLoadService.isFirstLoad; + const mui = UserService.Instance.myUserInfo; if (mui) { const { @@ -1177,7 +1179,6 @@ export class Settings extends Component { }); if (saveRes.state === "success") { UserService.Instance.login(saveRes.data); - location.reload(); toast(I18NextService.i18n.t("saved")); window.scrollTo(0, 0); } diff --git a/src/shared/components/person/verify-email.tsx b/src/shared/components/person/verify-email.tsx index 1800c3f2..a13df2d9 100644 --- a/src/shared/components/person/verify-email.tsx +++ b/src/shared/components/person/verify-email.tsx @@ -1,7 +1,7 @@ import { setIsoData } from "@utils/app"; import { Component } from "inferno"; import { GetSiteResponse, VerifyEmailResponse } from "lemmy-js-client"; -import { I18NextService } from "../../services"; +import { FirstLoadService, I18NextService } from "../../services"; import { HttpService, RequestState } from "../../services/HttpService"; import { toast } from "../../toast"; import { HtmlTags } from "../common/html-tags"; @@ -22,6 +22,8 @@ export class VerifyEmail extends Component { constructor(props: any, context: any) { super(props, context); + + FirstLoadService.isFirstLoad; } async verify() {