X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=src%2Fwindows%2FBrowserWindow.h;h=143e35f1571ecbec87eba2f136f937358bea7577;hb=77398618a48027f56c9bbd95e8a02245d79f6884;hp=beb3f03024251c957fa554a5200c32c4b18dec82;hpb=77a3805e3b7c6ee7daeb2db660bb4b2789b33da2;p=PrivacyBrowserPC.git diff --git a/src/windows/BrowserWindow.h b/src/windows/BrowserWindow.h index beb3f03..143e35f 100644 --- a/src/windows/BrowserWindow.h +++ b/src/windows/BrowserWindow.h @@ -1,5 +1,5 @@ /* - * Copyright © 2022-2023 Soren Stoutner . + * Copyright 2022-2023 Soren Stoutner . * * This file is part of Privacy Browser PC . * @@ -26,6 +26,7 @@ // KDE Frameworks headers. #include #include +#include #include // Qt toolkit headers. @@ -40,7 +41,7 @@ class BrowserWindow : public KXmlGuiWindow public: // The default constructor. - BrowserWindow(bool firstWindow=true); + BrowserWindow(bool firstWindow=true, QString *initialUrlStringPointer = nullptr); // The public functions. QSize sizeHint() const override; @@ -48,11 +49,17 @@ public: // The public variables. TabWidget *tabWidgetPointer; +public Q_SLOTS: + // The public slots. + void populateBookmarksInThisWindow(); // This is public so that the bookmarks can be repopulated over D-Bus when changed by another instance of Privacy Browser. + private Q_SLOTS: // The private slots. void addOrEditDomainSettings() const; void back() const; void clearUrlLineEditFocus() const; + void decrementZoom(); + void editBookmarks() const; void escape() const; void findNext() const; void findPrevious() const; @@ -60,22 +67,33 @@ private Q_SLOTS: void fullScreenRequested(const bool toggleOn); void getZoomFactorFromUser(); void hideFindTextActions() const; + void hideProgressBar() const; void home() const; + void incrementZoom(); void loadUrlFromLineEdit(const QString &url) const; void newWindow() const; + void populateBookmarksInAllWindows() const; void refresh() const; + void reloadAndBypassCache() const; + void showBookmarkContextMenu(const QPoint &point); void showCookiesDialog(); - void showDownloadLocationBrowseDialog() const; + void showDownloadDirectoryBrowseDialog() const; void showDomainSettingsDialog() const; void showFindTextActions() const; void showProgressBar(const int &progress) const; void showSettingsDialog(); + void toggleBookmark(); + void toggleDeveloperTools() const; void toggleDomStorage() const; void toggleFindCaseSensitive() const; void toggleJavaScript() const; void toggleLocalStorage() const; void toggleFullScreen(); + void toggleViewBookmarksToolBar(); + void toggleViewSource() const; + void toggleViewSourceInNewTab() const; void updateCookiesAction(const int numberOfCookies) const; + void updateDefaultZoomFactor(const double newDefaultZoomFactor); void updateDomStorageAction(const bool &isEnabled) const; void updateDomainSettingsIndicator(const bool status); void updateFindText(const QString &text, const bool findCaseSensitive) const; @@ -84,22 +102,39 @@ private Q_SLOTS: 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 updateZoomActions(const double &zoomFactor); void updateSearchEngineLabel(const QString &searchEngineString) const; void updateUrlLineEdit(const QUrl &newUrl); void updateUserAgentLabel(const QString &userAgentDatabaseName) const; + void updateViewBookmarksToolBarCheckbox(const bool visible); void updateWindowTitle(const QString &title); + void zoomDefault(); private: // The private variables. + KActionCollection *actionCollectionPointer; + QAction *bookmarkedActionPointer; + QList *> bookmarksMenuActionList; + QMenu *bookmarksMenuPointer; + QList *> bookmarksMenuSubmenuList; + QList bookmarksToolBarActionList; + QList *> bookmarksToolBarMenuList; + KToolBar *bookmarksToolBarPointer; + QList *> bookmarksToolBarSubfolderActionList; + bool bookmarksToolBarIsVisible = false; + bool bookmarksToolBarUninitialized = true; KConfigDialog *configDialogPointer; QAction *cookiesActionPointer; QUrl currentUrl; + QPushButton *currentZoomButtonPointer; double currentZoomFactor; bool customSearchEngineEnabled; bool customUserAgentEnabled; + double defaultZoomFactor; + QAction *developerToolsActionPointer; QAction *domStorageActionPointer; - QComboBox *downloadLocationComboBoxPointer; + QComboBox *downloadDirectoryComboBoxPointer; + QList *> finalBookmarkFolderMenuActionList; QAction *findCaseSensitiveActionPointer; QAction *findNextActionPointer; QAction *findPreviousActionPointer; @@ -118,6 +153,7 @@ private: QPalette normalBackgroundPalette; QPalette positiveBackgroundPalette; QProgressBar *progressBarPointer; + QAction *refreshActionPointer; QLabel *searchEngineLabelPointer; QAction *searchEngineMenuActionPointer; QAction *searchEngineMojeekActionPointer; @@ -127,6 +163,7 @@ private: QAction *searchEngineBingActionPointer; QAction *searchEngineYahooActionPointer; QAction *searchEngineCustomActionPointer; + QAction *stopActionPointer; QLabel *userAgentLabelPointer; QAction *userAgentMenuActionPointer; QAction *userAgentPrivacyBrowserActionPointer; @@ -140,6 +177,21 @@ private: QAction *userAgentCustomActionPointer; KLineEdit *urlLineEditPointer; KToolBar *urlToolBarPointer; + QAction *viewBookmarksToolBarActionPointer; + QAction *viewSourceActionPointer; + QAction *viewSourceInNewTabActionPointer; + QAction *zoomDefaultActionPointer; QAction *zoomFactorActionPointer; + QAction *zoomInActionPointer; + QPushButton *zoomMinusButtonPointer; + QAction *zoomOutActionPointer; + QPushButton *zoomPlusButtonPointer; + + // The private functions. + void addFinalBookmarkFolderMenuActions(QMenu *menuPointer, double folderId); + void populateBookmarksMenuSubfolders(const double folderId, QMenu *menuPointer); + void populateBookmarksToolBar(); + void populateBookmarksToolBarSubfolders(const double folderId, QMenu *menuPointer); + void updateBookmarkedAction() const; }; #endif