Commit Graph

1292 Commits

Author SHA1 Message Date
Pavel Djundik
97cfd1a2bc Disable copy hack in Firefox 2019-10-31 16:49:09 +02:00
Jay2k1
c89aea3c1e add bidi support to messages, actions, previews etc 2019-10-24 16:53:29 +02:00
Pavel Djundik
63c638e9ad Fix uploader being initialized more than once 2019-10-21 18:57:01 +03:00
Pavel Djundik
d4198e4360
Merge pull request #3461 from thelounge/xpaw/reconnect-unread
Synchronize open channel on client on reconnection
2019-10-21 17:59:34 +03:00
Pavel Djundik
00e59000fd
Merge pull request #3460 from thelounge/xpaw/history-reconnect
Fix history not loading in certain cases after reconnect
2019-10-21 11:01:41 +03:00
Pavel Djundik
1ca16816c2 Synchronize open channel on client on reconnection 2019-10-17 13:54:30 +03:00
Pavel Djundik
ebfecc3e9d Fix client not loading messages after reconnect in channels with less than 100 total messages 2019-10-17 13:27:15 +03:00
Pavel Djundik
7687c90edc Synchronize user list correctly on reconnection 2019-10-15 20:33:03 +03:00
Jordan Day
493f9b1b6c Prefix channel before join 2019-10-05 14:12:22 -05:00
Jordan Day
037fa6d114 Allow tab completion in middle of input 2019-10-04 10:34:07 -05:00
Pavel Djundik
554c602230 Do not request upload token if there's an upload in process 2019-08-25 20:23:32 +03:00
Pavel Djundik
04e1e004da Reset upload input so the same file can be selected again 2019-08-25 20:14:46 +03:00
ollipa
e69e448396 add save button to edit topic input field 2019-08-11 17:34:01 +03:00
ollipa
49652fc40a make channel topic editable from user interface 2019-08-11 15:29:08 +03:00
Paul Lettington
c6b19d5144 Add keybind for cycling to the next unread window 2019-08-09 15:16:44 +01:00
Pavel Djundik
96efaed07a Open list channel on data updates 2019-08-04 14:03:04 +03:00
Pavel Djundik
72bebd8681
Merge pull request #3326 from thelounge/xpaw/theme-color
Allow themes to change theme-color
2019-08-03 22:28:20 +03:00
Pavel Djundik
85025a6840
Merge pull request #3329 from thelounge/xpaw/sw-error
Send service worker fetch errors to client
2019-08-03 22:27:53 +03:00
Pavel Djundik
932d9c809b Handle upload token requesting in a better way 2019-07-29 11:04:33 +03:00
Pavel Djundik
5041e82980 Send service worker fetch errors to client 2019-07-23 15:31:26 +03:00
Pavel Djundik
efa0aeb2c6 Allow themes to change theme-color 2019-07-22 19:50:04 +03:00
Alistair McKinlay
20816d509d Add check for outdated packages, and show on the help screen. 2019-07-19 13:33:09 +01:00
Alistair McKinlay
cc7b4e4817 Fix prettier breaking eslint-disable for confirm 2019-07-19 11:27:40 +01:00
Alistair McKinlay
133e7bf710 Format js/vue with prettier 2019-07-19 11:27:40 +01:00
Pavel Djundik
2b1197880d Merge network/channel objects when reconnecting 2019-07-17 12:07:49 +03:00
Pavel Djundik
bf2c6a6bcf Fix channel sorting to work across clients on Vue 2019-07-12 19:47:29 +03:00
Alistair McKinlay
4cbe72f635 Add support for command plugins 2019-07-02 17:02:05 +01:00
Pavel Djundik
1425130436 Update eslint and eslint-plugin-vue, fix rules 2019-06-25 11:51:47 +03:00
Pavel Djundik
7886e831bb Fix file uploading when lounge is proxied in a subfolder 2019-06-14 00:58:19 +03:00
Pavel Djundik
b95c8236bd Use @github's emoji data 2019-06-10 22:17:00 +03:00
Pavel Djundik
702aa6fdfa Change upload abort error message 2019-05-24 16:43:27 +03:00
SwayUser
4555cf7dcf Add paste file functionality 2019-05-20 10:34:56 +02:00
Pavel Djundik
830fdda91a Implement invite list 2019-04-15 14:38:11 +03:00
Pavel Djundik
12cf5ed070 Abort file upload if ChatInput component is destroyed 2019-03-18 10:28:18 +02:00
Pavel Djundik
f84e4199e9 Re-implement file uploads with old-school forms
Co-Authored-By: Richard Lewis <richrd@users.noreply.github.com>
2019-03-18 10:28:18 +02:00
Jérémie Astori
4faf7bfd3c
Remove network name from window title
It can be redundant on network tab.
2019-02-18 00:35:04 -05:00
Pavel Djundik
c8568b5429 Redirect pageup/pagedown without manually animating the scroll 2019-02-13 16:44:15 +02:00
Pavel Djundik
3f3a22aa1e Disable clicking on the currently active channel
channel.id does not change, which causes some wonky behaviour when the channel gets trimmed
2019-02-13 16:44:15 +02:00
Pavel Djundik
199df6b729 Fix hasRoleInChannel 2019-02-13 16:44:15 +02:00
Pavel Djundik
f3cf69796d Don't merge messages on client if server sends over 100 of them 2019-02-13 16:44:15 +02:00
Pavel Djundik
b066dc301e Move custom highlights to the server 2019-02-13 16:44:15 +02:00
Pavel Djundik
b02c3b6c17 Fix channel names in context menus 2019-02-13 16:44:15 +02:00
Pavel Djundik
987cc6d3b4 Restore custom highlights functionality 2019-02-12 12:49:06 +02:00
Pavel Djundik
c13840e029 Don't sync counters for showInActive messages 2019-02-12 12:49:06 +02:00
Pavel Djundik
42717e3dec Enable preserveWhitespace: false, add spaces where needed, fix whitespace when copying text 2019-02-12 12:49:06 +02:00
Pavel Djundik
5f0f745d10 Only send /join for current channel if there are no arguments 2019-02-12 12:49:06 +02:00
Pavel Djundik
7ba14fe4e3 Explicitly place * on actions in DOM 2019-02-12 12:49:06 +02:00
Pavel Djundik
99cda335ab Fix next/prev buttons in media viewer 2019-02-12 12:49:06 +02:00
Pavel Djundik
05303e4cf1 Fix link expand buttons not showing if auto-expand option is off 2019-02-12 12:49:05 +02:00
Pavel Djundik
4a0f319e91 Ignore server unread sync for active channel 2019-02-12 12:49:05 +02:00
Pavel Djundik
5ba0e33fb9 Skip network status updates for quit networks 2019-02-12 12:49:05 +02:00
Pavel Djundik
446ad6a5f4 Allow Vue devtools in production 2019-02-12 12:49:05 +02:00
Pavel Djundik
395be41728 Move message time formatting to Vue as computed 2019-02-12 12:49:05 +02:00
Richard Lewis
cc895e67ee Move date formatting to DateMarker and stop listening to daychange when no longer necessary. 2019-02-12 12:49:05 +02:00
Richard Lewis
7394e6b9f1 Update date markers vith vue instead of jQuery. 2019-02-12 12:49:05 +02:00
Pavel Djundik
7b15c53ed4 Rename some vue variables 2019-02-12 12:49:05 +02:00
Pavel Djundik
f526aa8b8b Do not navigate history when autocompleting 2019-02-12 12:49:05 +02:00
Pavel Djundik
4c103b467b Implement input history per channel 2019-02-12 12:49:05 +02:00
Pavel Djundik
b6e07a43f5 Make a consistent single funciton for updating notified/favicon/title 2019-02-12 12:49:05 +02:00
Pavel Djundik
4f3dbc4b8f Fix up how span elements are generated in message parser 2019-02-12 12:49:05 +02:00
Pavel Djundik
c3a1c77447 Rebase image uploading to Vue 2019-02-12 12:49:05 +02:00
Pavel Djundik
5c69fe104d Keep scroll to bottom and check 'more' button previews when toggling sidebars 2019-02-12 12:49:05 +02:00
Pavel Djundik
f45f9a83ee Remove unnecessary resize handler 2019-02-12 12:49:05 +02:00
Pavel Djundik
26dc37033c Make connection-error a vue state 2019-02-12 12:49:04 +02:00
Pavel Djundik
e2c65fd0de Fix titles on emojis 2019-02-12 12:49:04 +02:00
Pavel Djundik
7c8441a93b Clear user lists on all channels when disconnected from network 2019-02-12 12:48:45 +02:00
Pavel Djundik
1d4ab8fff1 Fix autocompletion menu not closing on send 2019-02-12 12:48:45 +02:00
Pavel Djundik
853f67ab40 Synchornize channel state to the client 2019-02-12 12:48:44 +02:00
Pavel Djundik
f2cbd1efed Pass PREFIX and CHANTYPES to parser 2019-02-12 12:48:44 +02:00
Pavel Djundik
cebfa6ac84 A little cleanup 2019-02-12 12:48:44 +02:00
Pavel Djundik
104692007f Use attr() instead of data() 2019-02-12 12:48:44 +02:00
Pavel Djundik
a10ac4e7da Make a single function to initialize channel variables 2019-02-12 12:48:44 +02:00
Pavel Djundik
ad0f638487 Add jump-to-bottom arrow when scrolled up 2019-02-12 12:48:44 +02:00
Pavel Djundik
c70b4d4c80 Fix unread marker being off by one on the server 2019-02-12 12:48:44 +02:00
Pavel Djundik
0e7880a049 Fix autocompleting multiple times not working 2019-02-12 12:48:44 +02:00
Pavel Djundik
1bfaef1985 Keep pendingMessage on reconnect 2019-02-12 12:48:44 +02:00
Pavel Djundik
0ba6200bb7 Keep scrolledToBottom on reconnect 2019-02-12 12:48:44 +02:00
Pavel Djundik
86ddce974d Update lobby name correctly when editing network 2019-02-12 12:48:44 +02:00
Pavel Djundik
c42fc55c6f Fix reconnection state 2019-02-12 12:48:44 +02:00
Pavel Djundik
04d86a3550 Fix channel sort not working 2019-02-12 12:48:44 +02:00
Pavel Djundik
36b6fdcc88 Reference scrolledToBottom variable instead of recalculating on message received 2019-02-12 12:48:44 +02:00
Pavel Djundik
a15b10ca45 Revert slideout.js changes 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
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
8e130f0259 Fix incorrectly trimming channel 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
797731262a Fix menu swiping 2019-02-12 12:48:43 +02:00
Pavel Djundik
d9206c1087 Check if element exists before trying to change message 2019-02-12 12:48:43 +02:00
Pavel Djundik
b88a186d05 Fix history not loading after trimming 2019-02-12 12:48:43 +02:00
Pavel Djundik
6a82114b62 Cleanup msg event 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
80a12d98b4 Update topic in channel state 2019-02-12 12:48:43 +02:00
Pavel Djundik
e92f5d573b Remove extra invalid class on links in chat 2019-02-12 12:48:43 +02:00
Pavel Djundik
a8c777c797 Remove render.js 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
a5625ba203 Remove scroll code from more event 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
c6262a36e6 Fix tab completion not updating model 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
771739cf94 Port ignore list to Vue 2019-02-12 12:48:42 +02:00
Pavel Djundik
739d44b561 Trim channel when switching away from it 2019-02-12 12:48:42 +02:00
Pavel Djundik
48187a0260 Delete userlist.js 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
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
aa1446c19d Some fixes for unread marker 2019-02-12 12:48:42 +02:00
Pavel Djundik
f9967a92c7 Remove console.log 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
084e01cf46 Implement message trimming 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
1831e2e63e Fix inline channel links 2019-02-12 12:48:42 +02:00
Pavel Djundik
eff6dcb514 Fix context menu opening wrong thing 2019-02-12 12:48:42 +02:00
Pavel Djundik
aea779cfdf Remove some unnecessary code 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
e0e48925b5 Remove input history 2019-02-12 12:48:41 +02:00
Pavel Djundik
a229138ca6 Add connected state 2019-02-12 12:48:41 +02:00
Pavel Djundik
3300276c27 Delete some files and undo server change 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
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
0b269423aa Remove remaining DOM references to badge/highlight 2019-02-12 12:48:41 +02:00
Pavel Djundik
d4a23ffc98 Fix loading disappearing too soon 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
Pavel Djundik
d33021773c Fix up textarea growing to avoid rounding issues in Chrome 2019-02-05 23:24:30 +02:00
Pavel Djundik
9003768d56 Fix up link insertion after uploads to be saner 2019-01-30 20:00:59 +02:00
Pavel Djundik
bb6a9657a0 Fix touch position being null when touching with multiple fingers 2018-10-15 14:54:33 +03:00
William Boman
658dc5a3a2 fix automatically closing sidebar on some mobile viewports
Co-authored-by: Pavel Djundik <github@xpaw.me>

Mobile viewports whose width is equal to the upper boundary
of the mobile viewport breakpoint would not automatically
close the sidebar when selecting an item in it.

Closes #2783.
2018-09-19 09:37:03 +02:00
Alistair McKinlay
35c328b557 Add 3 commands that were missing on client autocomplete 2018-09-06 09:00:39 +01:00
Pavel Djundik
ce212e001c Add file uploading support
Co-Authored-By: Max Leiter <hello@maxleiter.com>
Co-Authored-By: Jérémie Astori <astorije@users.noreply.github.com>
2018-09-03 10:30:05 +03:00
Pavel Djundik
b3c282f663
Merge pull request #2701 from adamus1red/adamus1red/iframe-localstorage
Add `try`/`catch` to `localStorage` methods
2018-09-01 11:18:55 +03:00