diff --git a/src/MatrixClientPeg.js b/src/MatrixClientPeg.js
index 882a913452..f283eb84a5 100644
--- a/src/MatrixClientPeg.js
+++ b/src/MatrixClientPeg.js
@@ -135,14 +135,7 @@ class MatrixClientPeg {
const opts = utils.deepCopy(this.opts);
// the react sdk doesn't work without this, so don't allow
opts.pendingEventOrdering = "detached";
-
- const LAZY_LOADING_FEATURE = "feature_lazyloading";
- if (SettingsStore.isFeatureEnabled(LAZY_LOADING_FEATURE)) {
- const userId = this.matrixClient.credentials.userId;
- if (phasedRollOutExpiredForUser(userId, LAZY_LOADING_FEATURE, Date.now())) {
- opts.lazyLoadMembers = true;
- }
- }
+ opts.lazyLoadMembers = true;
// Connect the matrix client to the dispatcher
MatrixActionCreators.start(this.matrixClient);
diff --git a/src/components/views/settings/tabs/LabsSettingsTab.js b/src/components/views/settings/tabs/LabsSettingsTab.js
index fc64c1bd04..e06f87460b 100644
--- a/src/components/views/settings/tabs/LabsSettingsTab.js
+++ b/src/components/views/settings/tabs/LabsSettingsTab.js
@@ -18,9 +18,7 @@ import React from 'react';
import {_t} from "../../../../languageHandler";
import PropTypes from "prop-types";
import SettingsStore, {SettingLevel} from "../../../../settings/SettingsStore";
-import MatrixClientPeg from "../../../../MatrixClientPeg";
import LabelledToggleSwitch from "../../elements/LabelledToggleSwitch";
-const Modal = require("../../../../Modal");
const sdk = require("../../../../index");
export class LabsSettingToggle extends React.Component {
@@ -28,38 +26,7 @@ export class LabsSettingToggle extends React.Component {
featureId: PropTypes.string.isRequired,
};
- async _onLazyLoadChanging(enabling) {
- // don't prevent turning LL off when not supported
- if (enabling) {
- const supported = await MatrixClientPeg.get().doesServerSupportLazyLoading();
- if (!supported) {
- await new Promise((resolve) => {
- const QuestionDialog = sdk.getComponent("dialogs.QuestionDialog");
- Modal.createDialog(QuestionDialog, {
- title: _t("Lazy loading members not supported"),
- description:
-
- { _t("Lazy loading is not supported by your " +
- "current homeserver.") }
-
,
- button: _t("OK"),
- onFinished: resolve,
- });
- });
- return false;
- }
- }
- return true;
- }
-
_onChange = async (checked) => {
- if (this.props.featureId === "feature_lazyloading") {
- const confirmed = await this._onLazyLoadChanging(checked);
- if (!confirmed) {
- return;
- }
- }
-
await SettingsStore.setFeatureEnabled(this.props.featureId, checked);
this.forceUpdate();
};
diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json
index c181d40148..6fd9b4d190 100644
--- a/src/i18n/strings/en_EN.json
+++ b/src/i18n/strings/en_EN.json
@@ -264,7 +264,6 @@
"Failed to join room": "Failed to join room",
"Message Pinning": "Message Pinning",
"Custom user status messages": "Custom user status messages",
- "Increase performance by only loading room members on first view": "Increase performance by only loading room members on first view",
"Backup of encryption keys to server": "Backup of encryption keys to server",
"Render simple counters in room header": "Render simple counters in room header",
"Two-way device verification using short text": "Two-way device verification using short text",
@@ -477,8 +476,6 @@
"Identity Server is": "Identity Server is",
"Access Token:": "Access Token:",
"click to reveal": "click to reveal",
- "Lazy loading members not supported": "Lazy loading members not supported",
- "Lazy loading is not supported by your current homeserver.": "Lazy loading is not supported by your current homeserver.",
"Labs": "Labs",
"Notifications": "Notifications",
"Start automatically after system login": "Start automatically after system login",
diff --git a/src/settings/Settings.js b/src/settings/Settings.js
index c5de7298de..833bdc7f8c 100644
--- a/src/settings/Settings.js
+++ b/src/settings/Settings.js
@@ -21,7 +21,6 @@ import {
NotificationBodyEnabledController,
NotificationsEnabledController,
} from "./controllers/NotificationControllers";
-import LazyLoadingController from "./controllers/LazyLoadingController";
import CustomStatusController from "./controllers/CustomStatusController";
// These are just a bunch of helper arrays to avoid copy/pasting a bunch of times
@@ -100,13 +99,6 @@ export const SETTINGS = {
default: false,
controller: new CustomStatusController(),
},
- "feature_lazyloading": {
- isFeature: true,
- displayName: _td("Increase performance by only loading room members on first view"),
- supportedLevels: LEVELS_FEATURE,
- controller: new LazyLoadingController(),
- default: true,
- },
"feature_keybackup": {
isFeature: true,
displayName: _td("Backup of encryption keys to server"),
diff --git a/src/settings/controllers/LazyLoadingController.js b/src/settings/controllers/LazyLoadingController.js
deleted file mode 100644
index 90f095c9ca..0000000000
--- a/src/settings/controllers/LazyLoadingController.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
-Copyright 2018 New Vector
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*/
-
-import SettingController from "./SettingController";
-import MatrixClientPeg from "../../MatrixClientPeg";
-import PlatformPeg from "../../PlatformPeg";
-
-export default class LazyLoadingController extends SettingController {
- async onChange(level, roomId, newValue) {
- if (!PlatformPeg.get()) return;
-
- MatrixClientPeg.get().stopClient();
- await MatrixClientPeg.get().store.deleteAllData();
- PlatformPeg.get().reload();
- }
-}