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
David Cormier
81054f06bd
Move specific weechat websocket manipulation in glowingbear.js
2014-02-09 19:40:25 -05:00
David Cormier
a49ce938ea
Add comments to websocket handlers
2014-02-09 19:40:25 -05:00
David Cormier
1da061fec2
Rename conn module to ngWebsockets
2014-02-09 19:40:25 -05:00
David Cormier
1b1b97c448
Remove unnecessary onmessage function
2014-02-09 19:40:25 -05:00
David Cormier
eddffd6e63
Remove spurious dependencies from connection
2014-02-09 19:40:25 -05:00
David Cormier
d4a4f1bd7f
Create websockets module
2014-02-09 19:40:10 -05:00
Lorenz H-S
7d386f04c2
Use strict comparison operators
2014-02-08 13:20:33 +00:00
Lorenz H-S
0cd4f04740
improve spacing and other syntactical stuff
2014-02-08 13:14:23 +00:00
David Cormier
f4ee683100
Only retrieve plugin content when 'Show Content' is pressed
2014-02-06 21:21:49 -05:00
David Cormier
6b12926887
Move plugin to it's own directive
2014-02-06 21:00:07 -05:00
David Cormier
6605a49f7c
Rename websockets.js to glowingbear.js
2014-02-06 20:39:58 -05:00
David Cormier
991e870304
Merge pull request #126 from torhve/fix-scrolling
...
Fix a scrolling bug with chrome
2014-02-05 09:26:51 -05:00
Tor Hveem
e4bbb64b4a
Sort buffers by number before switching to buffer with activity. This
...
better resembles how weechat works
2014-02-05 09:11:55 -05:00
David Cormier
4753ef92a7
Merge pull request #111 from lorenzhs/fixComment
...
Fix comment so my completion doesn't suggest rootscope instead of rootScope
2014-02-05 09:08:00 -05:00
Tor Hveem
e96ae165b2
Fix a scrolling bug with chrome
2014-02-05 11:20:16 +01:00
David Cormier
38ac95c863
Merge pull request #122 from lorenzhs/fixfavico
...
Fix Favico
2014-02-02 06:40:24 -08:00
Lorenz H-S
cbd5d145dc
Fix Favico
...
Use one favico instance which is dynamically modified
This uses a feature that is not yet part of the latest favico.js release, and needs
a fix that isn't even merged yet. Both are included in commit
8e624ba7f0
2014-02-02 13:00:17 +00:00
Lorenz H-S
f0fe8be18a
Do channel indendation in CSS.
...
Fixes the issue with new query buffers' titles not being shown.
Doesn't introduce any new watchers
2014-02-02 11:26:43 +00:00
David Cormier
1bf6f98bde
Add missing () to constructor
2014-01-27 11:14:48 -05:00
Tor Hveem
3879e07e46
Fix Favico
2014-01-22 11:32:08 +01:00
Tor Hveem
f9ba30f102
Collapsable sidebar for mobile sized screens
2014-01-22 11:08:07 +01:00
David Cormier
51e01ec6d4
Add missing semicolons
2014-01-22 11:08:07 +01:00
Tor Hveem
0bd443715a
Remove autofocus since it is very mobile unfriendly
2014-01-22 11:08:06 +01:00
Lorenz H-S
5ad01dac81
embed youtube over SSL
2014-01-09 21:45:00 +00:00
David Cormier
ce37e66a15
Merge pull request #109 from lorenzhs/scrolling
...
Improve scrolling
2014-01-07 10:42:33 -08:00
David Cormier
222419cdcc
Merge pull request #113 from lorenzhs/reduceWatchers
...
Reduce number of watchers
2014-01-06 10:32:41 -08:00
Lorenz H-S
b88b046222
Bind bufferlist only once where possible
2013-12-28 16:58:32 +01:00
Lorenz H-S
f38c4b020e
Fix scrolling behaviour for good (?)
2013-12-28 16:50:31 +01:00
Lorenz H-S
9b89341b74
Fix comment so my completion doesn't suggest rootscope instead of rootScope
2013-12-26 18:35:03 +01:00
Lorenz H-S
fe0c070a6c
Only scroll when at the bottom of the buffer
...
I think this behaviour is a lot more natural. Because it no longer "scrolls to bottom", I also renamed it.
2013-12-23 22:34:21 +01:00
Tor Hveem
797be76c95
try to improve scrolling experience
2013-12-23 22:33:20 +01:00
Lorenz H-S
836edf917d
Making compression optional was a stupid idea. Revert.
...
Instead, add a parameter to the connect function that allows disabling compression.
2013-12-20 16:10:58 +00:00
Lorenz H-S
d1e6bd6698
Add UI support for compression
2013-12-20 13:31:37 +00:00
Lorenz H-S
bf6e92fc24
Implement support for compression (not enabled yet)
2013-12-20 13:31:31 +00:00
Lorenz H-S
f67ac87057
Move dependencies to a different folder
...
fixes build :)
2013-12-19 16:45:29 +00:00
David Cormier
e51932aaa5
Revert "Remove files no longer needed due to use of Bower"
...
This reverts commit 6ef681f722
.
2013-12-19 10:36:48 -05:00
David Cormier
68f24554d1
Remove global for variables
2013-12-17 15:55:41 -05:00
David Cormier
c251c3b74c
Fix is already defined errors
2013-12-17 15:48:43 -05:00
David Cormier
0912a2b55b
Remove extra comma and unnecessary semicolons
2013-12-17 15:39:22 -05:00
David Cormier
b23fb71d1d
Use strict comparators
2013-12-17 15:36:54 -05:00
David Cormier
e2a84470ce
Add missing semicolons
2013-12-17 15:35:36 -05:00
David Cormier
6d5573a148
Delete trailing whitespaces
2013-12-17 15:30:22 -05:00
David Cormier
cbf6bd9920
Use dot notation in models
2013-12-17 15:29:05 -05:00
David Cormier
09616a34c4
Merge pull request #96 from lorenzhs/bower
...
Remove files no longer needed due to use of Bower
2013-12-17 11:48:53 -08:00
Lorenz H-S
6ef681f722
Remove files no longer needed due to use of Bower
2013-12-17 19:46:46 +00:00
Lorenz H-S
da748f911b
Keep message/command history for each channel
...
* Can be navigated with up/down arrow keys
* Currently entered text is preserved when going into history
* When choosing a history entry, previously entered but not submitted text will be restored to input buffer
Closes #75
2013-12-17 19:37:45 +00:00
Lorenz H-S
2cf47c6161
Visually highlight highlights
2013-12-17 14:37:22 +00:00
David Cormier
887092eb4b
Remove unused variables and __proto__ inheritance
2013-12-17 08:44:24 -05:00
David Cormier
27dbb1fc83
Remove global variables
2013-12-17 08:44:24 -05:00
David Cormier
d5366c9918
Use strict equals
2013-12-17 08:44:24 -05:00
David Cormier
6d526f7e42
Use not notation for objects
2013-12-17 08:43:22 -05:00
David Cormier
8e83786f72
Add missing semicolons
2013-12-17 08:43:22 -05:00
David Cormier
6562ce22b4
apply jshint on weechat
2013-12-17 08:43:21 -05:00
David Cormier
a78f49c0fc
Add bindonce and remove 50% of the watchers in the buffers
2013-12-16 11:40:53 -05:00
David Cormier
c88576fad2
Add button to count watcher and debug mode
...
Performance issues are mainly caused by spurious angularjs watchers.
This debug mode provides a button to display the number of registered
watchers in the console.
2013-12-16 11:17:47 -05:00
David Cormier
f85b7110da
New buffers are always active
2013-12-14 12:53:35 -05:00
Lorenz H-S
9368f2480d
Open query when clicking nick in the sidebar
2013-12-14 15:40:05 +00:00
David Cormier
706b5838a1
Return the angular promise on sendMessage
2013-12-14 10:32:14 -05:00
Lorenz H-S
f129460426
initalise lastread marker to last line initially fetched from server
2013-12-13 23:59:51 +00:00
Lorenz H-S
78121ff3a6
Add possibility to order channels hierarchically by server
2013-12-08 21:29:48 +00:00
Lorenz H-S
c4d29a7eb0
Fix ordering of channels
...
As channels aren't added right away (but as soon as the info was
received from the server), somehow the orderBy didn't do its job.
2013-12-08 20:42:30 +00:00
David Cormier
c03dc77e49
Split initialization commands
...
Initialization commands are sent individually. Improves connection
speed.
2013-11-09 16:52:26 -05:00
David Cormier
026881a29c
Revert "Split messages with newline into multiple messages"
...
This reverts commit 6dd35fa890
.
The commit breaks support for chrome.
2013-11-09 12:40:27 -05:00
Tor Hveem
6dd35fa890
Split messages with newline into multiple messages
2013-11-02 17:43:45 +01:00
Tor Hveem
70abe58afe
New keyboard shortcut alt-n: toggle nicklist
2013-10-29 12:50:02 +01:00
Tor Hveem
3c01ad1b68
Fix bug with switching to core buffer when buffer is closed
2013-10-29 12:34:16 +01:00
Tor Hveem
1615f3016b
Use angular function to linkify text.
...
Fixes bugs with HTML escaping in text
2013-10-28 14:37:21 +01:00
Tor Hveem
69200c7854
Prevent user from accidentally leaving the page
2013-10-28 13:55:46 +01:00
Tor Hveem
d57127cc84
make class for embedded image, and fix its height parameter so its
...
better for small images
2013-10-28 13:32:48 +01:00
Tor Hveem
6258303465
New user setting for display embedded content by default
2013-10-28 13:32:47 +01:00
David Cormier
59206770e2
Isolate the nick completion in the inputbar's scope
2013-10-27 17:56:39 -04:00
David Cormier
03cb90c036
Move completeNick method to inputBar directive
2013-10-27 17:56:37 -04:00
David Cormier
ef24986431
Move inputbar related events to inputbar directive
2013-10-27 17:56:08 -04:00
David Cormier
fcfe8ba4be
Create inputbar directive
2013-10-27 17:54:51 -04:00
David Cormier
6055e699ff
Modifies angular model instead of dom element
...
fixes #74
2013-10-27 16:31:37 -04:00
David Cormier
84cc93fbb0
Initialize angularjs routing module
2013-10-27 15:49:51 -04:00
David Cormier
1f455c813a
Callback ids cycle from 0 to 1000
2013-10-27 15:41:45 -04:00
David Cormier
51abcc6953
Document messager methods
2013-10-27 12:26:16 -04:00
David Cormier
75e8c87f09
Group all messaging commands
2013-10-27 12:13:10 -04:00
David Cormier
8167b25c36
Remove doSend
...
Replace calls to doSend with calls to send
2013-10-27 12:07:01 -04:00
David Cormier
0f503fa521
Rename doSendAllWithCallback to sendAll
2013-10-27 12:05:49 -04:00
David Cormier
0c3496f798
Rename doSendWithCallback to send
2013-10-27 12:05:37 -04:00
David Cormier
a3ea312773
doSend always doSendWithCallback
...
The goal of this change is to provide only one way of sending
messages. By default, a callback will always be returned, and
the caller will decide if it needs to use it.
2013-10-27 12:03:45 -04:00
David Cormier
8c51ab18d3
Send all init commands in batch
2013-10-27 11:47:25 -04:00
David Cormier
ec4956a379
Implement doSendAllWithCallback
...
doSendAllWithCallback sends all the messages of the list
and returns a promise that is resolved when all the individual
promises are resolved.
Useful for avoiding long chains of .then().then().then() ..
2013-10-27 11:30:37 -04:00
David Cormier
02f51ad0df
Split creating the defer and returning the promise
2013-10-27 11:30:37 -04:00
David Cormier
335ec46fc6
Wrong password test with failure callback
2013-10-27 11:30:37 -04:00
David Cormier
d6ceadb1be
Fail all callbacks disconnection / error
...
Callback promises are resolved when their answer is received
If the websocket disconnects or fails before receives its answer,
it's promise is rejected.
2013-10-27 11:30:29 -04:00
Tor Hveem
4596c129f1
support extended colors in nicklist
2013-10-27 11:04:43 +01:00
Tor Hveem
e8e44d85ce
Maintained cached flatnicklist, maintain shownicklist cached value for
...
template
2013-10-27 10:50:18 +01:00
Philippe Proulx
a415a3ec3c
No need to sort the flat nick list for completion
...
... because the completion function sorts it another way anyway.
2013-10-27 05:06:02 -04:00
Philippe Proulx
2101e52131
Add Escape and Alt+L keyboard shortcuts
...
* Escape: disconnect
* Alt+L: focus on input bar
2013-10-27 04:57:56 -04:00
Philippe Proulx
0f1bde187a
Support colors in nick list
2013-10-27 04:49:59 -04:00
Philippe Proulx
8ec37d68e2
Support case insensitive nick completion
2013-10-27 04:08:18 -04:00
Philippe Proulx
1eee866347
Do not handle keypress when not connected
2013-10-27 04:08:17 -04:00
Philippe Proulx
5f2a4386f7
Support custom suffix for nick completion
2013-10-27 04:08:16 -04:00
Philippe Proulx
ca47fba200
Nick completion support for end user
...
Closes #24
2013-10-27 04:07:12 -04:00
Philippe Proulx
782b659474
Prevent default action for Ctrl+G
...
Ctrl+G is used in Chrome/Chromium, at least, to find the next match
(just like F3).
2013-10-27 04:07:11 -04:00
Philippe Proulx
92dc4736ea
Switch between buffers with left Alt key only
...
Right Alt key, which is the same as Ctrl+left Alt, is used in several
keymaps to input special characters, like right Alt+2 in Canadian
French to input '@'. Do not switch between buffers when using right
Alt.
Fixes #67
2013-10-27 04:06:32 -04:00
Philippe Proulx
0da6014711
Swallow space after caret if needed (middle completion)
2013-10-26 19:07:04 -04:00
Philippe Proulx
a918923852
Implement IRC nick completion uility
2013-10-26 18:44:48 -04:00
Tor Hveem
902f344d25
move logic into models, attempt at sorting
2013-10-27 00:26:17 +02:00
Tor Hveem
348940bee0
fix + - and * operations of nicklist_diff
2013-10-26 23:40:00 +02:00
Tor Hveem
1a451fd705
Improve hiding/showing nicklist
2013-10-26 23:17:32 +02:00
Tor Hveem
a06916f63e
Better styles for nicklist, implement UI for hiding
2013-10-26 22:56:52 +02:00
Tor Hveem
404f8c8cba
Implement nicklist
2013-10-26 22:19:13 +02:00
Tor Hveem
66963d8329
Style chat time. Hide lines with repeated time
2013-10-26 20:07:21 +02:00
Philippe Proulx
ddf491e8f0
Reduce attribute names length
2013-10-26 13:54:51 -04:00
Philippe Proulx
647e8c5af1
weechat.js: support 1/2/3/4 attributes too
2013-10-26 13:50:53 -04:00
Philippe Proulx
c7a0ab0715
Fix comment following FlashCode's update of doc
2013-10-26 05:17:12 -04:00
Philippe Proulx
439734a49b
Optimize style attributes overriding
2013-10-26 04:49:37 -04:00
Philippe Proulx
9772da0095
Implement full support of WeeChat text styling
2013-10-26 04:30:35 -04:00
Tor Hveem
c9f7e9a732
Make scrolling into the bufferlines div, not the whole window
...
This should improve scrolling experience, especially on webkit.
It also is needed for when nicklist will appear
2013-10-25 22:19:23 +02:00
Tor Hveem
d3aa1d768d
Only store password if user requests it.
2013-10-25 13:45:29 +02:00
Tor Hveem
09798fed53
Remove old code
2013-10-25 13:45:29 +02:00