Page MenuHome GnuPG

Initial patch for EFL based pinentry
Needs ReviewPublic

Authored by wltjr on Apr 18 2017, 10:26 PM.


Group Reviewers

This is an original version, some what based on the gtk-2 one. Also using some code from a previous submission. This one has gone a different direction, so should not be considered as part of the other. There are two versions, this one, and the previous one submitted by Mike Blumenkrantz. Both versions can be seen in their own branches here.

Mike's branch/version
My branch/version

The 2nd, "My branch/version" is the one being submitted for review and inclusion. I will support and be available to Gnupg project for long term maintenance, as needed. This is the initial submission for review, subject to code format modifications, code changes, UI changes, etc as needed to get it added to pinentry ASAP.

Please let me know what is needed, and I will modify and resubmit. Once approved I will provide a better commit message for actual code/commit inclusion. Thanks!

Test Plan

In order to test you will need EFL > 1.18. This does not requirement Enlightenment, just EFL. The patch should apply cleanly to git master.

Diff Detail

rP Pinentry
Lint Skipped
Unit Tests Skipped

Event Timeline

Cleaned up code format some. I fixed issue when display is not present and fallback to ncurses. This should be good to go now. Pending review, other issues, reformatting etc.

Minor changes, switched to dialog. Modified code to fix centering issues that may be a bug in EFL itself.

Switched to dialog from window. Relocated call to center window. Which may not be correctly centered till release of EFL 1.19.1 due to a bug in EFL itself. I thought was a bug in my code. Thus previous patch.

Updated diff, swapped out legacy api function

elm_obj_table_padding_set -> elm_table_padding_set
wltjr added a project: pinentry.
  • Fixed issues with underscores in button text
  • Fixed issues with warnings
  • Added news item
  • Fixed issue with show/hide changing size
  • Replaced icon, fixed missing button icons

That should address all issues other than the keyboard/mouse grabbing. As mentioned on list, it has some technical limitations. Not possible on Wayland, and having X code can cause crashes and issues. Plus missing from QT and FTLK versions, so only GTK/Gnome has such feature.

I am totally open to adding it when technically feasible to do so. If/when Wayland implements such missing features.

Various fixes

  • Fixed confirm passphrase intial text, was label text...
  • Fixed button length with long text
  • Fire ok on pressing enter in entry or confirm if present
  • Call focus on entry last, attempt to fix focus
  • Vertically center labels with entries (minor were aligned to top vs center/middle)

Link to current patch

Fixed issue with ok_len

../../efl/pinentry-efl.c:493:7: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
       int ok_len = ELM_SCALE_SIZE(strlen(txt) * (PADDING * 1.5));

Added hack to negate negative that move progress bar 10% per 1 char. Fixed issue with new line characters not being handled correctly.