From b35fb4fed2980608d5dac9b520fc9773377df3fa Mon Sep 17 00:00:00 2001 From: Kerry Date: Mon, 29 May 2023 13:36:09 +1200 Subject: [PATCH] Use semantic headings in user settings - profile (#10973) * account password section * account email and phone numbers * update cypress selectors * use settingsection for General section * use semantic headings for profile settings * fix show advanced spacing * udpate snapshot --- .../general-user-settings-tab.spec.ts | 2 +- res/css/views/settings/_ProfileSettings.pcss | 5 ++--- .../views/settings/ProfileSettings.tsx | 3 ++- .../tabs/user/AppearanceUserSettingsTab.tsx | 2 +- .../tabs/user/GeneralUserSettingsTab.tsx | 21 ++++++------------- .../AppearanceUserSettingsTab-test.tsx.snap | 2 +- 6 files changed, 13 insertions(+), 22 deletions(-) diff --git a/cypress/e2e/settings/general-user-settings-tab.spec.ts b/cypress/e2e/settings/general-user-settings-tab.spec.ts index 2c12f3cb75..2879d6d930 100644 --- a/cypress/e2e/settings/general-user-settings-tab.spec.ts +++ b/cypress/e2e/settings/general-user-settings-tab.spec.ts @@ -53,7 +53,7 @@ describe("General user settings tab", () => { cy.findByTestId("mx_GeneralUserSettingsTab").within(() => { // Assert that the top heading is rendered - cy.findByTestId("general").should("have.text", "General").should("be.visible"); + cy.findByText("General").should("be.visible"); cy.get(".mx_ProfileSettings_profile") .scrollIntoView() diff --git a/res/css/views/settings/_ProfileSettings.pcss b/res/css/views/settings/_ProfileSettings.pcss index 4dc8168945..0b4c68120c 100644 --- a/res/css/views/settings/_ProfileSettings.pcss +++ b/res/css/views/settings/_ProfileSettings.pcss @@ -15,7 +15,6 @@ limitations under the License. */ .mx_ProfileSettings { - margin-inline-end: var(--SettingsTab_fullWidthField-margin-inline-end); border-bottom: 1px solid $quinary-content; .mx_ProfileSettings_avatarUpload { @@ -29,8 +28,8 @@ limitations under the License. flex-grow: 1; margin-inline-end: 54px; - .mx_Field:first-child { - margin-top: 0; + .mx_Field { + margin-top: $spacing-8; } .mx_ProfileSettings_profile_controls_topic { diff --git a/src/components/views/settings/ProfileSettings.tsx b/src/components/views/settings/ProfileSettings.tsx index 8f962ba38e..529bb86a78 100644 --- a/src/components/views/settings/ProfileSettings.tsx +++ b/src/components/views/settings/ProfileSettings.tsx @@ -29,6 +29,7 @@ import AvatarSetting from "./AvatarSetting"; import UserIdentifierCustomisations from "../../../customisations/UserIdentifier"; import { chromeFileInputFix } from "../../../utils/BrowserWorkarounds"; import PosthogTrackers from "../../../PosthogTrackers"; +import { SettingsSubsectionHeading } from "./shared/SettingsSubsectionHeading"; interface IState { originalDisplayName: string; @@ -183,7 +184,7 @@ export default class ProfileSettings extends React.Component<{}, IState> { />
- {_t("Profile")} + }> + {toggle} {advanced} diff --git a/src/components/views/settings/tabs/user/GeneralUserSettingsTab.tsx b/src/components/views/settings/tabs/user/GeneralUserSettingsTab.tsx index 193b1482eb..3e17c8d6b8 100644 --- a/src/components/views/settings/tabs/user/GeneralUserSettingsTab.tsx +++ b/src/components/views/settings/tabs/user/GeneralUserSettingsTab.tsx @@ -320,14 +320,6 @@ export default class GeneralUserSettingsTab extends React.Component - -
- ); - } - private renderAccountSection(): JSX.Element { let threepidSection: ReactNode = null; @@ -558,13 +550,12 @@ export default class GeneralUserSettingsTab extends React.Component -
- {_t("General")} -
- {this.renderProfileSection()} - {this.renderAccountSection()} - {this.renderLanguageSection()} - {supportsMultiLanguageSpellCheck ? this.renderSpellCheckSection() : null} + + + {this.renderAccountSection()} + {this.renderLanguageSection()} + {supportsMultiLanguageSpellCheck ? this.renderSpellCheckSection() : null} + {discoverySection} {this.renderIntegrationManagerSection()} {accountManagementSection} diff --git a/test/components/views/settings/tabs/user/__snapshots__/AppearanceUserSettingsTab-test.tsx.snap b/test/components/views/settings/tabs/user/__snapshots__/AppearanceUserSettingsTab-test.tsx.snap index 8b5ced51ab..85139cf109 100644 --- a/test/components/views/settings/tabs/user/__snapshots__/AppearanceUserSettingsTab-test.tsx.snap +++ b/test/components/views/settings/tabs/user/__snapshots__/AppearanceUserSettingsTab-test.tsx.snap @@ -345,7 +345,7 @@ exports[`AppearanceUserSettingsTab should render 1`] = ` class="mx_SettingsSubsection" >