Commit graph

706 commits

Author SHA1 Message Date
Pavel Djundik 3153830005 Change condensed summary hover to an underline 2019-03-25 17:08:22 +02:00
Jérémie Astori 7e7ac8229b Style the upload progress bar 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
Pavel Djundik 71332f59d9 Display current channel mode on /mode command
Fixes #885
2019-03-07 12:57:31 +02:00
Pavel Djundik 212f4be3c3
Fix (dis)connect icons in context menu being reverse of what they should be 2019-03-01 14:23:58 +02: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
Pavel Djundik 6f70ce9e15
Merge pull request #3082 from thelounge/astorije/parted-channel
Display a broken link icon and red text color when not joined on a channel
2019-02-26 19:18:54 +02: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 f8a39a0ea8
Display a broken link icon and red text color when not joined on a channel 2019-02-25 00:21:40 -05:00
Pavel Djundik a9eced888f Set scrollbar properties for Firefox 64+
Refs:
https://developer.mozilla.org/en-US/docs/Web/CSS/scrollbar-color
https://drafts.csswg.org/css-scrollbars-1/
2019-02-23 11:41:39 +02:00
Jérémie Astori 8dee92bd04
Reduce shadow on scroll-down button 2019-02-18 13:54:25 -05:00
Jérémie Astori 404de0ff5b
Use CSS variable for button color 2019-02-18 13:32:41 -05:00
Jérémie Astori d8d1d3aee0
Improve scroll-down button UI 2019-02-18 01:13:32 -05:00
Jérémie Astori 2657332919
Fix loading page styling 2019-02-15 01:40:42 -05:00
Pavel Djundik c8568b5429 Redirect pageup/pagedown without manually animating the scroll 2019-02-13 16:44:15 +02:00
Pavel Djundik 199df6b729 Fix hasRoleInChannel 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 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 00b84d31f5 Fix whitespace in previews 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 f1994352bd Fix scroll button on iOS 2019-02-12 12:49:05 +02:00
Pavel Djundik d1185da9eb Fade buttons when disabled 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 ae56191b9f Fix scroll-down button position in non channels 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 bc69ef5f0b Actually change message output based on statusMessage setting 2019-02-12 12:48:44 +02:00
Pavel Djundik 8931570c02 Port join-channel completely to Vue 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 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 db803a8548 Port channel list to Vue 2019-02-12 12:48:42 +02:00
Pavel Djundik dee76adc0c Implement network collapsing in Vue 2019-02-12 12:48:41 +02:00
Pavel Djundik a229138ca6 Add connected state 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 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
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 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
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
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 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
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
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 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
Pavel Djundik ee4c8d78d3 Use monospace font on MOTDs and set an icon 2018-07-17 10:13:50 +03:00
Jérémie Astori 7f94a47a50
Merge pull request #2622 from thelounge/astorije/fix-highlight-mobile
Fix incorrect left padding for highlights on mobile
2018-07-08 15:03:10 -04:00
Jérémie Astori f58e171a69
Fix incorrect left padding for highlights on mobile 2018-07-08 14:46:55 -04:00
Pavel Djundik cdebd532ce Make menu state consistent on desktop and mobile; fix sliding on desktop
Fixes #2572
2018-07-06 12:27:26 +03:00
Pavel Djundik d63f0ccc50 Make userlist state consistent on mobile and desktop 2018-07-04 10:26:07 +03:00
Jérémie Astori 7e8610bbac
Fix highlights when seconds are shown in timestamps 2018-06-23 14:58:17 -04:00
Jérémie Astori 1d6c6dd52b
Merge pull request #2526 from thelounge/astorije/higlight-border-and-bg
Replace current red-text highlight with a full background-color highlight
2018-06-23 14:20:44 -04:00
Jérémie Astori c2ce56292c
Use a combination background + left border for highlight messages 2018-06-21 13:30:29 -04:00
Pavel Djundik a124e7bdb8 Change input sizes to be consistent 2018-06-19 13:32:15 +03:00
Jérémie Astori e2602b28ad
Merge pull request #2315 from thelounge/astorije/ui
Revamp default theme a bit
2018-06-19 00:26:20 -04:00
Pavel Djundik d178ac9749 Make context menus accessible with keyboard 2018-06-15 13:27:58 +03:00
Jérémie Astori f814d7369c
Introduce some CSS variables to simplify writing themes that stay close to the default style 2018-06-14 18:58:42 -04:00
Jérémie Astori 8137ece450
Make sidebar logo scroll with networks, wrap logos in div element 2018-06-14 18:49:56 -04:00
Jérémie Astori 0e50cb4f06
Add normal version of logo for themes with light sidebars 2018-06-14 18:49:55 -04:00
Jérémie Astori 6201df072e
Revamp default theme a bit 2018-06-14 18:49:55 -04:00
Jérémie Astori 49babf773e
Restore whitespace between caret and More/Less text in previews 2018-06-10 15:39:39 -04:00
Max Leiter 9c4c1d6d51 Allow connecting/disconnecting from networks in UI, closes #631 2018-06-09 16:32:21 -07:00
dgw fa66c3f23b Prevent long lobby names pushing badges out of sidebar 2018-06-02 15:01:57 -05:00
Jérémie Astori 5344768e93
Fix mouse cursor on userlist 2018-05-31 00:50:00 -04:00
Jérémie Astori e30984a13d
Merge pull request #2429 from c-ciobanu/c-ciobanu/feature-2360
Add password visibility toggle feature
2018-05-28 19:02:16 -04:00
Alexandre Oliveira 468427bfdb Add support for /ignore, /unignore and /ignorelist commands 2018-05-28 16:46:12 -03:00
Cristi Ciobanu 490c94b33a change icon tag 2018-05-24 21:21:30 +02:00
Cristi Ciobanu 25dc2848ca changed i with button 2018-05-24 00:12:37 +02:00
Max Leiter 0833f143ff Pointer cursor hovering nicks in userlist 2018-05-17 17:11:14 -07:00
qwe 0294643403 minor fixes 2018-05-10 20:37:10 +02:00
qwe bdfc367c6c refactor password visibility toggle feature 2018-05-10 01:25:17 +02:00
Pavel Djundik 9ce586e21d
Merge pull request #2413 from thelounge/xpaw/overscroll-behavior
Use overscroll-behavior
2018-05-09 17:23:30 +03:00
qwe 2d49e34805 add password toggle to connect and login 2018-05-08 23:40:39 +02:00
qwe 97b178dbdb Add password visibility toggle feature 2018-05-08 01:52:54 +02:00
Pavel Djundik 1e5e9bbc57
Merge pull request #2405 from thelounge/xpaw/sort-arrow
Show a ghost placeholder when dragging channels
2018-05-02 17:37:31 +03:00
Pavel Djundik 7dd6340e46 Show a ghost placeholder when dragging channels
Co-Authored-By: Jérémie Astori <astorije@users.noreply.github.com>
2018-05-02 16:11:10 +03:00
Pavel Djundik e1b6ba9f0d Use overscroll-behavior
Ref: https://developers.google.com/web/updates/2017/11/overscroll-behavior
2018-05-02 14:17:56 +03:00
Pavel Djundik 6c41b68bca Fix CSS issues in Microsoft Edge 2018-05-01 19:11:45 +03:00
Jérémie Astori ccb01d964c
Merge pull request #2355 from Jay2k1/Jay2k1-opvoice
Add 'op' and 'voice' user context menu items
2018-04-21 22:12:41 +02:00
Jay2k1 808b2b249b add 'op' and 'voice' context menu entries 2018-04-21 00:53:59 +02:00
Jérémie Astori 49c5e6a502
Merge pull request #2369 from thelounge/astorije/show-older-msg-btn
Make "Show older messages" style consistent with other buttons
2018-04-20 19:04:52 +02:00
Jérémie Astori bb260c4c04
Merge pull request #2368 from thelounge/astorije/window-header
Remove header border on non-chat windows and reduce top margin a bit more
2018-04-20 19:04:20 +02:00
Jérémie Astori ec8e4fc458
Make sure the channel list button stays always visible 2018-04-20 17:05:53 +02:00
Pavel Djundik b381c9161d
Merge pull request #2364 from thelounge/astorije/fix-userlist-bottom
Fix user list scroll area expanding behind the message input on mobile
2018-04-18 10:17:51 +03:00
Jérémie Astori 1762db8bd4
Make "Show older messages" style consistent with other buttons
Also store the loading text in a `data` attribute instead of duplicate in template + JS, in order to help with future internationalization
2018-04-18 00:12:24 +02:00
Jérémie Astori c9dc323bcc
Remove header border on non-chat windows and reduce top margin a bit more 2018-04-17 23:36:30 +02:00
Jérémie Astori 235a3dad92
Quick-fix tooltips not being loaded by Webpack 2018-04-17 23:07:12 +02:00
Jérémie Astori 0661b4aa37
Fix user list scroll area expanding behind the message input on mobile 2018-04-17 00:27:36 +02:00
Pavel Djundik a392a08c7a Remove nick editor 2018-04-15 22:17:30 +03:00
Pavel Djundik efae5fd28d
Merge pull request #2229 from thelounge/xpaw/edit-networks
Allow editing networks via UI
2018-04-15 22:10:02 +03:00
Pavel Djundik 09482aed7b
Update placeholder rules for modern browsers 2018-04-14 10:24:39 +03:00
Pavel Djundik f86d73972d Implement network editing UI and object updating 2018-04-12 10:38:35 +03:00
Jérémie Astori ee6fb8c619
Fix color of "More" preview button in Morning 2018-04-12 00:52:05 -04:00
Jérémie Astori 2b051194c8
Fix preview text color overriding inherited color
This messes up dark themes, or really any theme that does not use #222 as body color...
2018-04-12 00:45:49 -04:00
Jérémie Astori 7355db94d6
Improve UI of previews
- Remove margins around thumbnails and images, increase radius, etc. for a fresher look overall
- Increase preview body contrast just enough to pass AA standards
- Add a `More`/`Less` button to expand previews that take more than one line. Button is added only when necessary
- Use a zoom-in cursor on hover for thumbnails
- Improve preview message errors
2018-04-09 21:39:38 -04:00
Pavel Djundik c28a5c25b9 Add css-loader 2018-04-06 12:52:53 +03:00
Pavel Djundik d4b9b6ed32 Fix line-height showing scrollbar on mobile 2018-04-04 12:40:42 +03:00
Max Leiter 27e4994d10 Fix .container margins 2018-03-31 01:43:27 -07:00
Pavel Djundik f856229141 Allow whitespace in topics again
Was removed in c051b70537
2018-03-26 11:22:52 +03:00
Pavel Djundik 8ce55af55d Overflow topics with fade instead of ellipsis 2018-03-26 11:22:52 +03:00
Pavel Djundik 23c969ad1b Replace pseudo element gradient fade with mask-image 2018-03-26 11:22:52 +03:00
Jérémie Astori 43be85cee9
Reduce lightness of low contrast nick colors to reach AA level of WCAG 2.0 2018-03-23 01:19:43 -04:00
Jérémie Astori d1548572d4
Move the sign out button to the settings and empty local storage on sign out
This change improves privacy/security by ensuring all local storage (which includes settings, etc.) is destroyed on sign out or when revoking a remote session. Because signing out is now more "risky", the button has been moved to the settings along with other existing sessions.

