Skip to content

Extended plugin system

Yuri6037 requested to merge Yuri6037/geary:extended-plugin-system into mainline

This MR is intended to provide more extensions to the Plugin system in order to allow the priority (!620 (closed)) to be a plugin.

The plan for the development of this MR is:

  • Add get_message_header(string key), set_message_header(string key, string value) and clear_message_header(string key) to Plugin.Composer. Of course the character set will automatically be matched from Geary.RFC822.Message. Use a hash map to manage headers. (Weight 3)
  • Add Plugin.Menu and set_menu(Plugin.Menu) to Plugin.Composer this will allow the plugin to register the priority action. (Weight 5)
  • Add get_message_header(string key) to Plugin.Email. (Weight 2)
  • Add add_email_status(EmailIdentifier email, MessageStatus) and remove_email_status(EmailIdentifier email, MessageStatus) to EmailContext (Weight 5)
  • Create Plugin.MessageStatus and Components.MessageStatus (Weight 4)

Weights goes from 1 to 5. 1 is minimal change, 5 is potentially large changes needed.

DISCLAIMER: The weights given are just estimations and may be subject to change.

Edited by Yuri6037

Merge request reports