mirror of
https://github.com/cagnulein/qdomyos-zwift.git
synced 2026-02-18 00:17:41 +01:00
Compare commits
17 Commits
build-1073
...
ios_floati
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
54798aa1b4 | ||
|
|
5013dd1a2a | ||
|
|
f868464c16 | ||
|
|
7f66796d4e | ||
|
|
64a2c14752 | ||
|
|
92d4efea74 | ||
|
|
26e6fe8f14 | ||
|
|
74917032b9 | ||
|
|
e89bb2b25d | ||
|
|
286853f704 | ||
|
|
b05a479722 | ||
|
|
f8ebb450d0 | ||
|
|
c57a5ba653 | ||
|
|
03ce5f0043 | ||
|
|
2904a987fc | ||
|
|
709e73702d | ||
|
|
f1dec0a9b4 |
@@ -354,8 +354,8 @@
|
||||
879F740F2893D592009A64C8 /* libqtmedia_audioengine.a in Link Binary With Libraries */ = {isa = PBXBuildFile; fileRef = 879F740E2893D591009A64C8 /* libqtmedia_audioengine.a */; };
|
||||
879F74112893D5B8009A64C8 /* libqavfcamera.a in Link Binary With Libraries */ = {isa = PBXBuildFile; fileRef = 879F74102893D5B7009A64C8 /* libqavfcamera.a */; };
|
||||
879F74152893D732009A64C8 /* CoreMedia.framework in Link Binary With Libraries */ = {isa = PBXBuildFile; fileRef = 879F74142893D732009A64C8 /* CoreMedia.framework */; };
|
||||
87A0771029B641D600A368BF /* wahookickrheadwind.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 87A0770F29B641D500A368BF /* wahookickrheadwind.cpp */; };
|
||||
87A0771229B6420200A368BF /* moc_wahookickrheadwind.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 87A0771129B6420200A368BF /* moc_wahookickrheadwind.cpp */; };
|
||||
87A0770C29B6217500A368BF /* libQt5SslServer.a in Link Binary With Libraries */ = {isa = PBXBuildFile; fileRef = 87A0770B29B6217400A368BF /* libQt5SslServer.a */; };
|
||||
87A0770D29B6218700A368BF /* libQt5SslServer.a in Link Binary With Libraries */ = {isa = PBXBuildFile; fileRef = 87A0770B29B6217400A368BF /* libQt5SslServer.a */; };
|
||||
87A0C4BB262329A600121A76 /* npecablebike.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 87A0C4B7262329A600121A76 /* npecablebike.cpp */; };
|
||||
87A0C4BC262329A600121A76 /* cscbike.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 87A0C4B9262329A600121A76 /* cscbike.cpp */; };
|
||||
87A0C4BF262329B500121A76 /* moc_cscbike.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 87A0C4BD262329B500121A76 /* moc_cscbike.cpp */; };
|
||||
@@ -1158,9 +1158,7 @@
|
||||
879F74102893D5B7009A64C8 /* libqavfcamera.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libqavfcamera.a; path = ../../Qt/5.15.2/ios/plugins/mediaservice/libqavfcamera.a; sourceTree = "<group>"; };
|
||||
879F74122893D705009A64C8 /* CoreVideo.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreVideo.framework; path = System/Library/Frameworks/CoreVideo.framework; sourceTree = SDKROOT; };
|
||||
879F74142893D732009A64C8 /* CoreMedia.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMedia.framework; path = System/Library/Frameworks/CoreMedia.framework; sourceTree = SDKROOT; };
|
||||
87A0770E29B641D500A368BF /* wahookickrheadwind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = wahookickrheadwind.h; path = ../src/wahookickrheadwind.h; sourceTree = "<group>"; };
|
||||
87A0770F29B641D500A368BF /* wahookickrheadwind.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = wahookickrheadwind.cpp; path = ../src/wahookickrheadwind.cpp; sourceTree = "<group>"; };
|
||||
87A0771129B6420200A368BF /* moc_wahookickrheadwind.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = moc_wahookickrheadwind.cpp; sourceTree = "<group>"; };
|
||||
87A0770B29B6217400A368BF /* libQt5SslServer.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libQt5SslServer.a; path = ../qHttpServerBin/5.15.2/ios/lib/libQt5SslServer.a; sourceTree = "<group>"; };
|
||||
87A0C4B7262329A600121A76 /* npecablebike.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = npecablebike.cpp; path = ../src/npecablebike.cpp; sourceTree = "<group>"; };
|
||||
87A0C4B8262329A600121A76 /* cscbike.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cscbike.h; path = ../src/cscbike.h; sourceTree = "<group>"; };
|
||||
87A0C4B9262329A600121A76 /* cscbike.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cscbike.cpp; path = ../src/cscbike.cpp; sourceTree = "<group>"; };
|
||||
@@ -1613,6 +1611,7 @@
|
||||
A48EFCF98552C67DAB8515FD /* Qt5ClipboardSupport in Link Binary With Libraries */,
|
||||
4B457EBD757B30AEB87115EA /* qgif in Link Binary With Libraries */,
|
||||
3CD4CA4EC80AF4F839D1019B /* qicns in Link Binary With Libraries */,
|
||||
87A0770D29B6218700A368BF /* libQt5SslServer.a in Link Binary With Libraries */,
|
||||
B714316583081A00BDF9C0F2 /* qico in Link Binary With Libraries */,
|
||||
048796158C9224438A10BFB7 /* qjpeg in Link Binary With Libraries */,
|
||||
E8C47E7768095E24910D0E38 /* qmacheif in Link Binary With Libraries */,
|
||||
@@ -1691,6 +1690,7 @@
|
||||
87F1179E26A5FBDE00541B3A /* libqtwebview_darwin.a in Link Binary With Libraries */,
|
||||
A2512002BCC1BFB4FC6D60C1 /* Qt5Core in Link Binary With Libraries */,
|
||||
F8B465CE34D8DF87AAE95913 /* CoreFoundation.framework in Link Binary With Libraries */,
|
||||
87A0770C29B6217500A368BF /* libQt5SslServer.a in Link Binary With Libraries */,
|
||||
F26454630C80841CBDCFE1CA /* Foundation.framework in Link Binary With Libraries */,
|
||||
3407CACF00E4A0046255A968 /* qtpcre2 in Link Binary With Libraries */,
|
||||
25732265709055CB968558D3 /* Qt5NetworkAuth in Link Binary With Libraries */,
|
||||
@@ -2345,6 +2345,7 @@
|
||||
AF39DD055C3EF8226FBE929D /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
87A0770B29B6217400A368BF /* libQt5SslServer.a */,
|
||||
8745B2742AFCB3B300991A39 /* libadb.a */,
|
||||
873D388A29B0D744006A2611 /* ConnectIQ.xcframework */,
|
||||
879F74142893D732009A64C8 /* CoreMedia.framework */,
|
||||
|
||||
@@ -16,7 +16,7 @@ ColumnLayout {
|
||||
WebView {
|
||||
id: webView
|
||||
anchors.fill: parent
|
||||
url: "http://localhost:" + settings.value("template_inner_QZWS_port") + "/chartjs/chart.htm"
|
||||
url: "https://localhost:" + settings.value("template_inner_QZWS_port") + "/chartjs/chart.htm"
|
||||
visible: true
|
||||
onLoadingChanged: {
|
||||
if (loadRequest.errorString) {
|
||||
|
||||
@@ -17,7 +17,7 @@ ColumnLayout {
|
||||
WebView {
|
||||
id: webView
|
||||
anchors.fill: parent
|
||||
url: "http://localhost:" + settings.value("template_inner_QZWS_port") + "/" + (settings.value("maps_type") === "3D" ? "googlemaps" : "maps2d") + "/maps.htm"
|
||||
url: "https://localhost:" + settings.value("template_inner_QZWS_port") + "/" + (settings.value("maps_type") === "3D" ? "googlemaps" : "maps2d") + "/maps.htm"
|
||||
visible: true
|
||||
onLoadingChanged: {
|
||||
if (loadRequest.errorString)
|
||||
|
||||
@@ -82,7 +82,7 @@ public class FloatingWindowGFG extends Service {
|
||||
});
|
||||
WebSettings settings = wv.getSettings();
|
||||
settings.setJavaScriptEnabled(true);
|
||||
wv.loadUrl("http://localhost:" + FloatingHandler._port + "/floating/floating.htm");
|
||||
wv.loadUrl("https://localhost:" + FloatingHandler._port + "/floating/floating.htm");
|
||||
wv.clearView();
|
||||
wv.measure(100, 100);
|
||||
wv.setAlpha(Float.valueOf(FloatingHandler._alpha) / 100.0f);
|
||||
|
||||
73
src/iOSFloating.qml
Normal file
73
src/iOSFloating.qml
Normal file
@@ -0,0 +1,73 @@
|
||||
import QtQuick 2.7
|
||||
import QtQuick.Layouts 1.3
|
||||
import QtQuick.Controls 2.15
|
||||
import QtQuick.Controls.Material 2.0
|
||||
import Qt.labs.settings 1.0
|
||||
import QtWebView 1.1
|
||||
|
||||
Item {
|
||||
id: column1
|
||||
// vedi trainprogram_open_clicked
|
||||
Settings {
|
||||
id: settings
|
||||
}
|
||||
|
||||
WebView {
|
||||
id: webView
|
||||
property var rr;
|
||||
anchors.top: parent.top
|
||||
anchors.bottom: parent.bottom
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
width: parent.width
|
||||
|
||||
url: "https://youtube.com"
|
||||
visible: true
|
||||
onLoadingChanged: {
|
||||
if (loadRequest.errorString)
|
||||
console.error(loadRequest.errorString);
|
||||
if (loadRequest.status == WebView.LoadSucceededStatus) {
|
||||
console.error("Procedo");
|
||||
let loadScr = `
|
||||
var iframeContainer = document.createElement("iframe");
|
||||
|
||||
iframeContainer.src = "https://localhost.direct:` + settings.value("template_inner_QZWS_port") + `/floating/floating.htm";
|
||||
iframeContainer.width = ` + settings.value("floating_width") + `;
|
||||
iframeContainer.height = ` + settings.value("floating_height") + `;
|
||||
iframeContainer.frameBorder = "0";
|
||||
iframeContainer.style.cssText = "position: absolute; bottom: 20px; right: 20px; transform: translate(-50%, -50%); z-index: 1; opacity: ` + settings.value("floating_transparency") / 100.0 + `;";
|
||||
|
||||
document.body.appendChild(iframeContainer);
|
||||
|
||||
var moveButton = document.createElement("button");
|
||||
var buttonText = document.createTextNode("Move");
|
||||
moveButton.appendChild(buttonText);
|
||||
moveButton.style.cssText = "z-index: 1; position: absolute; bottom: 20px; right: 20px; background-color: white; color: black; border: none; padding: 10px; border-radius: 5px; cursor: pointer; width: 50px; height: 50px";
|
||||
document.body.appendChild(moveButton);
|
||||
|
||||
var isMoving = false;
|
||||
var offsetX, offsetY;
|
||||
|
||||
moveButton.addEventListener('mousedown', function (event) {
|
||||
isMoving = true;
|
||||
offsetX = event.clientX - iframeContainer.offsetLeft;
|
||||
offsetY = event.clientY - iframeContainer.offsetTop;
|
||||
});
|
||||
|
||||
moveButton.addEventListener('mouseup', function () {
|
||||
isMoving = false;
|
||||
});
|
||||
|
||||
document.addEventListener('mousemove', function (event) {
|
||||
if (isMoving) {
|
||||
iframeContainer.style.left = event.clientX - offsetX + 'px';
|
||||
iframeContainer.style.top = event.clientY - offsetY + 'px';
|
||||
}
|
||||
});
|
||||
`;
|
||||
console.error(loadScr);
|
||||
webView.runJavaScript(loadScr, function(res) {
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -420,9 +420,9 @@ ApplicationWindow {
|
||||
ToolButton {
|
||||
id: toolButtonFloating
|
||||
icon.source: "icons/icons/mini-display.png"
|
||||
onClicked: { console.log("floating!"); floatingOpen(); }
|
||||
onClicked: { if(OS_VERSION === "Android") { console.log("floating!"); floatingOpen(); } else { stackView.push("iOSFloating.qml"); } }
|
||||
anchors.left: toolButton.right
|
||||
visible: OS_VERSION === "Android" ? true : false
|
||||
visible: true
|
||||
}
|
||||
|
||||
Popup {
|
||||
|
||||
@@ -93,6 +93,7 @@
|
||||
<file>inner_templates/floating/radikalmedium.otf</file>
|
||||
<file>settings-treadmill-inclination-override.qml</file>
|
||||
<file>WebStravaAuth.qml</file>
|
||||
<file>iOSFloating.qml</file>
|
||||
<file>Toast.qml</file>
|
||||
<file>ToastManager.qml</file>
|
||||
<file>inner_templates/chartjs/elliptical.png</file>
|
||||
|
||||
@@ -18,7 +18,7 @@ void WebServerInfoSender::ignoreSSLErrors(QNetworkReply *repl, const QList<QSslE
|
||||
|
||||
bool WebServerInfoSender::listen() {
|
||||
if (!innerTcpServer) {
|
||||
innerTcpServer = new QTcpServer(this);
|
||||
innerTcpServer = new QSslServer(sslconf, this);
|
||||
connect(innerTcpServer, SIGNAL(acceptError(QAbstractSocket::SocketError)), this, SLOT(acceptError(QAbstractSocket::SocketError)));
|
||||
}
|
||||
if (!innerTcpServer->isListening()) {
|
||||
@@ -78,8 +78,106 @@ bool WebServerInfoSender::init() {
|
||||
port = settings.value(QStringLiteral("template_") + templateId + QStringLiteral("_port"), 6666).toInt(&ok);
|
||||
if (!ok)
|
||||
port = 6666;
|
||||
if (!httpServer)
|
||||
if (!httpServer) {
|
||||
httpServer = new QHttpServer(this);
|
||||
|
||||
static const char g_privateKey[] = R"(-----BEGIN PRIVATE KEY-----
|
||||
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCfxIwp8v2ruyo7
|
||||
SQyxuHNMdRKNm6ETkNyTU64mGurtWq7rcMma9AsER7e3oFV2kYVUIxoBRbLrlYnx
|
||||
EcWMyEHopEm2LZbbqGNE3U7JZGGr84VNyfuRXqNM/QgRRjP4h2Tq9dT9AduNlQdl
|
||||
VDU7kfyJpHMfh6HNqdzZs48QEbpueypqoyCPevENZLKmbegisJh+A4ffnRO30t5M
|
||||
L5639kjnBygouKNSQpFwPM/zU+guBCR0KgQxdn7urgkqkqTE+lCOOnVvUJmU4mCP
|
||||
cM0+8Svaozzm20cwP5XEYzTjmUBSyGEZeGZSbUFCxEOCvLHm/FQqCsGAk8GopnhS
|
||||
h1qwO4TxAgMBAAECggEAe6JigNfb+7fjr2sRGrpM5v61s8WaOYThXFTmL/CmmbSS
|
||||
Jfnq2TE/ETnabovxdsaXsYtURWXFVk8rJtUE1bPmZPw1WngfBK5i21iS7n/yoVja
|
||||
cF78gPsGTb6FLrDv6MQFkVlZT8zPNNn9lik65HVNQspymBSiXn+zOvibnejKJ1GJ
|
||||
ePCggHMT8y1CreXr2BkDjNUR+4exd9QatJbfSSdmyc+Fs+gXZ2w+IrW114rM6GQb
|
||||
p56LfKDI2R3dH0zc/1g53cgoL7MgvqxuggjzIASGw4Xo3dysxsxBgpysB0y7AYrL
|
||||
7Jt1nE9QT6AT0F5su/2Q2g3ImTTiXqumPzO8TYtCAQKBgQDKuoOAJTyHuqETPwXn
|
||||
4QFQMdHczmZUEobeHuWHnidy8HV0Aw3cX5ZxRqZch1Dw9fOOYna6KJKaq2Yw5Ghz
|
||||
DcqlE1cP6Qmim8bmD4/z763/IIJ5T8J18p3AKEw5/Br+nbWp8N7ZMDz9xa6+qkrm
|
||||
Nfr9xMGdWQh5Oyu+Sknw2EtxkQKBgQDJwBL6x9evtCaOOGnA/0vpsoFMaFX0SBx+
|
||||
NRCv5ehrHW5D88Py88O0ymRHIEVaMMknghlcTUln58KYrk0kzqhNLoZYZVf6ivpt
|
||||
9qQaRnIUgy8krlrDiyvn4OFnhfh5DNm/nd+wikPJEwcI1q0z8R7+g9y3RKCNL6s2
|
||||
HQG3Jj8tYQKBgEoBVEfPUA1sP6i69Pj01nnj9exZHFnMeZdUSA392gDHbtju1HyC
|
||||
GHU5iTl13EJaRpLPtu+2J+52a1OlzctSWYtxR/Ly6yWFIFKTk8VE1Yuw3nBSgXZ1
|
||||
Hskq7MiuE1ynTc2/tFosldc99tB7ceQgCIPi85rxCXrX8twAWoWlL8VBAoGAPg06
|
||||
iTGAEEWLekC1niuncJh7lkGc9kZbpSGzITbIVnG14WaPRSFedzOsxgeR7RyGMgWc
|
||||
wTvwMOoiew1ZItIBB8Qgg/2foqquPbYXYRF7sv1qOZD6z5v1hBsxmMKm2qxuKLZo
|
||||
/4Z3NNgKWNiWaxxlWQi7kQ6lhuc7dKhVR7yWv+ECgYAuM2gtT83DyR4ymSO7Q6dv
|
||||
dT/UObzrkPfDmkRW2y4PUqAC6Pa/9+4HbBgHGpta0mIu7jwzSeDzvKhOf39TOdGd
|
||||
rgqC8coanU3KUQ0hQ3qxc31sK04xd0oL7IlHN84raYakjpldRcGDa5rMBvuAhX7l
|
||||
UtzKXXRaWNoRy0DfRWzoyw==
|
||||
-----END PRIVATE KEY-----)";
|
||||
|
||||
static const char g_certificate[] = R"(-----BEGIN CERTIFICATE-----
|
||||
MIIGSTCCBTGgAwIBAgIMdxktQkXvAVtRN9TFMA0GCSqGSIb3DQEBCwUAMEwxCzAJ
|
||||
BgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMSIwIAYDVQQDExlB
|
||||
bHBoYVNTTCBDQSAtIFNIQTI1NiAtIEcyMB4XDTIyMDMyOTAyNTIyMVoXDTIzMDQz
|
||||
MDAyNTIyMFowHTEbMBkGA1UEAwwSKi5sb2NhbGhvc3QuZGlyZWN0MIIBIjANBgkq
|
||||
hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAn8SMKfL9q7sqO0kMsbhzTHUSjZuhE5Dc
|
||||
k1OuJhrq7Vqu63DJmvQLBEe3t6BVdpGFVCMaAUWy65WJ8RHFjMhB6KRJti2W26hj
|
||||
RN1OyWRhq/OFTcn7kV6jTP0IEUYz+Idk6vXU/QHbjZUHZVQ1O5H8iaRzH4ehzanc
|
||||
2bOPEBG6bnsqaqMgj3rxDWSypm3oIrCYfgOH350Tt9LeTC+et/ZI5wcoKLijUkKR
|
||||
cDzP81PoLgQkdCoEMXZ+7q4JKpKkxPpQjjp1b1CZlOJgj3DNPvEr2qM85ttHMD+V
|
||||
xGM045lAUshhGXhmUm1BQsRDgryx5vxUKgrBgJPBqKZ4UodasDuE8QIDAQABo4ID
|
||||
WDCCA1QwDgYDVR0PAQH/BAQDAgWgMIGKBggrBgEFBQcBAQR+MHwwQwYIKwYBBQUH
|
||||
MAKGN2h0dHA6Ly9zZWN1cmUuZ2xvYmFsc2lnbi5jb20vY2FjZXJ0L2dzYWxwaGFz
|
||||
aGEyZzJyMS5jcnQwNQYIKwYBBQUHMAGGKWh0dHA6Ly9vY3NwMi5nbG9iYWxzaWdu
|
||||
LmNvbS9nc2FscGhhc2hhMmcyMFcGA1UdIARQME4wQgYKKwYBBAGgMgEKCjA0MDIG
|
||||
CCsGAQUFBwIBFiZodHRwczovL3d3dy5nbG9iYWxzaWduLmNvbS9yZXBvc2l0b3J5
|
||||
LzAIBgZngQwBAgEwCQYDVR0TBAIwADA/BgNVHR8EODA2MDSgMqAwhi5odHRwOi8v
|
||||
Y3JsLmdsb2JhbHNpZ24uY29tL2dzL2dzYWxwaGFzaGEyZzIuY3JsMC8GA1UdEQQo
|
||||
MCaCEioubG9jYWxob3N0LmRpcmVjdIIQbG9jYWxob3N0LmRpcmVjdDAdBgNVHSUE
|
||||
FjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwHwYDVR0jBBgwFoAU9c3VPAhQ+WpPOreX
|
||||
2laD5mnSaPcwHQYDVR0OBBYEFKJIjzgsaaVBT/uEaAvJNihZEmG5MIIBfgYKKwYB
|
||||
BAHWeQIEAgSCAW4EggFqAWgAdQDoPtDaPvUGNTLnVyi8iWvJA9PL0RFr7Otp4Xd9
|
||||
bQa9bgAAAX/TlrBWAAAEAwBGMEQCIHSp1pDooZSiB2vOUgXCcOjw4JZL0h3/41Jb
|
||||
XpDjEgOqAiBOFnt0KMGpLhgXKmOC7yllaNKRApke2awT2FDVZyaUTgB2AG9Tdqwx
|
||||
8DEZ2JkApFEV/3cVHBHZAsEAKQaNsgiaN9kTAAABf9OWsFQAAAQDAEcwRQIhAPna
|
||||
KZ58189iW3tkCKB/LSu94Hg5BDZ/Md23nLYYHBMhAiBviFfs4hzlRv3Ivae3r5NJ
|
||||
S9c3kUzAELD2eFWSOnj6iAB3AFWB1MIWkDYBSuoLm1c8U/DA5Dh4cCUIFy+jqh0H
|
||||
E9MMAAABf9OWsIMAAAQDAEgwRgIhAJBxU2mJB7HLFrmgTrfWCtJvPK3YUhvKG13G
|
||||
lrMMGrHoAiEA4me4djsIMHHabov1eQrrvkaI95xFTyqKfQl3FK6A9y4wDQYJKoZI
|
||||
hvcNAQELBQADggEBACXSYB2WTlREfpuquD75rZTja2qFkDkrFjnCes50tqqVxemF
|
||||
G4kGV7N/7aSr1T9BvW/DCzYy5UABabvEM+MGaHNcMibYqoSNWgfvAULZPVzL45Uz
|
||||
pghoz7xci2ol5/5ceNx7YEW0nehw2r7A4/6mjFYbkOIzBILz4zOlilmYHBTDkdMC
|
||||
W45YM5RbOqWCqGDwSuASH5hEoHDDsRhJksHjJNCoX0PKMilscqfVw5h80xRVEtVu
|
||||
DLBXL79GXXSQk2q1jxVv1i3o29TYw2bk3WCM8Uw2LJV2jerKF2+9ymboZKURKfHU
|
||||
e20WdjHUOZc3kHLXYGVjjU1/e+Thf6DrUn3YmPU=
|
||||
-----END CERTIFICATE-----
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIETTCCAzWgAwIBAgILBAAAAAABRE7wNjEwDQYJKoZIhvcNAQELBQAwVzELMAkG
|
||||
A1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1Jv
|
||||
b3QgQ0ExGzAZBgNVBAMTEkdsb2JhbFNpZ24gUm9vdCBDQTAeFw0xNDAyMjAxMDAw
|
||||
MDBaFw0yNDAyMjAxMDAwMDBaMEwxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9i
|
||||
YWxTaWduIG52LXNhMSIwIAYDVQQDExlBbHBoYVNTTCBDQSAtIFNIQTI1NiAtIEcy
|
||||
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2gHs5OxzYPt+j2q3xhfj
|
||||
kmQy1KwA2aIPue3ua4qGypJn2XTXXUcCPI9A1p5tFM3D2ik5pw8FCmiiZhoexLKL
|
||||
dljlq10dj0CzOYvvHoN9ItDjqQAu7FPPYhmFRChMwCfLew7sEGQAEKQFzKByvkFs
|
||||
MVtI5LHsuSPrVU3QfWJKpbSlpFmFxSWRpv6mCZ8GEG2PgQxkQF5zAJrgLmWYVBAA
|
||||
cJjI4e00X9icxw3A1iNZRfz+VXqG7pRgIvGu0eZVRvaZxRsIdF+ssGSEj4k4HKGn
|
||||
kCFPAm694GFn1PhChw8K98kEbSqpL+9Cpd/do1PbmB6B+Zpye1reTz5/olig4het
|
||||
ZwIDAQABo4IBIzCCAR8wDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8C
|
||||
AQAwHQYDVR0OBBYEFPXN1TwIUPlqTzq3l9pWg+Zp0mj3MEUGA1UdIAQ+MDwwOgYE
|
||||
VR0gADAyMDAGCCsGAQUFBwIBFiRodHRwczovL3d3dy5hbHBoYXNzbC5jb20vcmVw
|
||||
b3NpdG9yeS8wMwYDVR0fBCwwKjAooCagJIYiaHR0cDovL2NybC5nbG9iYWxzaWdu
|
||||
Lm5ldC9yb290LmNybDA9BggrBgEFBQcBAQQxMC8wLQYIKwYBBQUHMAGGIWh0dHA6
|
||||
Ly9vY3NwLmdsb2JhbHNpZ24uY29tL3Jvb3RyMTAfBgNVHSMEGDAWgBRge2YaRQ2X
|
||||
yolQL30EzTSo//z9SzANBgkqhkiG9w0BAQsFAAOCAQEAYEBoFkfnFo3bXKFWKsv0
|
||||
XJuwHqJL9csCP/gLofKnQtS3TOvjZoDzJUN4LhsXVgdSGMvRqOzm+3M+pGKMgLTS
|
||||
xRJzo9P6Aji+Yz2EuJnB8br3n8NA0VgYU8Fi3a8YQn80TsVD1XGwMADH45CuP1eG
|
||||
l87qDBKOInDjZqdUfy4oy9RU0LMeYmcI+Sfhy+NmuCQbiWqJRGXy2UzSWByMTsCV
|
||||
odTvZy84IOgu/5ZR8LrYPZJwR2UcnnNytGAMXOLRc3bgr07i5TelRS+KIz6HxzDm
|
||||
MTh89N1SyvNTBCVXVmaU6Avu5gMUTu79bZRknl7OedSyps9AsUSoPocZXun4IRZZ
|
||||
Uw==
|
||||
-----END CERTIFICATE-----)";
|
||||
sslconf.setLocalCertificate(QSslCertificate(g_certificate));
|
||||
sslconf.setPrivateKey(QSslKey(g_privateKey, QSsl::Rsa));
|
||||
sslconf.setProtocol(QSsl::SecureProtocols);
|
||||
|
||||
httpServer->sslSetup(sslconf);
|
||||
}
|
||||
relative2Absolute.clear();
|
||||
for (auto fld : folders) {
|
||||
idx = fld.lastIndexOf('/');
|
||||
@@ -111,6 +209,7 @@ bool WebServerInfoSender::init() {
|
||||
qDebug() << QStringLiteral("WebServer listening on port") << port << QStringLiteral(" ")
|
||||
<< relative2Absolute;
|
||||
connect(httpServer, SIGNAL(newWebSocketConnection()), this, SLOT(onNewConnection()));
|
||||
connect(httpServer, &QHttpServer::missingHandler, this, &WebServerInfoSender::missingHandler);
|
||||
return true;
|
||||
} else {
|
||||
reinit();
|
||||
@@ -119,6 +218,10 @@ bool WebServerInfoSender::init() {
|
||||
return false;
|
||||
}
|
||||
|
||||
void WebServerInfoSender::missingHandler(const QHttpServerRequest &request, QTcpSocket *socket) {
|
||||
qDebug() << request << socket;
|
||||
}
|
||||
|
||||
void WebServerInfoSender::watchdogEvent() {
|
||||
if(innerTcpServer->serverError() != QAbstractSocket::UnknownSocketError)
|
||||
qDebug() << "WebServerInfoSender is " << innerTcpServer->serverError();
|
||||
|
||||
@@ -30,6 +30,7 @@ class WebServerInfoSender : public TemplateInfoSender {
|
||||
bool listen();
|
||||
void processFetcher(QWebSocket *sender, const QByteArray &data);
|
||||
QTimer watchdogTimer;
|
||||
QSslConfiguration sslconf;
|
||||
|
||||
protected:
|
||||
virtual void innerStop();
|
||||
@@ -42,6 +43,7 @@ class WebServerInfoSender : public TemplateInfoSender {
|
||||
QHash<QString, QString> relative2Absolute;
|
||||
QHash<QNetworkReply *, QPair<QJsonObject, QWebSocket *>> reply2Req;
|
||||
private slots:
|
||||
void missingHandler(const QHttpServerRequest &request, QTcpSocket *socket);
|
||||
void acceptError(QAbstractSocket::SocketError socketError);
|
||||
void watchdogEvent();
|
||||
void onNewConnection();
|
||||
|
||||
Reference in New Issue
Block a user