This commit:

- Removes the power/sign-out icon from the sidebar footer (gives additional room for when the admin panel gets added)
- Adds a "Sign out" button next to the current session info in the settings session list
- Renames "Disconnect" buttons into "Revoke" to better clarify the intent (I will admit that I borrowed the wording from Telegram)
- Fixes incorrect `localStorage.remove` method
- Uses Sinon.js to mock wrappers for `window.localStorage` and `window.location` (does not mock those themselves, in the "Do not mock what you do not own" fashion, mock our layer instead). I expect we will be able to test a bit more from the UI with this. A good next candidate will be the `mockLogger` things.
2018-03-20 01:52:22 -04:00
Jérémie Astori 883b6dbef2
Improve readability and styling of shortcut keys in the Help section 2018-03-19 01:45:48 -04:00
Max Leiter 9053a0bb6a Strikethrough and underline support 2018-03-18 12:37:53 -07:00
Jérémie Astori 8d72cb1416
Remove transition on box-shadow as it affects performance (and is not _that_ noticeable) 2018-03-18 03:00:49 -04:00
Jérémie Astori 6828cd1075
Fix transitions of sidebar overlay 2018-03-17 21:08:08 -04:00
Pavel Djundik 5bb0b198e6 Disable scrolling through sidebar overlay 2018-03-17 11:35:33 +02:00
Jérémie Astori 1e8c0547ec
Add a semi-opaque overlay when channel list is open on mobile 2018-03-17 03:13:43 -04:00
Jérémie Astori cf49a3427e
Ensure links in chats cannot be opened by accident when closing the channel list 2018-03-17 03:12:30 -04:00
Pavel Djundik f07a6db7ab
Merge pull request #2199 from thelounge/astorije/sign-in-logo
Add logo to the sign in page
2018-03-14 10:57:41 +02:00
Jérémie Astori ed67dc5de5
Add logo to the sign in page 2018-03-13 23:05:11 -04:00
Pavel Djundik 74220d8a24 Allow hiding channel list on desktop
Fixes #17
2018-03-13 17:00:02 +02:00
Pavel Djundik 0dc76e773f
Merge pull request #2185 from thelounge/xpaw/flexbox-viewport
Convert the entire viewport to use flexbox
2018-03-12 23:07:48 +02:00
Pavel Djundik 43fc531a6f Fix join and part icons 2018-03-12 17:37:57 +02:00
Jérémie Astori da5a876f93
Use warning icon for insecure connections 2018-03-11 15:57:35 -04:00
Jérémie Astori c28fda6b28
Switch to Font Awesome 5 2018-03-11 15:57:35 -04:00
Pavel Djundik b01e01bc19 Convert most of the layout to flexbox, make sidebar an overlay 2018-03-11 00:23:43 +02:00
Pavel Djundik c86c4f0362
Remove contain as it's causing rendering issues 2018-03-09 13:01:02 +02:00
Pavel Djundik b2eb11b5ef
Merge pull request #1851 from creesch/settingSync
Optional syncing of client settings.
2018-03-09 12:37:17 +02:00
creesch 27393bb804 Offer optional syncing of client settings
Write synced settings to localstorage.

move settings and webpush init to init.js

stub for server sending clientsettings

get very basic setting sync working

Also update client.config.clientSettings on settings:set

Full setting sync with mandatory and excluded sync options

Actually check client preferences.

Further settings restructuring.

Refactor options.js make storage act in a sane manner.

Add new parameter to applySetting

Do not sync if the setting is stored as a result of syncing

General clean up, commenting and restructing.

sync from server on checking "sync"

offer initial sync

Better deal with DOM being ready and instances of inital sync showing

Don't try to disable autocompletion when not enabled.

Restructure option.js to seperate functions from settings.

More consistency in naming options vs settings

Switch processSetting and applySetting names reflecting their functionality better.

move options init back to configuration.

simplify how settings are synced around.

move options init after template building.

Remove unneeded hasOwnProperty

Use global for #theme and only apply theme in applySetting

Return when no server side clientsettings excist.

Autocompletion options to options.settings

Make nocss param in url work again.

Actually filter out empty highlight values.

Clarify alwaysSync comment.

Remove manual step for initial sync

change attr to prop in options.js

replace unbind with off in autocompletion.js

Do not sync settings when the lounge is set to public.

fix eslint error

Fix merge error

Do not show sync warning after page refresh when sync is enabled

Move setting sync label in actual label.

Improve server setting sync handling performance and failure potential.

