Commit graph

346 commits

Author SHA1 Message Date
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
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
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 51147f35b2 Do not try loading history while disconnected 2019-10-17 12:38:46 +03:00
Jordan Day 493f9b1b6c Prefix channel before join 2019-10-05 14:12:22 -05:00
Jordan Day deb5d2d090 Key condensed messages by first message in array 2019-10-04 08:37:12 -05: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
Pavel Djundik c8819e9a13 Fix formatting hotkeys on non english locales 2019-08-03 14:16:13 +03:00
Pavel Djundik a7bdc99d47 Fix channel list not working on some touch devices
Fixes #3309
2019-07-19 14:27:59 +03: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 e04bfe39bf Improve raw messages 2019-07-17 10:34:23 +03:00
Pavel Djundik b2e5be33d6 A better way of disabling sorting on touch devices 2019-07-12 13:43:47 +03:00
Pavel Djundik 1425130436 Update eslint and eslint-plugin-vue, fix rules 2019-06-25 11:51:47 +03:00
Pavel Djundik 721c0d4374
Disable touch tooltip on "jump to recent messages" button
Fixes #3089
2019-05-13 14:58:57 +03:00
Pavel Djundik 830fdda91a Implement invite list 2019-04-15 14:38:11 +03:00
Pavel Djundik f9459ee1c3 Fix up sorting channel styling 2019-03-27 12:23:50 +02:00
Pavel Djundik 12cf5ed070 Abort file upload if ChatInput component is destroyed 2019-03-18 10:28:18 +02:00
Jérémie Astori f7ebff0b67
Merge pull request #3109 from thelounge/xpaw/chan-mode-is
Display current channel mode on /mode command
2019-03-16 21:48:22 -04:00
Pavel Djundik 7df26dc373 Add aria-label on link preview toggle button 2019-03-13 19:08:32 +02:00
Pavel Djundik 71332f59d9 Display current channel mode on /mode command
Fixes #885
2019-03-07 12:57:31 +02:00
Jérémie Astori f84d764822
Fix linting on a violation shipped previously... 2019-02-27 02:28:52 -05:00
Jérémie Astori f8b5983f2c
Use Vue to show/hide insecure/disconnected icons instead of CSS 2019-02-27 02:25:44 -05:00
Jérémie Astori 848186d14b
Merge pull request #3083 from thelounge/astorije/eslint-vue-closing-bracket-newline
Move closing brackets on a new line in Vue files
2019-02-27 02:07:28 -05:00
Jérémie Astori e173b84fdb
Show/Hide parted channel icon/styling using v-if instead of CSS display property 2019-02-26 01:26:45 -05:00
Jérémie Astori 0812ffc2e7
Run ESLint autofix after requiring new line on closing brackets 2019-02-25 00:57:48 -05:00
Jérémie Astori f8a39a0ea8
Display a broken link icon and red text color when not joined on a channel 2019-02-25 00:21:40 -05:00
Jérémie Astori 0c4e35b309
Merge pull request #3063 from thelounge/astorije/scroll-down-btn-ui
Improve scroll-down button UI
2019-02-18 14:12:46 -05:00
Jérémie Astori dadccb7665
Fix casing of "Upload file" tooltip 2019-02-18 02:19:44 -05:00
Jérémie Astori 8b98c2c93c
Add a tooltip on scroll-down button hover 2019-02-18 01:29:08 -05:00
Pavel Djundik c8568b5429 Redirect pageup/pagedown without manually animating the scroll 2019-02-13 16:44:15 +02:00
Pavel Djundik a26fcb45b4 Change (parted) to a class name 2019-02-13 16:44:15 +02:00
Pavel Djundik 40bf9ee8ba Reset active user when leaving user list with mouse 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 19693bc9b7 Update Vue packages 2019-02-13 16:44:15 +02:00
Pavel Djundik 2b653a30d6 Tweak connection error spacing 2019-02-12 12:49:06 +02:00
Pavel Djundik 71b3acb152 Rename hotkeys array 2019-02-12 12:49:06 +02:00
Pavel Djundik c33326e25e Update client/components/MessageTypes/whois.vue 2019-02-12 12:49:06 +02:00
Pavel Djundik 89355e50c3 Put unreads and highlights in aria-label/title in the channel list 2019-02-12 12:49:06 +02:00
Pavel Djundik 759e69ed07 Handle default preview state after loading 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 7ba14fe4e3 Explicitly place * on actions in DOM 2019-02-12 12:49:06 +02:00
Pavel Djundik 6d1d2e006a Remove extra .text span as its no longer needed 2019-02-12 12:49:06 +02:00
Pavel Djundik 4d400b6ace Hide scroll down button entirely with css to fix some issues 2019-02-12 12:49:06 +02:00
Pavel Djundik e5b3c518e2 Do not show toggle arrow if link data is still loading 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 7d7005c8af Fix keepScrollPosition on condensed messages 2019-02-12 12:49:05 +02:00
Pavel Djundik 893d59e7c4 Skip scroll event which is called after setting scrollTop 2019-02-12 12:49:05 +02:00
Pavel Djundik 3c4a9efe7e Fix lodash not being tree shaked properly 2019-02-12 12:49:05 +02:00
Pavel Djundik def494533b Use native date constructor to calculate timeout until midnight 2019-02-12 12:49:05 +02:00
Pavel Djundik f1994352bd Fix scroll button on iOS 2019-02-12 12:49:05 +02:00
Richard Lewis caf728a2a7 Instrument tests with nyc instead of istanbul-instrumenter-loader. 2019-02-12 12:49:05 +02:00
Pavel Djundik 7b3f7d1c59 Fix clicking red banner not hiding the error 2019-02-12 12:49:05 +02:00
Pavel Djundik b3e86dbab4 Fix unread markers not rendering with hidden status messages
Co-Authored-By: Richard Lewis <richrd@users.noreply.github.com>
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 74edfcaa04 Limit input history to a 100 entries. 2019-02-12 12:49:05 +02:00
Pavel Djundik d1185da9eb Fade buttons when disabled 2019-02-12 12:49:05 +02:00
Richard Lewis cd76512619 Disable upload button instead of removing it from dom. 2019-02-12 12:49:05 +02:00
Pavel Djundik dd686b563d Remove tests, fix lint, update packages 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 c3a1c77447 Rebase image uploading to Vue 2019-02-12 12:49:05 +02:00
Richard Lewis 32776f0642 Improve more button implementation and fix lint. 2019-02-12 12:49:04 +02:00
Richard Lewis 8dff4a9478 Only show more button on link previews when needed. 2019-02-12 12:49:04 +02:00
Pavel Djundik 26dc37033c Make connection-error a vue state 2019-02-12 12:49:04 +02:00
Pavel Djundik 5d4400ef90 Revert "Remove draggable for now"
This reverts commit f4c0a68fde99471bd546902ec2b9301ff6cec73a.
2019-02-12 12:49:04 +02:00
Pavel Djundik a8cad55fda Fix input to behave better on Android 2019-02-12 12:48:45 +02:00
Pavel Djundik 140c14959c Fix user search not updating instantly on Android 2019-02-12 12:48:45 +02:00
Pavel Djundik 839b07fdc2 Do not disable input when disconnected 2019-02-12 12:48:45 +02:00
Pavel Djundik 6877199515 Update eslint-plugin-vue 2019-02-12 12:48:45 +02:00
Pavel Djundik bd57c6d620 Fix history not loading on channel switch 2019-02-12 12:48:45 +02:00
Pavel Djundik fea6fff13a Keep scroll position on preview toggle 2019-02-12 12:48:45 +02:00
Pavel Djundik e91f2aa024 Fix unread markers in condensed messages 2019-02-12 12:48:45 +02:00
Pavel Djundik 2c5549a567 Find channel in joinchannel correctly 2019-02-12 12:48:45 +02:00
Pavel Djundik a21e0e34cd Fix unread marker not showing after condensed messages 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 d55eb28aea Make special channel behaviour the same
Fixes scrolling and overflowing
2019-02-12 12:48:44 +02:00
Pavel Djundik 5452d26c17 Don't bother trying to count unreads 2019-02-12 12:48:44 +02:00