If read receipts avatar isn't on screen, animate it from the top of the screen.
This commit is contained in:
parent
09b0d221df
commit
f7fe871fee
1 changed files with 8 additions and 4 deletions
|
@ -131,11 +131,15 @@ module.exports = React.createClass({
|
|||
var oldAvatarDomNode = document.getElementById('mx_readAvatar'+member.userId);
|
||||
var startStyles = [];
|
||||
var enterTransitionOpts = [];
|
||||
if (oldAvatarDomNode && this.readAvatarRect) {
|
||||
var oldRect = oldAvatarDomNode.getBoundingClientRect();
|
||||
var topOffset = oldRect.top - this.readAvatarRect.top;
|
||||
var oldNodeTop = -15; // For avatars that weren't on screen, act as if they were just off the top
|
||||
if (oldAvatarDomNode) {
|
||||
oldNodeTop = oldAvatarDomNode.getBoundingClientRect().top;
|
||||
}
|
||||
|
||||
if (oldAvatarDomNode.style.left !== '0px') {
|
||||
if (this.readAvatarRect) {
|
||||
var topOffset = oldNodeTop - this.readAvatarRect.top;
|
||||
|
||||
if (oldAvatarDomNode && oldAvatarDomNode.style.left !== '0px') {
|
||||
var leftOffset = oldAvatarDomNode.style.left;
|
||||
// start at the old height and in the old h pos
|
||||
startStyles.push({ top: topOffset, left: leftOffset });
|
||||
|
|
Loading…
Reference in a new issue