Merge branch 'master' into gh-pages

gh-pages
Lorenz Hübschle-Schneider 7 years ago
commit 004e2a5fad
  1. 2
      bower.json
  2. 6
      index.html
  3. 27
      js/connection.js
  4. 9
      js/glowingbear.js
  5. 2
      js/inputbar.js
  6. 2
      manifest.json
  7. 2
      manifest.webapp
  8. 8
      package.json

@ -1,7 +1,7 @@
{ {
"name": "glowing-bear", "name": "glowing-bear",
"description": "A webclient for WeeChat", "description": "A webclient for WeeChat",
"version": "0.7.0", "version": "0.8.0",
"homepage": "https://github.com/glowing-bear/glowing-bear", "homepage": "https://github.com/glowing-bear/glowing-bear",
"license": "GPLv3", "license": "GPLv3",
"private": true, "private": true,

@ -290,7 +290,7 @@ npm run build-electron-{windows, darwin, linux}</pre>
</li> </li>
</ul> </ul>
</div> </div>
<div id="nicklist" ng-if="showNicklist" ng-swipe-right="swipeRight()" ng-swipe-disable-mouse class="vertical-line-left"> <div id="nicklist" ng-if="showNicklist" ng-swipe-right="swipeRight()" ng-swipe-disable-mouse class="favorite-font vertical-line-left">
<ul class="nicklistgroup list-unstyled" ng-repeat="group in nicklist"> <ul class="nicklistgroup list-unstyled" ng-repeat="group in nicklist">
<li ng-repeat="nick in group.nicks|orderBy:'name'"> <li ng-repeat="nick in group.nicks|orderBy:'name'">
<a ng-click="openBuffer(nick.name)"><span ng-class="::nick.prefixClasses" ng-bind="::nick.prefix"></span><span ng-class="::nick.nameClasses" ng-bind="::nick.name"></span></a> <a ng-click="openBuffer(nick.name)"><span ng-class="::nick.prefixClasses" ng-bind="::nick.prefix"></span><span ng-class="::nick.nameClasses" ng-bind="::nick.name"></span></a>
@ -344,7 +344,7 @@ npm run build-electron-{windows, darwin, linux}</pre>
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<button type="button" class="close" ng-click="closeModal($event)" aria-hidden="true">&times;</button> <button type="button" class="close" ng-click="closeModal($event)" aria-hidden="true">&times;</button>
<span class="pull-right version">Glowing Bear version 0.7.0</span> <span class="pull-right version">Glowing Bear version 0.8.0</span>
<h4 class="modal-title">Settings</h4> <h4 class="modal-title">Settings</h4>
<p>Settings will be stored in your browser.</p> <p>Settings will be stored in your browser.</p>
</div> </div>
@ -522,7 +522,7 @@ npm run build-electron-{windows, darwin, linux}</pre>
<div class="modal-header"> <div class="modal-header">
<button type="button" class="close" ng-click="closeModal($event)" aria-hidden="true">&times;</button> <button type="button" class="close" ng-click="closeModal($event)" aria-hidden="true">&times;</button>
<h4 class="modal-title">Channel topic {{ activeBuffer().shortName || activeBuffer().fullName }}</h4> <h4 class="modal-title">Channel topic {{ activeBuffer().shortName || activeBuffer().fullName }}</h4>
<p ng-repeat="part in activeBuffer().title" ng-class="::part.classes" ng-bind-html="::(part.text | linky:'_blank':{rel:'noopener noreferrer'} | DOMfilter:'irclinky')"></p> <span ng-repeat="part in activeBuffer().title" ng-class="::part.classes" ng-bind-html="::(part.text | linky:'_blank':{rel:'noopener noreferrer'} | DOMfilter:'irclinky')"></span>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-primary" ng-click="closeModal($event)">Close</button> <button type="button" class="btn btn-primary" ng-click="closeModal($event)">Close</button>

@ -4,10 +4,11 @@
var weechat = angular.module('weechat'); var weechat = angular.module('weechat');
weechat.factory('connection', weechat.factory('connection',
['$rootScope', '$log', 'handlers', 'models', 'ngWebsockets', function($rootScope, ['$rootScope', '$log', 'handlers', 'models', 'settings', 'ngWebsockets', function($rootScope,
$log, $log,
handlers, handlers,
models, models,
settings,
ngWebsockets) { ngWebsockets) {
var protocol = new weeChat.Protocol(); var protocol = new weeChat.Protocol();
@ -194,17 +195,19 @@ weechat.factory('connection',
handlers.handleHotlistInfo(hotlist); handlers.handleHotlistInfo(hotlist);
}); });
// Schedule hotlist syncing every so often so that this if (settings.hotlistsync) {
// client will have unread counts (mostly) in sync with // Schedule hotlist syncing every so often so that this
// other clients or terminal usage directly. // client will have unread counts (mostly) in sync with
setInterval(function() { // other clients or terminal usage directly.
if ($rootScope.connected) { setInterval(function() {
_requestHotlist().then(function(hotlist) { if ($rootScope.connected) {
handlers.handleHotlistInfo(hotlist); _requestHotlist().then(function(hotlist) {
handlers.handleHotlistInfo(hotlist);
});
} });
}, 60000); // Sync hotlist every 60 second }
}, 60000); // Sync hotlist every 60 second
}
// Fetch weechat time format for displaying timestamps // Fetch weechat time format for displaying timestamps

@ -520,7 +520,7 @@ weechat.controller('WeechatCtrl', ['$rootScope', '$scope', '$store', '$timeout',
// the messages in this buffer before you switched to the new one // the messages in this buffer before you switched to the new one
// this is only needed with new type of clearing since in the old // this is only needed with new type of clearing since in the old
// way WeeChat itself takes care of that part // way WeeChat itself takes care of that part
if (models.version[0] >= 1) { if (settings.hotlistsync && models.version[0] >= 1) {
connection.sendHotlistClear(); connection.sendHotlistClear();
} }
@ -791,6 +791,13 @@ weechat.controller('WeechatCtrl', ['$rootScope', '$scope', '$store', '$timeout',
return true; return true;
} }
$scope.showNicklist = true; $scope.showNicklist = true;
// hack: retrigger the favorite-font update mechanism when showing the
// nicklist because the div is ng-if=showNicklist instead of ng-show for
// performance reasons (especially on mobile)
$timeout(function() {
utils.changeClassStyle('favorite-font', 'fontFamily', settings.fontfamily);
utils.changeClassStyle('favorite-font', 'fontSize', settings.fontsize);
}, 0);
return true; return true;
}; };

@ -200,7 +200,7 @@ weechat.directive('inputBar', function() {
} }
// New style clearing requires this, old does not // New style clearing requires this, old does not
if (models.version[0] >= 1) { if (settings.hotlistsync && models.version[0] >= 1) {
connection.sendHotlistClear(); connection.sendHotlistClear();
} }

@ -1,7 +1,7 @@
{ {
"name": "Glowing Bear", "name": "Glowing Bear",
"description": "WeeChat Web frontend", "description": "WeeChat Web frontend",
"version": "0.7.0", "version": "0.8.0",
"manifest_version": 2, "manifest_version": 2,
"icons": { "icons": {
"32": "assets/img/favicon.png", "32": "assets/img/favicon.png",

@ -25,5 +25,5 @@
"desktop-notification":{} "desktop-notification":{}
}, },
"default_locale": "en", "default_locale": "en",
"version": "0.7.0" "version": "0.8.0"
} }

@ -1,7 +1,7 @@
{ {
"name": "glowing-bear", "name": "glowing-bear",
"private": true, "private": true,
"version": "0.7.0", "version": "0.8.0",
"description": "A web client for Weechat", "description": "A web client for Weechat",
"repository": "https://github.com/glowing-bear/glowing-bear", "repository": "https://github.com/glowing-bear/glowing-bear",
"main": "electron-main.js", "main": "electron-main.js",
@ -34,9 +34,9 @@
"protractor": "protractor test/protractor-conf.js", "protractor": "protractor test/protractor-conf.js",
"premake-local": "bower install --dev", "premake-local": "bower install --dev",
"make-local": "make -f electron.makefile uselocal", "make-local": "make -f electron.makefile uselocal",
"build-electron-windows": "make -f electron.makefile build-electron-windows", "build-electron-windows": "make -f electron.makefile bower build-electron-windows",
"build-electron-darwin": "make -f electron.makefile build-electron-darwin", "build-electron-darwin": "make -f electron.makefile bower build-electron-darwin",
"build-electron-linux": "make -f electron.makefile build-electron-linux", "build-electron-linux": "make -f electron.makefile bower build-electron-linux",
"update-index-async": "node -e \"require('shelljs/global'); sed('-i', /\\/\\/@@NG_LOADER_START@@[\\s\\S]*\\/\\/@@NG_LOADER_END@@/, '//@@NG_LOADER_START@@\\n' + cat('app/bower_components/angular-loader/angular-loader.min.js') + '\\n//@@NG_LOADER_END@@', 'app/index-async.html');\"" "update-index-async": "node -e \"require('shelljs/global'); sed('-i', /\\/\\/@@NG_LOADER_START@@[\\s\\S]*\\/\\/@@NG_LOADER_END@@/, '//@@NG_LOADER_START@@\\n' + cat('app/bower_components/angular-loader/angular-loader.min.js') + '\\n//@@NG_LOADER_END@@', 'app/index-async.html');\""
} }
} }

Loading…
Cancel
Save