Commit graph

1879 commits

Author SHA1 Message Date
Pavel Djundik 2303a02839 Reduce throttle delay 2019-02-12 12:48:44 +02:00
Pavel Djundik d00c70f804 Fix some input issues on mobile 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 8580592a91 Cleaner MOTD text
Co-Authored-By: Jérémie Astori <astorije@users.noreply.github.com>
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 a899b1b46d Throttle scroll event instead of debouncing 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 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 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 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 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 77947b46c8 Import ParsedMessage in back msg 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 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 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 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 a5625ba203 Remove scroll code from more event 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 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 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 739d44b561 Trim channel when switching away from it 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
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 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 2d2c836a34 Remove user_name template 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 0a774758b9 Fix double input submit 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 f0390dae63 Scroll to bottom 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 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 6116edaa06 Remove msg_action.tpl 2019-02-12 12:48:41 +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 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 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 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 0b269423aa Remove remaining DOM references to badge/highlight 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 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 77dc3086a0 Fix copying text in Firefox
Fixes #3035
2019-02-12 10:52:07 +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 d260ee05da Fix line-height to match height in input 2019-01-26 10:34:12 +02:00
Jérémie Astori 69788a6b9b
Make sure the changelog page is selectable, e.g. for copy-pasting commands 2019-01-19 01:37:26 -05:00
Jérémie Astori 2b10cf203b
Fix casing of "Upload file" tooltip 2019-01-18 00:53:28 -05:00
Pavel Djundik 17115fa74d Fix highlight styles not applying to notices and actions 2019-01-16 13:29:45 +02:00
Pavel Djundik eb648195de Fix .active styles incorrectly applying to hovered users in userlist
Fixes #2969
2019-01-15 12:56:26 +02:00
Pavel Djundik cb59681cd9 Serve requests from cache when server responds with non 2xx response 2019-01-11 21:26:01 +02:00
Pavel Djundik e033010841 Rename manifest.json to thelounge.webmanifest
This makes express serve it with correct content-type of application/manifest+json

Refs:
- https://w3c.github.io/manifest/#media-type-registration
- https://webhint.io/docs/user-guide/hints/hint-manifest-file-extension/
2018-11-13 13:33:25 +02:00
Pavel Djundik 5b40a6fb58
Merge pull request #2858 from thelounge/xpaw/limit-nick
Hard limit nicks to 100 characters, add maxlength on connect inputs
2018-10-20 23:08:20 +03:00
Pavel Djundik 8d5d9617ae Hard limit nicks to 100 characters, add maxlength on connect inputs 2018-10-20 14:10:26 +03:00
Pavel Djundik bb6a9657a0 Fix touch position being null when touching with multiple fingers 2018-10-15 14:54:33 +03:00
Pavel Djundik 1d7ceda9d4 Bring back aria-label to fix broken code
Fixes #2837
Reverts 78f0e544db
Reverts d087c726e0
2018-10-10 10:50:52 +03:00
Jérémie Astori b6c2b201eb
Merge pull request #2830 from thelounge/xpaw/fix-2829
Remove aria-label on channels in channel list
2018-10-08 00:26:03 -04:00
Jérémie Astori 01e7b88037
Merge pull request #2826 from thelounge/renovate/irc-framework-4.x
Update dependency irc-framework to v4
2018-10-06 10:46:19 -04:00
Pavel Djundik 78f0e544db Remove aria-label on channels in channel list
Fixes #2829
2018-10-06 13:31:42 +03:00
Pavel Djundik d087c726e0 Put unread and highlight counts in aria-label in the channel list 2018-10-05 12:05:09 +03:00
Pavel Djundik f3b67b773b whois.special is now an array 2018-10-05 10:24:20 +03:00
Pavel Djundik aceffed61f Remove underline from textcomplete dropdown 2018-10-01 17:12:37 +03:00
Pavel Djundik ecc1fdd799
Fix extra padding in condensed messages on mobile
Fixes #2797
2018-09-24 10:25:20 +03:00
Pavel Djundik c62665f47b Add hover underline on preview expand button 2018-09-21 11:05:56 +03:00
Jérémie Astori ed06040b8e
Merge pull request #2618 from thelounge/xpaw/underline
Enable underlines on links
2018-09-20 00:42:06 -04: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
Pavel Djundik 45235ba7aa Enable underlines on links 2018-09-19 09:58:46 +03:00
Richard Lewis e97c9ff265 Fix fullscreen mode for videos. I was unable to reproduce the border radius issue. 2018-09-13 20:04:19 +03:00
Jérémie Astori 69fa473c91
Merge pull request #2755 from thelounge/mcinkay/2470-transparent-icon
Replace normal icon with the transparent version
2018-09-07 01:37:26 -04:00
Alistair McKinlay 35c328b557 Add 3 commands that were missing on client autocomplete 2018-09-06 09:00:39 +01:00
Alistair McKinlay d0605d33b8 Replace normal icon with the transparent version 2018-09-05 15:19:07 +01:00
Pavel Djundik dce3fb229f
Remove incorrect closing tag 2018-09-03 10:47:51 +03: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 f2ee299004 Fix passwords not being saved in Firefox
Fixes #1740
2018-09-02 20:34:47 +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
Pavel Djundik 81913bca66 Update emoji data for Emoji v11 2018-08-31 22:41:41 +03:00
Adam e14d911195 Add try/catch to all localStorage methods
Return null when attempting to get an item from localStorage

