X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/ed2d352c42a6d517d4f29b3582c0e00aa34fe647..659eafd7962f617448470228eaca4e147ad1b889:/src/statusbar/dolphinstatusbar.cpp diff --git a/src/statusbar/dolphinstatusbar.cpp b/src/statusbar/dolphinstatusbar.cpp index 9c101b3fa..9451566fd 100644 --- a/src/statusbar/dolphinstatusbar.cpp +++ b/src/statusbar/dolphinstatusbar.cpp @@ -19,8 +19,10 @@ #include #include #include +#include #include #include +#include #include #include @@ -44,6 +46,8 @@ DolphinStatusBar::DolphinStatusBar(QWidget *parent) , m_delayUpdateTimer(nullptr) , m_textTimestamp() { + setContentsMargins(4, 0, 4, 0); + // Initialize text label m_label = new KSqueezedTextLabel(m_text, this); m_label->setWordWrap(true); @@ -269,7 +273,7 @@ void DolphinStatusBar::contextMenuEvent(QContextMenuEvent *event) showSpaceInfoAction->setCheckable(true); showSpaceInfoAction->setChecked(GeneralSettings::showSpaceInfo()); - const QAction *action = menu.exec(QCursor::pos()); + const QAction *action = menu.exec(event->reason() == QContextMenuEvent::Reason::Mouse ? QCursor::pos() : mapToGlobal(QPoint(width() / 2, height() / 2))); if (action == showZoomSliderAction) { const bool visible = showZoomSliderAction->isChecked(); GeneralSettings::setShowZoomSlider(visible); @@ -336,4 +340,12 @@ void DolphinStatusBar::setExtensionsVisible(bool visible) m_zoomLabel->setVisible(showZoomSlider); } +void DolphinStatusBar::paintEvent(QPaintEvent *paintEvent) +{ + QPainter p(this); + QStyleOption opt; + opt.initFrom(this); + style()->drawPrimitive(QStyle::PE_PanelStatusBar, &opt, &p, this); +} + #include "moc_dolphinstatusbar.cpp"