From 7a003f8227e463f0c4dce72bb8b42c8fd5c35c82 Mon Sep 17 00:00:00 2001 From: Felix Eckhofer Date: Mon, 24 Feb 2014 10:47:17 +0100 Subject: [PATCH] Focus input bar when not on mobile This improves the UX on desktop while avoiding the virtual keyboard popping up on touch devices --- js/glowingbear.js | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/js/glowingbear.js b/js/glowingbear.js index 41da5a5..0babf57 100644 --- a/js/glowingbear.js +++ b/js/glowingbear.js @@ -486,7 +486,7 @@ weechat.controller('WeechatCtrl', ['$rootScope', '$scope', '$store', '$timeout', }); } - var mobile_cutoff = 968; + $scope.mobile_cutoff = 968; $rootScope.countWatchers = function () { var root = $(document.getElementsByTagName('body')); @@ -663,7 +663,7 @@ weechat.controller('WeechatCtrl', ['$rootScope', '$scope', '$store', '$timeout', // If we are on mobile chhange some defaults // We use 968 px as the cutoff, which should match the value in glowingbear.css - if (document.body.clientWidth < mobile_cutoff) { + if (document.body.clientWidth < $scope.mobile_cutoff) { $scope.nonicklist = true; $scope.noembed = true; $scope.notimestamp = true; @@ -671,13 +671,13 @@ weechat.controller('WeechatCtrl', ['$rootScope', '$scope', '$store', '$timeout', // Open and close panels while on mobile devices through swiping $scope.swipeSidebar = function() { - if (document.body.clientWidth < mobile_cutoff) { + if (document.body.clientWidth < $scope.mobile_cutoff) { $scope.showSidebar = !$scope.showSidebar; } }; $scope.openNick = function() { - if (document.body.clientWidth < mobile_cutoff) { + if (document.body.clientWidth < $scope.mobile_cutoff) { if($scope.nonicklist) { $scope.nonicklist = false; } @@ -685,7 +685,7 @@ weechat.controller('WeechatCtrl', ['$rootScope', '$scope', '$store', '$timeout', }; $scope.closeNick = function() { - if (document.body.clientWidth < mobile_cutoff) { + if (document.body.clientWidth < $scope.mobile_cutoff) { if(!$scope.nonicklist) { $scope.nonicklist = true; } @@ -718,7 +718,7 @@ weechat.controller('WeechatCtrl', ['$rootScope', '$scope', '$store', '$timeout', $scope.setActiveBuffer = function(bufferId, key) { // If we are on mobile we need to collapse the menu on sidebar clicks // We use 968 px as the cutoff, which should match the value in glowingbear.css - if (document.body.clientWidth < mobile_cutoff) { + if (document.body.clientWidth < $scope.mobile_cutoff) { $scope.showSidebar = false; } return models.setActiveBuffer(bufferId, key); @@ -1001,11 +1001,11 @@ weechat.directive('inputBar', function() { models) { // Focuses itself when active buffer is changed - /* $rootScope.$on('activeBufferChanged', function() { - angular.element('#sendMessage').focus(); + if (document.body.clientWidth >= $scope.mobile_cutoff) { + angular.element('#sendMessage').focus(); + } }); - */ $scope.completeNick = function() { // input DOM node