clear tag panel selection if the community selected is left
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
This commit is contained in:
parent
2aa7a6087c
commit
fa0f704b56
2 changed files with 16 additions and 3 deletions
|
@ -18,6 +18,7 @@ import EventEmitter from 'events';
|
||||||
import { groupMemberFromApiObject, groupRoomFromApiObject } from '../groups';
|
import { groupMemberFromApiObject, groupRoomFromApiObject } from '../groups';
|
||||||
import FlairStore from './FlairStore';
|
import FlairStore from './FlairStore';
|
||||||
import {MatrixClientPeg} from '../MatrixClientPeg';
|
import {MatrixClientPeg} from '../MatrixClientPeg';
|
||||||
|
import dis from '../dispatcher';
|
||||||
|
|
||||||
function parseMembersResponse(response) {
|
function parseMembersResponse(response) {
|
||||||
return response.chunk.map((apiMember) => groupMemberFromApiObject(apiMember));
|
return response.chunk.map((apiMember) => groupMemberFromApiObject(apiMember));
|
||||||
|
@ -295,6 +296,11 @@ class GroupStore extends EventEmitter {
|
||||||
}
|
}
|
||||||
|
|
||||||
leaveGroup(groupId) {
|
leaveGroup(groupId) {
|
||||||
|
// ensure the tag panel filter is cleared if the group was selected
|
||||||
|
dis.dispatch({
|
||||||
|
action: "deselect_tags",
|
||||||
|
tag: groupId,
|
||||||
|
});
|
||||||
return MatrixClientPeg.get().leaveGroup(groupId)
|
return MatrixClientPeg.get().leaveGroup(groupId)
|
||||||
// The user should now not be able to access group settings
|
// The user should now not be able to access group settings
|
||||||
.then(this._fetchResource.bind(this, this.STATE_KEY.Summary, groupId))
|
.then(this._fetchResource.bind(this, this.STATE_KEY.Summary, groupId))
|
||||||
|
|
|
@ -168,9 +168,16 @@ class TagOrderStore extends Store {
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'deselect_tags':
|
case 'deselect_tags':
|
||||||
|
if (payload.tag) {
|
||||||
|
// if a tag is passed, only deselect that tag
|
||||||
|
this._setState({
|
||||||
|
selectedTags: this._state.selectedTags.filter(tag => tag !== payload.tag),
|
||||||
|
});
|
||||||
|
} else {
|
||||||
this._setState({
|
this._setState({
|
||||||
selectedTags: [],
|
selectedTags: [],
|
||||||
});
|
});
|
||||||
|
}
|
||||||
Analytics.trackEvent('FilterStore', 'deselect_tags');
|
Analytics.trackEvent('FilterStore', 'deselect_tags');
|
||||||
break;
|
break;
|
||||||
case 'on_client_not_viable':
|
case 'on_client_not_viable':
|
||||||
|
|
Loading…
Reference in a new issue