Verified Commit 48f8f000 authored by Jonah Brüchert's avatar Jonah Brüchert 🌳
Browse files

Leave calculating the startup feedback color to plasma-nano

parent d76fc145
/***************************************************************************
* Copyright (C) 2019 Carson Black <uhhadd@gmail.com> *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
***************************************************************************/
#include <QObject>
#include <QColor>
#include <QImage>
#include <QDebug>
#include "colouraverage.h"
ColourAverage::ColourAverage(QObject *parent) : QObject(parent)
{
}
QColor ColourAverage::averageColour(const QImage &img) {
int r = 0;
int g = 0;
int b = 0;
int c = 0;
for (int i = 0; i < img.width(); i++) {
for (int ii = 0; ii < img.height(); ii++) {
QRgb pix = img.pixel(i, ii);
if (pix == 0)
continue;
c++;
r += qRed(pix);
g += qGreen(pix);
b += qBlue(pix);
}
}
r = r / c;
g = g / c;
b = b / c;
QColor color = QColor::fromRgb(r,g,b);
color.setHsv(color.hue(), color.saturation() / 4, color.value());
return color;
}
/***************************************************************************
* Copyright (C) 2019 Carson Black <uhhadd@gmail.com> *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
***************************************************************************/
#pragma once
#include <QObject>
#include <QColor>
#include <QImage>
class ColourAverage : public QObject
{
Q_OBJECT
public:
explicit ColourAverage(QObject *parent = nullptr);
Q_INVOKABLE QColor averageColour(const QImage &img);
};
......@@ -72,8 +72,7 @@ LauncherContainer {
title,
delegate.iconItem.Kirigami.ScenePosition.x + delegate.iconItem.width/2,
delegate.iconItem.Kirigami.ScenePosition.y + delegate.iconItem.height/2,
Math.min(delegate.iconItem.width, delegate.iconItem.height),
ColourAverage.averageColour(img.image));
Math.min(delegate.iconItem.width, delegate.iconItem.height)
});
}
onParentFromLocationChanged: {
......
......@@ -63,8 +63,7 @@ ColumnLayout {
model.text,
icon.Kirigami.ScenePosition.x + icon.width/2,
icon.Kirigami.ScenePosition.y + icon.height/2,
Math.min(icon.width, icon.height),
theme.textColor);
Math.min(icon.width, icon.height))
plasmoid.nativeInterface.executeCommand(model.settingsCommand);
root.closeRequested();
}
......@@ -110,8 +109,7 @@ ColumnLayout {
model.text,
icon.Kirigami.ScenePosition.x + icon.width/2,
icon.Kirigami.ScenePosition.y + icon.height/2,
Math.min(icon.width, icon.height),
theme.textColor);
Math.min(icon.width, icon.height))
//plasmoid.nativeInterface.executeCommand(model.settingsCommand);
closeRequested();
} else if (model.toggleFunction) {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment