Lorenz Hübschle-Schneider
2cb6b05498
Wrap inlinecolour filter in $sce.trustAsHtml
...
This is required because bo-html is unsafe whereas ng-bind-html requires
"safe" HTML (ng-bind-html-unsafe is deprecated since 1.2)
2014-08-23 12:25:26 +01:00
Lorenz Hübschle-Schneider
b939bc7ca8
Check GET parameters in image embedding
...
This is a great candidate for the tests!
2014-08-18 16:41:30 +01:00
Lorenz Hübschle-Schneider
1235a5e148
Embed Dropbox images
...
We need to pass a parameter, "?dl=1", to get the actual file
2014-08-18 16:37:45 +01:00
Lorenz Hübschle-Schneider
ae5f0effcf
Auto-close keyboard when opening sidebar (bufferlist)
...
This is for mobile
2014-08-13 09:22:41 +01:00
Lorenz Hübschle-Schneider
f7aa7a0871
Hide sidebar when focusing input bar
...
This is for mobile
2014-08-13 08:39:32 +01:00
Lorenz Hübschle-Schneider
7d13f49dab
Add tweet embedding plugin
2014-08-09 14:18:13 +01:00
Lorenz Hübschle-Schneider
6d988069c7
Add asynchronous GitHub Gist embedding plugin
...
requires a few selectors to be more precise in our CSS
2014-08-09 14:18:13 +01:00
Lorenz Hübschle-Schneider
3d719f3671
Simplify plugins that detect URLs by eliminating redundancy
2014-08-09 14:18:13 +01:00
Lorenz Hübschle-Schneider
703fcb1668
Add support for asynchronous / lazy plugins
...
Fixes #253
2014-08-09 14:18:13 +01:00
Lorenz Hübschle-Schneider
0de5511544
Default to using SSL if the page is using it as well
2014-08-07 18:02:39 +01:00
David Cormier
12a8726407
Merge pull request #382 from glowing-bear/fixautoconnect
...
Prevent autoconnect from connecting twice
2014-08-01 15:57:24 -04:00
David Cormier
770616cf93
Merge pull request #389 from glowing-bear/fix-history-exception
...
Fix an exception when pressing up-arrow in a buffer without history
2014-07-31 09:26:12 -04:00
Lorenz Hübschle-Schneider
cd4b5c8abe
Display HTML colour codes inline
2014-07-31 14:20:42 +01:00
Lorenz Hübschle-Schneider
57ce4e252a
Fix an exception when pressing up-arrow in a buffer without history
2014-07-31 14:10:18 +01:00
Lorenz Hübschle-Schneider
88424279c7
Prevent autoconnect from connecting twice
...
once from the watcher, once from the autoconnect call.
-> remove the autoconnect call, it is not needed
2014-07-28 10:02:43 +01:00
Lorenz Hübschle-Schneider
ccf7b1c51e
Adapt common plugins to make use of multiple embeds per message
2014-07-27 12:55:25 +01:00
Lorenz Hübschle-Schneider
e962472414
Fix Google maps regex
2014-07-27 12:55:25 +01:00
Lorenz Hübschle-Schneider
ac31901d7d
Allow plugins to return an array of results and display each of them
...
Also fix the URL regex to match multiple URLs ('g' modifier)
2014-07-27 12:55:22 +01:00
David Cormier
04efb16424
Rename rootScope.visible -> rootScope.auto_display_embedded_content
...
More verbose but more descriptive
2014-07-26 09:38:24 -04:00
David Cormier
ceb31c1947
contentForMessage doesn't have to care about content visibility
2014-07-26 09:38:24 -04:00
David Cormier
d2a30c1d13
Plugin visibility defaults to value of rootScope.visible
...
And plugin content is shown if it has to be visible
2014-07-26 09:38:24 -04:00
Lorenz Hübschle-Schneider
dc1ce08800
Merge pull request #384 from glowing-bear/default-font
...
Make sure that a favourite font is always set when using Glowing Bear.
2014-07-26 13:44:38 +01:00
David Cormier
7ee237cf3a
Merge pull request #381 from glowing-bear/fix-esc
...
Properly iterate over modals in ESC key handler
2014-07-25 16:52:09 -04:00
David Cormier
9b55244f13
Set and bind font-family if unset
...
Default for desktop is monospace and default for mobile
is sans-serif
2014-07-25 09:43:03 -04:00
David Cormier
7c5a396171
Rename 'monospace' class to 'favorite-font'
2014-07-24 21:36:56 -04:00
Lorenz Hübschle-Schneider
bea1cf6923
Properly iterate over modals in ESC key handler
...
the old way included attributes like 'length' and would raise an
exception, causing disconnection via double-esc to fail
2014-07-23 19:33:39 +01:00
Lorenz Hübschle-Schneider
fec3c57da3
Don't hide the sidebar when "swiping" with the mouse on desktop
2014-07-23 19:16:48 +01:00
David Cormier
013cc03380
Merge pull request #349 from glowing-bear/dejquery
...
[PLEASE TEST] Remove dependency on jQuery
2014-07-21 16:18:57 -04:00
Tor Hveem
8a15690557
Merge pull request #377 from glowing-bear/historystash
...
Move current line into history when pressing down in input bar
2014-07-21 16:43:09 +02:00
Tor Hveem
f95a84a93d
Merge pull request #376 from glowing-bear/readline
...
fix keybindings relying on caretPos
2014-07-21 16:42:13 +02:00
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
Lorenz Hübschle-Schneider
edb34144c7
Move current line into history when pressing down in input bar
2014-07-21 15:35:53 +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
Lorenz Hübschle-Schneider
638aeb6697
Merge pull request #363 from glowing-bear/fixlocalstorage
...
localstorage: fix initial value setting
2014-07-18 13:37:32 +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
74f9ac94ea
Use the function form of 'use strict'
2014-07-18 12:23:25 +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
bc8f86ebae
Merge pull request #354 from glowing-bear/yr
...
Yr.no meteogram embedding
2014-07-17 15:31:36 +02: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
Tor Hveem
a7a8d60aea
localstorage: fix initial value setting
2014-07-16 20:34:50 +02: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
8e1e871411
Fix matching (#segments)
2014-07-14 23:21:23 +01:00
Lorenz Hübschle-Schneider
885b47eaaf
Add yr.no plugin
2014-07-14 22:51:07 +01:00
Lorenz Hübschle-Schneider
39b6d7a179
Fix URL regex
...
Old one doesn't match umlauts and other unicode stuff
New one is a lot more general and similar to what angular uses
2014-07-14 22:51:07 +01: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
Anders Bergh
d456663db5
Replace all non-ASCII bytes with "?" in case of broken UTF-8.
2014-06-19 16:52:07 +02:00
Lorenz Hübschle-Schneider
f1c21ff23b
Catch broken UTF-8 to enable loading of buffers with broken lines
2014-06-19 12:48:12 +01: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
86f4c7308b
Image plugin: case insensitive regex
...
Fixes #305
2014-05-21 17:45:49 +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
abfa26d6ed
Clean up buffer model a bit
...
* use type local variable to determine whether to indent
* local_variables is not used, don't export/save it
2014-05-07 18:58:59 +01: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
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
David Cormier
83fe15d326
Merge pull request #168 from lorenzhs/notifications
...
Notifications: Improve channel detection
2014-02-21 08:59:08 -05:00
David Cormier
b09e328463
Reinitialize context when relay closes connection
...
Fixes #73
2014-02-21 08:54:17 -05:00
Lorenz Hübschle-Schneider
fb9d5af5fc
localstorage: Correctly check whether value is set before setting default
...
The old condition always overwrote boolean values that were set to false
with the default m( Check for undefined instead.
2014-02-21 10:50:29 +00:00
Lorenz Hübschle-Schneider
df1bb08749
Only update title for notifications, not other kinds of activity
...
Also make the unread count the first thing in the title
2014-02-21 10:22:27 +00:00
Lorenz Hübschle-Schneider
effa64084b
Notifications: Improve channel detection
2014-02-21 09:49:03 +00:00
Felix Eckhofer
e0aef4c6e1
make enter switch to the first match in the list
2014-02-21 09:55:56 +01:00
Felix Eckhofer
fead046eed
use alt-g for filter bufferlist
...
this is more consistent with the other existing shortcuts and is also
the same shortcut go.py recommends in weechat-curses
2014-02-21 09:45:56 +01:00
Tor Hveem
46b503e1b4
Use ngAnimate to animate sidebar hiding/showing
2014-02-21 09:34:30 +01:00
David Cormier
f10e44efe4
Merge pull request #164 from lorenzhs/notifications
...
Rework notifications
2014-02-20 19:31:32 -05:00
Lorenz Hübschle-Schneider
e5f33275bd
Fix the confirmation dialog when closing the tab
...
* Only nag if we're connected
* Set event return value so Chrome shows the dialog
2014-02-20 23:52:45 +00:00
Lorenz Hübschle-Schneider
157917d40c
Rework notifications
...
* Improve content of notifications
* More descriptive title
* The bug that caused the need for manually assembling the message has been fixed (#161 or c5e548c8ab
)
* Permission for displaying notifications can only be requested upon user interaction in Chrome, not on page load. Bind to connect button
* Take user to g-b tab and buffer causing the notification on click
2014-02-20 23:29:17 +00:00
Lorenz Hübschle-Schneider
d4207ed7e0
Update title with unread count
...
Further discussion required on a few points:
* show notifications only or unread lines as well?
* only use this when favico is disabled, or indepently?
I welcome all feedback.
Fixes #22
2014-02-20 22:47:53 +00:00
Lorenz Hübschle-Schneider
9ac7b341ec
Make use of favico an option
...
@tribut: does this resolve your issue?
2014-02-20 22:47:24 +00:00
Lorenz Hübschle-Schneider
c5e548c8ab
Correctly set message text
...
There might be multiple parts to each message, e.g. if a plugin colourises
some parts of a message.
2014-02-19 22:08:07 +00:00
David Cormier
5b5082dfd4
Merge pull request #160 from cormier/previous-buffer
...
PR#155 with shortcut added in front page instructions
close #155
2014-02-19 11:53:06 -05:00
David Cormier
80841154b6
Merge pull request #159 from lorenzhs/fixircregex
...
Reduce number of false positives in IRC channel linkification
2014-02-19 10:46:13 -05:00
Lorenz Hübschle-Schneider
389d6bdedb
Reduce number of false positives in IRC channel linkification
2014-02-19 15:38:07 +00:00
David Cormier
51cde96bf6
Standardize code presentation
...
Fix indentation (4 spaces, no tabs)
Fix indentation in CSS
Fix comment position in CSS file
2014-02-19 10:27:46 -05:00
David Cormier
8e44757e61
Replace magic number 968 with variable
2014-02-19 10:18:20 -05:00
David Cormier
11e5b6fbda
Merge development branch of creesch
2014-02-19 09:58:31 -05:00
David Cormier
2e5e3a45eb
Revert "Collapse sidebar with css selector"
...
This reverts commit 3a5dfd5e94
.
2014-02-19 09:53:03 -05:00
Tor Hveem
2452858853
Fix globals. Fix init
2014-02-19 11:28:48 +01:00
Tor Hveem
2aa1e02bea
New keybinding: Alt-< to switch to previous buffer. Same key as WeeChat
2014-02-19 10:58:26 +01:00
Lorenz Hübschle-Schneider
e5476dfd02
Whitespace fixes, some {} blocks
2014-02-18 18:13:23 +00:00
David Cormier
6814379bdb
Merge pull request #154 from torhve/better-string-decoding
...
Decode and encode array directly without for loop
2014-02-18 09:56:06 -05:00
creesch
abefa7430a
Implement swiping for mobile devices
2014-02-18 14:40:02 +01:00
Tor Hveem
b379d50351
Decode and encode array directly without for loop
2014-02-18 13:25:03 +01:00
David Cormier
27690ada58
Work around a WeeChat protocol inconvenience
...
Until WeeChat sends a confirmation for init we have to assume
that the commands will be received synchronously even though
they are sent asynchronously
2014-02-17 21:46:00 -05:00
David Cormier
ba20a79c72
Send init commands when connection is successful
...
Initialization commands are sent when we are sure that
the password has been accepted and that the init has been
processed by the weechat relay
2014-02-17 21:19:34 -05:00
David Cormier
8c386f7553
Create helper functions for initialization methods
2014-02-17 21:15:10 -05:00
David Cormier
3a5dfd5e94
Collapse sidebar with css selector
...
Fixes #152
2014-02-17 20:49:49 -05:00
Lorenz Hübschle-Schneider
c490e33898
IRC linky: don't match HTML encoded chars (), >, etc.)
2014-02-17 20:08:55 +00:00
David Cormier
4e5f239980
Merge pull request #144 from lorenzhs/linkify
...
Linkify IRC channels
2014-02-17 10:24:00 -05:00
Lorenz Hübschle-Schneider
c1760e5433
Fix JS coding style
...
TODO: rebase this as a fixup. I don't think the github web interface supports that.
2014-02-17 12:37:14 +00:00
Lorenz Hübschle-Schneider
1a5b36b6f7
switchToActivityBuffer: Prioritise notifications
...
If there is a buffer with a notification, go there. Otherwise, go to one with unread lines.
2014-02-17 12:31:23 +00:00
Lorenz Hübschle-Schneider
93f40c64e9
Fix embed DOM classes
...
Classes, IDs and Names in the DOM have to begin with a letter. The $$hashKey
however might not, so prefix it with embed_. This also makes the classes more
unique, which is a good thing. Additionally, don't scroll on undefined should that
ever happen.
Fixes #45
2014-02-16 16:55:27 -05:00
Lorenz Hübschle-Schneider
2e963da581
Don't use jQuery, simplify
2014-02-16 16:55:27 -05:00
Lorenz Hübschle-Schneider
e48fe29cf8
Automatically scroll plugins into view
2014-02-16 16:55:27 -05:00
Lorenz Hübschle-Schneider
eaf5adf467
Linkify IRC channels
...
Make '#foo' in a message or buffer title clickable, taking the user to the IRC
channel specified, joining it if necessary.
2014-02-16 14:10:56 +00:00
Lorenz Hübschle-Schneider
f70f399741
remove unnecessary use of jQuery
2014-02-15 11:39:11 -05:00
Lorenz Hübschle-Schneider
f018876987
Fix botched merge
2014-02-14 16:40:44 +00:00
David Cormier
36049447cd
Fix jshint errors
2014-02-14 09:32:30 -05:00
Tor Hveem
0f44465faa
Better connection / password error handling
2014-02-14 09:16:40 -05:00
David Cormier
e68e7dd01d
websockets: add support for user specified onmessage
2014-02-14 09:09:09 -05:00
Lorenz Hübschle-Schneider
f8f25107de
Fix read marker and scrolling behaviour
...
* don't always jump to the bottom on incoming messages
* don't fiddle with the read marker when loading more lines
2014-02-11 21:45:57 +00:00
Lorenz Hübschle-Schneider
7c2403e7a1
Scrolling: Do not use webkit-specific function to scroll readmarker into view
...
Sorry for that.
2014-02-11 20:40:25 +00:00
Lorenz Hübschle-Schneider
8068be8de2
Remove setting and calculate number of lines from display properties
2014-02-10 20:18:44 +00:00
Lorenz Hübschle-Schneider
56055d61c8
Make the code a little prettier
2014-02-10 20:18:40 +00:00
Lorenz Hübschle-Schneider
40716ca649
Fix issue with incorrect read marker on startup
2014-02-10 20:15:50 +00:00
Lorenz Hübschle-Schneider
7764fc6910
Dynamically load lines for each buffer on startup
...
Add setting for number of lines to fetch initally.
TODO: styling
2014-02-10 20:15:50 +00:00
Lorenz Hübschle-Schneider
5a90e2e830
Fix scrolling issue and reduce the number of scrolling events on startup
...
Don't trigger scrolling on each line when batch loading lines
2014-02-10 20:15:50 +00:00
Lorenz Hübschle-Schneider
32bcb1c943
Fetch more lines on request
2014-02-10 20:15:50 +00:00
Lorenz Hübschle-Schneider
6b31a3e59a
Reset favico on unloading. Should resolve bookmark favicon issue.
...
See https://github.com/ejci/favico.js/issues/23 for detail
2014-02-10 19:26:30 +00:00
David Cormier
0107dabb2d
Fix jshint errors
2014-02-09 19:40:25 -05:00