mirror of
https://github.com/arcan1s/awesome-widgets.git
synced 2025-04-24 23:47:20 +00:00
fix #37
This commit is contained in:
parent
4e3593a2a9
commit
6bcb6798a2
@ -258,7 +258,16 @@ void AwesomeWidget::replyRecieved(QNetworkReply *reply)
|
||||
version.remove(QString("V."));
|
||||
break;
|
||||
}
|
||||
if (version != QString(VERSION))
|
||||
|
||||
int old_major = QString(VERSION).split(QChar('.'))[0].toInt();
|
||||
int old_minor = QString(VERSION).split(QChar('.'))[1].toInt();
|
||||
int old_patch = QString(VERSION).split(QChar('.'))[2].toInt();
|
||||
int new_major = QString(version).split(QChar('.'))[0].toInt();
|
||||
int new_minor = QString(version).split(QChar('.'))[1].toInt();
|
||||
int new_patch = QString(version).split(QChar('.'))[2].toInt();
|
||||
if ((old_major < new_major) ||
|
||||
(old_minor < new_minor) ||
|
||||
(old_patch < new_patch))
|
||||
emit(thereIsUpdates(version));
|
||||
}
|
||||
|
||||
|
@ -26,6 +26,7 @@
|
||||
#include <Plasma/Theme>
|
||||
#include <Plasma/ToolTipManager>
|
||||
#include <QDebug>
|
||||
#include <QDesktopWidget>
|
||||
#include <QFile>
|
||||
#include <QGraphicsGridLayout>
|
||||
#include <QGraphicsProxyWidget>
|
||||
@ -141,6 +142,29 @@ void DesktopPanel::init()
|
||||
}
|
||||
|
||||
|
||||
WId DesktopPanel::getDesktopId(const int num)
|
||||
{
|
||||
if (debug) qDebug() << PDEBUG;
|
||||
if (debug) qDebug() << PDEBUG << ":" << "Number" << num;
|
||||
|
||||
WId wid = 0;
|
||||
QList<WId> windows = KWindowSystem::windows();
|
||||
for (int i=0; i<windows.count(); i++) {
|
||||
KWindowInfo winInfo = KWindowSystem::windowInfo(windows[i], NET::Property::WMName |
|
||||
NET::Property::WMDesktop | NET::Property::WMGeometry |
|
||||
NET::Property::WMState | NET::Property::WMWindowType);
|
||||
if (winInfo.windowType(NET::WindowTypeMask::DesktopMask) != NET::WindowType::Desktop) continue;
|
||||
if (!winInfo.isOnDesktop(num)) continue;
|
||||
wid = winInfo.win();
|
||||
break;
|
||||
}
|
||||
qDebug() << QApplication::desktop()->winId();
|
||||
wid = QApplication::desktop()->winId();
|
||||
|
||||
return wid;
|
||||
}
|
||||
|
||||
|
||||
DesktopPanel::DesktopWindowsInfo DesktopPanel::getInfoByDesktop(const int num)
|
||||
{
|
||||
if (debug) qDebug() << PDEBUG;
|
||||
@ -318,21 +342,24 @@ void DesktopPanel::paintTooltip(const int active)
|
||||
info.desktop.width() + 2.0 * margin, 0);
|
||||
toolTipScene->addLine(info.desktop.width() + 2.0 * margin, 0, 0, 0);
|
||||
|
||||
QPen pen = QPen();
|
||||
pen.setWidthF(2.0 * info.desktop.width() / 400.0);
|
||||
pen.setColor(QColor(configuration[QString("tooltipColor")]));
|
||||
for (int i=0; i<info.windows.count(); i++) {
|
||||
toolTipScene->addLine(info.windows[i].left() + margin, info.windows[i].bottom() + margin,
|
||||
info.windows[i].left() + margin, info.windows[i].top() + margin, pen);
|
||||
toolTipScene->addLine(info.windows[i].left() + margin, info.windows[i].top() + margin,
|
||||
info.windows[i].right() + margin, info.windows[i].top() + margin, pen);
|
||||
toolTipScene->addLine(info.windows[i].right() + margin, info.windows[i].top() + margin,
|
||||
info.windows[i].right() + margin, info.windows[i].bottom() + margin, pen);
|
||||
toolTipScene->addLine(info.windows[i].right() + margin, info.windows[i].bottom() + margin,
|
||||
info.windows[i].left() + margin, info.windows[i].bottom() + margin, pen);
|
||||
}
|
||||
// only contours
|
||||
// QPen pen = QPen();
|
||||
// pen.setWidthF(2.0 * info.desktop.width() / 400.0);
|
||||
// pen.setColor(QColor(configuration[QString("tooltipColor")]));
|
||||
// for (int i=0; i<info.windows.count(); i++) {
|
||||
// toolTipScene->addLine(info.windows[i].left() + margin, info.windows[i].bottom() + margin,
|
||||
// info.windows[i].left() + margin, info.windows[i].top() + margin, pen);
|
||||
// toolTipScene->addLine(info.windows[i].left() + margin, info.windows[i].top() + margin,
|
||||
// info.windows[i].right() + margin, info.windows[i].top() + margin, pen);
|
||||
// toolTipScene->addLine(info.windows[i].right() + margin, info.windows[i].top() + margin,
|
||||
// info.windows[i].right() + margin, info.windows[i].bottom() + margin, pen);
|
||||
// toolTipScene->addLine(info.windows[i].right() + margin, info.windows[i].bottom() + margin,
|
||||
// info.windows[i].left() + margin, info.windows[i].bottom() + margin, pen);
|
||||
// }
|
||||
toolTip.setImage(QPixmap::grabWindow(getDesktopId(active + 1)).scaledToWidth(configuration[QString("tooltipWidth")].toInt()));
|
||||
toolTip.setWindowsToPreview(KWindowSystem::windows());
|
||||
|
||||
toolTip.setImage(QPixmap::grabWidget(toolTipView).scaledToWidth(configuration[QString("tooltipWidth")].toInt()));
|
||||
// toolTip.setImage(QPixmap::grabWidget(toolTipView).scaledToWidth(configuration[QString("tooltipWidth")].toInt()));
|
||||
Plasma::ToolTipManager::self()->setContent(this, toolTip);
|
||||
}
|
||||
|
||||
|
@ -71,6 +71,7 @@ public:
|
||||
DesktopPanel(QObject *parent, const QVariantList &args);
|
||||
~DesktopPanel();
|
||||
void init();
|
||||
WId getDesktopId(const int num);
|
||||
DesktopWindowsInfo getInfoByDesktop(const int num);
|
||||
QString parsePattern(const QString rawLine, const int num);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user