Merge pull request #579 from glowing-bear/use-pointers

[WIP] Fix commands for buffers whose fullname contain whitespace
This commit is contained in:
Tor Hveem 2015-03-26 13:54:02 +01:00
commit a4487c6861
2 changed files with 17 additions and 1 deletions

View file

@ -246,7 +246,7 @@ weechat.factory('connection',
*/ */
var sendMessage = function(message) { var sendMessage = function(message) {
ngWebsockets.send(weeChat.Protocol.formatInput({ ngWebsockets.send(weeChat.Protocol.formatInput({
buffer: models.getActiveBuffer().fullName, buffer: models.getActiveBufferReference(),
data: message data: message
})); }));
}; };

View file

@ -451,6 +451,22 @@ models.service('models', ['$rootScope', '$filter', function($rootScope, $filter)
return activeBuffer; return activeBuffer;
}; };
/*
* Returns a reference to the currently active buffer that
* WeeChat understands without crashing, even if it's invalid
*
* @return active buffer pointer (WeeChat 1.0+) or fullname (older versions)
*/
this.getActiveBufferReference = function() {
if (this.version !== null && parseInt(this.version.charAt(0)) >= 1) {
// pointers are being validated, they're more reliable than
// fullName (e.g. if fullName contains spaces)
return "0x"+activeBuffer.id;
} else {
return activeBuffer.fullName;
}
};
/* /*
* Returns the previous current active buffer * Returns the previous current active buffer
* *