fix(client): ctrl-enter can be used to send chat

fixes #8122
This commit is contained in:
Blade Barringer
2016-10-12 20:17:58 -05:00
parent d04a4fb1ed
commit a2cfeafc02
4 changed files with 14 additions and 2 deletions

View File

@@ -60,6 +60,12 @@ habitrpg.controller('ChatCtrl', ['$scope', 'Groups', 'Chat', 'User', '$http', 'A
});
}
$scope.keyDownListener = function (e) {
if (e.key === 'Enter' && (e.metaKey || e.ctrlKey)) {
$scope.postChat($scope.group, $scope.message.content);
}
};
$scope.deleteChatMessage = function(group, message){
if(message.uuid === User.user.id || (User.user.backer && User.user.contributor.admin)){
var previousMsg = (group.chat && group.chat[0]) ? group.chat[0].id : false;

View File

@@ -20,6 +20,12 @@ habitrpg
}
});
$scope.keyDownListener = function (e) {
if (e.key === 'Enter' && (e.metaKey || e.ctrlKey)) {
$scope.sendPrivateMessage($scope.profile._id, $scope._message);
}
};
$scope.sendPrivateMessage = function(uuid, message){
if (!message) return;

View File

@@ -8,7 +8,7 @@ div.chat-form.guidelines-not-accepted(ng-if='!user.flags.communityGuidelinesAcce
form.chat-form(ng-if='user.flags.communityGuidelinesAccepted' ng-submit='postChat(group,message.content)')
div(ng-controller='AutocompleteCtrl')
textarea.form-control(rows=4, ui-keydown='{"meta-enter":"postChat(group,message.content)"}', ng-model='message.content', updateinterval='250', flag='@', at-user, auto-complete placeholder="{{group._id == TAVERN_ID ? env.t('tavernCommunityGuidelinesPlaceholder') : ''}}", ng-disabled='_sending == true')
textarea.form-control(rows=4, ng-keydown='keyDownListener($event)', ng-model='message.content', updateinterval='250', flag='@', at-user, auto-complete placeholder="{{group._id == TAVERN_ID ? env.t('tavernCommunityGuidelinesPlaceholder') : ''}}", ng-disabled='_sending == true')
span.user-list
ul.list-at-user(ng-show="query")
li(ng-repeat='msg in response | filter:filterUser | limitTo: 5', ng-click='performCompletion(msg)')

View File

@@ -47,7 +47,7 @@ script(type='text/ng-template', id='modals/private-message.html')
.modal-header
h4=env.t('pmHeading', {name: "{{profile.profile.name}}"})
.modal-body
textarea.form-control(type='text',rows='5',ui-keydown='{"meta-enter":"sendPrivateMessage(profile._id, _message)"}',placeholder=env.t('needsTextPlaceholder'),ng-model='_message', focus-element='true')
textarea.form-control(type='text',rows='5',ng-keydown='keyDownListener($event)',placeholder=env.t('needsTextPlaceholder'),ng-model='_message', focus-element='true')
include ../formatting-help
.modal-footer
//- Due to a quirk in Bootstrap UI, we need to wrap this so the tooltip can