Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add MessagingMenu plugin #1208

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

tatokis
Copy link
Contributor

@tatokis tatokis commented Feb 22, 2023

A long time ago I used to use Liferea on Ubuntu 16.04. The version packaged in the repositories carried a C patch that added Liferea to Unity's MessagingMenu.
It was very convenient and useful, and I was extremely frustrated when I had to upgrade to 20.04 and my workflow was broken (as the patch was dropped, probably because it was difficult to maintain).

With that in mind, I've been trying to make an easy to maintain Python plugin that restores this functionality.

The current version is in a decent enough state (I've been using it daily for a quite while now.), however I would like some feedback as it feels like I might be going down the wrong path.

As such, a few questions came up:

  • Is there a better way to access the feeds in the order they are shown in the TreeView?
    • It needs to still possible to make Liferea switch to that feed like the plugin currently does in _source_activated()
  • If not, is there a better way to filter out the non feed entries (such as Unread, Important, and folders)?

TODO:

  • Handle Gtk TreeView/TreeModel item reordering
    • Any kind of reordering/adding a new feed will currently break things and end up with duplicate entries
  • Add config window
    • Add configurable option to show new entries after start (and not existing unread items)
    • Add configurable option to order MessagingMenu entries based on when they were last updated
  • Show default RSS icon when a feed does not have a favicon available

I am probably forgetting a few things right now, so I'll update this when I come across them again.

@lwindolf
Copy link
Owner

@tatokis Regarding your questions:

  1. Is there a better way to access the feeds in the order they are shown in the TreeView? -----> No there is not. This is because the nodePtr type is not yet an GObject and so there is no serialization to access it. I plan to change it to GObject in the future allowing access to it.
  2. If not, is there a better way to filter out the non feed entries (such as Unread, Important, and folders)? ---> right now not, when nodePtr becomes accessible you could simple query the feed type.

@tatokis
Copy link
Contributor Author

tatokis commented May 3, 2023

@lwindolf Thank you very much for your reply, and apologies for the late response. When I get the time I'll finish this implementation, and later down the line when you convert nodePtr to a GObject I'll reimplement it using that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants