Commit Graph

691 Commits

Author SHA1 Message Date
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
Pavel Djundik
37c61e2413 Report server errors when preview fetch fails 2018-02-20 11:33:42 +02:00
Pavel Djundik
9ecb776760
Merge pull request #2031 from thelounge/astorije/irc-monospace
Improve monospace formatting in messages
2018-02-19 20:09:04 +02:00
Pavel Djundik
8886459be9
Merge pull request #2049 from thelounge/xpaw/ui-network-status
Sync network status and security to client UI
2018-02-19 19:57:36 +02:00
Pavel Djundik
742929280d
Merge pull request #1919 from thelounge/yamanickill/image-size-error
Show error if image is greater than max prefetch size
2018-02-19 18:49:18 +02:00
Pavel Djundik
b57830b859 Sync network status and security to client UI
Co-Authored-By: Jérémie Astori <astorije@users.noreply.github.com>
2018-02-19 13:12:01 +02:00
Pavel Djundik
f7449c565f Fix border after nickname not taking full height
Fixes #2054
2018-02-13 12:37:10 +02:00
Jérémie Astori
003ae7131b
Improve monospace formatting in messages
This effectively styles it just like to `code` syntax used in the Help window, such as in the list of available commands.
2018-02-03 12:53:33 -05:00
Jérémie Astori
91e3ca88bb
UI for "Image too large" errors 2018-02-01 21:14:37 -05:00
Max Leiter
8057c416fb Add tooltip to close channel/leave query button on sidebar 2018-01-29 09:36:09 -08:00
Jérémie Astori
5722bd9845
Allow timestamp tooltips to expand beyond message boundaries 2018-01-24 00:22:18 -05:00
Jérémie Astori
6bfd6ed473
Fix timestamp tooltips not aligning correctly with timestamps 2018-01-23 00:49:17 -05:00
William Boman
dfe4b2f6d6 fix animation jitter when clicking join channel button 2018-01-04 10:53:07 +01:00
Jérémie Astori
04fee16fec
Fix CSS currently failing Stylelint checker 2017-12-28 17:07:08 -05:00
Pavel Djundik
069cb6192f Mute disabled inputs 2017-12-28 10:44:37 +02:00
Jérémie Astori
238e894377
Improve the version checking part of the changelog feature
- There is no client caching of the changelog/version anymore. Instead, server returns the expiration date of its cache, and that is used by the client as well.
- There is now a "Check now" button on the client that appears when data is stale. This means that info is fetched only once and never refreshed (it was refreshed every hour before) unless the user explicitly wants to check latest version, which in turn is as stale as server info is, i.e. 15 minutes max.
- Button style is shared with the "Join a channel" feature, `.btn-small` (not `.btn-sm` to be explicit that this is not a Bootstrap thing).
- Version checker content is now centralized in the `version_checker` template, instead of being partially in the checker template, partially in the Help template,  and partially in the code.
- A "Try again" button lets user attempt to fetch info instead of forcing them to reload the page.
- Use Flexbox to display a nicer version checker: icon is slightly bigger, and button is always aligned on the right.
- Changelog logic has been removed from `lounge.js` and moved into the component file.
- Changelog template is only passed what it needs instead of everything the server gives us.
- Public version now displays version checker, since server is caching things.
- Cleaner code overall.
2017-12-25 17:44:53 -05:00