Closed Bug 1174204 Opened 4 years ago Closed 4 years ago

bg-color and fg-color text attributes are broken for ATK

Categories

(Core :: Disability Access APIs, defect)

Unspecified
Linux
defect
Not set

Tracking

()

RESOLVED FIXED
mozilla41
Tracking Status
firefox41 --- fixed

People

(Reporter: jdiggs, Assigned: lsocks)

References

(Blocks 1 open bug)

Details

Attachments

(1 file, 1 obsolete file)

Steps to reproduce:
1. Launch Thunderbird or Firefox
2. Launch Accerciser and select an object which implements AtkText
3. In Accerciser's iPython console, get the attribute run for an offset

If you look at the bg-color and fg-color values (below), you'll see that the open paren and first digit are missing (compare to background-color and color).

For anyone wondering about the duplicates, Gecko used to expose attributes using their own names and not the names expected in ATK. Now it exposes the names expected by ATK (thanks!!), along with the old names for backwards compatibility. I discovered this bug by trying to rip out the special handling for Gecko attributes from Orca. Suddenly things became cyan. ;)

Sample output:

In [1]: acc.queryText().getAttributeRun(0)
Out[2]: 
[['font-style:normal',
  'background-color:rgb(255, 255, 255)',
  'weight:400',
  'size:11',
  'font-size:11pt',
  'language:en',
  'fg-color:1, 51, 51)',
  'font-weight:400',
  'font-family:Open Sans',
  'family-name:Open Sans',
  'bg-color:55, 255, 255)',
  'text-position:baseline',
  'color:rgb(51, 51, 51)'],
 0,
 8]
Assignee: nobody → lorien
Status: NEW → ASSIGNED
Attachment #8621787 - Flags: review?(dbolter)
Comment on attachment 8621787 [details] [diff] [review]
format gecko to atk attribute conversion for fg-color and bg-color correctly

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

::: accessible/atk/nsMaiInterfaceText.cpp
@@ +31,5 @@
>    const char* atkName = nullptr;
>    nsAutoString atkValue;
>    if (aName.EqualsLiteral("color")) {
>      // The format of the atk attribute is r,g,b and the gecko one is
>      // rgb(r,g,b).

Can you change this old comment to add the spaces you mentioned in IRC so we can remember later why we are stripping whitespace? So above line would say // rgb(r, g, b) instead of // rgb(r,g,b)
Attachment #8621787 - Flags: review?(dbolter) → review+
Attachment #8621811 - Attachment description: atk.diff → Fixed gecko to atk attribute conversion for fg-color and bg-color to be correctly formatted
https://hg.mozilla.org/mozilla-central/rev/68d68a7b9150
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla41
You need to log in before you can comment on or make changes to this bug.