Merge PR #948: cleanup runtime debug prints

pull/951/head
jenkins 2023-01-15 10:51:37 +01:00
commit 608b9f7f37
12 changed files with 88 additions and 82 deletions

View File

@ -88,6 +88,12 @@ AppLogController *AppLogController::instance()
AppLogController::AppLogController(QObject *parent) : QObject(parent)
{
// qt.qml.connections warnings are disabled since the replace only exists
// in Qt 5.12. Remove that once 5.12 is the minimum supported version.
QLoggingCategory::setFilterRules("*.debug=false\n"
"qt.qml.connections.warning=false\n"
);
m_loggingCategories = new LoggingCategories(this);
QSettings settings;
@ -95,7 +101,12 @@ AppLogController::AppLogController(QObject *parent) : QObject(parent)
foreach (const QString &category, nymeaLoggingCategories()) {
m_logLevels[category] = static_cast<LogLevel>(settings.value(category, LogLevelWarning).toInt());
}
// Unless specified otherwise by the user, Application info messages are enabled by default for basic information
if (!settings.childKeys().contains("Application")) {
m_logLevels["Application"] = LogLevelInfo;
}
settings.endGroup();
updateFilters();
// Finally, install the logMessageHandler

View File

@ -68,12 +68,6 @@ int main(int argc, char *argv[])
qputenv("QT_WEBVIEW_PLUGIN", "native");
#endif
// qt.qml.connections warnings are disabled since the replace only exists
// in Qt 5.12. Remove that once 5.12 is the minimum supported version.
QLoggingCategory::setFilterRules("*.debug=false\n"
"Application.debug=true\n"
"qt.qml.connections.warning=false\n"
);
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
QApplication application(argc, argv);
@ -99,7 +93,10 @@ int main(int argc, char *argv[])
// Initialize app log controller as early as possible, but after setting app name and printing initial startup info
AppLogController::instance();
qCInfo(dcApplication()) << "*** nymea:app starting ***" << QDateTime::currentDateTime().toString() << application.arguments();
qCInfo(dcApplication()) << "-->" << application.applicationName() << APP_VERSION << QDateTime::currentDateTime().toString();
qCInfo(dcApplication()) << "Command line:" << application.arguments().join(" ");
qCInfo(dcApplication()) << "System:" << QSysInfo::machineHostName() << QSysInfo::prettyProductName() << QSysInfo::productType() << QSysInfo::productVersion() << PlatformHelper::instance()->deviceManufacturer() << PlatformHelper::instance()->deviceModel();
qCInfo(dcApplication()) << "Locale:" << QLocale() << QLocale().name() << QLocale().language();
foreach (const QString &argument, application.arguments()) {
if (argument.startsWith("nymea://notification")) {
@ -111,8 +108,6 @@ int main(int argc, char *argv[])
qtTranslator.load("qt_" + QLocale::system().name(), QLibraryInfo::location(QLibraryInfo::TranslationsPath));
application.installTranslator(&qtTranslator);
qCInfo(dcApplication()) << application.applicationName() << APP_VERSION << "running on" << QSysInfo::machineHostName() << QSysInfo::prettyProductName() << QSysInfo::productType() << QSysInfo::productVersion() << PlatformHelper::instance()->deviceManufacturer() << PlatformHelper::instance()->deviceModel();
qCInfo(dcApplication()) << "Locale info:" << QLocale() << QLocale().name() << QLocale().language() << QLocale().system();
QTranslator appTranslator;
bool translationResult = appTranslator.load("nymea-app-" + QLocale().name(), ":/translations/");

View File

@ -304,8 +304,8 @@ Page {
ColumnLayout {
anchors { left: parent.left; right: parent.right; verticalCenter: parent.verticalCenter; margins: app.margins }
spacing: app.margins
anchors { left: parent.left; right: parent.right; verticalCenter: parent.verticalCenter; margins: Style.margins }
spacing: Style.margins
visible: engine.thingManager.fetchingData
BusyIndicator {
Layout.alignment: Qt.AlignHCenter
@ -313,9 +313,8 @@ Page {
}
Label {
text: qsTr("Loading data...")
font.pixelSize: app.largeFont
font: Style.bigFont
Layout.fillWidth: true
wrapMode: Text.WordWrap
horizontalAlignment: Text.AlignHCenter
}
}

View File

@ -170,6 +170,9 @@ Item {
function init() {
print("calling init. Auth required:", engine.jsonRpcClient.authenticationRequired, "initial setup required:", engine.jsonRpcClient.initialSetupRequired, "jsonrpc connected:", engine.jsonRpcClient.connected, "Current host:", engine.jsonRpcClient.currentHost)
pageStack.clear()
// var page = pageStack.push(Qt.resolvedUrl("connection/ConnectingPage.qml"));
// return
if (!engine.jsonRpcClient.currentHost) {
print("pushing ConnectPage")
pageStack.push(Configuration.connectionWizard)

View File

@ -104,6 +104,7 @@ RowLayout {
case "light":
case "irrigation":
case "ventilation":
case "powersocket":
return ""
case "garagedoor":
var thing = root.thing ? root.thing : root.thingsProxy.get(0)
@ -206,6 +207,7 @@ RowLayout {
case "light":
case "irrigation":
case "ventilation":
case "powersocket":
return ""
case "garagedoor":
var dev = root.thing ? root.thing : thingsProxy.get(0)

View File

@ -59,39 +59,37 @@ Item {
}
}
RowLayout {
id: layout
anchors { left: parent.left; top: parent.top; right: parent.right }
RowLayout {
id: layout
anchors { left: parent.left; top: parent.top; right: parent.right }
HeaderButton {
id: menuButton
objectName: "headerMenuButton"
imageSource: "../images/navigation-menu.svg"
visible: false
onClicked: root.menuPressed();
}
HeaderButton {
id: backButton
objectName: "backButton"
imageSource: "../images/back.svg"
onClicked: root.backPressed();
}
Label {
id: label
Layout.fillWidth: true
Layout.maximumWidth: layout.width - x * 2
Layout.fillHeight: true
verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignHCenter
elide: Text.ElideRight
text: root.text
// visible: text.length > 0
font: Style.bigFont
}
HeaderButton {
id: menuButton
objectName: "headerMenuButton"
imageSource: "../images/navigation-menu.svg"
visible: false
onClicked: root.menuPressed();
}
HeaderButton {
id: backButton
objectName: "backButton"
imageSource: "../images/back.svg"
onClicked: root.backPressed();
}
Label {
id: label
Layout.fillWidth: true
Layout.maximumWidth: layout.width - Style.iconSize * 2
Layout.fillHeight: true
verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignHCenter
elide: Text.ElideRight
text: root.text
font: Style.bigFont
}
}
Pane {
id: infoPane
@ -113,7 +111,7 @@ Item {
implicitHeight: contentRow.implicitHeight
RowLayout {
id: contentRow
anchors { left: parent.left; top: parent.top; right: parent.right; leftMargin: app.margins; rightMargin: app.margins }
anchors { left: parent.left; top: parent.top; right: parent.right; leftMargin: Style.margins; rightMargin: Style.margins }
Item {
Layout.fillWidth: true
height: Style.iconSize
@ -121,7 +119,7 @@ Item {
Label {
text: infoPane.text
font.pixelSize: app.smallFont
font: Style.smallFont
color: "white"
}

View File

@ -30,7 +30,6 @@
import QtQuick 2.5
import QtQuick.Controls 2.1
import QtQuick.Controls.Material 2.1
import QtQuick.Layouts 1.1
import Nymea 1.0
@ -47,6 +46,7 @@ Page {
property alias busyText: busyOverlay.text
Flickable {
id: flickable
anchors.fill: parent
contentHeight: contentColumn.height + Style.margins
interactive: contentHeight > height
@ -57,7 +57,7 @@ Page {
ColumnLayout {
id: contentColumn
anchors.horizontalCenter: parent.horizontalCenter
width: Math.min(500, parent.width)
width: Math.min(500, flickable.width)
}
}

View File

@ -103,16 +103,16 @@ Page {
Item {
Layout.fillWidth: true
Layout.preferredHeight: Style.delegateHeight
Label {
id: extraButtonLabel
anchors { left: parent.left; verticalCenter: parent.verticalCenter }
}
MouseArea {
id: extraButton
anchors { left: parent.left; verticalCenter: parent.verticalCenter }
height: Style.delegateHeight
width: childrenRect.width
width: extraButtonLabel.width
visible: false
Label {
id: extraButtonLabel
anchors.centerIn: parent
}
onClicked: root.extraButtonPressed()
}
}

View File

@ -57,15 +57,15 @@ Page {
ColumnLayout {
id: columnLayout
anchors { left: parent.left; right: parent.right; verticalCenter: parent.verticalCenter; margins: app.margins }
spacing: app.margins
anchors { left: parent.left; right: parent.right; verticalCenter: parent.verticalCenter; margins: Style.margins }
spacing: Style.margins
BusyIndicator {
Layout.alignment: Qt.AlignHCenter
running: parent.visible
}
Label {
text: qsTr("Connecting...")
font.pixelSize: app.largeFont
font: Style.bigFont
Layout.fillWidth: true
wrapMode: Text.WordWrap
horizontalAlignment: Text.AlignHCenter
@ -73,8 +73,8 @@ Page {
Label {
Layout.fillWidth: true
text: engine.jsonRpcClient.currentHost.name.length > 0 ? engine.jsonRpcClient.currentHost.name : engine.jsonRpcClient.currentHost.uuid
font.pixelSize: app.smallFont
wrapMode: Text.WrapAtWordBoundaryOrAnywhere
font: Style.smallFont
elide: Text.ElideRight
horizontalAlignment: Text.AlignHCenter
}
Label {
@ -119,7 +119,7 @@ Page {
}
return errorMessage;
}
font.pixelSize: app.smallFont
font: Style.smallFont
wrapMode: Text.WrapAtWordBoundaryOrAnywhere
horizontalAlignment: Text.AlignHCenter
}

View File

@ -86,11 +86,11 @@ SettingsPageBase {
id: contentColumn
width: parent.width
spacing: app.margins
spacing: Style.margins
RowLayout {
Layout.margins: app.margins
spacing: app.margins
Layout.margins: Style.margins
spacing: Style.margins
ColorIcon {
Layout.preferredHeight: Style.iconSize * 2

View File

@ -156,12 +156,12 @@ MainPageTile {
id: inlineControlLoader
anchors {
fill: parent
leftMargin: app.margins / 2
rightMargin: app.margins / 2
leftMargin: Style.margins / 2
rightMargin: Style.margins / 2
}
sourceComponent: {
if (!root.iface) {
return null
return labelComponent
}
switch (iface.name) {
@ -176,7 +176,6 @@ MainPageTile {
case "cooling":
case "thermostat":
return sensorComponent;
// return labelComponent;
case "light":
case "garagedoor":
@ -199,7 +198,7 @@ MainPageTile {
case "media":
return mediaControlComponent
default:
console.warn("InterfaceTile, inlineControl: Unhandled interface", iface.name)
return labelComponent
}
}
@ -283,11 +282,9 @@ MainPageTile {
ColumnLayout {
spacing: 0
property Thing thing: thingsProxy.get(0)
Label {
text: parent.thing.name
font.pixelSize: app.smallFont
text: qsTr("%n things", "", thingsProxy.count)
font: Style.smallFont
Layout.fillWidth: true
elide: Text.ElideRight
}
@ -380,8 +377,8 @@ MainPageTile {
RowLayout {
anchors.fill: parent
anchors.margins: app.margins / 2
spacing: app.margins / 2
anchors.margins: Style.margins / 2
spacing: Style.margins / 2
ColorIcon {
Layout.preferredHeight: Style.iconSize
@ -393,7 +390,7 @@ MainPageTile {
ColumnLayout {
Label {
text: sensorsRoot.thing.name
font.pixelSize: app.smallFont
font: Style.smallFont
Layout.fillWidth: true
elide: Text.ElideRight
}
@ -402,7 +399,7 @@ MainPageTile {
text: sensorsRoot.shownStateType
? (Math.round(Types.toUiValue(sensorsRoot.thing.states.getState(sensorsRoot.shownStateType.id).value, sensorsRoot.shownStateType.unit) * 100) / 100) + " " + Types.toUiUnit(sensorsRoot.shownStateType.unit)
: ""
font.pixelSize: app.smallFont
font: Style.smallFont
Layout.fillWidth: true
visible: sensorsRoot.shownStateType && sensorsRoot.shownStateType.type.toLowerCase() !== "bool"
elide: Text.ElideRight

View File

@ -788,7 +788,7 @@ Item {
margins: Style.smallMargins
}
Label {
text: toolTip.entry.timestamp.toLocaleString(Qt.locale(), Locale.ShortFormat)
text: toolTip.entry ? toolTip.entry.timestamp.toLocaleString(Qt.locale(), Locale.ShortFormat) : ""
font: Style.smallFont
}
@ -800,8 +800,9 @@ Item {
: 0
property bool translate: value >= 1000
property double translatedValue: value / (translate ? 1000 : 1)
text: toolTip.entry.acquisition >= 0 ? qsTr("Consumed: %1 %2").arg(translatedValue.toFixed(2)).arg(translate ? "kW" : "W")
: qsTr("Produced: %1 %2").arg(translatedValue.toFixed(2)).arg(translate ? "kW" : "W")
text: toolTip.entry && toolTip.entry.acquisition >= 0
? qsTr("Consumed: %1 %2").arg(translatedValue.toFixed(2)).arg(translate ? "kW" : "W")
: qsTr("Produced: %1 %2").arg(translatedValue.toFixed(2)).arg(translate ? "kW" : "W")
font: Style.smallFont
}
// Label {
@ -816,7 +817,7 @@ Item {
Rectangle {
width: Style.extraSmallFont.pixelSize
height: width
color: toolTip.entry.acquisition >= 0 ? Style.red : Style.yellow
color: toolTip.entry && toolTip.entry.acquisition >= 0 ? Style.red : Style.yellow
}
Label {
@ -829,7 +830,7 @@ Item {
property double value: toolTip.entry ? Math.abs(toolTip.entry.acquisition) : 0
property bool translate: value >= 1000
property double translatedValue: value / (translate ? 1000 : 1)
text: toolTip.entry.acquisition >= 0 ? qsTr("From grid: %1 %2").arg(translatedValue.toFixed(2)).arg(translate ? "kW" : "W")
text: toolTip.entry && toolTip.entry.acquisition >= 0 ? qsTr("From grid: %1 %2").arg(translatedValue.toFixed(2)).arg(translate ? "kW" : "W")
: qsTr("To grid: %1 %2").arg(translatedValue.toFixed(2)).arg(translate ? "kW" : "W")
font: Style.extraSmallFont
}
@ -851,7 +852,7 @@ Item {
property double value: toolTip.entry ? Math.min(Math.max(0, toolTip.entry.consumption), -toolTip.entry.production) : 0
property bool translate: value >= 1000
property double translatedValue: value / (translate ? 1000 : 1)
text: toolTip.entry.acquisition >= 0 ? qsTr("From self production: %1 %2").arg(translatedValue.toFixed(2)).arg(translate ? "kW" : "W")
text: toolTip.entry && toolTip.entry.acquisition >= 0 ? qsTr("From self production: %1 %2").arg(translatedValue.toFixed(2)).arg(translate ? "kW" : "W")
: qsTr("Consumed: %1 %2").arg(translatedValue.toFixed(2)).arg(translate ? "kW" : "W")
font: Style.extraSmallFont
}
@ -861,7 +862,7 @@ Item {
Rectangle {
width: Style.extraSmallFont.pixelSize
height: width
color: toolTip.entry.storage > 0 ? Style.purple : Style.orange
color: toolTip.entry && toolTip.entry.storage > 0 ? Style.purple : Style.orange
}
Label {
@ -874,7 +875,7 @@ Item {
property double value: toolTip.entry ? Math.abs(toolTip.entry.storage) : 0
property bool translate: value >= 1000
property double translatedValue: value / (translate ? 1000 : 1)
text: toolTip.entry.storage > 0 ? qsTr("To battery: %1 %2").arg(translatedValue.toFixed(2)).arg(translate ? "kW" : "W") :
text: toolTip.entry && toolTip.entry.storage > 0 ? qsTr("To battery: %1 %2").arg(translatedValue.toFixed(2)).arg(translate ? "kW" : "W") :
qsTr("From battery: %1 %2").arg(translatedValue.toFixed(2)).arg(translate ? "kW" : "W")
font: Style.extraSmallFont
}