Last Comment Bug 741733 - No indication of focus on selected tagged messages (on WinXP theme, dotted focus border missing)
: No indication of focus on selected tagged messages (on WinXP theme, dotted fo...
Status: RESOLVED FIXED
: access, ux-consistency, ux-userfeedback
Product: Thunderbird
Classification: Client Software
Component: Theme (show other bugs)
: Trunk
: x86 Windows XP
: -- major (vote)
: Thunderbird 14.0
Assigned To: Richard Marti (:Paenglab)
:
Mentors:
Depends on:
Blocks: 686959
  Show dependency treegraph
 
Reported: 2012-04-03 03:25 PDT by Thomas D. (currently busy elsewhere; needinfo?me)
Modified: 2012-04-18 16:03 PDT (History)
6 users (show)
bugzilla2007: in‑testsuite?
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---


Attachments
Screenshot1: correct focus indication *outside* multiple tagged messages selection (dotted focus border) (17.34 KB, image/png)
2012-04-03 03:32 PDT, Thomas D. (currently busy elsewhere; needinfo?me)
no flags Details
Screenshot2: Missing focus indication *inside* multiple tagged messages selection (17.27 KB, image/png)
2012-04-03 03:36 PDT, Thomas D. (currently busy elsewhere; needinfo?me)
no flags Details
Patch (60.13 KB, patch)
2012-04-05 23:51 PDT, Richard Marti (:Paenglab)
mconley: review+
Details | Diff | Splinter Review
Patch for check-in addressing comment (60.20 KB, patch)
2012-04-18 08:54 PDT, Richard Marti (:Paenglab)
richard.marti: review+
Details | Diff | Splinter Review

Description Thomas D. (currently busy elsewhere; needinfo?me) 2012-04-03 03:25:43 PDT
+++ This bug was initially created as a clone of Bug #692062 +++

Reported against current release TB 11 on WinXP, confirmed in current trunk:
Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20120402 Thunderbird/14.0a1

STR

1 have some messages (untagged and a coherent block of tagged msgs):
msg1 - untagged
msg2 - tagged important
msg3 - tagged important
msg4 - untagged

2 select untagged and block of tagged messages (msg1 to msg4) using shift+cursor down

3 Ctrl+cursor up to move focus between msg4 and msg1

Actual result

Focus indication on...
- selected untagged msg4: dotted focus border (ok)
- selected tagged msg3 and msg 2: no indication of focus (this bug)
- selected untagged msg1: dotted focus border (ok)
Iow, focus indication disappears without trace when Ctrl+cursoring through a block of one or more selected and tagged messages.
That's a major keyboard accessibility problem.

Expected result

Focus indication on...
- selected tagged msg3 and msg 2: need dotted focus border to indicate the message which has focus out of one or more selected and tagged message(s) (this bug)

This bug is similar, but not a duplicate of Bug 692062.
The problem of Bug 692062 has been solved for current release; interestingly, bug 692062 was marked duplicate of bug 686959 which is still open and didn't land any patches, so I don't know what fixed bug 692062.
Perhaps this bug here can be fixed by Bug 686959, Comment 39 of which also talks about tagColors-aero.css (is that file used on WinXP?).

Jim?
Comment 1 Thomas D. (currently busy elsewhere; needinfo?me) 2012-04-03 03:32:31 PDT
Created attachment 611763 [details]
Screenshot1: correct focus indication *outside* multiple tagged messages selection (dotted focus border)

Look how the dotted focus border, correctly shown on untagged selected messages (Screenshot1),... (see next comment)
Comment 2 Thomas D. (currently busy elsewhere; needinfo?me) 2012-04-03 03:36:33 PDT
Created attachment 611765 [details]
Screenshot2: Missing focus indication *inside* multiple tagged messages selection

(In reply to Thomas D. from comment #1)
> Look how the dotted focus border, correctly shown on untagged selected
> messages (Screenshot1),... (see next comment)

...just disappears without trace of focus on *tagged* selected messages (Screenshot2) when using Ctrl+cursor keys to move focus around.
Comment 3 Blake Winton (:bwinton) (:☕️) 2012-04-03 07:45:52 PDT
Yeah, that's weird and wrong.  Andreas, any ideas?
Comment 4 Richard Marti (:Paenglab) 2012-04-03 10:27:05 PDT
I'm not Andreas ;) but this is because in tagColors.css for the .blc-****** classes (the tags in message header) are using the border color to make a 3D effect. This classes are always together with the treechildren::-moz-tree-row selectors. The treechildren are becoming now also this border and are overwriting the toolkit rule for the focus.

I see two possibilities:
1. remove the 3D effect of the tags and remove the border rule.
2. separate in tagColors.css the rules for the .blc-****** classes and treechildren::-moz-tree-row and apply the border rules only for the .blc-****** classes.

Maybe squib could do this. I remember he said he has a script to do such things in a other bug.
Comment 5 Richard Marti (:Paenglab) 2012-04-05 23:51:21 PDT
Created attachment 612807 [details] [diff] [review]
Patch

Okay I took the laborious task and splitted the rules for every color. For Mac and Windows it's the same file. For Linux I had to add !important for every background-color. The old Linux file had also for every color a !important but for me it works also without this.
Comment 6 Mike Conley (:mconley) - (Needinfo me!) 2012-04-17 12:51:33 PDT
Comment on attachment 612807 [details] [diff] [review]
Patch

Review of attachment 612807 [details] [diff] [review]:
-----------------------------------------------------------------

Wow, believe it or not, that was one of the hardest reviews I've ever had to do!  Reviewing CSS is hard on the eyes. :p

The only thing I could find wrong with it was some missing semi-colons.  I tested the patch, and it seems to address the issue.

So, with the missing semi-colons fixed (there are more than what I mentioned - I just stopped repeating myself), r=me.

Thanks!

-Mike

::: mail/themes/gnomestripe/mail/tagColors.css
@@ +45,5 @@
>       color: rgb(128, 0, 0); 
>  */
>  
> +treechildren::-moz-tree-cell-text(lc-FFFFFF), .lc-FFFFFF:not([_moz-menuactive]) {
> +  color: #FFFFFF

Missing semicolon

@@ +55,5 @@
>    border-color: #FFFFFF;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-CCCCCC), .lc-CCCCCC:not([_moz-menuactive]) {
> +  color: #CCCCCC

Missing semicolon

@@ +65,5 @@
>    border-color: #CCCCCC;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-C0C0C0), .lc-C0C0C0:not([_moz-menuactive]) {
> +  color: #C0C0C0

Missing semicolon

@@ +75,5 @@
>    border-color: #C0C0C0;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-999999), .lc-999999:not([_moz-menuactive]) {
> +  color: #999999

Missing semicolon

@@ +85,5 @@
>    border-color: #999999;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-666666), .lc-666666:not([_moz-menuactive]) {
> +  color: #666666

Missing semicolon

@@ +95,5 @@
>    border-color: #666666;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-333333), .lc-333333:not([_moz-menuactive]) {
> +  color: #333333

Missing semicolon

@@ +105,5 @@
>    border-color: #333333;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-000000), .lc-000000:not([_moz-menuactive]) {
> +  color: #000000

Missing semicolon

@@ +118,5 @@
>    border-color: #000000;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-FFCCCC), .lc-FFCCCC:not([_moz-menuactive]) {
> +  color: #FFCCCC

Missing semicolon

@@ +128,5 @@
>    border-color: #FFCCCC;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-FF6666), .lc-FF6666:not([_moz-menuactive]) {
> +  color: #FF6666

Missing semicolon

@@ +138,5 @@
>    border-color: #FF6666;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-FF0000), .lc-FF0000:not([_moz-menuactive]) {
> +  color: #FF0000

Missing semicolon

@@ +148,5 @@
>    border-color: #FF0000;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-CC0000), .lc-CC0000:not([_moz-menuactive]) {
> +  color: #CC0000

Missing semicolon

@@ +158,5 @@
>    border-color: #CC0000;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-990000), .lc-990000:not([_moz-menuactive]) {
> +  color: #990000

Missing semicolon

@@ +168,5 @@
>    border-color: #990000;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-660000), .lc-660000:not([_moz-menuactive]) {
> +  color: #660000

Missing semicolon

@@ +178,5 @@
>    border-color: #660000;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-330000), .lc-330000:not([_moz-menuactive]) {
> +  color: #330000

Missing semicolon

@@ +188,5 @@
>    border-color: #330000;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-FFCC99), .lc-FFCC99:not([_moz-menuactive]) {
> +  color: #FFCC99

Missing semicolon

@@ +198,5 @@
>    border-color: #FFCC99;
>  }
>  
> +treechildren::-moz-tree-cell-text(lc-FF9966), .lc-FF9966:not([_moz-menuactive]) {
> +  color: #FF9966

Missing semicolon - the pattern continues like this.  I'm going to stop mentioning missing semicolons now. :)
Comment 7 Richard Marti (:Paenglab) 2012-04-18 08:54:42 PDT
Created attachment 616161 [details] [diff] [review]
Patch for check-in addressing comment

Oops, not good to do such thing, when I'm tired. Fixed the missing semicolons.

Carrying over r+
Comment 8 Ryan VanderMeulen [:RyanVM] 2012-04-18 16:03:15 PDT
http://hg.mozilla.org/comm-central/rev/1824acff65bd

Note You need to log in before you can comment on or make changes to this bug.