Don't give impression that the desktop notificiation is off when the browser permission is denied.

Refine showing and hiding of notification warnings.

rename all setting socket events to singular setting.

add experimental note and icon to settingsync.

fix css linting error
2018-03-09 10:36:29 +01:00
Pavel Djundik 653b46e2f4
Always hide horizontal overflow in chat 2018-03-09 09:31:58 +02:00
Pavel Djundik 0fb462c88e Optimized notification dot state 2018-03-08 15:46:05 +02:00
Pavel Djundik 884984f9b4 Cleanup sidebar to use flexbox 2018-03-08 08:50:04 +02:00
Pavel Djundik fe51c6d7e7 Move video size to css 2018-03-07 12:53:28 +02:00
Pavel Djundik 8b417fe97a Fix chat and userlist not scrolling 2018-03-06 20:21:00 +02:00
Pavel Djundik e719e4ff81 Cleanup chat/userlist to use flexbox, fix a couple of bugs 2018-03-05 18:17:13 +02:00
Al McKinlay 04046719c1
Merge pull request #1867 from thelounge/yamanickill/867-collapsible-network
Add support for collapsing networks
2018-03-03 20:01:33 +00:00
Alistair McKinlay 894d6f162d
Hide collapse button if no channels 2018-03-03 14:51:06 -05:00
Pavel Djundik 276266e24f Center loading screen 2018-03-03 09:45:24 +02:00
Jérémie Astori 8deb056ecf
Merge pull request #1842 from thelounge/astorije/userlist-up-down
Move the user list client code to its own file and make it possible to navigate with keyboard
2018-03-03 02:32:09 -05:00
Jérémie Astori 49f2721908 Tweak collapse/expand icon design
- Animate the caret similarly to previews and status messages
- Tweak margins to center things a bit
- Remove unused CSS attributes
2018-03-02 08:57:12 +00:00
Al McKinlay 7fec928ba8 Make networks collapsable 2018-03-02 08:57:12 +00:00
Pavel Djundik 2bf4416aec Bring back line-height on messages
Was removed in c051b70537, but this affected line height on mobile view due to increased font size
2018-03-02 10:56:55 +02:00
Pavel Djundik 59ec0348b6
Merge pull request #1930 from thelounge/astorije/ctcp-request
Let user know someone is making a CTCP request against their nick
2018-02-27 13:15:27 +02:00
Pavel Djundik c051b70537 Refactor channel titles to use flexbox 2018-02-26 22:40:43 +02:00
Jérémie Astori bfc8959bb9
Share highlighting behavior of userlist between mouse hover and keyboard selection
This effectively reproduces the behavior of the autocomplete menu.
2018-02-26 01:36:35 -05:00
Jérémie Astori 649d60c119
Allow navigating through userlist results from keyboard 2018-02-26 01:36:35 -05:00
Jérémie Astori e03694b49c
Let user know someone is making a CTCP request against their nick 2018-02-22 00:42:33 -05:00
Pavel Djundik 59ec07be87
Update all links to thelounge repository 2018-02-21 22:47:52 -05:00