Commit Graph

175 Commits

Author SHA1 Message Date
Travis Ralston e7ed4c13f5 Appease the linter
I should really just get something that does this for me prior to opening a PR
2019-01-29 18:28:44 -07:00
Travis Ralston 2fe7f6fe1c Implement the Advanced tab of new room settings 2019-01-29 18:23:01 -07:00
Travis Ralston ad276c1fda Merge branch 'experimental' into travis/rsettings/tab/general 2019-01-29 09:11:21 -07:00
Travis Ralston d34390d230 Merge pull request #2512 from matrix-org/travis/usettings/tab/flair
Implement flair tab in user settings
2019-01-28 20:37:22 -07:00
Travis Ralston 9513837e97 Appease the linter 2019-01-28 13:59:09 -07:00
Travis Ralston db34666583 Implement leave room button and URL preview settings 2019-01-28 13:54:56 -07:00
Travis Ralston 87e6652b2a Flair settings for rooms 2019-01-28 13:54:56 -07:00
Travis Ralston 3021464e89 Move RoomProfileSettings to the right place 2019-01-28 13:54:56 -07:00
Travis Ralston ea1d6a0146 Minor styling and avatar bug fixing 2019-01-28 13:54:56 -07:00
Travis Ralston 9a524c49b1 Early support for alias modification in room settings 2019-01-28 13:54:56 -07:00
Travis Ralston 243feb9b13 Early tab structure and profile changes (name/avatar/topic) 2019-01-28 13:54:56 -07:00
Travis Ralston b7d0dd4408 Rename GeneralSettingsTab to GeneralUserSettingsTab 2019-01-28 13:54:56 -07:00
Travis Ralston a1e3887a74 Merge branch 'experimental' into travis/settings/positive 2019-01-28 08:25:40 -07:00
Travis Ralston e2ba1cc0d6 Remove unused import 2019-01-25 15:46:38 -07:00
Travis Ralston 57e45e7e7c Proof of concept for a flair tab in user settings 2019-01-25 15:35:32 -07:00
Travis Ralston fb36f7abef Fix imports and quotes 2019-01-25 09:18:00 -07:00
Travis Ralston f7f23e4dea Merge branch 'experimental' into travis/usettings/tab/security 2019-01-25 09:12:07 -07:00
Travis Ralston cb6f415a05 Be more positive with setting labels
Fixes https://github.com/vector-im/riot-web/issues/6435

This is done through an on-the-fly inverter for the settings. All the settings changed are boolean values, so this should be more than safe to just let happen throughout the SettingsStore. Typically a change like this would be done in the individual handlers (similar to how setting names are remapped to different properties or even different storage locations on the fly), however doing that for this many settings would be a huge nightmare and involve changing *all* the layers. By putting a global "invert this" flag on the setting, we can get away with doing the inversion as the last possible step during a read (or write).

To speed up calculations of the default values, we cache all the inverted values into a lookup table similar to how we represent the defaults already. Without this, the DefaultHandler would need to iterate the setting list and invert the values, slowing things down over time. We invert the value up front so we can keep the generic inversion logic without checking the level ahead of time. It is fully intended that a default value represents the new setting name, not the legacy name.

This commit also includes a debugger for settings because it was hard to visualize what the SettingsStore was doing during development. Some added information is included as it may be helpful for when someone has a problem with their settings and we need to debug it. Typically the debugger would be run in conjunction with `mxSendRageshake`: `mxSettingsStore.debugSetting('showJoinLeaves') && mxSendRageshake('Debugging showJoinLeaves setting')`.
2019-01-24 20:57:40 -07:00
Travis Ralston 1f10cda5e4 Implement the "Help & About" tab of new user settings 2019-01-24 17:10:35 -07:00
Travis Ralston b0a8cbf75f Implement the "Security & Privacy" tab of new user settings 2019-01-24 15:47:04 -07:00
Travis Ralston c5deeeaceb Merge pull request #2498 from matrix-org/travis/usettings/tab/voice
Implement the "Voice & Video" tab of new user settings
2019-01-24 14:59:32 -07:00
Travis Ralston 87cea5ef09 Fix sizings and margins 2019-01-24 14:41:00 -07:00
Travis Ralston 3e09cd1d2e Appease the linter 2019-01-24 13:43:16 -07:00
Travis Ralston a4e0796bfe Swap out the media permissions text for a paragraph element
The sizing ratio looks way off when the text is just subtext.
2019-01-24 13:37:20 -07:00
Travis Ralston 27ee6625ee Implement the "Voice & Video" tab of new user settings 2019-01-24 13:33:22 -07:00
Travis Ralston 67ba728457 Add widget screenshots to the Labs section
This is a normal setting and not a real labs setting, however the design calls for it to be here.
2019-01-24 12:38:48 -07:00
Travis Ralston 13e36bcead Merge pull request #2495 from matrix-org/travis/usettings/tab/preferences
Implement the "Preferences" tab on new user settings
2019-01-24 12:05:25 -07:00
David Baker 8c412b85ee Merge pull request #2496 from matrix-org/dbkr/target_blank
Add target="_blank" to links that don't have it
2019-01-24 18:15:18 +00:00
Travis Ralston 5479a4dac5 Implement the "Preferences" tab on new user settings 2019-01-24 10:32:29 -07:00
Travis Ralston a9243cf851 Appease the linter 2019-01-24 10:12:25 -07:00
Travis Ralston 06a9ab3a70 Styling to match the other tabs a bit closer
Introduces a new component to reduce code duplication
2019-01-24 10:12:25 -07:00
Travis Ralston d267f232bc Embed existing notifications settings into the tab 2019-01-24 10:12:25 -07:00
David Baker 4bcb9f12d4 Add target="_blank" to links that don't have it
This is now more of a problem in the Electron app because of
https://github.com/electron/electron/issues/8841 but is still
annoying in the webapp if you're taken away from your chat client.

Exception is the SSO link, as commented (issue filed at
https://github.com/vector-im/riot-web/issues/8247).

Fixes https://github.com/vector-im/riot-web/issues/8226
2019-01-24 16:19:18 +00:00
Travis Ralston 1251f607ef Add missing import 2019-01-24 08:52:45 -07:00
Travis Ralston d2684638b4 Actually include the lazy loading function 2019-01-24 08:52:45 -07:00
Travis Ralston f1c1caac62 Implement labs tab in new user settings 2019-01-24 08:52:45 -07:00
Travis Ralston 6f947ab6d9 Appease the linter 2019-01-23 16:09:58 -07:00
Travis Ralston 7fb0cd6c42 Bring over the deactivate account button 2019-01-23 15:56:58 -07:00
Travis Ralston 3f897468a6 Add a ToggleSwitch and use it for SettingsFlag
Also bring in the compact timeline option.

Without minor CSS changes, the old user settings are completely unusable with this change. As such, minimal effort has been put in to have it be useful. Similarly, the changes drop the use of radio groups and the old theme selector was the only one that used it. See the comments for more details on how/why this was mitigated the way it was.
2019-01-23 15:50:41 -07:00
Travis Ralston 97666d39bc Bring in theme and language options 2019-01-23 14:43:45 -07:00
Travis Ralston d55d145223 Bring over phone number management 2019-01-23 14:16:18 -07:00
Travis Ralston 4a819d319e Early de-linting 2019-01-23 09:41:07 -07:00
Travis Ralston aa7afe819f Bring over email address management 2019-01-23 09:28:53 -07:00
Travis Ralston fa1ce61a06 Move profile settings to a dedicated component
The tab component is getting a bit hard to navigate
2019-01-23 09:28:53 -07:00
Travis Ralston 19de6694ca Bring in the change password section
This also changes the layout slightly in the user settings, but nothing detrimental.
2019-01-23 09:28:53 -07:00
Travis Ralston 677b3ca7b5 Bring flair into the new settings
Makes the flair options in old settings look broken (cosmetic issues), but it's fine because we're ripping that out in due time.
2019-01-23 09:27:04 -07:00
Travis Ralston f643d7a143 Finish the box for displayname/avatar changes 2019-01-23 09:27:04 -07:00
Travis Ralston de81c8d768 Template out remaining sections 2019-01-23 09:27:04 -07:00
Travis Ralston feed17d9ac Minor code style fix 2019-01-21 20:55:40 -07:00
Travis Ralston a488304410 Appease the linter
Appease the linter round 2

Appease the linter round 3

Appease the linter round 4

Appease the linter round 5
2019-01-21 18:41:49 -07:00