From 76327f4958bd8f1fe28287b31e04ae3ad14c3a5b Mon Sep 17 00:00:00 2001 From: Nicolas Mailloux Date: Sat, 12 Feb 2022 23:54:46 -0500 Subject: [PATCH] Improve USBMS handling Finally applying @NiLuJe's suggestion! --- alert.cpp | 1 - eink.qrc | 2 + functions.h | 13 +++++ mainwindow.cpp | 8 ++-- resources/clock-inverted.png | Bin 0 -> 35138 bytes resources/clock.png | Bin 0 -> 72979 bytes usbms_splash.cpp | 90 +++++++++++++++++++---------------- usbms_splash.h | 3 ++ 8 files changed, 71 insertions(+), 46 deletions(-) create mode 100644 resources/clock-inverted.png create mode 100644 resources/clock.png diff --git a/alert.cpp b/alert.cpp index 8d2353b..74cb095 100644 --- a/alert.cpp +++ b/alert.cpp @@ -77,7 +77,6 @@ alert::alert(QWidget *parent) : ui->warningLabel->setText("Please charge your eReader."); ui->securityLabel->setText("The battery's charge level is critical."); ui->messageLabel->setText("To prevent damage, your device has been turned off.\nPlease consider charging it."); - poweroff(false); } ui->warningLabel->setStyleSheet("QLabel { background-color : black; color : white; font-size: 16pt}"); diff --git a/eink.qrc b/eink.qrc index 7057e82..f0d8a85 100644 --- a/eink.qrc +++ b/eink.qrc @@ -71,5 +71,7 @@ resources/online-library.png resources/online-library-inverted.png resources/cover_unavailable.png + resources/clock-inverted.png + resources/clock.png diff --git a/functions.h b/functions.h index 2ecb4ae..beebe68 100644 --- a/functions.h +++ b/functions.h @@ -15,6 +15,7 @@ #include #include #include +#include // WoW, global variables and namespaces are awesome namespace global { @@ -206,6 +207,7 @@ namespace { fprintf(stderr, "Error opening ntx_io device\n"); } ioctl(light, 241, value); + close(light); } int int_checkconfig(QString file) { if(QFile::exists(file)) { @@ -666,6 +668,17 @@ namespace { bool getEncFSStatus() { return checkconfig("/external_root/run/encfs_mounted"); } + bool isUsbPluggedIn() { + // Thanks to https://github.com/koreader/KoboUSBMS/blob/2efdf9d920c68752b2933f21c664dc1afb28fc2e/usbms.c#L148-L158 + int ntxfd; + if((ntxfd = open("/dev/ntx_io", O_RDWR)) == -1) { + fprintf(stderr, "Error opening ntx_io device\n"); + } + unsigned long ptr = 0U; + ioctl(ntxfd, 108, &ptr); + close(ntxfd); + return !!ptr; + } } #endif // FUNCTIONS_H diff --git a/mainwindow.cpp b/mainwindow.cpp index a2e68f3..e50d17f 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -348,15 +348,13 @@ MainWindow::MainWindow(QWidget *parent) connect(usbmsPrompt, &QTimer::timeout, [&]() { if(checkconfig("/opt/inkbox_genuine") == true) { if(global::usbms::showUsbmsDialog != true) { - string_checkconfig_ro("/sys/devices/platform/pmic_battery.1/power_supply/mc13892_bat/status"); - if(usbmsStatus != checkconfig_str_val) { + if(isUsbPluggedIn() != usbmsStatus) { global::usbms::showUsbmsDialog = true; } } else { - string_checkconfig_ro("/sys/devices/platform/pmic_battery.1/power_supply/mc13892_bat/status"); - usbmsStatus = checkconfig_str_val; - if(usbmsStatus != "Charging\n") { + usbmsStatus = isUsbPluggedIn(); + if(usbmsStatus == false) { // Loop again... ; } diff --git a/resources/clock-inverted.png b/resources/clock-inverted.png new file mode 100644 index 0000000000000000000000000000000000000000..ce2978966be09aa8ffb30518ef27912f726a5f41 GIT binary patch literal 35138 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

