Commit Graph

2162 Commits

Author SHA1 Message Date
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
d0444d7d7f Improve disconnected message in public mode 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
91e0349486 Use global Vue calls instead of vueApp reference 2019-11-25 20:13:07 +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
Pavel Djundik
2044bc88dd Switch channels on quit only if current network is being quit 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
16f8304c4e Refactor title to rely on Vuex state reactivity 2019-11-25 20:13:04 +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
Richard Lewis
897f238c38 Disallow navigating to invalid channels 2019-11-25 20:13:01 +02:00
Richard Lewis
5c0a7722a4 Disallow navigating to non-existing routes 2019-11-25 20:13:01 +02:00
Richard Lewis
d232ef1557 Improve vue routing. 2019-11-25 20:13:00 +02:00
Pavel Djundik
916da73108 Remove jquery from input focus event 2019-11-25 20:13:00 +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
Tim Miller-Williams
703848919c Separate connection event handlers from socket.js 2019-11-25 20:12:59 +02:00
Tim Miller-Williams
a2a2aff2bc Remove unnecessary options.initialized switch 2019-11-25 20:12:58 +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
8972242863 Remove jquery from msg event 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
742cd8d4bf Move most things out of utils 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
3c43a2bfd3 Delete renderPreview.js 2019-11-25 20:12:53 +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
Pavel Djundik
e845e17a63 Convert some clicks to router push 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
7355c91839 Move context menu events to factory 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
af777106bf Remove handlebars and html-minifier 2019-11-25 20:12:46 +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
addd4124bf Close sidebar when opening settings, help etc. 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
901d96c8cc
Merge pull request #3494 from thelounge/xpaw/remove-away-chan
Remove away messages from channels
2019-11-05 12:43:43 +02: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
48713428b7 Import primer-tooltips css 2019-11-02 12:45:41 +02:00
Pavel Djundik
75eb812f05 Fix potential issue of history not loading when showInActive is set 2019-11-01 16:43:55 +02:00
Pavel Djundik
959ec5b598
Merge pull request #3471 from MiniDigger/feature/plugin-messages
Add message type for plugins
2019-11-01 16:41:41 +02:00
Pavel Djundik
5b3399f95a Use postcss to optimize css 2019-11-01 13:47:18 +02:00
Pavel Djundik
1f2ca91d89
Merge pull request #3486 from thelounge/xpaw/firefox-copy-hack
Disable copy hack in Firefox
2019-11-01 13:15:23 +02:00
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
MiniDigger
8f7bee8dd3 Add icon to message 2019-10-22 19:38:13 +02:00
MiniDigger
19d69ba4c3 Add message type for plugins 2019-10-22 18:44:05 +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
2273c913ac
Merge pull request #3451 from thelounge/xpaw/heading-contrast
Increase contrast of headers in windows
2019-10-21 11:01:47 +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
ee91217d98
Merge pull request #3453 from thelounge/xpaw/sync-users-reconnect
Synchronize user list correctly on reconnection
2019-10-21 11:01:33 +03:00
Pavel Djundik
4e17067a07 Update context and auto complete menu styles 2019-10-20 00:36:40 +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
51147f35b2 Do not try loading history while disconnected 2019-10-17 12:38:46 +03:00
Pavel Djundik
7687c90edc Synchronize user list correctly on reconnection 2019-10-15 20:33:03 +03:00
Pavel Djundik
ba517bbac9 Increase contrast of headers in windows 2019-10-14 17:30:35 +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
Jordan Day
deb5d2d090 Key condensed messages by first message in array 2019-10-04 08:37:12 -05:00
Pavel Djundik
d09a35b129 Use default cursor for active channels 2019-09-16 11:30:30 +03:00
Pavel Djundik
5ccd6b76c0
Merge pull request #3382 from thelounge/xpaw/upload-fixes
Some fixes in file uploading
2019-08-27 12:21:03 +03: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
Gunnvaldr Pope
2b91bf0374
Adds data-current-channel to #chat-container
Allows for broader customization of CSS per channel(s).
2019-08-13 16:24:34 -05: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
ecb4dd9675
Merge pull request #3335 from thelounge/xpaw/upload-sanity
Handle upload token requesting in a better way
2019-08-03 22:23:20 +03:00
Pavel Djundik
c8819e9a13 Fix formatting hotkeys on non english locales 2019-08-03 14:16:13 +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
Pavel Djundik
2500602d3b
Merge pull request #3320 from thelounge/xpaw/fix-3309
Fix channel list not working on some touch devices
2019-07-19 22:42:41 +03:00
Pavel Djundik
ba356ae34c
Merge pull request #1873 from thelounge/astorije/outlines
Add custom focus outlines for inputs and green buttons
2019-07-19 16:45:15 +03:00
Jérémie Astori
e246c06c32 Do not silence outline of all elements, and add custom outline where possible
- Tweak outlines
- Consolidate focus shadows between inputs and buttons, apply custom focus to whole page (i.e. on "Join a channel" form), cleanup
- Do not add custom outlines on checkboxes/radios as browsers are not doing this too well
- Apply hover effect on all inputs, not just in `#windows`
2019-07-19 16:12:15 +03:00
Alistair McKinlay
20816d509d Add check for outdated packages, and show on the help screen. 2019-07-19 13:33:09 +01:00
Pavel Djundik
a7bdc99d47 Fix channel list not working on some touch devices
Fixes #3309
2019-07-19 14:27:59 +03:00
Alistair McKinlay
cc7b4e4817 Fix prettier breaking eslint-disable for confirm 2019-07-19 11:27:40 +01:00
Jérémie Astori
2fbdbead55 WIP Improve Prettified Vue code 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
0ff5a7df67
Merge pull request #3305 from thelounge/xpaw/init-reconnect-state
Merge network/channel objects when reconnecting to keep object references
2019-07-18 12:40:44 +03:00
Pavel Djundik
03233c3f4d
Merge pull request #3310 from thelounge/xpaw/improve-raw
Improve raw messages
2019-07-18 11:58:46 +03:00