diff options
-rw-r--r-- | src/WhatsApp.pro | 3 | ||||
-rw-r--r-- | src/mainwindow.cpp | 38 | ||||
-rw-r--r-- | src/mainwindow.h | 4 | ||||
-rw-r--r-- | src/settingswidget.ui | 98 |
4 files changed, 105 insertions, 38 deletions
diff --git a/src/WhatsApp.pro b/src/WhatsApp.pro index 5dee6e0..b8ee249 100644 --- a/src/WhatsApp.pro +++ b/src/WhatsApp.pro @@ -38,6 +38,7 @@ SOURCES += \ downloadmanagerwidget.cpp \ downloadwidget.cpp \ elidedlabel.cpp \ + lock.cpp \ main.cpp \ mainwindow.cpp \ settingswidget.cpp \ @@ -53,6 +54,7 @@ HEADERS += \ downloadmanagerwidget.h \ downloadwidget.h \ elidedlabel.h \ + lock.h \ mainwindow.h \ notificationpopup.h \ requestinterceptor.h \ @@ -84,6 +86,7 @@ FORMS += \ certificateerrordialog.ui \ downloadmanagerwidget.ui \ downloadwidget.ui \ + lock.ui \ passworddialog.ui \ settingswidget.ui diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index d27ae79..e30f393 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -301,6 +301,42 @@ void MainWindow::createTrayIcon() this, &MainWindow::iconActivated); } + +void MainWindow::init_lock() +{ +// if(lockWidget==nullptr){ +// lockWidget = new Lock(this); +// lockWidget->setObjectName("lockWidget"); +// } +// lockWidget->setWindowFlags(Qt::Widget); +// lockWidget->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding); +// lockWidget->setGeometry(this->rect()); + +// connect(lockWidget,&Lock::passwordNotSet,[=](){ +// settings.setValue("lockscreen",false); +// ui->applock_checkbox->setChecked(false); +// }); + +// connect(lockWidget,&Lock::unLocked,[=]() +// { +// //unlock event +// }); + +// connect(lockWidget,&Lock::passwordSet,[=](){ +// //enable disable lock screen +// if(settings.value("asdfg").isValid()){ +// ui->current_password->setText("Current Password: <i>"+QByteArray::fromBase64(settings.value("asdfg").toString().toUtf8())+"</i>"); +// }else{ +// ui->current_password->setText("Current Password: <i>Require setup</i>"); +// } +// ui->applock_checkbox->setChecked(settings.value("lockscreen",false).toBool()); +// }); +// lockWidget->show(); +// if(settings.value("asdfg").isValid() && settings.value("lockscreen").toBool()==true){ +// lockWidget->lock_app(); +// } +} + //check window state and set tray menus void MainWindow::check_window_state() { @@ -428,7 +464,7 @@ void MainWindow::createWebPage(bool offTheRecord) QWebEnginePage *page = new WebEnginePage(profile,webEngine); if(settings.value("windowTheme","light").toString() == "dark"){ - page->setBackgroundColor(QColor("#F0F0F0")); //whatsapp bg color + page->setBackgroundColor(QColor("#131C21")); //whatsapp bg color } webEngine->setPage(page); //page should be set parent of profile to prevent diff --git a/src/mainwindow.h b/src/mainwindow.h index fb68e11..67a783b 100644 --- a/src/mainwindow.h +++ b/src/mainwindow.h @@ -26,6 +26,7 @@ #include "requestinterceptor.h" #include "settingswidget.h" #include "webenginepage.h" +#include "lock.h" #include "downloadmanagerwidget.h" @@ -75,6 +76,8 @@ private: DownloadManagerWidget m_downloadManagerWidget; QScopedPointer<QWebEngineProfile> m_otrProfile; + Lock *lockWidget = nullptr; + private slots: @@ -103,6 +106,7 @@ private slots: void init_settingWidget(); void init_globalWebProfile(); void check_window_state(); + void init_lock(); }; #endif // MAINWINDOW_H diff --git a/src/settingswidget.ui b/src/settingswidget.ui index 7318e5c..9a1c92c 100644 --- a/src/settingswidget.ui +++ b/src/settingswidget.ui @@ -6,8 +6,8 @@ <rect> <x>0</x> <y>0</y> - <width>539</width> - <height>447</height> + <width>553</width> + <height>478</height> </rect> </property> <property name="windowTitle"> @@ -104,32 +104,39 @@ background:transparent; <string>General settings</string> </property> <layout class="QGridLayout" name="gridLayout_4"> - <item row="3" column="0"> - <layout class="QHBoxLayout" name="horizontalLayout"> - <item> - <widget class="QLabel" name="label"> + <item row="0" column="0"> + <layout class="QGridLayout" name="gridLayout"> + <item row="0" column="0"> + <widget class="QCheckBox" name="notificationCheckBox"> <property name="text"> - <string>Default close button action</string> + <string>Disable Notifications PopUp</string> </property> </widget> </item> - <item> - <widget class="QComboBox" name="closeButtonActionComboBox"> - <item> - <property name="text"> - <string>Minimize to tray</string> - </property> - </item> - <item> - <property name="text"> - <string>Quit Application</string> - </property> - </item> + <item row="1" column="0"> + <widget class="QCheckBox" name="muteAudioCheckBox"> + <property name="text"> + <string>Mute Audio</string> + </property> + </widget> + </item> + <item row="1" column="1"> + <widget class="QCheckBox" name="autoPlayMediaCheckBox"> + <property name="text"> + <string>Disable Auto Playback of Media</string> + </property> + </widget> + </item> + <item row="0" column="1"> + <widget class="QCheckBox" name="disableVideosCheckBox"> + <property name="text"> + <string>Disable loading videos</string> + </property> </widget> </item> </layout> </item> - <item row="4" column="0"> + <item row="5" column="0"> <layout class="QHBoxLayout" name="horizontalLayout_2"> <item> <widget class="QLabel" name="label_2"> @@ -154,7 +161,7 @@ background:transparent; </item> </layout> </item> - <item row="5" column="0"> + <item row="6" column="0"> <layout class="QHBoxLayout" name="horizontalLayout_3"> <item> <widget class="QLabel" name="label_4"> @@ -190,33 +197,50 @@ background:transparent; </item> </layout> </item> - <item row="0" column="0"> - <layout class="QGridLayout" name="gridLayout"> - <item row="0" column="0"> - <widget class="QCheckBox" name="notificationCheckBox"> + <item row="3" column="0"> + <layout class="QHBoxLayout" name="horizontalLayout"> + <item> + <widget class="QLabel" name="label"> <property name="text"> - <string>Disable Notifications PopUp</string> + <string>Default close button action</string> </property> </widget> </item> - <item row="1" column="0"> - <widget class="QCheckBox" name="muteAudioCheckBox"> - <property name="text"> - <string>Mute Audio</string> - </property> + <item> + <widget class="QComboBox" name="closeButtonActionComboBox"> + <item> + <property name="text"> + <string>Minimize to tray</string> + </property> + </item> + <item> + <property name="text"> + <string>Quit Application</string> + </property> + </item> </widget> </item> - <item row="1" column="1"> - <widget class="QCheckBox" name="autoPlayMediaCheckBox"> + </layout> + </item> + <item row="4" column="0"> + <layout class="QHBoxLayout" name="horizontalLayout_4"> + <property name="topMargin"> + <number>0</number> + </property> + <item> + <widget class="QCheckBox" name="applock_checkbox"> + <property name="toolTip"> + <string><html><head/><body><p>Enable application lock screen.</p></body></html></string> + </property> <property name="text"> - <string>Disable Auto Playback of Media</string> + <string>Enable App Lock on Start</string> </property> </widget> </item> - <item row="0" column="1"> - <widget class="QCheckBox" name="disableVideosCheckBox"> + <item> + <widget class="QLabel" name="current_password"> <property name="text"> - <string>Disable loading videos</string> + <string>Current Password:</string> </property> </widget> </item> |