X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=src%2Fwindows%2FBrowserWindow.h;h=99fd146001fb69b83609b0968e231605725101de;hb=c76e7c8baa9761d771e5891ee699ea6ddc78c23a;hp=f4dc071e5f4c597c245f270e1dcf484fed09dbab;hpb=fe9f5cdee9e6e16eac1858f7f661516c24f71fa5;p=PrivacyBrowserPC.git diff --git a/src/windows/BrowserWindow.h b/src/windows/BrowserWindow.h index f4dc071..99fd146 100644 --- a/src/windows/BrowserWindow.h +++ b/src/windows/BrowserWindow.h @@ -1,5 +1,5 @@ /* - * Copyright © 2022 Soren Stoutner . + * Copyright 2022-2023 Soren Stoutner . * * This file is part of Privacy Browser PC . * @@ -21,14 +21,17 @@ #define BROWSERWINDOW_H // Application headers. -#include "views/BrowserView.h" +#include "widgets/TabWidget.h" // KDE Frameworks headers. #include +#include #include // Qt toolkit headers. +#include #include +#include class BrowserWindow : public KXmlGuiWindow { @@ -37,25 +40,89 @@ class BrowserWindow : public KXmlGuiWindow public: // The default constructor. - BrowserWindow(); + BrowserWindow(bool firstWindow=true); + + // The public functions. + QSize sizeHint() const override; + + // The public variables. + TabWidget *tabWidgetPointer; private Q_SLOTS: // The private slots. - void fileNew() const; + void addOrEditDomainSettings() const; + void back() const; + void clearUrlLineEditFocus() const; + void escape() const; + void findNext() const; + void findPrevious() const; + void forward() const; + void fullScreenRequested(const bool toggleOn); void getZoomFactorFromUser(); - void settingsConfigure(); - void updateOnTheFlySearchEngine(const QString &searchEngine) const; - void updateOnTheFlyUserAgent(const QString &userAgent) const; - void updateOnTheFlyZoomFactor(const double &zoomFactor); + void hideFindTextActions() const; + void home() const; + void loadUrlFromLineEdit(const QString &url) const; + void newWindow() const; + void refresh() const; + void reloadAndBypassCache() const; + void showCookiesDialog(); + void showDownloadLocationBrowseDialog() const; + void showDomainSettingsDialog() const; + void showFindTextActions() const; + void showProgressBar(const int &progress) const; + void showSettingsDialog(); + void toggleDomStorage() const; + void toggleFindCaseSensitive() const; + void toggleJavaScript() const; + void toggleLocalStorage() const; + void toggleFullScreen(); + void toggleViewSource() const; + void toggleViewSourceInNewTab() const; + void updateCookiesAction(const int numberOfCookies) const; + void updateDomStorageAction(const bool &isEnabled) const; + void updateDomainSettingsIndicator(const bool status); + void updateFindText(const QString &text, const bool findCaseSensitive) const; + void updateFindTextResults(const QWebEngineFindTextResult &findTextResult) const; + void updateJavaScriptAction(const bool &isEnabled); + void updateLocalStorageAction(const bool &isEnabled); + void updateSearchEngineActions(const QString &searchEngine, const bool &updateCustomSearchEngineStatus); + void updateUserAgentActions(const QString &userAgent, const bool &updateCustomUserAgentStatus); + void updateZoomFactorAction(const double &zoomFactor); void updateSearchEngineLabel(const QString &searchEngineString) const; - void updateStatusBar(const QString &statusBarMessage) const; + void updateUrlLineEdit(const QUrl &newUrl); void updateUserAgentLabel(const QString &userAgentDatabaseName) const; + void updateWindowTitle(const QString &title); private: // The private variables. - BrowserView *browserViewPointer; + KConfigDialog *configDialogPointer; + QAction *cookiesActionPointer; + QUrl currentUrl; double currentZoomFactor; + bool customSearchEngineEnabled; + bool customUserAgentEnabled; + QAction *domStorageActionPointer; + QComboBox *downloadLocationComboBoxPointer; + QAction *findCaseSensitiveActionPointer; + QAction *findNextActionPointer; + QAction *findPreviousActionPointer; + QAction *findTextLabelActionPointer; + QLabel *findTextLabelPointer; + QAction *findTextLineEditActionPointer; + KLineEdit *findTextLineEditPointer; + KToggleFullScreenAction *fullScreenActionPointer; + QAction *hideFindTextActionPointer; + QAction *javaScriptActionPointer; + bool javaScriptEnabled; + QAction *localStorageActionPointer; + bool localStorageEnabled; + KToolBar *navigationToolBarPointer; + QPalette negativeBackgroundPalette; + QPalette normalBackgroundPalette; + QPalette positiveBackgroundPalette; + QProgressBar *progressBarPointer; QLabel *searchEngineLabelPointer; + QAction *searchEngineMenuActionPointer; QAction *searchEngineMojeekActionPointer; QAction *searchEngineMonoclesActionPointer; QAction *searchEngineMetagerActionPointer; @@ -64,7 +131,9 @@ private: QAction *searchEngineYahooActionPointer; QAction *searchEngineCustomActionPointer; QLabel *userAgentLabelPointer; + QAction *userAgentMenuActionPointer; QAction *userAgentPrivacyBrowserActionPointer; + QAction *userAgentWebEngineDefaultActionPointer; QAction *userAgentFirefoxLinuxActionPointer; QAction *userAgentChromiumLinuxActionPointer; QAction *userAgentFirefoxWindowsActionPointer; @@ -72,7 +141,9 @@ private: QAction *userAgentEdgeWindowsActionPointer; QAction *userAgentSafariMacosActionPointer; QAction *userAgentCustomActionPointer; + KLineEdit *urlLineEditPointer; + KToolBar *urlToolBarPointer; + QAction *viewSourceActionPointer; QAction *zoomFactorActionPointer; - KConfigDialog *configDialogPointer; }; #endif