Thanks for the feedback.
I thought about it and the new interface I just programmed is as attached.
Thus, on the first three lines
you see the currently resulting status regarding
- signing
- encryption
- pgp (experts mode only)
with SOMETIMES (but we can extend that later) details about the reason.

For each of this status infos there is a sub-menu
that allows to switch between the 3 possible states:
- use defaults and rules
- force yes
- force no

Note that in contrast to DKG's (hope it's OK to write it that way)
all options are always signaled for two reasons:
 - show what is currently set
 - stability in the UI (an important general UI rule for the ability
   to select UI entries fast)

Note that the status bar icons serve indeed as corresponding toggle
buttons, where however you can only force yes or force no.

That is:
- The simple interface for enigmail is the icons:
  - They signal the status and allow to
    finally force signing/non-signig and encryption/not-encryption
    (nothing more, so after clicking them you really can only
     turn signing/encryption on or off)
  - The tooltips have the same labels as the menu entries.
- The menus provide then in addition:
  - the ability to see/modify the status in case the status bar
    is disabled
  - the ability to disable any forced state for an email
    (thus to switch back to "use defaults and rules")
  - the ability even to see the resulting pgp mode
    (expert mode only), which wasn't possible yet

Hope it's not too confusing, but it is definitely better than
the old interface, where we e.g. could not directly force not to sign
(the icon buttons changed the default so you also had to disable rules).

I am currently working on minor details.
But the goal is to have the whole fix ready
for the nightly build after this weekend
(including Monday, which is a holiday here)

Feedback welcome.
Best
 Nico


Am 06.06.2014 22:52, Daniel Kahn Gillmor schrieb/wrote:
> Hi Nicolai--
> 
> On 06/06/2014 04:39 AM, Nicolai Josuttis wrote:
> 
>> I am about to make the enigmail UI more convenient/self-explaining.
>> So, I have the following problem:
>> I want to give three choices for encryption (and other options):
>> 1) use default setting and rules
>> 2) turn encryption on
>> 3) turn encryption off
>>
>> Unfortunately there is no 3-way-toggle button.
>> But I want to give these three options in a menu.
> 
> i'm assuming you're talking about the OpenPGP menu in a single compose
> window.  is that right?
> 
> At the moment, there are four options:
> 
>  Sign Message
>  Encrypt Message
>  --------------
>  Use PGP/MIME for This Message
>  Ignore Per-Recipient Rules
> 
> and they get little checkmarks when they're set.
> 
> It seems like you could apply these options just for encryption, leaving
> the "Sign Message" alone, right?  Is there some sort of "default"
> signing scenario that people might want to revert to?
> 
> All the options presented seem rather clunky to me, and (worse) they
> present a problem for feedback -- if you're in the default state,
> looking at this state should let you know whether the given message is
> going to be encrypted or not.
> 
> have you thought about how to address this view in the icons in the
> status bar (the pencil and the key) as well?
> 
> Unfortunately, i'm having a hard time coming up with something better.
> 
> I looked around at ideas about tri-stated checkboxes:
> 
>  https://en.wikipedia.org/wiki/File:Checkbox_States.svg
>  http://guijournal.com/2011/05/gui-design-tri-state-checkboxes/
> 
> but they don't seem particularly useful to me.
> 
> Here are the things i'd like to come out of this decision:
> 
>  0) to see at a glance what the state of the message is
> 
>  1) to know if i'm using the defaults or not
> 
>  2) to be able to move from the default to a forced-setting other than
> the current default
> 
>  3) to be able to move from the default to a forced-setting that is the
> same as the current default
> 
>  4) to be able to move from one forced-setting to another
> 
>  5) to be able to move from a forced-setting back to the default
> 
> Some of these might seem more like things that humans want than others.
> 
> (3), for example, seems unlike something that a regular human would
> think about.  But it is relevant in the context of "as i write this
> draft, the defaults might change and i don't want to worry about that"
> 
> 
> If there are three (or four?) categories that i want to be able to have
> all these features on, it's pretty complicated!
> 
> Here are two more proposals to consider:
> 
>  A) explicit default/non-default action
> 
> What if the idea of deviating from the defaults was explicit and it
> covered all the settings at once?
> 
> So the initial setup might look like:
> 
>  * Encrypt (default)
>    Sign (default)
>  * PGP/MIME (default)
>  ------------
>    Lock these choices
> 
> 
> If the user chooses "Lock these choices" then they go to:
> 
>  * Encrypt
>    Sign
>  * PGP/MIME
>  ------------
>    Revert to defaults (Encrypted, unsigned, PGP/MIME)
> 
> Likewise, if the user chooses to alter any of the three items
> individually, *all* of them move off of "defaults"
> 
> For cleanliness, the parenthetical in the "Revert to defaults" entry
> could dynamically only show the diff between the defaults and the
> current choices.  So, for example, using the above defaults, but if
> someone clicked "Encrypt" (to disable encryption), they'd see:
> 
>    Encrypt
>    Sign
>  * PGP/MIME
>  ------------
>    Revert to defaults (Encrypt message)
> 
> 
>  B) submenus
> 
> The OpenPGP menu would have three menu items which show the state (and
> whether they're a default) textually (not with a checkmark), and each of
> them have submenus.  The submenu itself would change based on the state
> of the value:
> 
>  Encrypted (default) > Force Encrypted
>                        Force Unencrypted
>  Signed (default) > Force Signed
>                     Force Unsigned
>  PGP/MIME (default) > Force PGP/MIME
>                       Force Inline PGP
> 
> 
> then, if you were to select "Force Unencrypted" the tree would show:
> 
>  Unencrypted  > Use Default (Encrypted)
>                 Force Encrypted
> 
> 
> If the current state had the default of Unencrypted, then it would look
> like:
> 
>  Unencrypted  > Use Default (Unencrypted)
>                 Force Encrypted
> 
> 
> or if they're in the default state:
> 
>  Unencrypted (default) > Force Encrypted
>                          Force Unencrypted
> 
> It still seems very complex for users to deal with, for something that
> is suppoesd to be more convenient/self-explaining :(
> 
> 
> what do you think?  sorry to not have better suggestions.
> 
>       --dkg
> 
> 
> 
> _______________________________________________
> enigmail-users mailing list
> enigmail-users@enigmail.net
> https://admin.hostpoint.ch/mailman/listinfo/enigmail-users_enigmail.net
> 

-- 
Nicolai M. Josuttis
www.josuttis.de




Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
enigmail-users mailing list
enigmail-users@enigmail.net
https://admin.hostpoint.ch/mailman/listinfo/enigmail-users_enigmail.net

Reply via email to