Merge pull request #4739 from matrix-org/travis/room-list/destroyable

Use IDestroyable instead of IDisposable
pull/21833/head
Travis Ralston 2020-06-09 08:12:00 -06:00 committed by GitHub
commit 7549d7d98a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 7 additions and 6 deletions

View File

@ -31,6 +31,7 @@ import { MatrixEvent } from "matrix-js-sdk/src/models/event";
import ActiveRoomObserver from "../../../ActiveRoomObserver";
import { EventEmitter } from "events";
import { arrayDiff } from "../../../utils/arrays";
import { IDestroyable } from "../../../utils/IDestroyable";
export const NOTIFICATION_STATE_UPDATE = "update";
@ -106,7 +107,7 @@ export default class NotificationBadge extends React.PureComponent<IProps, IStat
}
}
export class RoomNotificationState extends EventEmitter {
export class RoomNotificationState extends EventEmitter implements IDestroyable {
private _symbol: string;
private _count: number;
private _color: NotificationColor;

View File

@ -20,13 +20,13 @@ import { Group } from "matrix-js-sdk/src/models/group";
import { EventEmitter } from "events";
import GroupStore from "../../GroupStore";
import { arrayHasDiff } from "../../../utils/arrays";
import { IDisposable } from "../../../utils/IDisposable";
import { IDestroyable } from "../../../utils/IDestroyable";
/**
* A filter condition for the room list which reveals rooms which
* are a member of a given community.
*/
export class CommunityFilterCondition extends EventEmitter implements IFilterCondition, IDisposable {
export class CommunityFilterCondition extends EventEmitter implements IFilterCondition, IDestroyable {
private roomIds: string[] = [];
constructor(private community: Group) {
@ -57,7 +57,7 @@ export class CommunityFilterCondition extends EventEmitter implements IFilterCon
}
};
public dispose(): void {
public destroy(): void {
GroupStore.off("update", this.onStoreUpdate);
}
}

View File

@ -14,6 +14,6 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
export interface IDisposable {
dispose(): void;
export interface IDestroyable {
destroy(): void;
}