Commit Graph

336 Commits

Author SHA1 Message Date
Pavel Djundik
36b6fdcc88 Reference scrolledToBottom variable instead of recalculating on message received 2019-02-12 12:48:44 +02:00
Pavel Djundik
efdf11dcae Reset scrolledToBottom when channel changes 2019-02-12 12:48:44 +02:00
Pavel Djundik
7e5e031ea8 Reset canDisplay on previews on destroy 2019-02-12 12:48:44 +02:00
Pavel Djundik
4b5252d285 Some scroll fixes 2019-02-12 12:48:44 +02:00
Richard Lewis
f4b4cfdee2 Make event listneres passive. 2019-02-12 12:48:44 +02:00
Richard Lewis
c9f5e06ee4 Keep scroll to bottom when resizing window. 2019-02-12 12:48:44 +02:00
Pavel Djundik
5d8a581201 Fix input not resizing back after sending a message 2019-02-12 12:48:44 +02:00
Pavel Djundik
8133805dec Allow shift+enter to insert new lines 2019-02-12 12:48:43 +02:00
Pavel Djundik
a0f42af0d8 Fix missed else-if 2019-02-12 12:48:43 +02:00
Pavel Djundik
bb0450cb31 Move history logic to MessageList, fix previews not keeping scroll 2019-02-12 12:48:43 +02:00
Pavel Djundik
9926157683 Resize input when typing 2019-02-12 12:48:43 +02:00
Pavel Djundik
9249464445 Fix condensed line being clickable 2019-02-12 12:48:43 +02:00
Pavel Djundik
77947b46c8 Import ParsedMessage in back msg 2019-02-12 12:48:43 +02:00
Pavel Djundik
3d43b96d5a Make network lobby a separate component 2019-02-12 12:48:43 +02:00
Pavel Djundik
8931570c02 Port join-channel completely to Vue 2019-02-12 12:48:43 +02:00
Pavel Djundik
825e3beba6 Show previews in actions 2019-02-12 12:48:43 +02:00
Pavel Djundik
499beb0257 Keep scroll position when scrolling up 2019-02-12 12:48:43 +02:00
Pavel Djundik
dbe95fcc13 Don't render preview until image is loaded 2019-02-12 12:48:43 +02:00
Pavel Djundik
b982623aaa Deduplicate and optimize 'keep to bottom' 2019-02-12 12:48:43 +02:00
Pavel Djundik
a138237155 Remove expensive and unnecessary button check on channel switch 2019-02-12 12:48:43 +02:00
Pavel Djundik
ae692b1f2f Fix parsed message in actions 2019-02-12 12:48:43 +02:00
Pavel Djundik
e3ff385ae0 Remove HTML version of parse() 2019-02-12 12:48:43 +02:00
Pavel Djundik
d83dcc35e2 Port 'more' button in previews to Vue 2019-02-12 12:48:43 +02:00
Pavel Djundik
1cd28a5ccf Fix sending msg:preview:toggle to server 2019-02-12 12:48:43 +02:00
Pavel Djundik
2bb8287519 Render preview toggle in Vue 2019-02-12 12:48:43 +02:00
Pavel Djundik
ebfc6fa724 Create elements instead of using raw HTML 2019-02-12 12:48:43 +02:00
Pavel Djundik
ebda927bb1 Render toggle button after links 2019-02-12 12:48:43 +02:00
Pavel Djundik
5792bff49d Display previews as they come in; fix image viewer 2019-02-12 12:48:43 +02:00
Pavel Djundik
c369f0fdb7 Some fixes with unread marker 2019-02-12 12:48:43 +02:00
Pavel Djundik
c84eee22f2 Fix duplicate messages on channel join 2019-02-12 12:48:43 +02:00
Pavel Djundik
771739cf94 Port ignore list to Vue 2019-02-12 12:48:42 +02:00
Pavel Djundik
b963fe3cf0 Use vue's conditional classes 2019-02-12 12:48:42 +02:00
Pavel Djundik
d97356e65a Only bind mouseover on username if necessary 2019-02-12 12:48:42 +02:00
Richard Lewis
c431ac6306 Add hover selection to user list. 2019-02-12 12:48:42 +02:00
Richard Lewis
060097c118 Implement keyboard navigation in user list. 2019-02-12 12:48:42 +02:00
Pavel Djundik
30bdfe9d3f Hide 'show more history' button if there are no more messages 2019-02-12 12:48:42 +02:00
Pavel Djundik
0654a4373f Minor fix for previews 2019-02-12 12:48:42 +02:00
Pavel Djundik
2ab3518c52 Fix history not loading on channel switch 2019-02-12 12:48:42 +02:00
Pavel Djundik
207ab28b92 Some fixes with IntersectionObserver 2019-02-12 12:48:42 +02:00
Pavel Djundik
595915fefd Render link previews in Vue 2019-02-12 12:48:42 +02:00
Pavel Djundik
5f5b5fef3d Enable .js linter 2019-02-12 12:48:42 +02:00
Pavel Djundik
db803a8548 Port channel list to Vue 2019-02-12 12:48:42 +02:00
Pavel Djundik
96569e71a3 Some fixes 2019-02-12 12:48:42 +02:00
Pavel Djundik
121dd35c3b Port ban lists to Vue 2019-02-12 12:48:42 +02:00
Pavel Djundik
ee0413de4b Remove invalid v-elseif 2019-02-12 12:48:42 +02:00
Pavel Djundik
aa1446c19d Some fixes for unread marker 2019-02-12 12:48:42 +02:00
Pavel Djundik
a54a726e93 Refactor client side commands
Co-Authored-By: Max Leiter <hello@maxleiter.com>
2019-02-12 12:48:42 +02:00
Pavel Djundik
0a774758b9 Fix double input submit 2019-02-12 12:48:42 +02:00
Pavel Djundik
f9d255b678 Passthrough input ref 2019-02-12 12:48:42 +02:00
Pavel Djundik
2e3b95b9ed Fix input keybinds 2019-02-12 12:48:42 +02:00
Pavel Djundik
dbe6df1ab6 Fix clipboard "fixes" 2019-02-12 12:48:42 +02:00
Pavel Djundik
f0390dae63 Scroll to bottom 2019-02-12 12:48:42 +02:00
Pavel Djundik
8e64670b4e Keep condensed open when new messages arrive 2019-02-12 12:48:42 +02:00
Pavel Djundik
9ab5b9d791 Implement condensed messages in Vue 2019-02-12 12:48:42 +02:00
Pavel Djundik
0730825185 Convert message actions to Vue 2019-02-12 12:48:41 +02:00
Pavel Djundik
dee76adc0c Implement network collapsing in Vue 2019-02-12 12:48:41 +02:00
Pavel Djundik
1e09ccdb90 Implement user search in vue 2019-02-12 12:48:41 +02:00
Pavel Djundik
c20af6329b Use input model 2019-02-12 12:48:41 +02:00
Pavel Djundik
a229138ca6 Add connected state 2019-02-12 12:48:41 +02:00
Pavel Djundik
7b209e5d31 Missed a setting 2019-02-12 12:48:41 +02:00
Pavel Djundik
e28e13bd10 Make class settings work (colored nicks, etc) 2019-02-12 12:48:41 +02:00
Pavel Djundik
9290264fa5 Make user list and message list components 2019-02-12 12:48:41 +02:00
Pavel Djundik
ebb63f2742 Fix sending messages 2019-02-12 12:48:41 +02:00
Pavel Djundik
09fa3e5c86 Fix autocompletion 2019-02-12 12:48:41 +02:00
Pavel Djundik
0e930c9356 Make history loading work 2019-02-12 12:48:41 +02:00
Pavel Djundik
25840dfef4 Single chat container (with buffered input), user list in vue 2019-02-12 12:48:41 +02:00
Pavel Djundik
1d2a11729f Render chat/messages in Vue (mostly broken) 2019-02-12 12:48:41 +02:00
Pavel Djundik
631fd6138c Hide collapse button if there are no channels 2019-02-12 12:48:41 +02:00
Pavel Djundik
7e332b817d Channel list rendering with Vue
Co-Authored-By: Tim Miller-Williams <timmw@users.noreply.github.com>
2019-02-12 12:48:41 +02:00
Mattias Erming
d014f0cdae Use /js/libs instead of /components 2014-07-20 14:24:46 -07:00
Mattias Erming
0a3cdc1e9b Added 'Show more' functionality 2014-07-20 12:49:44 -07:00
Mattias Erming
fa2ec6de3d Added tooltips 2014-07-17 06:58:43 -07:00
Mattias Erming
966b4ef28e Added badges and notifications 2014-07-08 01:15:10 +02:00
Mattias Erming
85d2ef0d39 Responsive interface 2014-07-07 23:44:49 +02:00
Mattias Erming
9c2ffee7d0 Updated chat rendering 2014-07-07 14:43:37 +02:00
Mattias Erming
cb663777b4 Added window management 2014-07-07 02:44:31 +02:00
Mattias Erming
a1d5f52875 Added inputhistory 2014-07-06 17:58:57 +02:00
Mattias Erming
9491de4cb1 Added stickyscroll 2014-07-05 02:31:20 +02:00
Mattias Erming
f3f3858663 Render chat 2014-06-30 03:20:54 +02:00
Mattias Erming
fd2011764a Client-side stuff 2014-06-26 17:47:44 -07:00
Mattias Erming
8e4cdc3e9f Add models and plugins 2014-06-26 16:06:02 -07:00
Mattias Erming
7370b10c22 Begin rewrite 2014-06-26 09:14:45 -07:00
Mattias Erming
5736422a73 Update to Socket.IO 1.0 2014-06-20 03:33:49 +02:00
Mattias Erming
a8aa3f59d1 Update favico.js 2014-06-18 17:25:11 +02:00
Mattias Erming
3e153b9ebc Remove bower 2014-06-17 18:20:22 +02:00
Mattias Erming
2622ee9c62 Added bower and grunt-uglify task 2014-06-17 17:04:57 +02:00