Merge pull request #16647 from NotTsunami/hscroll

Add horizontal scrolling for tracker list and torrent content
This commit is contained in:
Chocobo1
2022-03-18 12:43:32 +08:00
committed by GitHub
6 changed files with 40 additions and 4 deletions

View File

@@ -530,9 +530,9 @@ void PeerListWidget::wheelEvent(QWheelEvent *event)
{
// Shift + scroll = horizontal scroll
event->accept();
QWheelEvent scrollHEvent(event->position(), event->globalPosition()
QWheelEvent scrollHEvent {event->position(), event->globalPosition()
, event->pixelDelta(), event->angleDelta().transposed(), event->buttons()
, event->modifiers(), event->phase(), event->inverted(), event->source());
, event->modifiers(), event->phase(), event->inverted(), event->source()};
QTreeView::wheelEvent(&scrollHEvent);
return;
}

View File

@@ -41,6 +41,7 @@
#include <QTreeWidgetItem>
#include <QUrl>
#include <QVector>
#include <QWheelEvent>
#include "base/bittorrent/peerinfo.h"
#include "base/bittorrent/session.h"
@@ -683,3 +684,19 @@ void TrackerListWidget::displayColumnHeaderMenu()
menu->popup(QCursor::pos());
}
void TrackerListWidget::wheelEvent(QWheelEvent *event)
{
if (event->modifiers() & Qt::ShiftModifier)
{
// Shift + scroll = horizontal scroll
event->accept();
QWheelEvent scrollHEvent {event->position(), event->globalPosition()
, event->pixelDelta(), event->angleDelta().transposed(), event->buttons()
, event->modifiers(), event->phase(), event->inverted(), event->source()};
QTreeView::wheelEvent(&scrollHEvent);
return;
}
QTreeView::wheelEvent(event); // event delegated to base class
}

View File

@@ -87,6 +87,7 @@ private slots:
private:
int visibleColumnsCount() const;
void wheelEvent(QWheelEvent *event) override;
static QStringList headerLabels();