5`xo7KA#|tZ4W@p|ma~ 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 awCIh=;_qzg&AbgA?eg~BF4@NW{{H}NJ~(>- literal 0 HcmV?d00001 diff --git a/usbms_splash.cpp b/usbms_splash.cpp index 865bfeb..8c2fa36 100644 --- a/usbms_splash.cpp +++ b/usbms_splash.cpp @@ -14,8 +14,8 @@ usbms_splash::usbms_splash(QWidget *parent) : ui->setupUi(this); // Getting the screen's size - float sW = QGuiApplication::screens()[0]->size().width(); - float sH = QGuiApplication::screens()[0]->size().height(); + sW = QGuiApplication::screens()[0]->size().width(); + sH = QGuiApplication::screens()[0]->size().height(); // Defining what the default icon size will be if(global::kobox::showKoboxSplash == true) { @@ -97,52 +97,47 @@ void usbms_splash::usbms_launch() proc_1->waitForFinished(); proc_1->deleteLater(); + bool exitUsbMsDone = false; QTimer *usbms_t = new QTimer(this); usbms_t->setInterval(1000); connect(usbms_t, &QTimer::timeout, [&]() { - QString prog ("mass_storage.sh"); - QStringList args; - QProcess *proc = new QProcess(); - proc->start(prog, args); - proc->waitForFinished(); - proc->deleteLater(); + if(exitUsbMsDone == false) { + if(isUsbPluggedIn() == false) { + if(global::usbms::koboxExportExtensions == true) { + reboot(false); + } + else { + qDebug() << "Exiting USBMS session..."; + ui->label->setText("Processing content"); + ui->label_3->setText("Please wait"); + ui->label->setStyleSheet("QLabel { background-color : black; color : white; font-size: 15pt }"); + ui->label_3->setStyleSheet("QLabel { background-color : black; color : white; font-size: 11pt }"); - QFile modules("/tmp/usbevent"); - modules.open(QIODevice::ReadWrite); - QTextStream in (&modules); - const QString content = in.readAll(); - std::string contentstr = content.toStdString(); - modules.close(); - if(contentstr.find("1") != std::string::npos) { - if(global::usbms::koboxExportExtensions == true) { - reboot(false); + float stdIconWidth = sW / 1.5; + float stdIconHeight = sH / 1.5; + + QPixmap pixmap(":/resources/clock-inverted.png"); + QPixmap scaledPixmap = pixmap.scaled(stdIconWidth, stdIconHeight, Qt::KeepAspectRatio); + ui->label_2->setPixmap(scaledPixmap); + + this->repaint(); + + QString prog("rmmod"); + QStringList args; + args << "g_mass_storage"; + QProcess * proc = new QProcess(); + proc->start(prog, args); + proc->waitForFinished(); + proc->deleteLater(); + + QTimer::singleShot(500, this, SLOT(restartServices())); + } + exitUsbMsDone = true; } else { - QString prog("rmmod"); - QStringList args; - args << "g_mass_storage"; - QProcess * proc = new QProcess(); - proc->start(prog, args); - proc->waitForFinished(); - proc->deleteLater(); - - // Restarting USBNet - // NOTE: USBNet is only started if required conditions are met (see https://github.com/Kobo-InkBox/rootfs/blob/master/etc/init.d/usbnet) - string_writeconfig("/opt/ibxd", "usbnet_start\n"); - QThread::msleep(1000); - // Mounting onboard storage - string_writeconfig("/opt/ibxd", "onboard_mount\n"); - QThread::msleep(1000); - // Checking for updates - string_writeconfig("/opt/ibxd", "update_inkbox_restart\n"); - QThread::msleep(2500); - - quit_restart(); + ; } } - else { - ; - } } ); usbms_t->start(); } @@ -165,3 +160,18 @@ void usbms_splash::quit_restart() { process.startDetached("inkbox", QStringList()); qApp->quit(); } + +void usbms_splash::restartServices() { + // Restarting USBNet + // NOTE: USBNet is only started if required conditions are met (see https://github.com/Kobo-InkBox/rootfs/blob/master/etc/init.d/usbnet) + string_writeconfig("/opt/ibxd", "usbnet_start\n"); + QThread::msleep(1000); + // Mounting onboard storage + string_writeconfig("/opt/ibxd", "onboard_mount\n"); + QThread::msleep(1000); + // Checking for updates + string_writeconfig("/opt/ibxd", "update_inkbox_restart\n"); + QThread::msleep(2500); + + quit_restart(); +} diff --git a/usbms_splash.h b/usbms_splash.h index 75fd48d..67e744a 100644 --- a/usbms_splash.h +++ b/usbms_splash.h @@ -14,12 +14,15 @@ class usbms_splash : public QWidget public: explicit usbms_splash(QWidget *parent = nullptr); ~usbms_splash(); + float sW; + float sH; void usbms_launch(); private slots: void brightnessDown(); void quit_restart(); + void restartServices(); private: Ui::usbms_splash *ui;