REF: #2699
2018-08-30 17:49:15 +01:00
christer88 d3725937ef
Fix confirmation box text for network removal in client
This PR will make the text inside confirmation box for network removal in client more correct. Earlier it said "Disconnect from", but in reality it disconnects and remove the network entierly.

The js code may be utterly wrong. If so, please help.
2018-08-24 12:32:25 +02:00
Max Leiter 50661b5947 Hide Native App settings section when no items are available 2018-08-19 12:24:19 -07:00
Pavel Djundik b1dcbd3811
Merge pull request #2601 from thelounge/xpaw/fix-2572
Make menu state consistent on desktop and mobile; fix sliding on desktop
2018-08-17 09:25:43 +03:00
Pavel Djundik c9ba896d9e
Merge pull request #2702 from thelounge/astorije/connect-override
Fix bugs with URL overrides in Connect window
2018-08-15 11:40:11 +03:00
Jérémie Astori 70a3aefd2f
Merge pull request #2683 from ivan/tabular-nums
Keep timestamps aligned when using a font with variable-width numbers
2018-08-14 00:08:47 -04:00
Jérémie Astori 13e6f37eda
Make sure the network name cannot be changed through URL override when the network info is not displayed 2018-08-11 18:12:49 -04:00
Jérémie Astori 174c6c744c
Disallow URL override of network-related fields on the client when the network is locked 2018-08-11 18:06:23 -04:00
Ivan Kozik 2a74ace48f Keep timestamps aligned when using a font with variable-width numbers
This improves the layout of the timestamps when using the San Francisco font.
2018-07-29 15:22:54 +00:00
Pavel Djundik 7a5708714b
Fix irc modifiers not working with caps lock 2018-07-27 11:12:03 +03:00
Jérémie Astori 7b926f7c32
Merge pull request #2515 from thelounge/xpaw/transparent-sw-cache
Network-first service worker caches
2018-07-25 00:57:20 -04:00
Jérémie Astori 8c09be9db3
Reuse muted color var for unhandled messages, and remove channel list color overrides 2018-07-24 01:16:39 -04:00
Jérémie Astori 77d70d6d91
Center scroll lists when navigating with keyboard
- This applies to channel list and user list sidebars
- This avoids having a selected item behind a sticky header
- This provides better UX by starting the scroll before the bottom (or top) is reached, giving a preview of what comes next (or before)
2018-07-24 00:50:19 -04:00
Pavel Djundik b8db7a2f82
Fix closing tag being removed in user list
Fixes #2635
2018-07-21 02:25:18 -04:00
Jérémie Astori fbe8a4151c
Reuse CSS variable on muted texts (timestamp, self messages, etc.) and improve constrast accessibility
#767676 is the lightest gray that passes AA level of WCAG contrast recommendations
2018-07-21 02:25:18 -04:00
Jérémie Astori f69571847a
Make userlist section titles sticky on scroll 2018-07-21 02:25:17 -04:00