Commit Graph

432 Commits

Author SHA1 Message Date
Pavel Djundik
de6d6906f8 Disallow some invalid characters in nicknames and usernames
@, !, : and whitespace are disallowed due to being part of the protocol/hostmask
2020-01-21 15:44:48 +02:00
Pavel Djundik
efc421c0a6 Display icon in footer when an update is available 2020-01-17 12:03:16 +02:00
Pavel Djundik
0bdac63953 Check for TL updates on server start 2020-01-17 12:03:14 +02:00
Pavel Djundik
fa57814678
Merge pull request #3684 from thelounge/richrd/style-loading
Load styles from vue components, fix hot reload
2020-01-10 20:03:24 +02:00
Richard Lewis
23ac0fef32 Load styles from vue components, fix hot reload
Fixes #3615
2020-01-08 16:02:09 +02:00
Pavel Djundik
1c190d1adb Remove the only use of Vue.filter 2020-01-08 11:11:44 +02:00
Pavel Djundik
5c64eaf41e Show an icon for "show in active" messages 2020-01-05 19:44:03 +02:00
Pavel Djundik
c4ddf6d93e Check that usernameInput ref exists 2020-01-03 19:51:38 +02:00
Pavel Djundik
1870145674 Add keybinds to expand and collapse networks
Fixes #3523
2020-01-02 22:45:21 +02:00
Pavel Djundik
ff4fd0a13d Add keyboard shortcuts to toggle server/user list
Fixes #2345
2020-01-02 22:24:20 +02:00
Pavel Djundik
ba3e0dae79
Merge pull request #3645 from thelounge/xpaw/default-port
Switch default ports when toggling TLS
2020-01-02 10:46:38 +02:00
Pavel Djundik
093ef2ff55
Merge pull request #3628 from thelounge/xpaw/prefetch-error
Collapse prefetch errors by default, and correctly track user toggle
2019-12-31 21:31:35 +02:00
Pavel Djundik
a8e7cfd2cd
Merge pull request #3649 from Mikaela/network-command-helptext
NetworkForm.vue: clarify autoconnect command help text
2019-12-31 21:31:27 +02:00
Mikaela Suomalainen
17588560e6
NetworkForm.vue: clarify autoconnect command help text 2019-12-30 18:39:56 +02:00
Pavel Djundik
c055a07f45 Switch default ports when toggling TLS 2019-12-28 23:08:46 +02:00
Pavel Djundik
dbfa5c5746 Restrict image viewer bounds while moving 2019-12-24 18:36:12 +02:00
Pavel Djundik
d2932ccea8 Correctly track user toggle of previews 2019-12-23 12:26:57 +02:00
Pavel Djundik
769585e72d Collapse prefetch errors by default 2019-12-23 12:15:23 +02:00
Pavel Djundik
7c5f4c404d Update status messages tooltip 2019-12-20 11:59:26 +02:00
Pavel Djundik
356a896fe2
Merge pull request #3603 from thelounge/xpaw/condensed-more
Send 100 actual messages when requesting history with hidden or condensed status messages
2019-12-19 17:32:41 +02:00
Richard Lewis
7a8bb0376c Add previous-source class to messages when previous message has same sender. 2019-12-19 15:04:31 +00:00
Pavel Djundik
749e7f4469
Merge pull request #3609 from thelounge/xpaw/topic-edit
Remove querySelector in topic edit, fix save button style
2019-12-19 15:26:59 +02:00
Richard Lewis
d2f0590c73 Fix class targeting 2019-12-19 13:22:04 +00:00
Pavel Djundik
60ca8850d9 Focus topic edit input by using $refs 2019-12-19 15:06:33 +02:00
Richard Lewis
8cb49ae56a Relocate not-secure and not-connected classes. 2019-12-19 13:00:24 +00:00
Pavel Djundik
a9f97ddf22 Send 100 actual messages when requesting history with hidden or condensed status messages 2019-12-18 00:14:36 +02:00
Pavel Djundik
4a345eb6d9 Convert constants.js to commonjs 2019-12-18 00:14:36 +02:00
Pavel Djundik
86341f063c
Merge pull request #3596 from thelounge/xpaw/friendly-size
Use `friendlysize` helper consistently
2019-12-17 15:43:58 +02:00
Pavel Djundik
f1d806a80f
Merge pull request #3600 from thelounge/xpaw/condensed-set
Use Set() for condensed types
2019-12-17 15:43:50 +02:00
Pavel Djundik
f3b383ce63 Use Set() for condensed types 2019-12-17 12:48:12 +02:00
Pavel Djundik
408eb75a88 Fix page and arrow keys not working correctly 2019-12-17 11:21:22 +02:00
Pavel Djundik
f2bf1fa90a Use friendlysize helper consistently
Co-Authored-By: fnutt <fnutt@users.noreply.github.com>
2019-12-16 22:00:35 +02:00
Pavel Djundik
61369b3e5a
Merge pull request #3586 from thelounge/xpaw/msg-data-type
Use data-type attribute on .msg
2019-12-15 19:10:30 +02:00
Pavel Djundik
98708a2ebd
Merge pull request #3588 from thelounge/xpaw/hide-settings
Hide awaymessage/highlights settings in public mode
2019-12-15 19:10:21 +02:00
Pavel Djundik
935b193a64 Round down image transform in image viewer to fix blurry images 2019-12-15 18:13:52 +02:00
Pavel Djundik
317f4fb991 Hide awaymessage/highlights settings in public mode 2019-12-15 17:31:03 +02:00
Pavel Djundik
6731e584da Use data-type on .msg 2019-12-15 13:46:43 +02:00
Pavel Djundik
05af830a15 Remove experimental warning from sync 2019-12-14 22:30:34 +02:00
Pavel Djundik
f00c71c81b Use v-show to hide load more button 2019-12-14 22:30:34 +02:00
Pavel Djundik
1495ce3772 Remove bootstrap classes from settings 2019-12-14 22:30:34 +02:00
Pavel Djundik
0e9fdf9e08 Remove float from changelog and version link 2019-12-14 22:29:50 +02:00
Pavel Djundik
b592657f7d Style connect window without bootstrap 2019-12-14 22:29:50 +02:00
Pavel Djundik
e8ed36bfd6 Fix link previews settings not being visible 2019-12-14 21:53:13 +02:00
Pavel Djundik
87244fb4d5
Merge pull request #3570 from thelounge/xpaw/fix-3568
Allow empty parameter overrides
2019-12-11 19:34:04 +02:00
Pavel Djundik
0e3d7bb5bd
Merge pull request #3571 from thelounge/xpaw/fix-3569
Disable protocol register button if lockNetwork is enabled
2019-12-11 19:33:56 +02:00
Pavel Djundik
74cc1722ea Disable protocol register button if lockNetwork is enabled
Fixes #3569
2019-12-10 23:24:54 +02:00
Pavel Djundik
58545353f7 Allow empty parameter overrides
Fixes #3568
2019-12-10 23:20:45 +02:00
Pavel Djundik
fd6bc3ecb6 Fix up css refactoring 2019-12-10 19:25:32 +02:00
Richard Lewis
c022377c49 Refactor some CSS selectors. 2019-12-10 14:19:31 +02:00
Pavel Djundik
c260e1a82f
Merge pull request #3549 from thelounge/xpaw/client-setting-awayMessage
Make client awayMessage a client setting
2019-12-03 10:30:21 +02:00
Pavel Djundik
3dae767937 Make client awayMessage a client setting 2019-12-02 12:24:22 +02:00
Pavel Djundik
cf0a4999e9 Fix sidebar not opening when lounge is open in a background tab 2019-12-01 20:20:37 +02:00
Pavel Djundik
f0dfb909dd
Merge pull request #3537 from thelounge/xpaw/fix-kick-spacing
Fix spacing in kick reason
2019-11-28 12:24:17 +02:00
Pavel Djundik
e923696bb0 Fix spacing in kick reason 2019-11-27 20:18:20 +02:00
Pavel Djundik
c19cbd7ffd Do not compute filteredUsers if there's no search input 2019-11-27 19:56:21 +02:00
Pavel Djundik
446f99f62a
Merge pull request #3535 from thelounge/richrd/fix-keybinds-in-input
Fix keybinds when chat input is focused.
2019-11-27 16:49:04 +02:00
Richard Lewis
b089b92b1e Fix keybinds when chat input is focused. 2019-11-27 14:28:54 +00:00
Richard Lewis
eb0094618e Show pen icon if channel has a pending message, unless it's the active channel 2019-11-26 22:29:35 +00:00
Pavel Djundik
c2ed3fae56 Improve link preview loading 2019-11-25 21:37:51 +02:00
Pavel Djundik
c70d0fb224 Display a badge when built in development mode 2019-11-25 20:53:22 +02:00
Pavel Djundik
049e9a1680 Prevent cursor moving when navigating user list 2019-11-25 20:13:20 +02:00
Pavel Djundik
57ba119edb Hide auto completion menu when channel changes 2019-11-25 20:13:19 +02:00
Pavel Djundik
ec85372132 Fix uri handling and add tests 2019-11-25 20:13:18 +02:00
Pavel Djundik
90ec37ce82 Replace confirm() with context menu
window.confirm() blocks the javascript thread and will cause the socket connection to drop
2019-11-25 20:13:18 +02:00
Pavel Djundik
9b9c547e8c Remove UsernameFiltered and fix colored mentions 2019-11-25 20:13:17 +02:00
Richard Lewis
dca6543070 Implement closeChannel method. 2019-11-25 20:13:17 +02:00
Pavel Djundik
2a6c57abaa Fix context menu generation 2019-11-25 20:13:16 +02:00
Pavel Djundik
49dc6ffd8f Fix client tests 2019-11-25 20:13:15 +02:00
Pavel Djundik
0ac9601a3a Remove some data attributes 2019-11-25 20:13:15 +02:00
Pavel Djundik
e76d5d2ef9 Port keybinds to vue state; remove jQuery 2019-11-25 20:13:14 +02:00
Pavel Djundik
f00dfc7524 Move upload-overlay to viewport 2019-11-25 20:13:14 +02:00
Pavel Djundik
21bbe7d4c3 Make sense out of settings sync and force sync 2019-11-25 20:13:13 +02:00
Pavel Djundik
85907f54ba Improve context menus 2019-11-25 20:13:13 +02:00
Pavel Djundik
9147772cb2 Use mousetrap for escape binds 2019-11-25 20:13:12 +02:00
Pavel Djundik
0cb8dc73bb Use es6 import syntax 2019-11-25 20:13:12 +02:00
Pavel Djundik
b2cc8d9531 Fix web app install button 2019-11-25 20:13:11 +02:00
Pavel Djundik
fcf7488e1e Remove jquery from autocompletion 2019-11-25 20:13:11 +02:00
Richard Lewis
a71472a427 Port contextmenus to Vue 2019-11-25 20:13:11 +02:00
Pavel Djundik
111c3665f9 Replace moment with dayjs
Drop in replacement, but smaller
2019-11-25 20:13:10 +02:00
Pavel Djundik
7584f47c7d Cleanup webpush code 2019-11-25 20:13:10 +02:00
Pavel Djundik
17365d9967 Remove references to vue.js 2019-11-25 20:13:09 +02:00
Pavel Djundik
54a1e11f50 Move some init code around 2019-11-25 20:13:09 +02:00
Pavel Djundik
033f565c0e Remove isFileUploadEnabled 2019-11-25 20:13:08 +02:00
Pavel Djundik
a4490bf1d6 Fix up connect uri parsing, use direct router references
Co-Authored-By: Tim Miller-Williams <timmw@users.noreply.github.com>
2019-11-25 20:13:08 +02:00
Pavel Djundik
f2309c7c89 Improve router experience 2019-11-25 20:13:07 +02:00
Pavel Djundik
5a0f1c1f4e Replace getActiveWindowComponent with an event 2019-11-25 20:13:07 +02:00
Pavel Djundik
3a6b075745 Do not focus channel when close button clicked
This fixes leaving channels and removing networks jumping to it before being removed
2019-11-25 20:13:06 +02:00
Tim Miller-Williams
d5ebdc943c Replace isNotified state with getter 2019-11-25 20:13:05 +02:00
Tim Miller-Williams
cbaf4db339 Replace synchronizeNotifiedState with a getter & watcher 2019-11-25 20:13:05 +02:00
Tim Miller-Williams
6a15fd95f0 Refactor userList behaviour to not use methods in root Vue instance 2019-11-25 20:13:04 +02:00
Tim Miller-Williams
dd9efad23c Refactor sidebar behaviour to no longer use methods in root Vue instance 2019-11-25 20:13:04 +02:00
Tim Miller-Williams
1adbbdda2a Fix bug with joining new channels 2019-11-25 20:13:03 +02:00
Tim Miller-Williams
347802a4b6 Refactor Apple keyboard logic to be more explicit 2019-11-25 20:13:03 +02:00
Richard Lewis
94bdff4fa0 Implement mirroring nick to username field in vue. 2019-11-25 20:13:02 +02:00
Richard Lewis
0c7db6dffe Move url parameter handling to vue 2019-11-25 20:13:02 +02:00
Pavel Djundik
80c6cfbd7c Use switchToChannel instead of click 2019-11-25 20:13:00 +02:00
Tim Miller-Williams
25da9dd63e Rework settings such that all behavior for each setting is kept together
Behavior includes: default value, whether setting should be synced, and
an optional 'apply' callback which is called when setting is changed in
Vuex.
2019-11-25 20:12:59 +02:00
Pavel Djundik
a1f183f216 Cleanup auth flow 2019-11-25 20:12:58 +02:00
Pavel Djundik
fc1c9568e2 Rename helpers folder, move some vue filters 2019-11-25 20:12:58 +02:00
Pavel Djundik
b164e95290 Remove DOM access from webpush 2019-11-25 20:12:57 +02:00
Pavel Djundik
6b8fea8afc Avoid emitting multiple events to the server when collapsing/expanding channel previews
Fixes #1377
2019-11-25 20:12:56 +02:00
Pavel Djundik
c26de4cf6a Move options to vuex
Co-Authored-By: Tim Miller-Williams <timmw@users.noreply.github.com>
2019-11-25 20:12:56 +02:00
Pavel Djundik
743ae987ec Fix up login and initial window 2019-11-25 20:12:55 +02:00
Pavel Djundik
2b5a13a043 Register routes after init 2019-11-25 20:12:55 +02:00
Pavel Djundik
aba2487126 Make findChannel and findNetwork getters 2019-11-25 20:12:54 +02:00
Pavel Djundik
2f635069e0 Move vuex state to a separate file and reorganize some code
Co-Authored-By: Tim Miller-Williams <timmw@users.noreply.github.com>
2019-11-25 20:12:54 +02:00
Pavel Djundik
c4d6afe3d6 Fix removing networks 2019-11-25 20:12:53 +02:00
Pavel Djundik
c8b22b2df3 Fix up network editing 2019-11-25 20:12:52 +02:00
Richard Lewis
8fa42c5c48 Fix network editing in vue and use absolute urls in router links. 2019-11-25 20:12:52 +02:00
Richard Lewis
2049a16d64 Implement switchToChannel method. 2019-11-25 20:12:51 +02:00
Richard Lewis
c6dca616e6 Remove jQuery from InlineChannel.vue and JoinChannel.vue. 2019-11-25 20:12:50 +02:00
Richard Lewis
c393dd1a11 Fixes to vue routing and activeWindow. 2019-11-25 20:12:50 +02:00
Pavel Djundik
f76ad57c63 Move confirmExit 2019-11-25 20:12:50 +02:00
Pavel Djundik
431221c21e Add rel=noopener on changelog links 2019-11-25 20:12:49 +02:00
Richard Lewis
737afc759b Implement vue-router. 2019-11-25 20:12:48 +02:00
Pavel Djundik
af0d48de72 Create InlineChannel component 2019-11-25 20:12:48 +02:00
Pavel Djundik
4f6565c24a Add active class to footer buttons 2019-11-25 20:12:47 +02:00
Pavel Djundik
5c4b402341 Fancy image interactions in the image viewer
Desktop:
- Mousewheel to zoom in/out (hold ctrl to move up/down)
- If zoomed, drag around with mouse to move

