[FIX] DM header blink (#2011)
This commit is contained in:
parent
46660572c3
commit
2e65a795df
|
@ -61,8 +61,15 @@ export default async function canOpenRoom({ rid, path }) {
|
|||
|
||||
if (rid) {
|
||||
try {
|
||||
await subsCollection.find(rid);
|
||||
return { rid };
|
||||
const room = await subsCollection.find(rid);
|
||||
return {
|
||||
rid,
|
||||
t: room.t,
|
||||
name: room.name,
|
||||
fname: room.fname,
|
||||
prid: room.prid,
|
||||
uids: room.uids
|
||||
};
|
||||
} catch (e) {
|
||||
// Do nothing
|
||||
}
|
||||
|
|
|
@ -812,7 +812,9 @@ const RocketChat = {
|
|||
return this.sdk.get('rooms.info', { roomId });
|
||||
},
|
||||
|
||||
getUidDirectMessage(room, userId) {
|
||||
getUidDirectMessage(room) {
|
||||
const { id: userId } = reduxStore.getState().login.user;
|
||||
|
||||
// legacy method
|
||||
if (!room.uids && room.rid && room.t === 'd') {
|
||||
return room.rid.replace(userId, '').trim();
|
||||
|
|
|
@ -34,7 +34,12 @@ const navigate = function* navigate({ params }) {
|
|||
const [type, name] = params.path.split('/');
|
||||
if (room) {
|
||||
yield Navigation.navigate('RoomsListView');
|
||||
Navigation.navigate('RoomView', { name, t: roomTypes[type], ...room });
|
||||
Navigation.navigate('RoomView', {
|
||||
name,
|
||||
t: roomTypes[type],
|
||||
roomUserId: RocketChat.getUidDirectMessage(room),
|
||||
...room
|
||||
});
|
||||
}
|
||||
} else {
|
||||
yield handleInviteLink({ params });
|
||||
|
|
|
@ -384,11 +384,10 @@ class RoomActionsView extends React.Component {
|
|||
|
||||
updateRoomMember = async() => {
|
||||
const { room } = this.state;
|
||||
const { user } = this.props;
|
||||
|
||||
try {
|
||||
if (!RocketChat.isGroupChat(room)) {
|
||||
const roomUserId = RocketChat.getUidDirectMessage(room, user.id);
|
||||
const roomUserId = RocketChat.getUidDirectMessage(room);
|
||||
const result = await RocketChat.getUserInfo(roomUserId);
|
||||
if (result.success) {
|
||||
this.setState({ member: result.user });
|
||||
|
|
|
@ -390,10 +390,10 @@ class RoomView extends React.Component {
|
|||
const { t } = room;
|
||||
|
||||
if (t === 'd' && !RocketChat.isGroupChat(room)) {
|
||||
const { user, navigation } = this.props;
|
||||
const { navigation } = this.props;
|
||||
|
||||
try {
|
||||
const roomUserId = RocketChat.getUidDirectMessage(room, user.id);
|
||||
const roomUserId = RocketChat.getUidDirectMessage(room);
|
||||
|
||||
navigation.setParams({ roomUserId });
|
||||
|
||||
|
|
|
@ -531,10 +531,7 @@ class RoomsListView extends React.Component {
|
|||
|
||||
getUserPresence = uid => RocketChat.getUserPresence(uid)
|
||||
|
||||
getUidDirectMessage = (room) => {
|
||||
const { user: { id } } = this.props;
|
||||
return RocketChat.getUidDirectMessage(room, id);
|
||||
}
|
||||
getUidDirectMessage = room => RocketChat.getUidDirectMessage(room);
|
||||
|
||||
goRoom = (item) => {
|
||||
const { navigation } = this.props;
|
||||
|
|
Loading…
Reference in New Issue