Bug 1625263 Comment 6 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

I agree with Jörg that we've lost a lot of my carefully crafted keyboard UX-design around Alt+M ("attachment pane view state machinery").
That's not necessarily prejudicial against having another 'Attach'-button inside attachment pane, but as for the original design, I don't think there was anything missing or amiss, as we have never heard users complaining.

(In reply to Jorg K (CEST = GMT+2) from comment #1)
> All you need to do is restore the functionality in TB 68 before the backported bug 1547699 broke it. It was totally functional.

+1

For the avoidance of doubt:
**Current release (68.7.0) is also broken wrt Alt+M**, so cannot be used to understand the original fine-tuned UX-design (explained below).

> The new button implemented here
> https://hg.mozilla.org/comm-central/rev/e83059b0ea0e#l2.109
> makes no sense whatsoever:
> - There is already a button above the attachment pane. Why do you need two now? If there are no attachments yet, you can summon the pane with Alt+M. Then you can bring up the context menu with the Windows context menu key (if you have one), or Shift+F10, cursor keys down to "Attach File" - Voilà.

+1. In fact, it was even easier: Alt+M to show and focus attachment pane, press Enter -> voila: Attach File!

> - There was already a shortcut to add attachments: Ctrl+Shift+A (not working on Linux, bug 269228/bug 1519348, maybe time to fix that).
> - The button makes no sense since it's inside the attachment pane, so how will you get there?
> - The shortcut key F now obscures the shortcut to the File menu
> Sorry, but what happened in bug 1613284 is really very disappointing :-(

+1 :-(

### List of functions which were easily keyboard accessible via Alt+M (attachment pane access key) ###

There's another big problem for keyboard users caused by the removal of the access key for the attachment pane:
Alt+M access key for attachment pane (when it was still working, *not* working in release) used to give **easy and discoverable keyboard access to the full range of attachment functionality**, so we have lost direct access to all of the following (via pane context / attachment context menus):
- add attachment(s), web page (also for empty pane)
- rename attachments
- remove attachments
- reorder attachments
- remind me later

### Existing UX: Localized access keys as de-facto shortcut keys in composition ###

As for the UX design, compose window already has localized access keys for many important functions of the UI, so the attachment pane access key (Alt+M for EN) was not extraordinary in any way:

Function | Access key (en) | Access key (de) | Effect
---------- | -----------------|------------------ | -------
From | Alt+R | Alt+V | --> focus  From selector
Subject | Alt+S | Alt+R | --> focus Subject input
**Attachment Pane** | **Alt+M** | Alt+G | --> **focus Attachment Pane** (*not* to trigger attach dialog, that's a bug in release!)
Contacts Side Bar: Add to To/CC/BCC | Alt+A/C/B | Alt+N/C/P | --> trigger actions (disabled when no contacts selected)
Address Book Selector in Contacts Side bar | Alt+K | Alt+U | --> focus AB selector
Search in Contacts Side bar | Alt+N | Alt+S --> focus search input
Attachment Reminder Bar: Add Attachment | Alt+A |  Alt+H | --> trigger action
Attachment Reminder Bar: Remind me later | Alt+L | Alt+M | --> enable setting

Obvious benefit: instead of pressing TAB a thousand times, these access keys in the primary UI are de facto shortcut keys for fast and easy keyboard access to important functionality, mostly via focusing important spots in the UI. There is absolutely no logical difference from a user's pov between using Alt+S for "Edit Subject" (technically an access key)  and Ctrl+K for "Insert/Edit Link" (technically a shortcut key). That's implementation-level, irrelevant for users. In fact, **access keys are the better shortcuts** because they advertise themselves in the primary UI, and can be localized.

Per original design, this works like a charm, highly efficient for keyboard users:

### UX-design of "Attachment Pane View State Machinery" via Alt+M: Access key = Shortcut key! ###

- **Alt+M to summon the bucket** (when not focused)
  - show and focus when hidden or minimized
  - focus when shown but not focused: *classic access key scenario* (like Alt+S for subject)
- **Alt+M to dismiss the bucket** (when focused)
  - hide empty bucket
  - minimize full bucket

In German localization, it's Alt+G, and the original implementation ensured that the trick will always work, see below.
Easy to memorize because a single key combination does the trick, with all the accessibility benefits for the full range of attachment functionality as listed above.

### Access key == Shortcut key!? Notes on technical implementation ###

Access keys in the same context (composition), like shortcut keys, are unique by definition, for any localization. EN has Alt+M, German has Alt+G, and there cannot be anything else in the primary UI context using the same access key or shortcut key.
So it's a myth that we cannot technically use an access key as a shortcut key. Our internal technical implementation is irrelevant as long as it works. In this particular case, to achieve the above design, we need the following (working implementation before regressions):
- Localized Access key, e.g. (Alt+)M for attachment pane, but *without* control attribute (i.e. access key is displayed, but doesn't do anything)
- Shortcut key Alt+M for cmd_toggleAttachmentPane (internally, we reconstruct the shortcut key: Alt + AccessKey, so that localizers cannot break this).
I agree with Jörg that we've lost a lot of my carefully crafted keyboard UX-design around Alt+M ("attachment pane view state machinery").
That's not necessarily prejudicial against having another 'Attach'-button inside attachment pane, but as for the original design, I don't think there was anything missing or amiss, as we have never heard users complaining.

(In reply to Jorg K (CEST = GMT+2) from comment #1)
> All you need to do is restore the functionality in TB 68 before the backported bug 1547699 broke it. It was totally functional.

+1

For the avoidance of doubt:
**Current release (68.7.0) is also broken wrt Alt+M**, so cannot be used to understand the original fine-tuned UX-design (explained below).

> The new button implemented here
> https://hg.mozilla.org/comm-central/rev/e83059b0ea0e#l2.109
> makes no sense whatsoever:
> - There is already a button above the attachment pane. Why do you need two now? If there are no attachments yet, you can summon the pane with Alt+M. Then you can bring up the context menu with the Windows context menu key (if you have one), or Shift+F10, cursor keys down to "Attach File" - Voilà.

+1. In fact, it was even easier: Alt+M to show and focus attachment pane, press Enter -> voila: Attach File!

> - There was already a shortcut to add attachments: Ctrl+Shift+A (not working on Linux, bug 269228/bug 1519348, maybe time to fix that).
> - The button makes no sense since it's inside the attachment pane, so how will you get there?
> - The shortcut key F now obscures the shortcut to the File menu
> Sorry, but what happened in bug 1613284 is really very disappointing :-(

+1 :-(

### List of functions which were easily keyboard accessible via Alt+M (attachment pane access key) ###

There's another big problem for keyboard users caused by the removal of the access key for the attachment pane:
Alt+M access key for attachment pane (when it was still working, *not* working in release) used to give **easy and discoverable keyboard access to the full range of attachment functionality**, so we have lost direct access to all of the following (via pane context / attachment context menus):
- add attachment(s), web page (also for empty pane)
- rename attachments
- remove attachments
- reorder attachments
- remind me later

### Existing UX: Localized access keys as de-facto shortcut keys in composition ###

As for the UX design, compose window already has localized access keys for many important functions of the UI, so the attachment pane access key (Alt+M for EN) was not extraordinary in any way:

Function | Access key (en) | Access key (de) | Effect
---------- | -----------------|------------------ | -------
From | Alt+R | Alt+V | --> focus  From selector
Subject | Alt+S | Alt+R | --> focus Subject input
**Attachment Pane** | **Alt+M** | Alt+G | --> **focus Attachment Pane** (*not* to trigger attach dialog, that's a bug in release!)
Contacts Side Bar: Add to To/CC/BCC | Alt+A/C/B | Alt+N/C/P | --> trigger actions (disabled when no contacts selected)
Address Book Selector in Contacts Side bar | Alt+K | Alt+U | --> focus AB selector
Search in Contacts Side bar | Alt+N | Alt+S --> focus search input
Attachment Reminder Bar: Add Attachment | Alt+A |  Alt+H | --> trigger action
Attachment Reminder Bar: Remind me later | Alt+L | Alt+M | --> enable setting

Obvious benefit: instead of pressing TAB a thousand times, these access keys in the primary UI are de facto shortcut keys for fast and easy keyboard access to important functionality, mostly via focusing important spots in the UI. There is absolutely no logical difference from a user's pov between using Alt+S for "Edit Subject" (technically an access key)  and Ctrl+K for "Insert/Edit Link" (technically a shortcut key). That's implementation-level, irrelevant for users. In fact, **access keys are the better shortcuts** because they advertise themselves in the primary UI, and can be localized.

Per original design, this works like a charm, highly efficient for keyboard users:

### UX-design of "Attachment Pane View State Machinery" via Alt+M: Access key = Shortcut key! ###

- **Alt+M to summon the bucket** (when not focused)
  - show and focus when hidden or minimized
  - focus when shown but not focused: *classic access key scenario* (like Alt+S for subject)
- **Alt+M to dismiss the bucket** (when focused)
  - hide empty bucket
  - minimize full bucket

In German localization, it's Alt+G, and the original implementation ensured that the trick will always work, see below.
Easy to memorize because a single key combination does the trick, with all the accessibility benefits for the full range of attachment functionality as listed above.

### Access key == Shortcut key!? Notes on technical implementation ###

Access keys in the same context (composition), like shortcut keys, are unique by definition, for any localization. EN has Alt+M, German has Alt+G, and there cannot be anything else in the primary UI context using the same access key or shortcut key.
So it's a myth that we cannot technically use an access key as a shortcut key. Our internal technical implementation is irrelevant as long as it works. In this particular case, to achieve the above design, we need the following (working implementation before regressions):
- Localized Access key, e.g. (Alt+)M for attachment pane, but *without* control attribute (i.e. access key is displayed, but technically, it doesn't trigger anything)
- Shortcut key Alt+M for cmd_toggleAttachmentPane (internally, we reconstruct the shortcut key: Alt + AccessKey, so that localizers cannot break this).
- cmd_toggleAttachmentPane (technically triggered by shortcut key) provides the access key functionality exactly when needed, i.e. when attachment pane is shown, but not focused. User sees access key in interface, and when used, it does the right and expected thing (focus bucket). Conveniently, same key combo also works to show (and focus) the bucket when hidden or minimized - so this access key does the trick *always*, even when you don't see it. Again conveniently, when bucket already has focus, you can press Alt+M again to dismiss it.
I agree with Jörg that we've lost a lot of my carefully crafted keyboard UX-design around Alt+M ("attachment pane view state machinery").
That's not necessarily prejudicial against having another 'Attach'-button inside attachment pane, but as for the original design, I don't think there was anything missing or amiss, as we have never heard users complaining.

(In reply to Jorg K (CEST = GMT+2) from comment #1)
> All you need to do is restore the functionality in TB 68 before the backported bug 1547699 broke it. It was totally functional.

+1

For the avoidance of doubt:
**Current release (68.7.0) is also broken wrt Alt+M**, so cannot be used to understand the original fine-tuned UX-design (explained below).

> The new button implemented here
> https://hg.mozilla.org/comm-central/rev/e83059b0ea0e#l2.109
> makes no sense whatsoever:
> - There is already a button above the attachment pane. Why do you need two now? If there are no attachments yet, you can summon the pane with Alt+M. Then you can bring up the context menu with the Windows context menu key (if you have one), or Shift+F10, cursor keys down to "Attach File" - Voilà.

+1. In fact, it was even easier: Alt+M to show and focus attachment pane, press Enter -> voila: Attach File!

> - There was already a shortcut to add attachments: Ctrl+Shift+A (not working on Linux, bug 269228/bug 1519348, maybe time to fix that).
> - The button makes no sense since it's inside the attachment pane, so how will you get there?
> - The shortcut key F now obscures the shortcut to the File menu
> Sorry, but what happened in bug 1613284 is really very disappointing :-(

+1 :-(

### List of functions which were easily keyboard accessible via Alt+M (attachment pane access key) ###

There's another big problem for keyboard users caused by the removal of the access key for the attachment pane:
Alt+M access key for attachment pane (when it was still working, *not* working in release) used to give **easy and discoverable keyboard access to the full range of attachment functionality**, so we have lost direct access to all of the following (via pane context / attachment context menus):
- add attachment(s), web page (also for empty pane)
- rename attachments
- remove attachments
- reorder attachments
- remind me later

### Existing UX: Localized access keys as de-facto shortcut keys in composition ###

As for the UX design, compose window already has localized access keys for many important functions of the UI, so the attachment pane access key (Alt+M for EN) was not extraordinary in any way:

Function | Access key (en) | Access key (de) | Effect
---------- | -----------------|------------------ | -------
From | Alt+R | Alt+V | --> focus  From selector
Subject | Alt+S | Alt+R | --> focus Subject input
**Attachment Pane** | **Alt+M** | Alt+G | --> **focus Attachment Pane** (*not* to trigger attach dialog, that's a bug in release!)
Contacts Side Bar: Add to To/CC/BCC | Alt+A/C/B | Alt+N/C/P | --> trigger actions (disabled when no contacts selected)
Address Book Selector in Contacts Side bar | Alt+K | Alt+U | --> focus AB selector
Search in Contacts Side bar | Alt+N | Alt+S --> focus search input
Attachment Reminder Bar: Add Attachment | Alt+A |  Alt+H | --> trigger action
Attachment Reminder Bar: Remind me later | Alt+L | Alt+M | --> enable setting

Obvious benefit: instead of pressing TAB a thousand times, these access keys in the primary UI are de facto shortcut keys for fast and easy keyboard access to important functionality, mostly via focusing important spots in the UI. There is absolutely no logical difference from a user's pov between using Alt+S for "Edit Subject" (technically an access key)  and Ctrl+K for "Insert/Edit Link" (technically a shortcut key). That's implementation-level, irrelevant for users. In fact, **access keys are the better shortcuts** because they advertise themselves in the primary UI, and can be localized.

Per original design, this works like a charm, highly efficient for keyboard users:

### UX-design of "Attachment Pane View State Machinery" via Alt+M: Access key = Shortcut key! ###

- **Alt+M to summon the bucket** (when not focused)
  - show and focus when hidden or minimized
  - focus when shown but not focused: *classic access key scenario* (like Alt+S for subject) - access key removed by Bug 1613284.
- **Alt+M to dismiss the bucket** (when focused)
  - hide empty bucket
  - minimize full bucket

In German localization, it's Alt+G, and the original implementation ensured that the trick will always work, see below.
Easy to memorize because a single key combination does the trick, with all the accessibility benefits for the full range of attachment functionality as listed above.

### Access key == Shortcut key!? Notes on technical implementation ###

Access keys in the same context (composition), like shortcut keys, are unique by definition, for any localization. EN has Alt+M, German has Alt+G, and there cannot be anything else in the primary UI context using the same access key or shortcut key.
So it's a myth that we cannot technically use an access key as a shortcut key. Our internal technical implementation is irrelevant as long as it works. In this particular case, to achieve the above design, we need the following (working implementation before regressions):
- Localized Access key, e.g. (Alt+)M for attachment pane, but *without* control attribute (i.e. access key is displayed, but technically, it doesn't trigger anything)
- Shortcut key Alt+M for cmd_toggleAttachmentPane (internally, we reconstruct the shortcut key: Alt + AccessKey, so that localizers cannot break this).
- cmd_toggleAttachmentPane (technically triggered by shortcut key) provides the access key functionality exactly when needed, i.e. when attachment pane is shown, but not focused. User sees access key in interface, and when used, it does the right and expected thing (focus bucket). Conveniently, same key combo also works to show (and focus) the bucket when hidden or minimized - so this access key does the trick *always*, even when you don't see it. Again conveniently, when bucket already has focus, you can press Alt+M again to dismiss it.
I agree with Jörg that we've lost a lot of my carefully crafted keyboard UX-design around Alt+M ("attachment pane view state machinery").
That's not necessarily prejudicial against having another 'Attach'-button inside attachment pane, but as for the original design, I don't think there was anything missing or amiss, as we have never heard users complaining.

(In reply to Jorg K (CEST = GMT+2) from comment #1)
> All you need to do is restore the functionality in TB 68 before the backported bug 1547699 broke it. It was totally functional.

+1

For the avoidance of doubt:
**Current release (68.7.0) is also broken wrt Alt+M**, so cannot be used to understand the original fine-tuned UX-design (explained below).

> The new button implemented here
> https://hg.mozilla.org/comm-central/rev/e83059b0ea0e#l2.109
> makes no sense whatsoever:
> - There is already a button above the attachment pane. Why do you need two now? If there are no attachments yet, you can summon the pane with Alt+M. Then you can bring up the context menu with the Windows context menu key (if you have one), or Shift+F10, cursor keys down to "Attach File" - Voilà.

+1. In fact, it was even easier: Alt+M to show and focus attachment pane, press Enter -> voila: Attach File!

> - There was already a shortcut to add attachments: Ctrl+Shift+A (not working on Linux, bug 269228/bug 1519348, maybe time to fix that).
> - The button makes no sense since it's inside the attachment pane, so how will you get there?
> - The shortcut key F now obscures the shortcut to the File menu
> Sorry, but what happened in bug 1613284 is really very disappointing :-(

+1 :-(

### List of functions which were easily keyboard accessible via Alt+M (attachment pane access key) ###

There's another big problem for keyboard users caused by the removal of the access key for the attachment pane:
Alt+M access key for attachment pane (when it was still working, *not* working in release) used to give **easy and discoverable keyboard access to the full range of attachment functionality**, so we have lost direct access to all of the following (via pane context / attachment context menus):
- add attachment(s), web page (also for empty pane)
- rename attachments
- remove attachments
- reorder attachments
- remind me later

### Existing UX: Localized access keys as de-facto shortcut keys in composition ###

As for the UX design, compose window already has localized access keys for many important functions of the UI, so the attachment pane access key (Alt+M for EN) was not extraordinary in any way:

Function | Access key (en) | Access key (de) | Effect
---------- | -----------------|------------------ | -------
From | Alt+R | Alt+V | --> focus  From selector
Subject | Alt+S | Alt+R | --> focus Subject input
**Attachment Pane** | **Alt+M** | Alt+G | --> **focus Attachment Pane** (*not* to trigger attach dialog, that's a bug in release!)
Contacts Side Bar: Add to To/CC/BCC | Alt+A/C/B | Alt+N/C/P | --> trigger actions (disabled when no contacts selected)
Address Book Selector in Contacts Side bar | Alt+K | Alt+U | --> focus AB selector
Search in Contacts Side bar | Alt+N | Alt+S | --> focus search input
Attachment Reminder Bar: Add Attachment | Alt+A |  Alt+H | --> trigger action
Attachment Reminder Bar: Remind me later | Alt+L | Alt+M | --> enable setting

Obvious benefit: instead of pressing TAB a thousand times, these access keys in the primary UI are de facto shortcut keys for fast and easy keyboard access to important functionality, mostly via focusing important spots in the UI. There is absolutely no logical difference from a user's pov between using Alt+S for "Edit Subject" (technically an access key)  and Ctrl+K for "Insert/Edit Link" (technically a shortcut key). That's implementation-level, irrelevant for users. In fact, **access keys are the better shortcuts** because they advertise themselves in the primary UI, and can be localized.

Per original design, this works like a charm, highly efficient for keyboard users:

### UX-design of "Attachment Pane View State Machinery" via Alt+M: Access key = Shortcut key! ###

- **Alt+M to summon the bucket** (when not focused)
  - show and focus when hidden or minimized
  - focus when shown but not focused: *classic access key scenario* (like Alt+S for subject) - access key removed by Bug 1613284.
- **Alt+M to dismiss the bucket** (when focused)
  - hide empty bucket
  - minimize full bucket

In German localization, it's Alt+G, and the original implementation ensured that the trick will always work, see below.
Easy to memorize because a single key combination does the trick, with all the accessibility benefits for the full range of attachment functionality as listed above.

### Access key == Shortcut key!? Notes on technical implementation ###

Access keys in the same context (composition), like shortcut keys, are unique by definition, for any localization. EN has Alt+M, German has Alt+G, and there cannot be anything else in the primary UI context using the same access key or shortcut key.
So it's a myth that we cannot technically use an access key as a shortcut key. Our internal technical implementation is irrelevant as long as it works. In this particular case, to achieve the above design, we need the following (working implementation before regressions):
- Localized Access key, e.g. (Alt+)M for attachment pane, but *without* control attribute (i.e. access key is displayed, but technically, it doesn't trigger anything)
- Shortcut key Alt+M for cmd_toggleAttachmentPane (internally, we reconstruct the shortcut key: Alt + AccessKey, so that localizers cannot break this).
- cmd_toggleAttachmentPane (technically triggered by shortcut key) provides the access key functionality exactly when needed, i.e. when attachment pane is shown, but not focused. User sees access key in interface, and when used, it does the right and expected thing (focus bucket). Conveniently, same key combo also works to show (and focus) the bucket when hidden or minimized - so this access key does the trick *always*, even when you don't see it. Again conveniently, when bucket already has focus, you can press Alt+M again to dismiss it.
I agree with Jörg that we've lost a lot of my carefully crafted keyboard UX-design around Alt+M ("attachment pane view state machinery").
That's not necessarily prejudicial against having another 'Attach'-button inside attachment pane, but as for the original design, I don't think there was anything missing or amiss, as we have never heard users complaining.

(In reply to Jorg K (CEST = GMT+2) from comment #1)
> All you need to do is restore the functionality in TB 68 before the backported bug 1547699 broke it. It was totally functional.

+1

For the avoidance of doubt:
**Current release (68.7.0) is also broken wrt Alt+M**, so cannot be used to understand the original fine-tuned UX-design (explained below).

> The new button implemented here
> https://hg.mozilla.org/comm-central/rev/e83059b0ea0e#l2.109
> makes no sense whatsoever:
> - There is already a button above the attachment pane. Why do you need two now? If there are no attachments yet, you can summon the pane with Alt+M. Then you can bring up the context menu with the Windows context menu key (if you have one), or Shift+F10, cursor keys down to "Attach File" - Voilà.

+1. In fact, it was even easier: Alt+M to show and focus attachment pane, press Enter -> voila: Attach File!

> - There was already a shortcut to add attachments: Ctrl+Shift+A (not working on Linux, bug 269228/bug 1519348, maybe time to fix that).
> - The button makes no sense since it's inside the attachment pane, so how will you get there?
> - The shortcut key F now obscures the shortcut to the File menu
> Sorry, but what happened in bug 1613284 is really very disappointing :-(

+1 :-(

### List of functions which were easily keyboard accessible via Alt+M (attachment pane access key) ###

There's another big problem for keyboard users caused by the removal of the access key for the attachment pane:
Alt+M access key for attachment pane (when it was still working, *not* working in release) used to give **easy and discoverable keyboard access to the full range of attachment functionality**, so we have lost direct access to all of the following (via pane context / attachment context menus):
- add attachment(s), web page (also for empty pane)
- rename attachments
- remove attachments
- reorder attachments
- remind me later

### Existing UX: Localized access keys as de-facto shortcut keys in composition ###

As for the UX design, compose window already has localized access keys for many important functions of the UI, so the attachment pane access key (Alt+M for EN) was not extraordinary in any way:

Function | Access key (en) | Access key (de) | Effect
---------- | -----------------|------------------ | -------
From | Alt+R | Alt+V | --> focus  From selector
Subject | Alt+S | Alt+R | --> focus Subject input
**Attachment Pane** | **Alt+M** | Alt+G | --> **focus Attachment Pane** (*not* to trigger attach dialog, that's a bug in release!)
Contacts Side Bar: Add to To/CC/BCC | Alt+A/C/B | Alt+N/C/P | --> trigger actions (disabled when no contacts selected)
Address Book Selector in Contacts Side bar | Alt+K | Alt+U | --> focus AB selector
Search in Contacts Side bar | Alt+N | Alt+S | --> focus search input
Attachment Reminder Bar: Add Attachment | Alt+A |  Alt+H | --> trigger action
Attachment Reminder Bar: Remind me later | Alt+L | Alt+M | --> enable option

Obvious benefit: instead of pressing TAB a thousand times, these access keys in the primary UI are de facto shortcut keys for fast and easy keyboard access to important functionality, mostly via focusing important spots in the UI. There is absolutely no logical difference from a user's pov between using Alt+S for "Edit Subject" (technically an access key)  and Ctrl+K for "Insert/Edit Link" (technically a shortcut key). That's implementation-level, irrelevant for users. In fact, **access keys are the better shortcuts** because they advertise themselves in the primary UI, and can be localized.

Per original design, this works like a charm, highly efficient for keyboard users:

### UX-design of "Attachment Pane View State Machinery" via Alt+M: Access key = Shortcut key! ###

- **Alt+M to summon the bucket** (when not focused)
  - show and focus when hidden or minimized
  - focus when shown but not focused: *classic access key scenario* (like Alt+S for subject) - access key removed by Bug 1613284.
- **Alt+M to dismiss the bucket** (when focused)
  - hide empty bucket
  - minimize full bucket

In German localization, it's Alt+G, and the original implementation ensured that the trick will always work, see below.
Easy to memorize because a single key combination does the trick, with all the accessibility benefits for the full range of attachment functionality as listed above.

### Access key == Shortcut key!? Notes on technical implementation ###

Access keys in the same context (composition), like shortcut keys, are unique by definition, for any localization. EN has Alt+M, German has Alt+G, and there cannot be anything else in the primary UI context using the same access key or shortcut key.
So it's a myth that we cannot technically use an access key as a shortcut key. Our internal technical implementation is irrelevant as long as it works. In this particular case, to achieve the above design, we need the following (working implementation before regressions):
- Localized Access key, e.g. (Alt+)M for attachment pane, but *without* control attribute (i.e. access key is displayed, but technically, it doesn't trigger anything)
- Shortcut key Alt+M for cmd_toggleAttachmentPane (internally, we reconstruct the shortcut key: Alt + AccessKey, so that localizers cannot break this).
- cmd_toggleAttachmentPane (technically triggered by shortcut key) provides the access key functionality exactly when needed, i.e. when attachment pane is shown, but not focused. User sees access key in interface, and when used, it does the right and expected thing (focus bucket). Conveniently, same key combo also works to show (and focus) the bucket when hidden or minimized - so this access key does the trick *always*, even when you don't see it. Again conveniently, when bucket already has focus, you can press Alt+M again to dismiss it.
I agree with Jörg that we've lost a lot of my carefully crafted keyboard UX-design around Alt+M ("attachment pane view state machinery").
That's not necessarily prejudicial against having another 'Attach'-button inside attachment pane, but as for the original design, I don't think there was anything missing or amiss, as we have never heard users complaining.

(In reply to Jorg K (CEST = GMT+2) from comment #1)
> All you need to do is restore the functionality in TB 68 before the backported bug 1547699 broke it. It was totally functional.

+1

For the avoidance of doubt:
**Current release (68.7.0) is also broken wrt Alt+M**, so cannot be used to understand the original fine-tuned UX-design (explained below).

> The new button implemented here
> https://hg.mozilla.org/comm-central/rev/e83059b0ea0e#l2.109
> makes no sense whatsoever:
> - There is already a button above the attachment pane. Why do you need two now? If there are no attachments yet, you can summon the pane with Alt+M. Then you can bring up the context menu with the Windows context menu key (if you have one), or Shift+F10, cursor keys down to "Attach File" - Voilà.

+1. In fact, it was even easier: Alt+M to show and focus attachment pane, press Enter -> voila: Attach File!

> - There was already a shortcut to add attachments: Ctrl+Shift+A (not working on Linux, bug 269228/bug 1519348, maybe time to fix that).
> - The button makes no sense since it's inside the attachment pane, so how will you get there?
> - The shortcut key F now obscures the shortcut to the File menu
> Sorry, but what happened in bug 1613284 is really very disappointing :-(

+1 :-(

### List of functions which were easily keyboard accessible via Alt+M (attachment pane access key) ###

There's another big problem for keyboard users caused by the removal of the access key for the attachment pane:
Alt+M access key for attachment pane (when it was still working, *not* working in release) used to give **easy and discoverable keyboard access to the full range of attachment functionality**, so we have lost direct access to all of the following (via pane context / attachment context menus):
- add attachment(s), web page (also for empty pane)
- rename attachments
- remove attachments
- reorder attachments
- remind me later

### Existing UX: Localized access keys as de-facto shortcut keys in composition ###

As for the UX design, compose window already has localized access keys for many important spots and functions of the UI, so the attachment pane access key (Alt+M for EN) was not extraordinary in any way:

Function | Access key (en) | Access key (de) | Effect
---------- | -----------------|------------------ | -------
From | Alt+R | Alt+V | --> focus  From selector
Subject | Alt+S | Alt+R | --> focus Subject input
**Attachment Pane** | **Alt+M** | Alt+G | --> **focus Attachment Pane** (*not* to trigger attach dialog, that's a bug in release!)
Contacts Side Bar: Add to To/CC/BCC | Alt+A/C/B | Alt+N/C/P | --> trigger actions (disabled when no contacts selected)
Address Book Selector in Contacts Side bar | Alt+K | Alt+U | --> focus AB selector
Search in Contacts Side bar | Alt+N | Alt+S | --> focus search input
Attachment Reminder Bar: Add Attachment | Alt+A |  Alt+H | --> trigger action
Attachment Reminder Bar: Remind me later | Alt+L | Alt+M | --> enable option

Obvious benefit: instead of pressing TAB a thousand times, these access keys in the primary UI are de facto shortcut keys for fast and easy keyboard access to important functionality, mostly via focusing important spots in the UI. There is absolutely no logical difference from a user's pov between using Alt+S for "Edit Subject" (technically an access key)  and Ctrl+K for "Insert/Edit Link" (technically a shortcut key). That's implementation-level, irrelevant for users. In fact, **access keys are the better shortcuts** because they advertise themselves in the primary UI, and can be localized.

Per original design, this works like a charm, highly efficient for keyboard users:

### UX-design of "Attachment Pane View State Machinery" via Alt+M: Access key = Shortcut key! ###

- **Alt+M to summon the bucket** (when not focused)
  - show and focus when hidden or minimized
  - focus when shown but not focused: *classic access key scenario* (like Alt+S for subject) - access key removed by Bug 1613284.
- **Alt+M to dismiss the bucket** (when focused)
  - hide empty bucket
  - minimize full bucket

In German localization, it's Alt+G, and the original implementation ensured that the trick will always work, see below.
Easy to memorize because a single key combination does the trick, with all the accessibility benefits for the full range of attachment functionality as listed above.

### Access key == Shortcut key!? Notes on technical implementation ###

Access keys in the same context (composition), like shortcut keys, are unique by definition, for any localization. EN has Alt+M, German has Alt+G, and there cannot be anything else in the primary UI context using the same access key or shortcut key.
So it's a myth that we cannot technically use an access key as a shortcut key. Our internal technical implementation is irrelevant as long as it works. In this particular case, to achieve the above design, we need the following (working implementation before regressions):
- Localized Access key, e.g. (Alt+)M for attachment pane, but *without* control attribute (i.e. access key is displayed, but technically, it doesn't trigger anything)
- Shortcut key Alt+M for cmd_toggleAttachmentPane (internally, we reconstruct the shortcut key: Alt + AccessKey, so that localizers cannot break this).
- cmd_toggleAttachmentPane (technically triggered by shortcut key) provides the access key functionality exactly when needed, i.e. when attachment pane is shown, but not focused. User sees access key in interface, and when used, it does the right and expected thing (focus bucket). Conveniently, same key combo also works to show (and focus) the bucket when hidden or minimized - so this access key does the trick *always*, even when you don't see it. Again conveniently, when bucket already has focus, you can press Alt+M again to dismiss it.
I agree with Jörg that we've lost a lot of the carefully and cooperatively crafted keyboard UX-design around Alt+M ("attachment pane view state machinery").
That's not necessarily prejudicial against having another 'Attach'-button inside attachment pane, but as for the original design, I don't think there was anything missing or amiss, as we have never heard users complaining.

(In reply to Jorg K (CEST = GMT+2) from comment #1)
> All you need to do is restore the functionality in TB 68 before the backported bug 1547699 broke it. It was totally functional.

+1

For the avoidance of doubt:
**Current release (68.7.0) is also broken wrt Alt+M**, so cannot be used to understand the original fine-tuned UX-design (explained below).

> The new button implemented here
> https://hg.mozilla.org/comm-central/rev/e83059b0ea0e#l2.109
> makes no sense whatsoever:
> - There is already a button above the attachment pane. Why do you need two now? If there are no attachments yet, you can summon the pane with Alt+M. Then you can bring up the context menu with the Windows context menu key (if you have one), or Shift+F10, cursor keys down to "Attach File" - Voilà.

+1. In fact, it was even easier: Alt+M to show and focus attachment pane, press Enter -> voila: Attach File!

> - There was already a shortcut to add attachments: Ctrl+Shift+A (not working on Linux, bug 269228/bug 1519348, maybe time to fix that).
> - The button makes no sense since it's inside the attachment pane, so how will you get there?
> - The shortcut key F now obscures the shortcut to the File menu
> Sorry, but what happened in bug 1613284 is really very disappointing :-(

+1 :-(

### List of functions which were easily keyboard accessible via Alt+M (attachment pane access key) ###

There's another big problem for keyboard users caused by the removal of the access key for the attachment pane:
Alt+M access key for attachment pane (when it was still working, *not* working in release) used to give **easy and discoverable keyboard access to the full range of attachment functionality**, so we have lost direct access to all of the following (via pane context / attachment context menus):
- add attachment(s), web page (also for empty pane)
- rename attachments
- remove attachments
- reorder attachments
- remind me later

### Existing UX: Localized access keys as de-facto shortcut keys in composition ###

As for the UX design, compose window already has localized access keys for many important spots and functions of the UI, so the attachment pane access key (Alt+M for EN) was not extraordinary in any way:

Function | Access key (en) | Access key (de) | Effect
---------- | -----------------|------------------ | -------
From | Alt+R | Alt+V | --> focus  From selector
Subject | Alt+S | Alt+R | --> focus Subject input
**Attachment Pane** | **Alt+M** | Alt+G | --> **focus Attachment Pane** (*not* to trigger attach dialog, that's a bug in release!)
Contacts Side Bar: Add to To/CC/BCC | Alt+A/C/B | Alt+N/C/P | --> trigger actions (disabled when no contacts selected)
Address Book Selector in Contacts Side bar | Alt+K | Alt+U | --> focus AB selector
Search in Contacts Side bar | Alt+N | Alt+S | --> focus search input
Attachment Reminder Bar: Add Attachment | Alt+A |  Alt+H | --> trigger action
Attachment Reminder Bar: Remind me later | Alt+L | Alt+M | --> enable option

Obvious benefit: instead of pressing TAB a thousand times, these access keys in the primary UI are de facto shortcut keys for fast and easy keyboard access to important functionality, mostly via focusing important spots in the UI. There is absolutely no logical difference from a user's pov between using Alt+S for "Edit Subject" (technically an access key)  and Ctrl+K for "Insert/Edit Link" (technically a shortcut key). That's implementation-level, irrelevant for users. In fact, **access keys are the better shortcuts** because they advertise themselves in the primary UI, and can be localized.

Per original design, this works like a charm, highly efficient for keyboard users:

### UX-design of "Attachment Pane View State Machinery" via Alt+M: Access key = Shortcut key! ###

- **Alt+M to summon the bucket** (when not focused)
  - show and focus when hidden or minimized
  - focus when shown but not focused: *classic access key scenario* (like Alt+S for subject) - access key removed by Bug 1613284.
- **Alt+M to dismiss the bucket** (when focused)
  - hide empty bucket
  - minimize full bucket

In German localization, it's Alt+G, and the original implementation ensured that the trick will always work, see below.
Easy to memorize because a single key combination does the trick, with all the accessibility benefits for the full range of attachment functionality as listed above.

### Access key == Shortcut key!? Notes on technical implementation ###

Access keys in the same context (composition), like shortcut keys, are unique by definition, for any localization. EN has Alt+M, German has Alt+G, and there cannot be anything else in the primary UI context using the same access key or shortcut key.
So it's a myth that we cannot technically use an access key as a shortcut key. Our internal technical implementation is irrelevant as long as it works. In this particular case, to achieve the above design, we need the following (working implementation before regressions):
- Localized Access key, e.g. (Alt+)M for attachment pane, but *without* control attribute (i.e. access key is displayed, but technically, it doesn't trigger anything)
- Shortcut key Alt+M for cmd_toggleAttachmentPane (internally, we reconstruct the shortcut key: Alt + AccessKey, so that localizers cannot break this).
- cmd_toggleAttachmentPane (technically triggered by shortcut key) provides the access key functionality exactly when needed, i.e. when attachment pane is shown, but not focused. User sees access key in interface, and when used, it does the right and expected thing (focus bucket). Conveniently, same key combo also works to show (and focus) the bucket when hidden or minimized - so this access key does the trick *always*, even when you don't see it. Again conveniently, when bucket already has focus, you can press Alt+M again to dismiss it.

Back to Bug 1625263 Comment 6