mirror of
https://github.com/Chatterino/chatterino2.git
synced 2024-11-21 22:24:07 +01:00
Compare commits
14 commits
98bddba9dd
...
e4f024f760
Author | SHA1 | Date | |
---|---|---|---|
|
e4f024f760 | ||
|
74a385dfee | ||
|
439d21d009 | ||
|
8d9617df96 | ||
|
16042e7f8a | ||
|
d4c1ef5f80 | ||
|
5b2341aaa0 | ||
|
2d93ceed67 | ||
|
50b2decd1b | ||
|
2a9b8e15c4 | ||
|
e9bebfe788 | ||
|
5e25722d9a | ||
|
b38bfd4feb | ||
|
cd2ab5e0cd |
8 changed files with 49 additions and 12 deletions
|
@ -62,6 +62,7 @@
|
||||||
- Bugfix: Fixed incorrect message being disabled in some cases upon approving or denying an automod caught message. (#5611)
|
- Bugfix: Fixed incorrect message being disabled in some cases upon approving or denying an automod caught message. (#5611)
|
||||||
- Bugfix: Fixed double-click selection not working when clicking outside a message. (#5617)
|
- Bugfix: Fixed double-click selection not working when clicking outside a message. (#5617)
|
||||||
- Bugfix: Fixed emotes starting with ":" not tab-completing. (#5603)
|
- Bugfix: Fixed emotes starting with ":" not tab-completing. (#5603)
|
||||||
|
- Bugfix: Fixed 7TV emotes messing with Qt's HTML. (#5677)
|
||||||
- Dev: Update Windows build from Qt 6.5.0 to Qt 6.7.1. (#5420)
|
- Dev: Update Windows build from Qt 6.5.0 to Qt 6.7.1. (#5420)
|
||||||
- Dev: Update vcpkg build Qt from 6.5.0 to 6.7.0, boost from 1.83.0 to 1.85.0, openssl from 3.1.3 to 3.3.0. (#5422)
|
- Dev: Update vcpkg build Qt from 6.5.0 to 6.7.0, boost from 1.83.0 to 1.85.0, openssl from 3.1.3 to 3.3.0. (#5422)
|
||||||
- Dev: Unsingletonize `ISoundController`. (#5462)
|
- Dev: Unsingletonize `ISoundController`. (#5462)
|
||||||
|
|
|
@ -9,6 +9,8 @@ namespace {
|
||||||
|
|
||||||
} // namespace
|
} // namespace
|
||||||
|
|
||||||
|
// change made but removed in merge conflict
|
||||||
|
// QColor HighlightPhrase::FALLBACK_HIGHLIGHT_COLOR = QColor(238, 97, 102, 65);
|
||||||
QColor HighlightPhrase::FALLBACK_HIGHLIGHT_COLOR = QColor(127, 63, 73, 127);
|
QColor HighlightPhrase::FALLBACK_HIGHLIGHT_COLOR = QColor(127, 63, 73, 127);
|
||||||
QColor HighlightPhrase::FALLBACK_SELF_MESSAGE_HIGHLIGHT_COLOR =
|
QColor HighlightPhrase::FALLBACK_SELF_MESSAGE_HIGHLIGHT_COLOR =
|
||||||
QColor(0, 118, 221, 115);
|
QColor(0, 118, 221, 115);
|
||||||
|
|
|
@ -79,7 +79,8 @@ bool isZeroWidthRecommended(const QJsonObject &emoteData)
|
||||||
Tooltip createTooltip(const QString &name, const QString &author, bool isGlobal)
|
Tooltip createTooltip(const QString &name, const QString &author, bool isGlobal)
|
||||||
{
|
{
|
||||||
return Tooltip{QString("%1<br>%2 7TV Emote<br>By: %3")
|
return Tooltip{QString("%1<br>%2 7TV Emote<br>By: %3")
|
||||||
.arg(name, isGlobal ? "Global" : "Channel",
|
.arg(name.toHtmlEscaped(),
|
||||||
|
isGlobal ? "Global" : "Channel",
|
||||||
author.isEmpty() ? "<deleted>" : author)};
|
author.isEmpty() ? "<deleted>" : author)};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -87,7 +88,8 @@ Tooltip createAliasedTooltip(const QString &name, const QString &baseName,
|
||||||
const QString &author, bool isGlobal)
|
const QString &author, bool isGlobal)
|
||||||
{
|
{
|
||||||
return Tooltip{QString("%1<br>Alias of %2<br>%3 7TV Emote<br>By: %4")
|
return Tooltip{QString("%1<br>Alias of %2<br>%3 7TV Emote<br>By: %4")
|
||||||
.arg(name, baseName, isGlobal ? "Global" : "Channel",
|
.arg(name.toHtmlEscaped(), baseName.toHtmlEscaped(),
|
||||||
|
isGlobal ? "Global" : "Channel",
|
||||||
author.isEmpty() ? "<deleted>" : author)};
|
author.isEmpty() ? "<deleted>" : author)};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1190,11 +1190,13 @@ void ChannelView::messageAppended(MessagePtr &message,
|
||||||
(this->channel_->getType() == Channel::Type::TwitchAutomod &&
|
(this->channel_->getType() == Channel::Type::TwitchAutomod &&
|
||||||
getSettings()->enableAutomodHighlight))
|
getSettings()->enableAutomodHighlight))
|
||||||
{
|
{
|
||||||
this->tabHighlightRequested.invoke(HighlightState::Highlighted);
|
this->tabHighlightRequested.invoke(HighlightState::Highlighted,
|
||||||
|
message->highlightColor);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
this->tabHighlightRequested.invoke(HighlightState::NewMessage);
|
this->tabHighlightRequested.invoke(HighlightState::NewMessage,
|
||||||
|
nullptr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
#include "widgets/TooltipWidget.hpp"
|
#include "widgets/TooltipWidget.hpp"
|
||||||
|
|
||||||
#include <pajlada/signals/signal.hpp>
|
#include <pajlada/signals/signal.hpp>
|
||||||
|
#include <QColor>
|
||||||
#include <QGestureEvent>
|
#include <QGestureEvent>
|
||||||
#include <QMenu>
|
#include <QMenu>
|
||||||
#include <QPaintEvent>
|
#include <QPaintEvent>
|
||||||
|
@ -21,6 +22,7 @@
|
||||||
#include <QWheelEvent>
|
#include <QWheelEvent>
|
||||||
#include <QWidget>
|
#include <QWidget>
|
||||||
|
|
||||||
|
#include <memory>
|
||||||
#include <unordered_map>
|
#include <unordered_map>
|
||||||
#include <unordered_set>
|
#include <unordered_set>
|
||||||
|
|
||||||
|
@ -214,7 +216,8 @@ public:
|
||||||
|
|
||||||
pajlada::Signals::Signal<QMouseEvent *> mouseDown;
|
pajlada::Signals::Signal<QMouseEvent *> mouseDown;
|
||||||
pajlada::Signals::NoArgSignal selectionChanged;
|
pajlada::Signals::NoArgSignal selectionChanged;
|
||||||
pajlada::Signals::Signal<HighlightState> tabHighlightRequested;
|
pajlada::Signals::Signal<HighlightState, std::shared_ptr<QColor>>
|
||||||
|
tabHighlightRequested;
|
||||||
pajlada::Signals::NoArgSignal liveStatusChanged;
|
pajlada::Signals::NoArgSignal liveStatusChanged;
|
||||||
pajlada::Signals::Signal<const Link &> linkClicked;
|
pajlada::Signals::Signal<const Link &> linkClicked;
|
||||||
pajlada::Signals::Signal<QString, FromTwitchLinkOpenChannelIn>
|
pajlada::Signals::Signal<QString, FromTwitchLinkOpenChannelIn>
|
||||||
|
|
|
@ -307,6 +307,7 @@ void NotebookTab::setSelected(bool value)
|
||||||
this->selected_ = value;
|
this->selected_ = value;
|
||||||
|
|
||||||
this->highlightState_ = HighlightState::None;
|
this->highlightState_ = HighlightState::None;
|
||||||
|
this->highlightColor_ = nullptr;
|
||||||
|
|
||||||
this->update();
|
this->update();
|
||||||
}
|
}
|
||||||
|
@ -397,6 +398,15 @@ bool NotebookTab::hasHighlightsEnabled() const
|
||||||
return this->highlightEnabled_;
|
return this->highlightEnabled_;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void NotebookTab::setHighlightColor(std::shared_ptr<QColor> color)
|
||||||
|
{
|
||||||
|
if (this->highlightColor_ != color)
|
||||||
|
{
|
||||||
|
this->highlightColor_ = color;
|
||||||
|
this->update();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
QRect NotebookTab::getDesiredRect() const
|
QRect NotebookTab::getDesiredRect() const
|
||||||
{
|
{
|
||||||
return QRect(this->positionAnimationDesiredPoint_, size());
|
return QRect(this->positionAnimationDesiredPoint_, size());
|
||||||
|
@ -499,6 +509,14 @@ void NotebookTab::paintEvent(QPaintEvent *)
|
||||||
: (windowFocused ? colors.line.regular
|
: (windowFocused ? colors.line.regular
|
||||||
: colors.line.unfocused);
|
: colors.line.unfocused);
|
||||||
|
|
||||||
|
if (this->highlightState_ == HighlightState::Highlighted &&
|
||||||
|
this->highlightColor_ != nullptr)
|
||||||
|
{
|
||||||
|
QColor col = *this->highlightColor_;
|
||||||
|
col.setAlpha(255);
|
||||||
|
lineColor = col;
|
||||||
|
}
|
||||||
|
|
||||||
QRect lineRect;
|
QRect lineRect;
|
||||||
switch (this->tabLocation_)
|
switch (this->tabLocation_)
|
||||||
{
|
{
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
|
|
||||||
#include <pajlada/settings/setting.hpp>
|
#include <pajlada/settings/setting.hpp>
|
||||||
#include <pajlada/signals/signalholder.hpp>
|
#include <pajlada/signals/signalholder.hpp>
|
||||||
|
#include <QColor>
|
||||||
#include <QMenu>
|
#include <QMenu>
|
||||||
#include <QPropertyAnimation>
|
#include <QPropertyAnimation>
|
||||||
|
|
||||||
|
@ -64,6 +65,7 @@ public:
|
||||||
|
|
||||||
void setHighlightsEnabled(const bool &newVal);
|
void setHighlightsEnabled(const bool &newVal);
|
||||||
bool hasHighlightsEnabled() const;
|
bool hasHighlightsEnabled() const;
|
||||||
|
void setHighlightColor(std::shared_ptr<QColor> color);
|
||||||
|
|
||||||
void moveAnimated(QPoint targetPos, bool animated = true);
|
void moveAnimated(QPoint targetPos, bool animated = true);
|
||||||
|
|
||||||
|
@ -127,6 +129,7 @@ private:
|
||||||
HighlightState highlightState_ = HighlightState::None;
|
HighlightState highlightState_ = HighlightState::None;
|
||||||
bool highlightEnabled_ = true;
|
bool highlightEnabled_ = true;
|
||||||
QAction *highlightNewMessagesAction_;
|
QAction *highlightNewMessagesAction_;
|
||||||
|
std::shared_ptr<QColor> highlightColor_;
|
||||||
|
|
||||||
bool isLive_{};
|
bool isLive_{};
|
||||||
bool isRerun_{};
|
bool isRerun_{};
|
||||||
|
|
|
@ -213,13 +213,19 @@ void SplitContainer::addSplit(Split *split)
|
||||||
|
|
||||||
auto &&conns = this->connectionsPerSplit_[split];
|
auto &&conns = this->connectionsPerSplit_[split];
|
||||||
|
|
||||||
conns.managedConnect(split->getChannelView().tabHighlightRequested,
|
conns.managedConnect(
|
||||||
[this](HighlightState state) {
|
split->getChannelView().tabHighlightRequested,
|
||||||
if (this->tab_ != nullptr)
|
[this](HighlightState state, std::shared_ptr<QColor> color) {
|
||||||
{
|
if (this->tab_ != nullptr)
|
||||||
this->tab_->setHighlightState(state);
|
{
|
||||||
}
|
this->tab_->setHighlightState(state);
|
||||||
});
|
|
||||||
|
if (color != nullptr)
|
||||||
|
{
|
||||||
|
this->tab_->setHighlightColor(color);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
conns.managedConnect(split->getChannelView().liveStatusChanged, [this]() {
|
conns.managedConnect(split->getChannelView().liveStatusChanged, [this]() {
|
||||||
this->refreshTabLiveStatus();
|
this->refreshTabLiveStatus();
|
||||||
|
|
Loading…
Reference in a new issue