Lorenz Hübschle-Schneider
0984a2f8b4
Make readline/emacs keybindings a setting
...
Also fix some labels while we're at it
2014-07-21 15:38:28 +01:00
Tor Hveem
a5c68a8053
fix keybindings relying on caretPos
2014-07-21 15:55:50 +02:00
Tor Hveem
065d8a240d
New feature: Automatically connect
...
Check if user saved password, and then offer to automatically connect.
Use a angular watch on the autoconnect and connect as soon as user
selects it.
Check for error messages so it doesn't try to reconnect if there is
errors.
2014-07-20 14:32:53 +02:00
Lorenz Hübschle-Schneider
c9e3c1a55c
Close modal with escape key
2014-07-20 11:48:51 +01:00
Tor Hveem
4081b18ed2
Add some emacs keybindings. Fixes #371
...
Add the most commonly used emacs/readline keybindings to input field and
document them.
Also change the wording on some of the old descritions to clarify
intent.
2014-07-20 12:21:46 +02:00
Lorenz Hübschle-Schneider
15bb4a21d9
Remove now-obsolete toggle prevention function
2014-07-19 15:05:15 +01:00
Lorenz Hübschle-Schneider
e236d937e2
Simplify usage of modal
2014-07-19 15:05:15 +01:00
Lorenz Hübschle-Schneider
7d5bc0f078
Accordion without jQuery / bootstrap js
...
it's not quite 100% as nice though
2014-07-19 15:05:14 +01:00
Lorenz Hübschle-Schneider
23fb4da05a
Implement modal without bootstrap.js and jQuery
2014-07-19 15:05:14 +01:00
Lorenz Hübschle-Schneider
8816fe221e
Animate sidebar with CSS transitions
2014-07-18 13:46:01 +01:00
Tor Hveem
f7ef7e95b9
Merge pull request #365 from glowing-bear/defaultsettings
...
Enable hierarchical server view by default
2014-07-18 14:25:47 +02:00
Lorenz Hübschle-Schneider
2c4a28f559
Enable hierarchical server view by default
...
Also fix its label
Fixes #331
2014-07-18 12:35:13 +01:00
Lorenz Hübschle-Schneider
fa6f108fe5
Make debug mode a parameter, not a setting
2014-07-18 12:17:19 +01:00
Tor Hveem
836b2940ce
Use crossbrowser compatible attr. names
2014-07-17 15:06:39 +02:00
Tor Hveem
6318a94163
Helpers for class styling
...
Implement our own helpers for getting and setting class styles instead
of using jquery functions, since we are getting rid of jquery
2014-07-17 15:06:39 +02:00
Tor Hveem
6a3b4a1506
new option for overriding font size
2014-07-17 15:06:39 +02:00
Tor Hveem
16f9897964
use angular.element instead of jquery
2014-07-17 15:06:39 +02:00
Tor Hveem
cdcdcb096b
User configurable font choice. Fixes #351
2014-07-17 15:06:38 +02:00
David Cormier
2a2c7e1281
Merge pull request #350 from glowing-bear/keep-keyboard-open
...
Focus input bar after pressing the send button
2014-07-16 16:54:56 -04:00
David Cormier
4142883b29
Merge pull request #348 from glowing-bear/fix-initial-line-loading
...
[FIXED] Fix the initial loading of lines
2014-07-15 09:45:57 -04:00
Lorenz Hübschle-Schneider
a2cc3558c3
Remove ngAnimate for the moment, we're not even using it
...
It does have a very significant performance impact, in my
measurements, buffer switching is 30% faster without it!
2014-07-07 18:54:56 +01:00
Lorenz Hübschle-Schneider
1194b170e5
Fix the initial loading of lines
...
This fixes a bug where the initial line loading would be triggered multiple times,
and a bug that incorrectly set requestedLines, causing this behaviour to repeat
2014-07-06 11:30:38 +01:00
Lorenz Hübschle-Schneider
4be8742ac5
Focus input bar after pressing the send button
...
This prevents the keyboard from closing on mobile
2014-07-04 14:45:27 +01:00
David Cormier
a904add7cc
Merge pull request #346 from glowing-bear/channelregexonceagain
...
Allow a minus sign before a #channel link
2014-07-02 08:57:34 -04:00
David Cormier
528237071f
Merge pull request #343 from glowing-bear/defaultport
...
Fix default port
2014-07-02 08:55:44 -04:00
Lorenz Hübschle-Schneider
ba74f2a7e5
Allow a minus sign before a #channel link
2014-07-02 08:41:50 +01:00
David Cormier
a105466b33
Merge pull request #344 from glowing-bear/fixlinetrimming
...
Don't trim unread lines
2014-07-01 19:36:51 -04:00
Kramer Campbell
b21662da3c
Remove duplicate source of truth with buffers.
2014-07-01 15:07:34 -07:00
Lorenz Hübschle-Schneider
0b8a3eb045
Don't trim unread lines
...
Also fix read marker after trimming
2014-07-01 19:41:27 +01:00
Lorenz Hübschle-Schneider
f5855e0712
Revert "Set port variable instead of placeholder"
...
This reverts commit 6b4d2fddbb
.
...because it didn't work. I just got an empty box and the variable wasn't set
2014-06-30 20:24:50 +01:00
David Cormier
48a07ee1fe
Rename 'lines' to 'lines_per_screen'
2014-06-26 22:36:30 -04:00
Lorenz Hübschle-Schneider
984ceaf4e5
Trim long buffers
...
Fixes #338
2014-06-26 21:38:04 +01:00
Kramer Campbell
9aa6a374cd
Add option to show seconds in timestamps.
2014-06-23 09:34:27 -07:00
Anders Bergh
b8c4b1fbac
Wrap IPv6 literals with brackets. Fixes #323 .
2014-06-21 18:56:27 +02:00
Lorenz Hübschle-Schneider
4a04ff8a8f
Scroll on resize
...
main application of this: opening the keyboard on mobile devices
2014-06-18 22:29:51 +01:00
Lorenz Hübschle-Schneider
abcadf040e
Allow +
and @
before a channel name as well for linkification
...
useful for /whois
2014-06-18 17:58:42 +01:00
David Cormier
6b4d2fddbb
Set port variable instead of placeholder
...
Suggesting a port in the placeholder can be confusing, as it may
lead people to believe that this value will be sent to the server
while in fact it will not be.
Fix #324
2014-06-16 22:53:39 -04:00
Tor Hveem
30fd4794e9
Do not automatically switch to newly open buffer.
...
Fixes #279
2014-06-10 16:59:45 +02:00
Lorenz Hübschle-Schneider
f374bebc4e
Turn notimestamp into a positive setting (showtimestamp)
2014-06-07 19:52:22 +01:00
Lorenz Hübschle-Schneider
ce2a4e89da
Show timestamps on mobile by default
...
This is overriden by the setting
2014-06-07 19:52:22 +01:00
Lorenz Hübschle-Schneider
e53f614a04
Fix tab-completion of empty string
...
Closes #301
2014-05-13 12:16:05 +01:00
Lorenz Hübschle-Schneider
6b99efb4ac
Handle _buffer_localvar_{add,remov}ed events
...
fixes indendation of newly opened buffers
2014-05-09 17:36:35 +01:00
Lorenz Hübschle-Schneider
703953a0f6
Rename highlightNick to addMention
...
...because that's what it does
2014-05-09 09:13:46 +01:00
Tor Hveem
71ecdb2608
Log unhandled events
2014-05-08 13:24:57 +02:00
Lorenz Hübschle-Schneider
a2073d893e
Fix buffer closing
...
0cbf5fc4 uncovered an old bug
Thanks for noticing, @torhve
2014-05-08 11:05:08 +01:00
Lorenz Hübschle-Schneider
3d9619abaf
Fix nick clicking
...
- move to correct scope
- use Angular input model instead of accessing DOM directly
- nicklist has changed, adapt to that
2014-05-07 23:40:08 +01:00
Lorenz Hübschle-Schneider
28d3bde907
inputBar.sendMessage: remove unused variable
2014-05-07 23:27:50 +01:00
Tor Hveem
47c9b38d75
Merge pull request #292 from glowing-bear/fixinitialhighlight
...
Fix initial query notifications
2014-05-08 00:16:08 +02:00
Tor Hveem
06f3e50684
Fix problems with inputbar history and nick complete
2014-05-08 00:04:12 +02:00
Lorenz Hübschle-Schneider
64af1f357c
Fix query notifications on first connect
...
Fixes #284
2014-05-07 18:57:13 +01:00
Lorenz Hübschle-Schneider
236b0da97b
Merge pull request #291 from torhve/fix-empty
...
Don't send empty commands, use angular model instead of accessing element value directly. Fixes problem with pressing enter will send previous value in history.
2014-05-07 18:20:59 +01:00
Lorenz Hübschle-Schneider
91bca211ee
Merge pull request #290 from torhve/sslerror
...
Better user feedback for connection problems
2014-05-07 18:20:08 +01:00
Tor Hveem
91b0ddc259
Fix syntax. Emit relaydisconnect so connect button changes
2014-05-07 19:15:47 +02:00
Tor Hveem
3f595ea0ac
Don't send empty commands, use angular model instead of accessing
...
element value directly. Fixes problem with pressing enter will send
previous value in history.
2014-05-07 19:01:12 +02:00
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
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
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
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
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
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
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
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
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