Lorenz Hübschle-Schneider
2eddc9ff3d
Merge pull request #288 from torhve/clear
...
Support clearing of buffer lines with command /c or /clear
2014-05-07 17:58:27 +01:00
Tor Hveem
695c429c4f
Only support the weechat defaults for clearing buffer
2014-05-07 18:55:48 +02:00
Tor Hveem
fbfeec8fca
Change the connect button text based on connection status
2014-05-06 22:00:02 +02:00
Tor Hveem
d2f11ad89d
Catch DOMException
2014-05-06 22:00:02 +02:00
Tor Hveem
f21cf4c046
Support clearing of buffer lines with command /c or /clear
2014-05-06 18:39:48 +02:00
Lorenz Hübschle-Schneider
84270655ee
Don't send input bar contents on buffer switch
...
Fixes #277
2014-05-04 11:21:35 +01:00
Tor Hveem
b06f6f8589
Merge pull request #280 from glowing-bear/fixnickspeak
...
Fix bug where updateNickSpeak would fail on lines without a prefix
2014-05-03 16:58:27 +02:00
Lorenz Hübschle-Schneider
aab111bb80
Fix that bug where only one line was loaded
...
Let me tell the story backwards:
For some reason, only one line would be fetched in `fetchMoreLines`, but
neither `numLines` nor `buffer.requestedLines` were `undefined`. The
paramater `numLines` must have had some strange value, though.
`connection.fetchMoreLines` is invoked through the main controllers
`$scope.fetchMoreLines`, which sets the parameter to `$scope.lines` if it was
undefined before. That value is computed in `$scope.calculateNumLines`,
which takes the height of the lines area and divides it by the height of the first
bufferline. This computation is retriggered on every `resize` event.
The first bufferline is the 'fetch more lines' link at the top of the window. If the
currently active buffer doesn't have more lines, it is hidden with `ngHide`,
causing its `clientHeight` property to be `0`, and the number of lines to be
fetched `$scope.lines = Infinity` (due to a division by zero).
In `connection.fetchMoreLines`, the following request is then made:
`"buffer:0x" + buffer.id + "/own_lines/last_line(-" + numLines + ")/data"`
to which WeeChat responds with one line. Voilà, there's your mess.
2014-05-03 15:07:12 +01:00
Lorenz Hübschle-Schneider
36a35628e2
Fix bug where updateNickSpeak would fail on lines without a prefix
2014-05-03 14:12:55 +01:00
Lorenz Hübschle-Schneider
d363121556
Remove unnecessary uses of jQuery and dead code
...
Native code is faster anyways ;)
2014-04-28 13:52:21 +01:00
Lorenz Hübschle-Schneider
1d2e5f1d0b
Better countWatchers
...
The old one missed a few, two on the input and the one in the title.
This version also doesn't use jQuery
From: http://stackoverflow.com/a/18539624 by StackOverflow user "plantian"
2014-04-28 13:40:27 +01:00
Tor Hveem
20a8289072
Revert the revertion of multiline and clean it up for new directive.
2014-04-26 18:16:46 +02:00
Lorenz Hübschle-Schneider
9f46e656cb
Improve youtube matching URL
...
closes #266
2014-04-25 18:39:01 -04:00
Tor Hveem
921e28d0e2
Remove the old and now unused flat nicklist
2014-04-25 21:05:20 +02:00
Tor Hveem
4e08a52f25
Use recent speaker instead of alphabetical nick tab complete
...
Use _ for sorting.
Fix jshint problems and naming things.
Fix comments
2014-04-25 20:33:01 +02:00
David Cormier
aa42027e98
Merge pull request #258 from lorenzhs/performance
...
Performance improvements
2014-04-24 10:18:51 -04:00
Lorenz Hübschle-Schneider
58f7c9b9be
Improve nick clicking in buffer
...
* focus input line (stops keyboard from disappearing on mobile)
* add a space after the colon (and detect that in multiple highlight detection)
2014-04-23 17:19:42 +02:00
Lorenz Hübschle-Schneider
e732d72550
Detect self-signed cert errors
2014-04-22 19:04:31 +02:00
Lorenz Hübschle-Schneider
3ad76d2ff3
Don't ng-repeat function calls, they're expensive
...
See http://tech.small-improvements.com/2013/09/10/angularjs-performance-with-large-lists/
2014-04-21 18:31:02 +02:00
Lorenz Hübschle-Schneider
ac4e130198
Fix the one-line-only-bug
...
Fixes #247
2014-04-20 20:44:01 +02:00
David Cormier
81c5974369
Merge pull request #257 from lorenzhs/nickclick
...
Highlight user when clicking their nick
2014-04-19 10:07:50 -04:00
Lorenz Hübschle-Schneider
76d7572622
Highlight user when clicking their nick
2014-04-19 15:47:33 +02:00
Lorenz Hübschle-Schneider
16664cefc0
Double-tap escape to disconnect
2014-04-19 14:13:32 +02:00
Lorenz Hübschle-Schneider
fdbf639201
Don't modify buffer in document visibility change handler if not connected
2014-04-15 22:01:13 +02:00
David Cormier
2cc4172ae0
Merge pull request #240 from lorenzhs/fetchlines
...
Fix bug where no (more) lines were loaded despite there being more
2014-04-07 14:50:56 -04:00
Lorenz Hübschle-Schneider
10bbb63929
Move cursor to end when navigating history
...
Fixes #244
2014-04-05 22:18:48 +02:00
Felix Eckhofer
cd6ee96ae7
Use https for dailymotion
2014-04-04 20:43:13 +02:00
David Cormier
8d94dffec9
Rename isMobileDevice to isMobileUi
...
Right now we are only checking the width screen so we are not
detecting anything that is mobile specific. Will rename to
isMobileDevice when we introduce more specific checks.
2014-03-30 20:16:29 -04:00
Felix Eckhofer
3ed3df9ede
Only hide bufferlist when switching to mobile
...
Showing the keyboard on mobile will trigger a resize event, therefore
trying to use the bufferlist filter will actually hide the bufferlist
making the feature unusable. Bug introduced by 554b1669
.
2014-03-30 23:59:52 +02:00
Lorenz Hübschle-Schneider
0e3bf78087
Fix bug where no (more) lines were loaded despite there being more
2014-03-24 18:05:06 +00:00
David Cormier
2000437c3a
Merge pull request #238 from lorenzhs/trailingcomma
...
remove trailing commas
2014-03-19 14:28:54 -04:00
Lorenz Hübschle-Schneider
0ff0c995d4
remove trailing commas
2014-03-19 18:02:20 +00:00
David Cormier
f20f7f950e
Merge pull request #234 from lorenzhs/notificationcount
...
Add notification count to notifications
2014-03-19 13:13:04 -04:00
Felix Eckhofer
9d0fb6b0cd
Update path to icon for notifications
2014-03-18 10:53:23 +01:00
Lorenz Hübschle-Schneider
54bb156f01
Add notification count to notifications
2014-03-13 20:33:46 +00:00
Lorenz Hübschle-Schneider
554b16698a
Show sidebar when switching from mobile to desktop view
...
(or the other way around)
2014-03-13 18:49:29 +00:00
David Cormier
24a7fe2d42
Merge pull request #230 from lorenzhs/fixirclinky
...
Don't irc linky #foo after forward / backward slashes
2014-03-10 14:23:47 -04:00
David Cormier
d27d3b415d
Merge pull request #231 from lorenzhs/nicklistupdates
...
Ignore nicklist updates for buffers without a nicklist
2014-03-10 14:23:06 -04:00
Lorenz Hübschle-Schneider
a51e5c17ae
Don't irc linky #foo after forward / backward slashes
...
This broke some URLs like http://caniuse.com/#feat=flexbox
2014-03-10 17:19:02 +00:00
Lorenz Hübschle-Schneider
90b29cc5ad
Don't update read marker if no more lines could be fetched
...
Fixes disappearing read marker (set to -1)
2014-03-10 17:10:56 +00:00
Lorenz Hübschle-Schneider
5e19ffd614
Ignore nicklist updates for buffers without a nicklist
2014-03-10 17:01:41 +00:00
Lorenz Hübschle-Schneider
203680ff58
Try to fetch all unread lines if that is a reasonable amount
...
Partially fixes #139 in that it tries to accomplish this, but until we can request
only non-filtered lines from WeeChat, the best thing we can do is guessing.
2014-03-08 22:47:24 +00:00
David Cormier
a3410d45c1
Merge pull request #225 from lorenzhs/defernicklist
...
Defer nicklist loading until buffer is opened
2014-03-08 17:43:53 -05:00
Lorenz Hübschle-Schneider
dc0ce33bea
Fetch nicklist by buffer name, not pointer
...
An invalid pointer will crash WeeChat, while an invalid name will not. A pointer
becomes invalid e.g. if the buffer is closed by another client, g-b not updated,
and the buffer then selected in g-b.
2014-03-08 21:35:03 +00:00
Lorenz Hübschle-Schneider
730c7dab8d
Load lines before nicklist
...
Nicklist is not nearly as important as the actual lines, load them first for better perceived performance. Parsing the nicklist can take a noticeable amount of time for channels with thousands of occupants.
This also improves/fixes the nicklist emptiness check
2014-03-08 21:34:39 +00:00
Lorenz Hübschle-Schneider
14575f3547
Remove debug logging
2014-03-08 17:07:54 +00:00
Lorenz Hübschle-Schneider
ac548777fc
Defer nicklist loading until buffer is opened
...
Drastically improves startup time for users with buffers that have thousands of users
2014-03-08 16:10:41 +00:00
Lorenz Hübschle-Schneider
739c4de0ef
Add a isNicklistEmpty method to buffer model, speed up nicklist decision
...
Flattening the nicklist is really unnecessary. This method is 10x faster for short
nicklists, and much faster for buffers with lots of users.
2014-03-07 17:52:32 +00:00
David Cormier
3d5ed296c2
Merge pull request #218 from lorenzhs/pluginregex
...
Improve plugin regular expressions, load imgur over https if enabled
2014-03-06 08:24:01 -05:00
David Cormier
ff1f240854
Merge pull request #217 from lorenzhs/notificationfix
...
Display all parts of message prefix in notification
2014-03-06 08:22:25 -05:00
Lorenz Hübschle-Schneider
3c1bdfeb71
Improve plugin regular expressions, load imgur over https if enabled
2014-03-05 15:53:13 +00:00
Lorenz Hübschle-Schneider
4e315b53a8
Display all parts of message prefix in notification
...
Previously, we only got the first part -- which would be "@" for an op, and not their nick.
2014-03-05 13:31:54 +00:00
Lorenz Hübschle-Schneider
71cafde5a3
Reset unread count on disconnect
2014-03-05 13:21:12 +00:00
Lorenz Hübschle-Schneider
58a26ceea9
Treat messages arriving in active buffer as unread if window is not focused
2014-03-05 13:21:08 +00:00
David Cormier
055dc9eba9
Merge pull request #215 from lorenzhs/patch-1
...
Tweak channel highlighting regex
2014-03-05 08:13:53 -05:00
David Cormier
2e7c6b3fbe
Merge pull request #214 from torhve/fix-bufferlist
...
Fix bufferlist not working after reconnect
Fix #183
Open #73
2014-03-05 08:11:12 -05:00
Lorenz Hübschle-Schneider
01f213147e
Tweak channel highlighting regex
...
Don't require white space at the start, punctuation marks are good, too.
2014-03-05 10:56:36 +00:00
Tor Hveem
5552d40ec2
Fix bufferlist not working after reconnect
2014-03-05 11:22:03 +01:00
David Cormier
f9defeed9f
Use "sonar" sound for notifications
2014-03-04 08:26:32 -05:00
Lorenz Hübschle-Schneider
aecae9f0e6
Optionally play a sound on notification
...
Fixes #42
TODO: find and add a sound file
2014-03-03 21:23:15 -05:00
David Cormier
8a6337e873
Merge pull request #204 from lorenzhs/numlines
...
Recalculate number of lines needed on resizing
2014-02-28 09:11:39 -05:00
Lorenz Hübschle-Schneider
a3b52ddddd
Recalculate number of lines needed on resizing
...
The issue with #bufferlines on mobile has been fixed in 0d580cc
, so calculate
the number of (non-wrapping) lines that fit in the window and add a buffer of 10
for hidden lines and to allow scrolling up to fetch more lines (#202 )
2014-02-28 10:23:10 +00:00
David Cormier
c4dc74ca8d
Make allLinesFetched an attribute of buffer
...
Remove noMoreLines from the rootScope.
2014-02-27 21:55:42 -05:00
Tor Hveem
892dac5fbc
Variable fix, and compare fix
2014-02-27 21:55:42 -05:00
Tor Hveem
c80e3ce005
Fix spaces
2014-02-27 21:55:42 -05:00
Tor Hveem
ad68e32c08
Don't show fetch more lines when there aren't any
2014-02-27 21:55:42 -05:00
David Cormier
a5006ce966
Fix jshint error
2014-02-27 21:25:59 -05:00
Tor Hveem
5dd11d72c0
Fix alt-n again
2014-02-28 00:31:32 +01:00
Tor Hveem
00906f34cb
Add chrome keycode for <
2014-02-28 00:13:21 +01:00
David Cormier
d5cbdf2d4a
Respect mobile users settings
...
Do not set the values for "nonicklist" "noembed" and "notimestamp"
regardless of what the mobile user had set. Only change the default
values for the bindings if none has been set.
Fix #147
2014-02-27 08:28:01 -05:00
Tor Hveem
bebc1c7bce
Remove duplicate bufferlist storage. Only use object
2014-02-26 19:39:48 +01:00
David Cormier
71a3f00479
Merge pull request #187 from torhve/master
...
call the right scope
2014-02-26 08:13:43 -05:00
Lorenz Hübschle-Schneider
0cc693fe7d
Move mobile device detection to a function
...
avoids code duplication
2014-02-25 21:17:29 +00:00
Lorenz Hübschle-Schneider
1664b34cc9
Reorder statements for easier reading
2014-02-25 21:12:36 +00:00
Lorenz Hübschle-Schneider
997fe91d3e
Remove redundant line
...
localStorage triggers this on page load anyway
2014-02-25 21:12:36 +00:00
Lorenz Hübschle-Schneider
3f68a156a4
Move initialisation code to functions
2014-02-25 21:12:36 +00:00
Lorenz Hübschle-Schneider
e301849a73
Remove unused functions and parameters
2014-02-25 21:12:36 +00:00
Lorenz Hübschle-Schneider
330942b111
Remove unused variable
2014-02-25 21:12:36 +00:00
Tor Hveem
d6a64b32b9
call the right scope
2014-02-25 17:33:05 +01:00
David Cormier
4451bff60d
Move activeBufferChanged listener to WeechatCtrl
...
I don't believe that the inputBar directive should know about the
mobile cutoff we have set for GB. We should aim to make it as
reusable as possible
2014-02-25 09:14:08 -05:00
David Cormier
c04b6e64f6
Let user specify the id of the input bar
...
Input bar id is not globally set, but passed to the directive
through the input-id attribute.
2014-02-25 09:12:52 -05:00
David Cormier
f3f5330aed
Merge pull request #178 from cormier/fix-74
...
Fix nick completion issues
2014-02-24 12:20:05 -05:00
David Cormier
c163e9933f
Merge pull request #171 from lorenzhs/fixduplicatenotifications
...
[WIP?] Fix an issue with notifications being shown when fetching old lines
2014-02-24 10:23:04 -05:00
Felix Eckhofer
c1c2297833
Add nick to highlight notification from channels
2014-02-24 15:41:15 +01:00
Felix Eckhofer
18dd4eae1f
Replace tabs with spaces
2014-02-24 11:41:25 +01:00
Felix Eckhofer
b3b4651e33
Remove trailing spaces
2014-02-24 11:41:25 +01:00
Felix Eckhofer
7a003f8227
Focus input bar when not on mobile
...
This improves the UX on desktop while avoiding the virtual keyboard
popping up on touch devices
2014-02-24 11:41:20 +01:00
David Cormier
41bdb90a5e
Merge pull request #177 from lorenzhs/mobile
...
Further improve mobile layout
2014-02-23 11:58:04 -05:00
David Cormier
5f25a96b51
Work with inputNode element directly
...
Instead of using $scope.command, we work with the inputNode element
directly to have control over the caret position. This let us have
nick completition in the same way as WeeChat.
Fix #74
2014-02-23 10:55:59 -05:00
David Cormier
f141095312
Add method to retrieve inputNode element from directive
2014-02-23 10:48:21 -05:00
David Cormier
fb5a477b73
Implement asciinema plugin
...
Close #66
2014-02-23 10:04:14 -05:00
Lorenz Hübschle-Schneider
17cc3c9088
Disable swiping on desktop
2014-02-23 14:17:59 +00:00
Felix Eckhofer
fa01c0a53f
Install Firefox Webapp from local checkout
...
Ask Firefox to install the currently running copy of glowing bear
instead of the copy from torhve.github.io
This also fixes a bug when glowing bear is not running from a
subdirectory (or one other than /glowing-bear) which would lead to a 404
because of torhve.github.io/original_subdir being loaded instead of
/glowing-bear.
Note that installing to a different subdirectory than /glowing-bear will
lead to the icons not being found due to the fact that all icon paths
inside manifest.webapp have to be absolute.
2014-02-22 13:46:45 +01:00
David Cormier
efda3d4963
Merge pull request #170 from lorenzhs/fixactivityswitch
...
Fix "Switch to buffer with activity" skipping buffers with notifications
2014-02-21 13:49:23 -05:00
Lorenz Hübschle-Schneider
4736da2d92
Fix an issue with notifications being shown when fetching old lines
...
@xt, does this fix the issue for you?
While we're at it, fix the annoying jump-to-bottom when loading more lines.
2014-02-21 16:33:10 +00:00
Lorenz Hübschle-Schneider
d4a5218922
Fix "Switch to buffer with activity" skipping buffers with notifications
...
This caused two buffer switches in a row, in effect forgetting the notifications
2014-02-21 16:03:35 +00:00
David Cormier
a28ee6033b
Merge pull request #163 from lorenzhs/flashtitle
...
Flash title when receiving lines in the background & make use of favico configurable
2014-02-21 09:58:28 -05:00
David Cormier
e468fe57f0
Merge pull request #169 from cormier/fix-73
...
Reinitialize context when relay closes connection
2014-02-21 09:47:04 -05:00
David Cormier
7b79d7dc5a
Merge pull request #166 from torhve/swipe-animate
...
Use ngAnimate to animate sidebar hiding/showing
2014-02-21 09:46:36 -05:00
Tor Hveem
056aa3deed
Use CSS classes instead of javascript for margin
2014-02-21 15:35:06 +01:00