diff --git a/README.md b/README.md index 567d9e54..e86ed29b 100644 --- a/README.md +++ b/README.md @@ -188,10 +188,7 @@ For more details of the changes, see the [Changelog](changelog.md) ### Subscriptions - - -### Multiple Queues - + ### Podcast @@ -202,8 +199,14 @@ For more details of the changes, see the [Changelog](changelog.md) ### Episode and player details +### Youtube share, syndicates and media + + +### Multiple Queues + + ### Usage customization - + ### Get feeds online diff --git a/images/3_subscriptions.jpg b/images/3_subscriptions.jpg index c16a867b..075434d6 100644 Binary files a/images/3_subscriptions.jpg and b/images/3_subscriptions.jpg differ diff --git a/images/5_podcast_1.jpg b/images/5_podcast_1.jpg index d93d1b09..b65425d1 100644 Binary files a/images/5_podcast_1.jpg and b/images/5_podcast_1.jpg differ diff --git a/images/5_podcast_setting.jpg b/images/5_podcast_setting.jpg index 3b6a1f16..8ce32a6a 100644 Binary files a/images/5_podcast_setting.jpg and b/images/5_podcast_setting.jpg differ diff --git a/images/5_podcast_setting1.jpg b/images/5_podcast_setting1.jpg index f60287ad..17e0d15b 100644 Binary files a/images/5_podcast_setting1.jpg and b/images/5_podcast_setting1.jpg differ diff --git a/images/6_episode.jpg b/images/6_episode.jpg index 8975c9a2..6b9e2b9d 100644 Binary files a/images/6_episode.jpg and b/images/6_episode.jpg differ diff --git a/images/6_player_details.jpg b/images/6_player_details.jpg index 483b13bf..dc296703 100644 Binary files a/images/6_player_details.jpg and b/images/6_player_details.jpg differ diff --git a/images/7_youtube_episode.jpg b/images/7_youtube_episode.jpg new file mode 100644 index 00000000..a28bbfce Binary files /dev/null and b/images/7_youtube_episode.jpg differ diff --git a/images/7_youtube_share.jpg b/images/7_youtube_share.jpg new file mode 100644 index 00000000..7f478ecd Binary files /dev/null and b/images/7_youtube_share.jpg differ diff --git a/images/7_youtube_shared.jpg b/images/7_youtube_shared.jpg new file mode 100644 index 00000000..2faf5003 Binary files /dev/null and b/images/7_youtube_shared.jpg differ diff --git a/images/7_youtube_syndicate.jpg b/images/7_youtube_syndicate.jpg new file mode 100644 index 00000000..36411401 Binary files /dev/null and b/images/7_youtube_syndicate.jpg differ diff --git a/images/8_multi_selection.jpg b/images/8_multi_selection.jpg new file mode 100644 index 00000000..a58dc5cd Binary files /dev/null and b/images/8_multi_selection.jpg differ diff --git a/images/7_speed.jpg b/images/8_speed.jpg similarity index 100% rename from images/7_speed.jpg rename to images/8_speed.jpg diff --git a/images/8_swipe_setting.jpg b/images/8_swipe_setting.jpg index 845a127e..3cba61e7 100644 Binary files a/images/8_swipe_setting.jpg and b/images/8_swipe_setting.jpg differ diff --git a/images/8_swipe_setting1.jpg b/images/8_swipe_setting1.jpg index fac5b83a..f3cc4fe1 100644 Binary files a/images/8_swipe_setting1.jpg and b/images/8_swipe_setting1.jpg differ diff --git a/widgets.qss b/widgets.qss new file mode 100644 index 00000000..b9d5f0ca --- /dev/null +++ b/widgets.qss @@ -0,0 +1,604 @@ +/* + * SPDX-FileCopyrightText: 2022-2024 Megan Conkle + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + +/******************************************************************************/ +/* Scrollbars */ +/******************************************************************************/ + +ghostwriter--MarkdownEditor QAbstractScrollArea::corner, +ghostwriter--HtmlPreview QAbstractScrollArea::corner, +ghostwriter--Sidebar QAbstractScrollArea::corner { + background: transparent; +} + +ghostwriter--MarkdownEditor QAbstractScrollArea, +ghostwriter--HtmlPreview QAbstractScrollArea, +ghostwriter--Sidebar QAbstractScrollArea { + padding: 3px 3px 0px 3px; + margin: 0 +} + +ghostwriter--Sidebar MarkdownEditor::horizontal, +ghostwriter--Sidebar HtmlPreview::horizontal, +ghostwriter--Sidebar QScrollBar::horizontal { + height: 16px; + margin: 5px; + border: 0; + background: transparent; +} + +ghostwriter--MarkdownEditor QScrollBar::vertical, +ghostwriter--HtmlPreview QScrollBar::vertical, +ghostwriter--Sidebar QScrollBar::vertical { + width: 16px; + margin: 5px; + border: 0; + background: transparent; +} + + +ghostwriter--MarkdownEditor QScrollBar::horizontal:hover, +ghostwriter--HtmlPreview QScrollBar::horizontal:hover, +ghostwriter--Sidebar QScrollBar::horizontal:hover { + background-color: #202325; + border-radius: 3px; +} + +ghostwriter--MarkdownEditor QScrollBar::vertical:hover, +ghostwriter--HtmlPreview QScrollBar::vertical:hover, +ghostwriter--Sidebar QScrollBar::vertical:hover { + background-color: #202325; + border-radius: 3px; +} + +ghostwriter--MarkdownEditor QScrollBar::handle:horizontal, +ghostwriter--HtmlPreview QScrollBar::handle:horizontal, +ghostwriter--Sidebar QScrollBar::handle:horizontal { + min-width: 50px; + border: 0; + background: #444749; + border-radius: 3px; + +} + +ghostwriter--MarkdownEditor QScrollBar::handle:horizontal, +ghostwriter--HtmlPreview QScrollBar::handle:horizontal, +ghostwriter--Sidebar QScrollBar::handle:horizontal { + min-width: 50px; + border: 0; + background: #444749; + border-radius: 3px; +} + +ghostwriter--MarkdownEditor QScrollBar::handle:vertical, +ghostwriter--HtmlPreview QScrollBar::handle:vertical, +ghostwriter--Sidebar QScrollBar::handle:vertical { + min-height: 50px; + border: 0; + background: #444749; + border-radius: 3px; +} + +ghostwriter--MarkdownEditor QScrollBar::handle:horizontal:hover, +ghostwriter--HtmlPreview QScrollBar::handle:horizontal:hover, +ghostwriter--Sidebar QScrollBar::handle:horizontal:hover { + background: #3daee9; +} + +ghostwriter--MarkdownEditor QScrollBar::handle:vertical:hover, +ghostwriter--HtmlPreview QScrollBar::handle:vertical:hover, +ghostwriter--Sidebar QScrollBar::handle:vertical:hover { + background: #3daee9; +} + +ghostwriter--MarkdownEditor QScrollBar::add-line, +ghostwriter--HtmlPreview QScrollBar::add-line, +ghostwriter--Sidebar QScrollBar::add-line, +ghostwriter--MarkdownEditor QScrollBar::sub-line, +ghostwriter--HtmlPreview QScrollBar::sub-line, +ghostwriter--Sidebar QScrollBar::sub-line, +ghostwriter--MarkdownEditor QScrollBar::add-page, +ghostwriter--HtmlPreview QScrollBar::add-page, +ghostwriter--Sidebar QScrollBar::add-page, +ghostwriter--MarkdownEditor QScrollBar::sub-page, +ghostwriter--HtmlPreview QScrollBar::sub-page, +ghostwriter--Sidebar QScrollBar::sub-page, +ghostwriter--MarkdownEditor QScrollBar::down-arrow, +ghostwriter--HtmlPreview QScrollBar::down-arrow, +ghostwriter--Sidebar QScrollBar::down-arrow, +ghostwriter--MarkdownEditor QScrollBar::right-arrow, +ghostwriter--HtmlPreview QScrollBar::right-arrow, +ghostwriter--Sidebar QScrollBar::right-arrow { + background: transparent; + border: 0 +} + +/******************************************************************************/ +/* Menu Bar */ +/******************************************************************************/ + +QMainWindow QMenuBar { + color: #bdc3c7; + background-color: #151719; + font-size: 10pt; + spacing: 2px; + border: 0px; + border-bottom: 1px; + border-color: #2c2f31; + border-style: solid; + padding: 1px 0px 1px 0px; +} + +QMainWindow QMenuBar::item { + padding: 2px 7px 2px 7px; + border: 0px; + margin: 2px; + border-radius: 5px; +} + +QMainWindow QMenuBar::item:selected { + background-color: #25282c; +} + +QMainWindow QMenuBar::item:hover { + background-color: #373d42; +} + +QMainWindow QMenuBar::item:pressed { + background-color: #1f2225; +} + +/******************************************************************************/ +/* Popup menus */ +/******************************************************************************/ + +QMainWindow QMenu, +QMenuBar QMenu { + color: #bdc3c7; + background-color: #1a1d1f; + border: 0px; + padding: 7px 0px 7px 0px; +} + +QMainWindow QMenu::item, +QMenuBar QMenu::item { + background-color: transparent; + padding: 5px 10px 5px 10px; + margin: 0px 0px 0px 0px; +} + +QMainWindow QMenu::indicator, +QMenuBar QMenu::indicator { + width: 16px; + height: 16px; + background-color: #25282c; + padding: 0px 5px 0px 5px; + margin: 0px 5px 0px 5px; +} + +QMainWindow QMenu::indicator::unchecked, +QMenuBar QMenu::indicator::unchecked { + width: 16px; + height: 16px; + background-color: #25282c; + border-radius: 2px; + border-style: solid; + border-width: 1px; + border-color: #bdc3c7; + margin: 0px 5px 0px 5px; +} + +QMainWindow QMenu::indicator::checked, +QMenuBar QMenu::indicator::checked { + width: 16px; + height: 16px; + background-color: #074051; + border-radius: 2px; + border-style: solid; + border-width: 1px; + border-color: #bdc3c7; + margin: 0px 5px 0px 5px; +} + +QMainWindow QMenu::item:selected, +QMenuBar QMenu::item::selected { + background-color: #074051; + color: #bdc3c7; +} + +QMainWindow QMenu::icon, +QMenuBar QMenu::icon { + border-radius: 2px; + border-width: 0px; + padding: 1px 3px 1px 3px; + margin: 0px 3px 0px 3px; +} + +QMainWindow QMenu::icon::checked, +QMenuBar QMenu::icon::checked { + background-color: #373d42; +} + +/******************************************************************************/ +/* Editor */ +/******************************************************************************/ + +QMainWindow QPlainTextEdit { + border: 0; + margin: 0; + padding: 5px; + background-color: #151719; + color: #bdc3c7; + selection-color: #bdc3c7; + selection-background-color: #074051; + font-family: Noto Sans Mono; + font-size: 16pt; +} + +QMainWindow QSplitter::handle { + border: 0; + padding: 0; + margin: 0; + background-color: #2c2f31; +} + +QMainWindow QSplitter::handle:vertical { + height: 1px; +} + +QMainWindow QSplitter::handle:horizontal { + width: 1px; +} + +/******************************************************************************/ +/* Sidebar and Activity Bar */ +/******************************************************************************/ + +/* Sidebar */ +QMainWindow ghostwriter--Sidebar, +QSplitter ghostwriter--Sidebar { + border: 0; + margin: 0; + padding: 0; + background-color: #151719; +} + +ghostwriter--Sidebar QStackedWidget { + border: 0; + padding: 1; + margin: 0; + background-color: #151719; + border-width: 0px; +} + +/* Activity bar tabs */ +ghostwriter--Sidebar QPushButton[checkable="true"] { + icon-size: 22px; + min-width: 40px; + max-width: 40px; + height: 40px; + outline: none; + margin: 0; + padding: 0; + border: 0; + background-color: transparent; + color: #8b8f92; + border-width: 0px; + border-left-width: 3px; + border-style: solid; + border-color: transparent; + border-radius: 0px; +} + +ghostwriter--Sidebar QPushButton:checked { + border-color: #3daee9; + color: #bdc3c7; + background-color: #202325; +} + +ghostwriter--Sidebar QPushButton:hover { + background-color: #202325; +} + +ghostwriter--Sidebar QPushButton:checked:hover { + border-color: #3daee9; + color: #bdc3c7; + background-color: #202325; +} + +/* Activity bar buttons */ +ghostwriter--Sidebar QPushButton[checkable="false"] { + icon-size: 22px; + padding: 0; + margin: 0; + border: 0; + border-radius: 5px; + background-color: transparent; + color: #8b8f92; + width: 40px; + height: 40px; +} + +ghostwriter--Sidebar QPushButton[checkable="false"]:hover { + color: #bdc3c7; + background-color: #202325; +} + +ghostwriter--Sidebar QPushButton[checkable="false"]:pressed { + color: #bdc3c7; + background-color: transparent; +} + +/* Stacked widgets inside sidebar pane */ + +ghostwriter--Sidebar QListWidget { + outline: none; + border: 0; + padding: 1; + background-color: #151719; + color: #bdc3c7; + font-size: 11pt; + font-weight: normal +} + +ghostwriter--Sidebar QListWidget::item { + border: 0; + padding: 1 0 1 0; + margin: 0; + background-color: #151719; + color: #bdc3c7; + font-weight: normal +} + +ghostwriter--Sidebar QListWidget::item:selected { + border-radius: 0px; + color: #bdc3c7; + background-color: #074051; +} + +ghostwriter--Sidebar QLabel { + border: 0; + padding: 0; + margin: 0; + background-color: transparent; + font-size: 11pt; + color: #bdc3c7; +} + +/******************************************************************************/ +/* Status bar */ +/******************************************************************************/ + +QStatusBar { + margin: 0; + padding: 0; + border-top: 1px solid #2c2f31; + border-left: 0; + border-right: 0; + border-bottom: 0; + background: #151719; + color: #8b8f92; +} + +QStatusBar QLabel { + font-size: 11pt; + margin: 0px; + padding: 5px; + border: 0; + background: transparent; + color: #8b8f92; +} + +QStatusBar QToolButton { + padding: 5 5 5 5; + margin: 0; + border: 0; + border-radius: 5px; + color: #8b8f92; + background-color: transparent; + font-size: 16px; + width: 32px; + height: 16px; +} + +QStatusBar QToolButton:hover, +QStatusBar QToolButton:checked:hover { + background-color: #373d42; +} + +QStatusBar QToolButton:pressed, +QStatusBar QToolButton:checked:pressed { + color: #73777a; + background-color: #1f2225; +} + +QStatusBar QToolButton:flat, +QStatusBar QToolButton:checked { + background-color: #25282c; +} + +QStatusBar QComboBox { + height: 22px; + border: 0px; + margin: 0; + padding: 0; + color: #8b8f92; + background-color: #151719; + font-size: 11pt; +} + +QStatusBar QComboBox:hover { + border-bottom: 2px solid #3daee9; +} + +QStatusBar QListView { + padding: 7px 0px 7px 0px; + margin: 0px; + color: #bdc3c7; + background-color: #151719; +} + +QStatusBar QListView::item { + background-color: transparent; + padding: 5px 10px 5px 10px; + margin: 0px; +} + +QStatusBar QListView::item:selected { + background-color: #074051; + color: #bdc3c7; +} + +QStatusBar QComboBox::drop-down { + border: 0; + margin: 0; + padding: 0; + height: 20px; + width: 20px; +} + +QStatusBar QComboBox::down-arrow { + border: 0; + margin: 0; + padding: 0; + height: 14px; + width: 14px; + image: url(/tmp/jVlaqV.png) +} + +QStatusBar QComboBox::drop-down:hover { + border-radius: 10px; + background-color: #373d42; +} + +QStatusBar #leftStatusBarWidget, +QStatusBar #midStatusBarWidget, +QStatusBar #rightStatusBarWidget { + border: 0; + margin: 0; + padding: 0; +} + +/******************************************************************************/ +/* Find and Replace Pane */ +/******************************************************************************/ + +ghostwriter--FindReplace QLabel { + font-size: 11pt; + margin: 0px; + padding: 5px; + border: 0; + background: transparent; + color: #8b8f92; +} + +ghostwriter--FindReplace QPushButton { + font-size: 16px; + padding: 5 5 5 5; + margin: 0; + border: 0; + border-radius: 5px; + color: #8b8f92; + background-color: transparent; + min-width: 16px; +} + +ghostwriter--FindReplace QPushButton:pressed { + color: #9da2a6; + background-color: transparent; +} + +ghostwriter--FindReplace QPushButton:hover { + color: #ffffff; + background-color: transparent; +} + +ghostwriter--FindReplace QPushButton:disabled { + color: #adb3b6; + background-color: transparent; +} + +ghostwriter--FindReplace QPushButton[checkable="true"] { + color: #8b8f92; + background-color: transparent; + min-width: 32px; + height: 16px; +} + +ghostwriter--FindReplace QPushButton[checkable="true"]:disabled, +ghostwriter--FindReplace QPushButton:flat:disabled { + color: #adb3b6; + background-color: #272a2e; +} + +ghostwriter--FindReplace QPushButton[checkable="true"]:hover, +ghostwriter--FindReplace QPushButton:checked:hover { + background-color: #d0d7db; + background-color: #373d42; +} + +ghostwriter--FindReplace QPushButton[checkable="true"]:pressed, +ghostwriter--FindReplace QPushButton:checked:pressed { + color: #73777a; + background-color: #1f2225; +} + +ghostwriter--FindReplace QPushButton:checked { + background-color: #25282c; +} + +ghostwriter--FindReplace QPushButton:flat { + color: #8b8f92; + background-color: #25282c; + font-weight: bold; +} + +ghostwriter--FindReplace QPushButton:flat:hover { + color: #d0d7db; + background-color: #373d42; +} + +ghostwriter--FindReplace QPushButton:flat:pressed { + color: #73777a; + background-color: #1f2225; +} + +ghostwriter--FindReplace QPushButton:flat:disabled { + color: #adb3b6; + background-color: #272a2e; +} + +ghostwriter--FindReplace QPushButton#matchCaseButton, +ghostwriter--FindReplace QPushButton#regexButton { + font-size: 16px; + font-family: default; + font-weight: bold; +} + +ghostwriter--FindReplace QPushButton#replaceButton, +ghostwriter--FindReplace QPushButton#replaceAllButton { + font-size: 11pt; + font-family: default; +} + +ghostwriter--FindReplace QPushButton#findReplaceCloseButton { + padding: 0; + margin: 0; + icon-size: 16px; +} + +ghostwriter--FindReplace QLineEdit { + color: #bdc3c7; + background-color: #202325; + border: 0px; + border-radius: 3px; + selection-color: #bdc3c7; + selection-background-color: #074051; +} + +ghostwriter--FindReplace QLineEdit:focus { + border: 1px solid #1d2022; +}