correctly use RTL text for rtl feeds
This commit is contained in:
parent
066221e2ef
commit
8133fce9e8
@ -50,7 +50,8 @@
|
|||||||
#define MSG_SCORE_MIN 0.0
|
#define MSG_SCORE_MIN 0.0
|
||||||
|
|
||||||
#define LOWER_TITLE_ROLE 64
|
#define LOWER_TITLE_ROLE 64
|
||||||
#define HIGHLIGHTED_FOREGROUND_TITLE_ROLE 128
|
#define HIGHLIGHTED_FOREGROUND_TITLE_ROLE 65
|
||||||
|
#define TEXT_DIRECTION_ROLE 66
|
||||||
|
|
||||||
#define SOUNDS_BUILTIN_DIRECTORY ":/sounds"
|
#define SOUNDS_BUILTIN_DIRECTORY ":/sounds"
|
||||||
#define ARGUMENTS_LIST_SEPARATOR "\n"
|
#define ARGUMENTS_LIST_SEPARATOR "\n"
|
||||||
|
@ -524,6 +524,9 @@ void MessagesView::loadItem(RootItem* item) {
|
|||||||
setLayoutDirection(Qt::LayoutDirection::LeftToRight);
|
setLayoutDirection(Qt::LayoutDirection::LeftToRight);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
setLayoutDirection(Qt::LayoutDirection::LeftToRight);
|
||||||
|
}
|
||||||
|
|
||||||
// Messages are loaded, make sure that previously
|
// Messages are loaded, make sure that previously
|
||||||
// active message is not shown in browser.
|
// active message is not shown in browser.
|
||||||
|
@ -16,6 +16,12 @@ void StyledItemDelegateWithoutFocus::paint(QPainter* painter,
|
|||||||
item_option.state = item_option.state ^ QStyle::StateFlag::State_HasFocus;
|
item_option.state = item_option.state ^ QStyle::StateFlag::State_HasFocus;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool rtl = index.data(TEXT_DIRECTION_ROLE).value<Qt::LayoutDirection>() == Qt::LayoutDirection::RightToLeft;
|
||||||
|
|
||||||
|
if (rtl) {
|
||||||
|
item_option.direction = Qt::LayoutDirection::RightToLeft;
|
||||||
|
}
|
||||||
|
|
||||||
if ((item_option.state & QStyle::StateFlag::State_Selected) == QStyle::StateFlag::State_Selected &&
|
if ((item_option.state & QStyle::StateFlag::State_Selected) == QStyle::StateFlag::State_Selected &&
|
||||||
index.data(Qt::ItemDataRole::ForegroundRole).isValid()) {
|
index.data(Qt::ItemDataRole::ForegroundRole).isValid()) {
|
||||||
item_option.palette.setColor(QPalette::ColorRole::HighlightedText,
|
item_option.palette.setColor(QPalette::ColorRole::HighlightedText,
|
||||||
|
@ -82,6 +82,9 @@ QVariant Feed::data(int column, int role) const {
|
|||||||
return QVariant();
|
return QVariant();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
case TEXT_DIRECTION_ROLE:
|
||||||
|
return isRtl() ? Qt::LayoutDirection::RightToLeft : Qt::LayoutDirection::LayoutDirectionAuto;
|
||||||
|
|
||||||
case Qt::ItemDataRole::ForegroundRole:
|
case Qt::ItemDataRole::ForegroundRole:
|
||||||
switch (status()) {
|
switch (status()) {
|
||||||
case Status::NewMessages:
|
case Status::NewMessages:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user