Well, I made my own fix, and it seems to be working!
In:
/arrowchat/public/popout/js/popout_core.dev.js you will find the uncompressed version of the, obviously, core popout JavaScript. The problem is that it's sending a typing notification to a user BEFORE the window from the sender has been created. This throws an "undefined" error when the code attempts to get the scrollHeight of a non-existent container, which in turn crashes the chat. Here's wher ethe bug is...
Line 2232:
function receiveTyping(id) {
var container = a("#arrowchat_popout_text_" + id)[0].scrollHeight - a("#arrowchat_popout_text_" + id).scrollTop() - 10;
var container2 = a("#arrowchat_popout_text_" + id).outerHeight();
if (a("#arrowchat_popout_text_" + id).length) {The issue is that the two container vars are being declared before checking to see if the message window exists. The fix is simple, move the if statement BEFORE that declaration:
function receiveTyping(id) {
if (a("#arrowchat_popout_text_" + id).length) { var container = a("#arrowchat_popout_text_" + id)[0].scrollHeight - a("#arrowchat_popout_text_" + id).scrollTop() - 10;
var container2 = a("#arrowchat_popout_text_" + id).outerHeight();
Save a the change in a new file. Rename
/arrowchat/public/popout/js/popout_core.js to
/arrowchat/public/popout/js/popout_core.old.js. Rename your saved copy of the .dev version to
/arrowchat/public/popout/js/popout_core.js, reload, and test. If it works for you, as it did for me, then run a JavaScript packer (
http://dean.edwards.name/packer/ ) to compress your changed code. It won't be nearly as compressed as the original, but better than nothing. This should tide you over until the team releases a real fix.