Commit graph

568 commits

Author SHA1 Message Date
Mm2PL a929053c4b
Dropping images now works on the whole split :) 2020-02-08 16:41:01 +01:00
Mm2PL 553e8f2f7b
Delete useless else block 2020-02-08 15:47:27 +01:00
Leon Richardt 93a6c55ed3 Fix subscription messages triggering split highlights (#1519)
Since #1320, subscription messages are treated as highlights in order to
allow customization. This caused subscription messages to highlight the
split(s) the message was received in. This is not intended behavior.

This commit fixes the issue by additionally checking if the
`Subscription` flag is set on a highlighted message.
2020-01-26 10:08:25 +01:00
Leon Richardt 5957551d06 Better Highlights (#1320)
* Support for user-defined sounds and colors

* Make color & sound columns selectable

* Add custom row for subscription highlights

* Add subscriptions to custom highlights and centrally manage highlight colors

* Dynamically update message highlight colors
2020-01-25 11:03:10 +01:00
Alexey Kutepov 00414eb779 Synchronize Clipboard with Primary Selection on Linux when copying (#1502)
* Introduce crossPlatformCopy()

It sets the text of the clipboard and also syncs it with the selection
clipboard if it is supported. Such behaviour is pretty common for X11
application on Unix-like Operating Systems.

* Fix clang-format remarks

* Fix weird clang-format config discrepancy between my machine and CI

* Remove clipboard argument from crossPlatformCopy

* Fix clang-format remarks
2020-01-24 21:36:51 +01:00
pajlada 3c8992cac1
Remove FMT dependency (#1472)
All occurrences of log() have been replaced with qDebug()

bonus meme: remove a bunch of std::string usages in the pubsub client

Fixes #1467
2020-01-03 20:51:37 +01:00
Mm2PL a86367f4be
Fix issues pointed out in reviews :)
Fixed PR BabyRage
2020-01-03 14:43:05 +01:00
Mm2PL 20d8da8f2d
Merge branch 'master' into git_is_pepega 2020-01-01 21:06:29 +01:00
Rasmus Karlsson 55080bd354 Add a "BasePopup" class, which helps add default functionality to any popups (like the search popup) 2019-12-14 12:58:15 +01:00
23rd d99102cd23 Fixed closing tab with middle button when tab management is not allowed. (#1426) 2019-12-01 02:00:06 -08:00
Rasmus Karlsson 0e1f1196d6 reformat 2019-11-02 12:36:42 +01:00
Mm2PL 77af5d54cf
Change more things.
Things changed:
 - make getImageFileFormat case insensitive
 - use QTextEdit::dragEnterEvent instead of QAbstractScrollArea::dragEnterEvent,
 - Make dragEnterEvent() and dropEvent() overrides.
2019-10-11 17:00:26 +02:00
Mm2PL bf434f3ac5
Fix the stupid things.
This includes:
 - NuulsUploader.cpp
   - changing upload delay to a #define
   - moving png conversion code to `boost::optional<QByteArray> convertToPng(QImage image)`
   - in uploadImageToNuuls: moving content type definition to a variable, move things around a bit to eliminate an if
   - in upload: adding a comment about `source->hasUrls()` and `source->urls()`, change `uploadQueue.size()` to `!uploadQueue.empty()`
 - ResizingTextEdit.cpp
   - changing #include order
2019-10-11 15:41:33 +02:00
fourtf 6f710823ed renamed getInstance() -> instance() for singletons 2019-10-07 22:42:34 +02:00
fourtf b1cbf09427 removed appbase directory 2019-10-07 15:46:41 +02:00
fourtf 9f52564b9c fixes tab and split header title text size 2019-10-06 21:31:59 +02:00
Cranken 252e2e8bae Fix tooltips in chat not showing on ctrl hover. 2019-10-05 17:36:03 +02:00
Leon Richardt d6bcd61289
Fix bug regarding mentions with comma
While tab-completing user names already respected the setting for
mentions with commas, right-clicking user names did not.

This commit adds the missing check in ChannelView::handleMouseClick.
2019-10-03 15:30:51 +02:00
fourtf 9874bd779a formatted all files with clang 9 2019-09-26 00:51:05 +02:00
fourtf 848d5c8789 Fixes #1336 Pause on hover breaks moves selection 2019-09-25 23:49:30 +02:00
Mm2PL b55d08df8e
Renamed the pastedImage signal to imagePasted. 2019-09-25 22:39:02 +02:00
Mm2PL 4e9951371f
Applied a bit of foutf's suggestions. Replace uploadQueue.size() with .empty() and swap if/else bodies, move non empty queue check outside of the timer on line 60, move getImageFileFormat to an anonymous namespace, rename pasteFromClipoard to upload(), removed usesless comment, shortened message on line 83, use QMimeData.hasUrls() and QMimeData.urls(), moved GIF format case in upload() more to the top, call original functions in canInsertFromMimeData and dragEnterEvent which are overriden 2019-09-25 22:21:26 +02:00
Mm2PL 65fab779c5
Redo all changes done before breaking the branch. 2019-09-23 19:36:52 +02:00
pajlada 1256a7b631
Fix formatting 2019-09-22 10:42:22 +02:00
CommName 5078ecbef1 Highlight bug fix 2019-09-21 22:19:03 +02:00
fourtf 5ca0fc0c8f
Merge branch 'master' into moderation 2019-09-18 16:14:45 +02:00
fourtf 3ab7362304 Merge branch 'master' into irc-support 2019-09-18 13:03:16 +02:00
fourtf cadff4c430 Fixes #1259 highlight not added when changing channel 2019-09-16 11:54:34 +02:00
fourtf 3a9f9fa17b added setting for pause on hover length 2019-09-16 11:36:19 +02:00
fourtf 602a66f5bc Fixes #963 Highlights move while paused 2019-09-16 10:55:54 +02:00
fourtf 63126899ec added pause while key is down 2019-09-16 10:43:20 +02:00
fourtf 22ca20ad2a renamed TwitchServer -> TwitchIrcServer 2019-09-15 13:02:02 +02:00
Leon Richardt 720e5aa25f Improvements to Message Search (#1237)
* Ran clang-format

* Implement user-specific search in message history

This functionality was originally requested in #1236.

This commit changes the SearchPopup::performSearch method so that only
messages from specific users can be shown.

In order to filter for a specific user, enter their username with a
leading '@' in the search popup. You can also add an additional search
phrase which will also be considered in the search.

* Naive implementation for "from:" tags

Rebase later?

* Cleverer (?) version using Predicates

Commit adds two POC predicates: one for the author of messages, and one
for substring search in messages.

Problems/TODOs:
* Best way to register new predicates?
* Clean up tags (e.g. "from:") or not?
* Test combinations of different predicates

* Add a predicate to check for links in messages

* Remove a dumb TODO

* Rewrite SearchPopup::performSearch to be cleaner

* Ran clang-format on all files

* Remove TODO I missed earlier

* Forgot to run clang-format

peepoSadDank

* Re-use {}-initialization

Was accidentally removed when fixing earlier merge conflict.

* Does this fix line endings?

No diffs are shown locally, hopefully Git doesn't lie to me.

* Rename "predicates" directory to "search"

Resolving one conversation in the review of #1237.

* Use LinkParser in LinkPredicate

Resolving a conversation in the review of #1237.

* Predicates: Use unique_ptr instead of shared_ptr

Resolves a conversation in the review of #1237.

* Refactor of SearchPopup and AuthorPredicate

Resolving some points from the review in #1237.

* Moved parsing of comma-seperated values into AuthorPredicate
  constructor.
* Rewrite SearchPopup::parsePredicates as suggested.
* Deleted now redundant methods in SearchPopup.

* MessagePredicate::appliesTo now takes a Message&

... instead of a MessagePtr.

This resolves a conversation in the review of #1237.

* Run clang-format on two files I missed

* AuthorPredicate: Check for displayName & loginName

Resolving conversation on #1237.
2019-09-09 15:21:49 +02:00
Leon Richardt b06eb9df83 Normalize line endings in already existing files 2019-09-08 22:27:57 +02:00
fourtf 87c0ff76e7 added setting to open links in incognito by default 2019-09-08 14:59:51 +02:00
fourtf b14154a811 Fixes #996 can't ctrl+c in search popup 2019-09-08 12:31:27 +02:00
fourtf a268abfd4c Allow searching in LogsPopup 2019-09-04 00:29:58 +02:00
fourtf 125426dbf1 added header for search 2019-09-02 18:59:37 +02:00
fourtf e7b4527a0f added regex help link 2019-08-26 14:07:21 +02:00
fourtf 6d9545157e Fixes #1215 Allow previewing badges 2019-08-21 01:52:01 +02:00
fourtf 67aadfe61f Fixes #1218 Usercard link from search popup 2019-08-21 01:19:41 +02:00
fourtf b513caf572 added settings to mention users with , 2019-08-21 01:08:15 +02:00
fourtf 7697ec01b4 removed old NetworkRequest api 2019-08-20 22:16:17 +02:00
Leon Richardt f2b2e3142f Implement simpler fix for emote completion bug
This commit implements a simpler fix for the problem described in #1209.
The setting's signal is connected to a reset of `completionInProgress_`
so that the completion model is updated on the next word already.

This commit also removes the older approach tackling this issue.
2019-08-18 21:37:20 +02:00
Leon Richardt be5318f275 Fix emote completion bug
This commit fixes a bug that would occur when changing the completion
mode from prefix-only to substring while mid-completion.
In that case, the suggestion list was not updated until the next
completion attempt.

This is fixed by forcing a suggestion list refresh whenever the
setting's checkbox is updated.
2019-08-17 21:31:31 +02:00
Leon Richardt 58d892a8c2 Make Emote Tab Completion Search for Substrings (#1204)
* Make emote tab completion search for substrings

Previously, tab completion only searched for emotes that start
with the current prefix under the cursor. This commit makes tab
completion look for the current prefix as a substring in any position,
not just the start.

Examples:
    * In forsen's channel, tabbing on "pls" will cycle through "DonaldPls", "forsenPls",
    "GachiPls", "nyanPls" and "SourPls".

    * As a forsen subscriber, tabbing on "sen1" will complete to "forsen1".

    * As a pajlada subscriber, tabbing on "shrug" will cycle through
    "pajaShrugL" and "pajaShrugR". (Unless you are in a channel with
    more "shrug" emotes, of course.)

* Add a setting for prefix and substring completion

This commit adds a setting under the "Miscellaneous" section to allow
user to choose whether they want prefix-only or substring emote
completion.

The QCompleter filter mode and `addString` function are now chosen
according to the user's setting.

* Improve description of emote completion setting

Also reintroduce a blank line that went missing.
2019-08-17 17:17:38 +02:00
Rasmus Karlsson cd5972522b reformat 2019-08-11 21:08:18 +02:00
23rd fdb0b62dee Fixed switching tabs using trackpad scroll. 2019-08-10 13:34:59 +02:00
Rasmus Karlsson 9cb5e3abb3 Fix a bug where tabbing too early would break any future tab completions
Fixes #1107
2019-06-22 13:16:16 +02:00
apa420 70bb63d20f Added option for shift, used clang and made setting uneditable 2019-06-11 22:54:20 +02:00
rexim 244252f610 (#976) Make TooltipPreviewImage non-copyable 2019-06-12 02:04:57 +07:00
rexim 483e177a39 (#976) Fix compilation errors
Which were not visible because of incremental build or something
2019-06-12 01:16:56 +07:00
rexim 3838157d82 Extract TooltipWidget updating into a separate class 2019-06-12 01:03:04 +07:00
rexim 3f4d3ce14a (#976) Make currentPreviewImage shareable between ChannelView-s 2019-06-12 00:22:26 +07:00
rexim e1a901aa98 Adjust tooltip size after setting the text 2019-06-11 23:20:04 +07:00
rexim 0fb16d150b Preview images instead of emotes 2019-06-11 23:20:04 +07:00
rexim a84716547b Animate gifs in the tooltip preview 2019-06-11 23:20:04 +07:00
rexim 94e705ec1b Inject Emotes into TooltipWidget directly 2019-06-11 23:20:04 +07:00
rexim 8b79faf958 Make Emotes Tooltip Preview disablable in the Settings 2019-06-11 23:20:04 +07:00
rexim 7251a20dfb Get the biggest version of emote from EmoteElement 2019-06-11 23:20:04 +07:00
rexim 959aa4616f pixmap() -> imagePreview() 2019-06-11 23:20:04 +07:00
rexim aa4e7f13e7 Get rid of dynamic_cast 2019-06-11 23:20:04 +07:00
rexim cbb1ec2d7a Remove dead code 2019-06-11 23:20:04 +07:00
rexim f002d44370 If hover over ImageLayoutElement show the preview of image 2019-06-11 23:20:04 +07:00
TranRed 5c350de329 overrides QTextEdit insert methods
fixes Chatterino#635
prepares for future implementation of Chatterino#79

Was a little bit hard to find the right combination for now. Pasting images from clipboard surpasses the check for dragging images in canInsertFromMimeData OMGScoots
2019-06-10 12:20:45 +02:00
Rasmus Karlsson 1a7a5409ab do a full reformat according to our current .clang-format 2019-05-10 23:31:10 +02:00
23rd efec76df5b Removed unused local vars. Slightly refactored code. 2019-05-10 22:18:05 +02:00
Alexandr Kondratev 14eb302c3d Close search popup window on Escape pressed 2019-05-06 21:16:40 +02:00
23rd a3f6d2b773 Fixed display of text in Go to Bottom button for Retina screen. 2019-05-04 11:55:41 +02:00
TranRed d749a4771a made CommonTexts.hpp look like other headers 2019-05-02 00:01:18 +02:00
TranRed f76df80575 creates common texts for opening streams
Texts for opening streams were used in multiple locations. Created a file to store GUI texts like this and replaced were applicable
2019-05-02 00:01:18 +02:00
TranRed b33478d8c6 stored original message text in message 2019-05-01 16:43:52 +02:00
TranRed bbf649bf70
Added {message} parameter for moderation buttons 2019-05-01 16:08:45 +02:00
apa420 4f79d6fc07 Added deleted messages, will also add the disabled tag to denied automod messages 2019-04-19 22:44:02 +02:00
pajlada 97faec15e0
Merge pull request #979 from hemirt/whispers
do not disable whispers on clears and timeouts
2019-04-16 15:06:42 +02:00
Ruben Anders 00d4fbf9ed Add {channel} replacement 2019-04-11 12:21:11 +02:00
hemirt 1a1d0f305c make whispers not disabled on clear 2019-03-20 20:53:24 +01:00
apa420 1434225603 Implemented AutoMod and write pubsub automod messages TODO: implement that the AutoMod message gets deleted if dealt with \nFixes #887 2019-01-21 18:33:57 +01:00
apa420 cc5528ec18 smol commit 2019-01-20 16:07:31 +01:00
apa420 7067b0503d Added more functionality and clickable deny and accept buttons that don't do anything, this also fixes the issue with the background not working properly 2019-01-20 14:45:59 +01:00
fourtf fc93d7b738 added wip effect for (dis/re)connected messages 2018-12-04 21:07:55 +01:00
fourtf 96328a5e25 fixed pausing while 1k messages are in the channel 2018-12-04 08:56:07 +01:00
fourtf bd8fab7e68 fixed redraw issue 2018-12-02 19:20:14 +01:00
fourtf 0d4d301aa0 added pausable property to ChannelView 2018-12-02 18:37:51 +01:00
fourtf 2e68852768 made some things scale 2018-12-02 18:26:21 +01:00
fourtf 0e242202a4 minor improvements 2018-12-02 17:49:15 +01:00
fourtf 52dcc2130e moved more stuff into appbase 2018-11-25 21:14:42 +01:00
fourtf 0b94d0f763 made appbase compile standalone 2018-11-25 15:02:48 +01:00
fourtf a9ca33f431 moved stuff from chatterino to appbase 2018-11-23 17:51:55 +01:00
fourtf 38b23d77ce moved BaseWindow and related files into appbase 2018-11-22 22:10:29 +01:00
fourtf cf26f10b80 initial appbase integration 2018-11-21 21:37:41 +01:00
fourtf d8fcc1a3ed small refactor 2018-11-14 17:27:08 +01:00
Rasmus Karlsson 0f9ef9d0aa Fix a bug with twitch channels and the livestatusChanged signal 2018-11-10 14:30:19 +01:00
23rd dcda714715 Moved "below" button displaying in performLayout method. 2018-11-05 14:51:33 +01:00
fourtf d3003c171a unpause when leaving the channelview 2018-11-03 22:02:52 +01:00
fourtf 6416bf3927 alternate color for historic messages 2018-11-03 21:40:48 +01:00
fourtf 5453c65f0f implemented pausing on hover 2018-11-03 21:26:57 +01:00
Rasmus Karlsson ac4a496a06 Update to latest settings library version 2018-11-03 13:00:07 +01:00
fourtf 2faf24e3d5 improved rendering of notebook tab with scaling 2018-11-01 10:16:55 +01:00
fourtf 3c3be99177 new settings page 2018-10-31 19:49:15 +01:00
Felix Schmid c11d151b83 fixed pause on mouse hover 2018-10-27 11:15:39 +02:00
apa420 7467e1d0e2 Properly displays mentions in splitheader-tabs even if 'enable highlighting on new message' is disabled 2018-10-27 10:54:27 +02:00
fourtf 25aab4cdeb rename tab on double click 2018-10-22 19:57:02 +02:00
fourtf 3db0b5f95c open settings when right clicking moderation button 2018-10-21 16:13:26 +02:00
fourtf e259b9e39f added brace wrapping after if and for 2018-10-21 13:43:02 +02:00
fourtf c6e1ec3c71 disabled red background in #mentions 2018-10-21 13:29:52 +02:00
Rasmus Karlsson 1fde45f59b Also resize tabs if height has changed
Fixes #769
2018-10-21 12:14:11 +02:00
fourtf 69e0352648 improved NotebookTab 2018-10-21 12:13:23 +02:00
apa420 a2795dec38 got triggered by pixels 2018-10-20 18:41:32 +02:00
fourtf 2840b38e91 made links open in incognito by default for hemirt 2018-10-16 16:34:09 +02:00
fourtf d14a4df9e3 opening links in private browsing mode (windows)
tested on firefox, chrome and internet explorer
2018-10-16 16:07:59 +02:00
23rd e13d927a4e Removed unused signal in TwitchChannel. 2018-10-14 10:17:48 +00:00
23rd 3e268637f0 Improved 'twitchChannelRegex' regexp. 2018-10-14 10:16:39 +00:00
23rd bd04aa0074 Added more ignored words for opening new split from context menu. 2018-10-14 10:16:39 +00:00
Rasmus Karlsson 49449379da Added a Live status indicator to tabs 2018-10-13 14:20:06 +02:00
fourtf 31b9d497d7 change color of + button while dragging split 2018-10-09 19:22:07 +02:00
Rasmus Karlsson a947bf74c8 Occasionally save window/split/tab layout
The window layout is only saved if something has been changed.
When something relevant to the window layout is changed, a save is
queued to run after 10 seconds.
If within those 10 seconds, another thing is changed, that timer is
reset and will run after 10 seconds again.

Events that cause the save to be queued up:
 - Tab created
 - Tab removed
 - Tab moved
 - Tab name changed
 - Split created
 - Split removed
 - Split moved
 - Split channel changed
 - Split resized
 - Window moved
 - Window resized

What currently does not trigger the save to be queued up:
 - Active tab changed
2018-10-07 16:27:40 +00:00
Rasmus Karlsson 7879fef3a0 add some comments
reformat
2018-10-07 14:30:26 +00:00
Cranken f13f99bb42 Fixed double clicking sometimes turning into unwanted triple-clicking. 2018-10-06 16:33:18 +00:00
Cranken 39ee6efffc Fixed user popup not working. 2018-10-06 16:33:18 +00:00
Cranken 49398300d6 Triple-clicking now also checks for distance between clicks to prevent unwanted selection. 2018-10-06 16:33:18 +00:00
Cranken 423ef19c8f Fixed a bug appearing when selecting over multiple lines in different directions. 2018-10-06 16:33:18 +00:00
Cranken 4c4d1d2042 Fixed double click selection. 2018-10-06 16:33:18 +00:00
Cranken 335b889efe Fixed emotes selecting the whole line on double-click. 2018-10-06 16:33:18 +00:00
Cranken c8326d73e7 Added triple-clicking next to message to select whole message. 2018-10-06 16:33:18 +00:00
Cranken 5c2cdce516 Added triple clicking to select the whole message. 2018-10-06 16:33:18 +00:00
Cranken fed8cca10e Added initial double clicking to select word functionality. 2018-10-06 16:33:18 +00:00
pajlada 099fd88098
Merge pull request #743 from 23rd/patch-15-scroll-tabs
Added scrolling over tabs with wheel to switch channels.
2018-10-06 12:32:37 +00:00
23rd 871fde5f72 Reversed scroll behavior. 2018-10-06 14:18:27 +03:00
23rd 9f5da50bce Moved creating UserInfoPopup in one place. (#761)
* Moved creating UserInfoPopup in one place.

* Added forgotten 'this'.

Fixes #759
2018-10-06 10:13:14 +00:00
23rd 1fcfd8b13a Removed few-step scroll. 2018-10-05 23:57:02 +03:00
Rasmus Karlsson c6bca8e97b Allow addMessage to override message flags 2018-10-05 21:33:01 +00:00
23rd 7122e47817 Added scrolling over tabs with wheel to switch channels. 2018-10-01 03:32:20 +03:00
Cranken 22d009962d Now saves the enable highlight on new message tab setting. 2018-09-30 15:02:30 +02:00
pajlada 0e794f5a6d
Merge pull request #739 from Cranken/enableHighlightTab
Option to disable highlight of tab; disabled switching tabs by only right clicking
2018-09-30 12:30:52 +00:00
Cranken f6e6916263 Fixed variable naming style. 2018-09-30 14:31:00 +02:00
tetyys 612c9c94dc Clear scroll bar when switching channels in a ChannelView 2018-09-30 11:53:17 +00:00
Cranken abb01b54f5 Fixed clang format. 2018-09-30 13:44:41 +02:00
Cranken 839f78e19b Update regardless of button. 2018-09-29 22:35:33 +02:00
Cranken 036abd4852 Don't switch tab if only right mouse is pressed on other tab. 2018-09-29 22:30:31 +02:00
Cranken f25f31a837 Added button on tab to enable/disable highlighting. 2018-09-29 22:24:48 +02:00
Rasmus Karlsson 0b36f43611 make the list of ignored usernames into a set instead, making it more maintanable
change "open twitch channel in new split" menu action text
2018-09-21 22:46:00 +02:00
23rd 9a6650b56c Added button in menu to join to channel. (#724) 2018-09-21 20:35:14 +02:00
23rd eb230494a6 Dont add scrollbar highlights in /mentions. 2018-09-21 13:54:12 +02:00
pajlada e2a7765964
Merge branch 'master' into apa-notification-on-live 2018-09-16 17:43:53 +02:00
fourtf 018fe2ab10 fixed some shtuff 2018-09-04 22:29:21 +02:00
fourtf 1d682c4a93 added add split button 2018-09-04 21:39:54 +02:00
23rd d0ea0f2478 Clear highlights scrollbar with messages. 2018-09-02 03:02:12 +03:00
pajlada 6eb21f4b68
Merge pull request #677 from 23rd/patch-4-link-tooltip-bttv
Added tooltip to links.
2018-08-29 01:23:17 +02:00
apa420 6a29fbb6dc
Merge branch 'master' into apa-notification-on-live 2018-08-28 23:23:46 +02:00