Commit graph

728 commits

Author SHA1 Message Date
Leon Richardt 505581ca65
[Bug Fix] Color of second user highlight cannot be set (#1898)
* Highlighting: Fix bug preventing user highlight from being set

Before this commit, only the row of a clicked cell was checked, but not
the tab it was clicked in.

Since the "Whispers" row is the second row in the "Messages" tab on the
highlighting page, the color picker was not opened for the second entry
in the "Users" tab either. This commit fixes the bug by also checking
tab the cell was clicked in.

* Update CHANGELOG.md
2020-08-22 23:10:10 +02:00
fourtf 359adbce15
Update CHANGELOG.md 2020-08-22 19:30:27 +02:00
fourtf 106923549d
Update CHANGELOG.md 2020-08-22 16:58:35 +02:00
pajlada 0cbddf7e9b
Fix/be respectful of special characters like exclamation marks in highlight phrases since they are also word boundaries (#1890)
* Add missing includes

We would normally have these included in another file already, or even
the precompiled headers, but having the files included here too makes
testing single parts easier.

* Modify the regex building of highlight phrases for non-regex phrases

For phrases like !test, the word boundary checking we did before was not
enough, so we now check for either a word boundary, a whitespace
character, or the line start/end.

* Add tests for ensuring I haven't fully broken the highlight system

* Add changelog entry
2020-08-22 15:37:03 +02:00
alazymeme 0b0f1c9c5c
Add microsoft edge support for incognito (#1875)
* Fix incognito button missing

* Update CHANGELOG.md
2020-08-21 15:33:56 +02:00
alazymeme fba049dbfb
Fix open in browser button for whisper split (#1860)
* Fix open in browser button for whisper split

* Update CHANGELOG.md
2020-08-15 10:15:57 +02:00
Matthew Marlow 8530ffb7e3
added brave browser to supported NM list (#1862)
* added brave browser to supported NM list

* updated CHANGELOG.md
2020-08-15 10:14:59 +02:00
Leon Richardt a9080ceb3c
Discord-like Quick Switcher (#1588)
* Proof of Concept for Quick Switcher

* Fix crash when suggestions are empty

* QuickSwitcher: Use tab name instead of a single channel

* Rebase later

* Add missing include for <functional>

* Move QuickSwitcher related classes into own subfolder

* Refactor switcher list items

Now, items are responsible for taking the right action when selected in
the switcher list. This should allow for more focused code and
responsibilities.

* Add note about memory management

* Add option to open channel in a new tab

* Add support for using the mouse

* Spawn switcher popup in the middle of the window

Works reliably on i3 at least. Might need some additional testing on
other WMs (and especially on Windows!).

* Add some icons for switcher items

Note that the final design of the list is not final but I do plan to
incorporate these in the future.

* Set Qt::Dialog window flag on switcher popup

Prevents tiling window managers like i3 from trying to tile the window.

* Rename "SwitcherItem" to "AbstractSwitcherItem"

* Add comments about what items are inserted

* Use custom model and view

Still missing: Currently selected item is not highlighted yet. You can
move between selected items with tab and arrow keys though.

* Add helper function to convert QVariant to AbstractSwitcherItem *

* Remove useless constant

* Highlight currently selected switcher item

* Use a different method for centering QuickSwitcherPopup window

* QuickSwitcherModel: Add documentation

* Add default parameter to QuickSwitcherModel::rowCount

* QuickSwitcherPopup: Add comments

* Remove outdated TODO

* QuickSwitcherModel: Init vector with default capacity

* Remove outdated comment

* Add comment about 0 ms timeout interval

* NewTabItem: Simplify interface

* Only fetch opened splits once

This is better than the prior approach since opened splits cannot change
anyways while the switcher is open.

* Use SplitContainer to pass information instead of custom type

* Allow searching for tab titles as well

Before this commit, only channel names could be searched.

* Refactor switcher item interface to be more flexible

Also show tab name and channel name in the switcher list.

* Add documentation for AbstractSwitcherItem

* Add documentation for NewTabItem

* Add comments about {begin,end}{Insert,Remove}Rows

* Remove unused method

* Replace magic size with named constant

* Add change log entry

Co-authored-by: fourtf <tf.four@gmail.com>
2020-08-13 19:25:51 +02:00
Daniel 0e6ca6b097
Vertical tabs (#1815)
* Vertical tabs

* Vertical tab wrapping

* Fix formatting

* Cleanup code

* Updated changelog

* Hide button row if no buttons exist

* Fix tab width expansion

Co-authored-by: fourtf <tf.four@gmail.com>
2020-08-13 15:43:08 +02:00
alazymeme 1bd3d10eef
Add an "Open in browser" option to whisper split (#1828) 2020-08-08 15:17:51 +02:00
pajlada 382dfbc2fa
[SearchPopup] CTRL+F now focuses the search input (#1812) 2020-07-18 17:52:12 +02:00
Daniel ba06b10135
Open usercard on mention click (#1674) 2020-07-18 16:03:51 +02:00
pajlada 276f3e1d98
[SettingDialog] CTRL+F now selects the Find input (#1811)
* Sneakily make SettingsDialog constructor private at the same time 🕵
2020-07-18 15:56:33 +02:00
pajlada 6ba9c5ec31
Reset the lastMessageHasAlternateBackground{Reverse} values when clearing all messages in a ChannelView. (#1810)
This makes it so that we consistently start with the same values after
having cleared a ChannelView.
Example place where this happens: UserInfoPopup when user messages are
loaded and refreshed
2020-07-18 14:44:10 +02:00
pajlada ffdf5a144c
Handle conversion of historical CLEARCHAT messages to NOTICE messages in Chatterino instead of relying on the Recent Messages API to handle it for us (#1804)
This has historically been done in the Recent Messages API, but this functionality is being moved to Chatterino instead

* Remove `clearchatToNotice=true` query parameter to the Recent Messages API
2020-07-18 14:12:11 +02:00
Paweł 682caf6b69
Add support for more image uploader services (#1741)
The list of links that have been uploaded is now also stored in the json format instead of csv
2020-07-05 14:32:10 +02:00
pajlada cdf85c5084
Message menu now holds a shared pointer to a layout (#1787)
This ensures that the layout will survive for the lifetime of the menu,
     so any of the menu actions can with confidence do things with the
     layout, not having to worry whether it's dead or not.

This means that the user, while having the message menu open, could have
one extra MessageLayout alive. I have ensured that when the menu dies
the reference to the shared pointer dies with it.
2020-07-05 13:52:24 +02:00
Daniel 680b500993
Fix update checker not working on macOS (#1642)
* Prevent update dialog from going off screen

Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2020-05-10 13:13:47 +02:00
Daniel Pasch be6ef6dcd5
open twitch usercard on middle mouse (#1669)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2020-05-10 12:45:19 +02:00
Daniel Pasch 8532c6d3bc
Add thumbnails to link tooltips if available (#1664)
This feature is off by default and can be enabled in the settings with the "Show link thumbnail" setting. This feature also requires the "Show link info when hovering" setting to be enabled.

thumbnails support is only there for direct image links, twitch clips, and youtube links. can be expanded in the future in the /api repo

Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2020-05-10 12:11:10 +02:00
pajlada 001dce5da1
Create uploader to i.nuuls.com (#1332)
This commit adds support for uploading images to i.nuuls.com from clipboard or by dragging an image into a split.

Documentation for how to self-host the image uploader is available in ENV.md

By default, you will be asked before an image upload takes place. There's an option in the dialog to not be asked again, if that option is chosen you can revert that choice in the settings dialog.
2020-05-09 07:34:27 -04:00
Rasmus Karlsson 4bfd20f943 Add changelog entry 2020-05-09 13:33:23 +02:00
pajlada b4eb56f362
Remove "Online Logs" functionality (#1649)
The /logs command will direct users to the /user command instead

Changelog has been updated to reflect this change
2020-05-02 12:18:35 +02:00
pajlada 0f2355459d
Make ModBadgeElement a descendant of BadgeElement instead of EmoteElement (#1602)
this causes it to behave as it should, and not be scaled when emotes are
scaled. :)
2020-03-14 13:06:24 +01:00
pajlada 2b5c6ffe33
Remove chatroom code (#1561)
People who had chatrooms still open should notice no difference at all, since it will just try to join a channel with the chatroom name.

Documentation for the closing/deprecation of twitch chat rooms:
    https://discuss.dev.twitch.tv/t/rooms-are-closing-how-it-affects-the-api-and-irc/22996
    https://dev.twitch.tv/docs/change-log (see 2020-01-10 entry)
2020-02-22 06:05:36 -05:00
fourtf a2d21510ac
Update CHANGELOG.md 2020-02-21 02:13:31 +01:00
Rasmus Karlsson 7a08d73434 Fix preview on hover not working when Animated emotes options was disabled.
Fixes #1546

This change introduces a "window timer" that runs every 100ms that we
use to update the pixmap if necessary, since there is no signal for "let
me know when this image is done loading".
2020-02-15 17:16:10 +01:00
Rasmus Karlsson 64c58e724a Use same sorting method in emote popup as in the completion model
Fixes #1549
2020-02-15 15:52:42 +01:00