Mobile:
- Move around with one finger
- Change zoom with two fingers
2019-11-25 20:12:47 +02:00
Pavel Djundik
70a795dced Start porting image viewer to Vue 2019-11-25 20:12:33 +02:00
Richard Lewis
2d8417cd8b Patch changelog html in Vue. 2019-11-25 20:12:33 +02:00
Pavel Djundik
cd36555b63 Import socket in changelog 2019-11-25 20:12:32 +02:00
Richard Lewis
ef500f12a1 Implement changelog in Vue. 2019-11-25 20:12:32 +02:00
Richard Lewis
055ba5caff Remove sidebar wrapper div. 2019-11-25 20:12:31 +02:00
Richard Lewis
b95f89c4c2 Implement version checker in Vue. 2019-11-25 20:12:31 +02:00
Richard Lewis
2b602ca333 Move slideout menu logic to Vue. 2019-11-25 20:12:31 +02:00
Richard Lewis
ee92de0ff7 Fix changing theme color and properly sync settings. 2019-11-25 20:12:30 +02:00
Richard Lewis
b5f2e7f0cc Fix lint and format with prettier. 2019-11-25 20:12:30 +02:00
Richard Lewis
e0ec340de8 Fix oversights during rebase. 2019-11-25 20:12:29 +02:00
Richard Lewis
b994ecd1f1 Fix hash navigation for sidebar footer buttons. 2019-11-25 20:12:29 +02:00
Richard Lewis
7fd48d8155 Fix enabling and disabling push notifications. 2019-11-25 20:12:28 +02:00
Richard Lewis
467ebab31f Move most side bar and user list interactions to vue. 2019-11-25 20:12:28 +02:00
Richard Lewis
e73bf1e9a7 Move closeChan functionality to vue. 2019-11-25 20:12:27 +02:00
Richard Lewis
5b17a2fbe4 Port session list to vue. 2019-11-25 20:12:27 +02:00
Richard Lewis
111beb5f12 Run updateSetting from Settings component and get rid of unused code. 2019-11-25 20:12:26 +02:00
Richard Lewis
6c10a2a6cf Port part of the settings functionality to vue. 2019-11-25 20:12:26 +02:00
Richard Lewis
08635beb61 Fix lint 2019-11-25 20:12:25 +02:00
Richard Lewis
5a3ad194e8 Move connect and network edit views to vue. 2019-11-25 20:12:25 +02:00
Richard Lewis
c4a3108dc0 Move activeWindow to vuex. 2019-11-25 20:12:24 +02:00
Richard Lewis
0da059118d Move isNotified to vuex. 2019-11-25 20:12:24 +02:00
Richard Lewis
69cb891b1a Add vuex and move isConnected to vuex state. 2019-11-25 20:12:23 +02:00
Richard Lewis
e71360ad39 Move sidebar to its own component. 2019-11-25 20:12:23 +02:00
Pavel Djundik
3f7889e534 Move changelog window to Vue 2019-11-25 20:12:22 +02:00
Pavel Djundik
70d9d8d226 Move help window to Vue 2019-11-25 20:12:22 +02:00
Pavel Djundik
71f54f6a5d Move some settings to Vue 2019-11-25 20:12:22 +02:00
Pavel Djundik
09e12affe8 Begin moving windows to Vue 2019-11-25 20:12:21 +02:00
Pavel Djundik
74fd296d61
Merge pull request #3490 from thelounge/xpaw/showinactive-fix
Fix potential issue of history not loading when `showInActive` is the first message
2019-11-11 12:01:41 +02:00
Pavel Djundik
a13bcb8e93 Format prettier after update 2019-11-09 10:55:50 +02:00
Raqbit
95cc9a47fb Add file size to link preview 2019-11-07 16:58:28 +01:00
Pavel Djundik
3ed54a3e11 Remove away/back condense as it won't be in channels 2019-11-05 12:37:55 +02:00
Pavel Djundik
75eb812f05 Fix potential issue of history not loading when showInActive is set 2019-11-01 16:43:55 +02:00