Re: [orca-list] Small update; Pluginsystem for Orca using libpeas



Howdy Chrys,

Could you add the ability to press alt+ok for ok, and alt+c for cancel?

Thanks,
Storm

On Fri, Jul 02, 2021 at 08:52:38PM +0200, Chrys wrote:
Howdy José, Howdy List,


1. the plugin manager should now have the focus when the plugin manager opens
2. i implemented the key handling. pressing escape always closes the plugin
manager (cancel button).
3. pressing return apply and close the window if the plugin list has the focus
(Ok button). if we would always consume return, the buttons for install /
uninstall would not activate if they are focused and we hit return.
4. the plugin manager now opens just once if we invoke orca + e multiple times

fixed as requested ;). Thanks for feedback!

cheers chrys


Am 02.07.21 um 19:33 schrieb José Vilmar Estácio de Souza:

   Hi.

   when you press caps lock+e, the plugin manager screen is displayed but
   focus is not moved to it. I don't know if a bug or if this is expected
   behavior.
   I would also like to suggest that in the plugin manager screen the OK
   button could be activated with the return key and the cancel button be
   activated with the esc key.
   Thanks.

   On 7/2/21 1:15 PM, Linux A11y wrote:

       Howdy List,

       I was busy in doing some coding things for out plugin based orca screen
       reader. Here a quick summary:
       - most current fixes, performance optimizations and joanies event flood
       killer work is merged into my  plugin_system branch

       - a lot of internal rework an cleanups

       - the plugin system tracks active states of plugins (every plugin was
       marked as active bevor)

       - the plugin system now use the pluginInfo as parameter almost
       everywhere. This is more unique than the plugin name

       - i can officially announce an initial basic  Plugin Manager! Hell,
       Yay! It was a good amount of work and its still considered as
       experimental as its still under heavy testing and fixing, but its
       stable enough to unleash that beast for you

       Tell me about the Plugin Manager!
       The plugin manager is implemented as an core plugin by its own. It
       consumes the new plugin system API of orca. 
       The main window contains a simple list with two columns, the plugin
       name and the state (enabled or disabled). There is a handful of buttons
       at the bottom.

       What can I do with it?
       Its initial hardcoded bound to: orca + e (e for extensions)
       You can navigate or type ahead on the plugin list to select a plugin.
       By toggle the active state it can be activated or deactivated. Do apply
       the new states you can press the apply button ( to only apply the
       states) or the ok button(to apply and close). Cancel does dismiss your
       changes.

       There are also buttons to install or uninstall plugins:
       - by pressing install, an file chooseer appears. You can select a
       plugin package there. A plugin package is a simple .tar.gz gile what
       contains the plugin folder. The installer only allows one plugin
       folder. And this plugin folder must contain the .plugin file. Otherwise
       its not installed.
       Example for time plugin:
       Package Time.tar.gz (the name of the file doesn’t matter)
       Content
       Folder: time/
       File: time/time.plugin 
       File: time/time.py

       By installing the archive is just unpacked to:
       ~/.local/share/orca/plugins 
       Its just available for activation right after installation. No restart
       or refresh is needed.

       - By pressing uninstall, the current selected plugin is removed from 
       ~/.local/share/orca/plugins 

       Cause by libpeas it just takes real effect after restarting orca.
       See here:
       https://gitlab.gnome.org/GNOME/libpeas/-/issues/27

       What is a core plugin?
       Well there are 3 types of plugins.
       Core: could not been disabled, can not be uninstalled
       System: can be disabled, can not be uninstalled
       User: can be disabled, can be uninstalled

       The plugin manager as core plugin means, you cannot disable or remove
       it by oops. 

       Whats next:
       - currently the active states are not stored in settings. So its reset
       on next restart of orca.
       - currently the per plugin settings are not stored. 
       - currently the plugins can register to signals and shortcuts. If the
       plugin unloads, it need to unregister resources by its own. Plan is to
       let orca track about the registrations and let orca unregister them on
       unload. This avoids that the programmer forgot about unregister.
       - a base plugin class for more easy extension
       - more cleanup an refactoring
       - modernization of orca API and make everything a class to be OOP
       consistent.
       - currently not every plugin unloads clean. Lets fix that

       We are still compatible to orca master. 

       Looking for feedback.

       Cheers chrys



_______________________________________________
       orca-list mailing list
       orca-list gnome org
       https://mail.gnome.org/mailman/listinfo/orca-list
       Orca wiki: https://wiki.gnome.org/Projects/Orca
       Orca documentation: https://help.gnome.org/users/orca/stable/
       GNOME Universal Access guide: https://help.gnome.org/users/gnome-help/stable/a11y.html





_______________________________________________
orca-list mailing list
orca-list gnome org
https://mail.gnome.org/mailman/listinfo/orca-list
Orca wiki: https://wiki.gnome.org/Projects/Orca
Orca documentation: https://help.gnome.org/users/orca/stable/
GNOME Universal Access guide: https://help.gnome.org/users/gnome-help/stable/a11y.html


--
⛈🐲
Accessible low cost computers for everyone! https://stormux.org
Stormux on Ko-fi: https://ko-fi.com/stormux
Get my public PGP key: gpg --recv-key 43DDC193
Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, 
and hubris.

Become a Stormux Patron: https://patreon.com/stormux

Attachment: signature.asc
Description: PGP signature



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]