[Libreoffice-commits] core.git: Changes to 'refs/changes/51/5351/4'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/51/5351/3'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/51/5351/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/51/5351/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/51/5351/6'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/51/5351/5'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/93/5493/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/93/5493/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/38/5238/3'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/46/5346/4'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/92/5492/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/92/5492/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/38/5238/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/46/5346/3'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/46/5346/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/46/5346/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/38/5238/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/38/5238/4'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/33/5333/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/33/5333/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/52/5352/3'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/52/5352/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/58/5358/4'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/34/5334/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/31/5831/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/52/5352/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/52/5352/5'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/34/5334/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/55/5155/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/80/5480/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/80/5480/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/37/5237/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/55/5155/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/52/5352/4'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/08/5208/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/52/5352/6'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/95/5495/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/97/5497/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/31/5831/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/37/5237/3'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/36/5236/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/58/5358/3'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/44/5344/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/08/5208/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/96/5496/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/58/5358/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/95/5495/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/04/5604/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/08/5208/3'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/80/5280/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/96/5496/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/44/5344/3'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/80/5280/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/33/5833/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/78/5278/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/39/5239/3'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/50/5350/4'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/98/5498/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/76/5576/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/76/5576/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/57/5157/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/50/5350/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/33/5833/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/99/5499/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/78/5278/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/79/5279/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/98/5498/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/94/5494/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/77/5277/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/77/5277/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/34/5834/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/94/5494/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/58/5158/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/77/5577/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/58/5158/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/34/5834/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/77/5577/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] dev-tools.git: NSAXSpy/NSAXSpy
NSAXSpy/NSAXSpy/main.m |8 +--- 1 file changed, 5 insertions(+), 3 deletions(-) New commits: commit fe19c2d72aeb763e6d7cbc970b6bebe5cf6ae22a Author: Boris Dušek Date: Sat Sep 7 11:46:25 2013 +0200 Adjust NSAXSpy for current TextMate version. The code for finding the TextMate text component was written before TextMate's text component was added to a group with related elements. So it now has to be adjusted to find that group before finding the scroll area containing the text component. Change-Id: Ib1aa2ecb0fa3a206b50c23362f4f83183f1630f7 Reviewed-on: https://gerrit.libreoffice.org/5854 Reviewed-by: Boris Dušek Tested-by: Boris Dušek diff --git a/NSAXSpy/NSAXSpy/main.m b/NSAXSpy/NSAXSpy/main.m index 47490f1..6afc20d 100644 --- a/NSAXSpy/NSAXSpy/main.m +++ b/NSAXSpy/NSAXSpy/main.m @@ -128,9 +128,11 @@ static AXError findTextMateTextComponent(AXObserverCallback callback, AXObserver AXError err = kAXErrorSuccess; AX_APPLICATION(@"TextMate", TextMate, callback, observer) { AX_CHILD(TextMate, Window, 0, window) { -AX_CHILD(window, ScrollArea, 0, scrollArea) { -AX_CHILD(scrollArea, TextArea, 0, textArea) { -*component = textArea; +AX_CHILD(window, Group, 0, group) { +AX_CHILD(group, ScrollArea, 0, scrollArea) { +AX_CHILD(scrollArea, TextArea, 0, textArea) { +*component = textArea; +} } } } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-4-1-2' - vcl/aqua
vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm |1 + 1 file changed, 1 insertion(+) New commits: commit a8e0c7b874a5c14b95c97b0e6f5cf8924fe33e52 Author: Boris Dušek Date: Fri Sep 6 00:19:36 2013 +0200 Fix misspelled text with VoiceOver on 10.9 More in Apple's docs (Application Kit Release Notes for OS X v10.9, section "New Accessibility constants"). Change-Id: I92fb6d552e86997bfc789723f32626d908d11419 Reviewed-on: https://gerrit.libreoffice.org/5834 Reviewed-by: Tor Lillqvist Reviewed-by: Caolán McNamara Tested-by: Caolán McNamara diff --git a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm index 1c98581..751faed 100644 --- a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm @@ -246,6 +246,7 @@ using namespace ::rtl; switch(type) { case ::com::sun::star::text::TextMarkupType::SPELLCHECK: { [string addAttribute:NSAccessibilityMisspelledTextAttribute value:[NSNumber numberWithBool:YES] range:markupRange]; +[string addAttribute:@"AXMarkedMisspelled" value:[NSNumber numberWithBool:YES] range:markupRange]; break; } } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/aqua
vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm |1 + 1 file changed, 1 insertion(+) New commits: commit 1bc2ecf3b8fb9c7064a21548777f1e5b92d58c8d Author: Boris Dušek Date: Fri Sep 6 00:19:36 2013 +0200 Fix misspelled text with VoiceOver on 10.9 More in Apple's docs (Application Kit Release Notes for OS X v10.9, section "New Accessibility constants"). Change-Id: I92fb6d552e86997bfc789723f32626d908d11419 Reviewed-on: https://gerrit.libreoffice.org/5831 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm index 093f898f9..090df5e 100644 --- a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm @@ -294,6 +294,7 @@ using namespace ::rtl; switch(type) { case ::com::sun::star::text::TextMarkupType::SPELLCHECK: { [string addAttribute:NSAccessibilityMisspelledTextAttribute value:[NSNumber numberWithBool:YES] range:markupRange]; +[string addAttribute:@"AXMarkedMisspelled" value:[NSNumber numberWithBool:YES] range:markupRange]; break; } } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-4-1' - vcl/aqua
vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm |1 + 1 file changed, 1 insertion(+) New commits: commit 3a4a931630792d226a9905d14988459ced36f74a Author: Boris Dušek Date: Fri Sep 6 00:19:36 2013 +0200 Fix misspelled text with VoiceOver on 10.9 More in Apple's docs (Application Kit Release Notes for OS X v10.9, section "New Accessibility constants"). Change-Id: I92fb6d552e86997bfc789723f32626d908d11419 Reviewed-on: https://gerrit.libreoffice.org/5833 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm index 1c98581..751faed 100644 --- a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm @@ -246,6 +246,7 @@ using namespace ::rtl; switch(type) { case ::com::sun::star::text::TextMarkupType::SPELLCHECK: { [string addAttribute:NSAccessibilityMisspelledTextAttribute value:[NSNumber numberWithBool:YES] range:markupRange]; +[string addAttribute:@"AXMarkedMisspelled" value:[NSNumber numberWithBool:YES] range:markupRange]; break; } } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/aqua
vcl/aqua/source/a11y/aqua11ywrapper.mm |6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) New commits: commit 1c068a7a772ab903af627236ee93b0a1804be844 Author: Boris Dušek Date: Sat Aug 24 14:55:41 2013 +0200 Fix a11y logging with 10.6 SDK The compiler in 10.6 SDK complains about ambiguous overload for operator<<. Compilers in newer SDKs don't. Change-Id: Id0b710a8668021d15754fa6eaea492a91557e34e Reviewed-on: https://gerrit.libreoffice.org/5604 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/vcl/aqua/source/a11y/aqua11ywrapper.mm b/vcl/aqua/source/a11y/aqua11ywrapper.mm index 8de6f5c..672fad5 100644 --- a/vcl/aqua/source/a11y/aqua11ywrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ywrapper.mm @@ -843,7 +843,7 @@ static std::ostream &operator<<(std::ostream &s, NSPoint point) { } -(id)accessibilityAttributeValue:(NSString *)attribute forParameter:(id)parameter { -SAL_INFO("vcl.a11y", "[" << self << " accessibilityAttributeValue:" << attribute << " forParameter:" << parameter << "]"); +SAL_INFO("vcl.a11y", "[" << self << " accessibilityAttributeValue:" << attribute << " forParameter:" << ((NSObject*)parameter) << "]"); SEL methodSelector = [ self selectorForAttribute: attribute asGetter: YES withGetterParameter: YES ]; if ( [ self respondsToSelector: methodSelector ] ) { return [ self performSelector: methodSelector withObject: parameter ]; @@ -853,14 +853,14 @@ static std::ostream &operator<<(std::ostream &s, NSPoint point) { -(BOOL)accessibilitySetOverrideValue:(id)value forAttribute:(NSString *)attribute { -SAL_INFO("vcl.a11y", "[" << self << " accessibilitySetOverrideValue:" << value << " forAttribute:" << attribute << "]"); +SAL_INFO("vcl.a11y", "[" << self << " accessibilitySetOverrideValue:" << ((NSObject*)value) << " forAttribute:" << attribute << "]"); (void)value; (void)attribute; return NO; // TODO } -(void)accessibilitySetValue:(id)value forAttribute:(NSString *)attribute { -SAL_INFO("vcl.a11y", "[" << self << " accessibilitySetValue:" << value << " forAttribute:" << attribute << "]"); +SAL_INFO("vcl.a11y", "[" << self << " accessibilitySetValue:" << ((NSObject*)value) << " forAttribute:" << attribute << "]"); SEL methodSelector = [ self selectorForAttribute: attribute asGetter: NO withGetterParameter: NO ]; if ( [ AquaA11yComponentWrapper respondsToSelector: methodSelector ] ) { [ AquaA11yComponentWrapper performSelector: methodSelector withObject: self withObject: value ]; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-4-1' - vcl/aqua
vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm |8 1 file changed, 4 insertions(+), 4 deletions(-) New commits: commit 240a41f522f8d605daa3de4b9f8d026a13ab7582 Author: Boris Dušek Date: Wed Aug 21 08:23:44 2013 +0200 Fix build with compiler from OS X 10.6 SDK (hopefully) The compiler in 10.6 SDK probably still requires methods to be defined in such an order that one should not reference a method from a line of code that precedes the one where the method is defined. Compilers in newer SDKs support arbitrary order, as long as the requested method is defined anywhere. This is consistent with other methods in the same file that are not declared anywhere (just defined and used apparently in the order I wrote above). Change-Id: I14ba699056b6cdd2e804dbc87cfedaef47663664 Reviewed-on: https://gerrit.libreoffice.org/5577 Reviewed-by: Fridrich Strba Tested-by: Fridrich Strba diff --git a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm index 3b86f79..1c98581 100644 --- a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm @@ -235,10 +235,6 @@ using namespace ::rtl; [ pool release ]; } -+(void)addMarkup:(XAccessibleTextMarkup*)markup toString:(NSMutableAttributedString*)string inRange:(NSRange)range { -[AquaA11yTextAttributesWrapper addMarkup:markup withType:(::com::sun::star::text::TextMarkupType::SPELLCHECK) toString:string inRange:range]; -} - +(void)addMarkup:(XAccessibleTextMarkup*)markup withType:(long)type toString:(NSMutableAttributedString*)string inRange:(NSRange)range { const long markupCount = markup->getTextMarkupCount(type); for (long markupIndex = 0; markupIndex < markupCount; ++markupIndex) { @@ -257,6 +253,10 @@ using namespace ::rtl; } } ++(void)addMarkup:(XAccessibleTextMarkup*)markup toString:(NSMutableAttributedString*)string inRange:(NSRange)range { +[AquaA11yTextAttributesWrapper addMarkup:markup withType:(::com::sun::star::text::TextMarkupType::SPELLCHECK) toString:string inRange:range]; +} + +(NSMutableAttributedString *)createAttributedStringForElement:(AquaA11yWrapper *)wrapper inOrigRange:(id)origRange { static const Sequence < OUString > emptySequence; // vars ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/aqua
vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm |8 1 file changed, 4 insertions(+), 4 deletions(-) New commits: commit fe92085599aa39354f61e9adb07255aea6125674 Author: Boris Dušek Date: Wed Aug 21 08:23:44 2013 +0200 Fix build with compiler from OS X 10.6 SDK (hopefully) The compiler in 10.6 SDK probably still requires methods to be defined in such an order that one should not reference a method from a line of code that precedes the one where the method is defined. Compilers in newer SDKs support arbitrary order, as long as the requested method is defined anywhere. This is consistent with other methods in the same file that are not declared anywhere (just defined and used apparently in the order I wrote above). Change-Id: I14ba699056b6cdd2e804dbc87cfedaef47663664 Reviewed-on: https://gerrit.libreoffice.org/5576 Reviewed-by: Boris Dušek Tested-by: Boris Dušek diff --git a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm index 67ebca6..093f898f9 100644 --- a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm @@ -283,10 +283,6 @@ using namespace ::rtl; [ pool release ]; } -+(void)addMarkup:(XAccessibleTextMarkup*)markup toString:(NSMutableAttributedString*)string inRange:(NSRange)range { -[AquaA11yTextAttributesWrapper addMarkup:markup withType:(::com::sun::star::text::TextMarkupType::SPELLCHECK) toString:string inRange:range]; -} - +(void)addMarkup:(XAccessibleTextMarkup*)markup withType:(long)type toString:(NSMutableAttributedString*)string inRange:(NSRange)range { const long markupCount = markup->getTextMarkupCount(type); for (long markupIndex = 0; markupIndex < markupCount; ++markupIndex) { @@ -305,6 +301,10 @@ using namespace ::rtl; } } ++(void)addMarkup:(XAccessibleTextMarkup*)markup toString:(NSMutableAttributedString*)string inRange:(NSRange)range { +[AquaA11yTextAttributesWrapper addMarkup:markup withType:(::com::sun::star::text::TextMarkupType::SPELLCHECK) toString:string inRange:range]; +} + +(NSMutableAttributedString *)createAttributedStringForElement:(AquaA11yWrapper *)wrapper inOrigRange:(id)origRange { static const Sequence < OUString > emptySequence; // vars ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-4-1' - sw/source
sw/source/core/access/accpara.cxx | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) New commits: commit e5c7249382c12349e4e032c225c0153f6f41 Author: Boris Dušek Date: Sat Aug 17 17:23:40 2013 +0200 fdo#68219: Parent style text attributes missing in accessibility Thanks to Niklas Johansson for testing. Change-Id: I550076e7d62f8db389cdbf902fce0ff7f8f98165 Reviewed-on: https://gerrit.libreoffice.org/5499 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/sw/source/core/access/accpara.cxx b/sw/source/core/access/accpara.cxx index 3b6ef33..34d9dbd 100644 --- a/sw/source/core/access/accpara.cxx +++ b/sw/source/core/access/accpara.cxx @@ -1197,6 +1197,14 @@ uno::Sequence SwAccessibleParagraph::getCharacterAttributes( return aValues; } +static void SetPutRecursive(SfxItemSet &targetSet, const SfxItemSet &sourceSet) +{ +const SfxItemSet *const pParentSet = sourceSet.GetParent(); +if (pParentSet) +SetPutRecursive(targetSet, *pParentSet); +targetSet.Put(sourceSet); +} + // #i63870# void SwAccessibleParagraph::_getDefaultAttributesImpl( const uno::Sequence< OUString >& aRequestedAttributes, @@ -1243,7 +1251,7 @@ void SwAccessibleParagraph::_getDefaultAttributesImpl( SfxItemSet aCharSet( const_cast(pTxtNode->GetDoc()->GetAttrPool()), RES_CHRATR_BEGIN, RES_CHRATR_END - 1, 0 ); -aCharSet.Put( pTxtNode->GetTxtColl()->GetAttrSet() ); +SetPutRecursive( aCharSet, pTxtNode->GetTxtColl()->GetAttrSet() ); pSet->Put( aCharSet ); } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-4-1' - vcl/aqua
vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm | 25 +++ 1 file changed, 25 insertions(+) New commits: commit b822f3c09689d3e494df3499caac034838b3f5c6 Author: Boris Dušek Date: Sun Aug 11 16:37:48 2013 +0200 fdo#67980 - VoiceOver does not inform about misspelled text Reviewed-on: https://gerrit.libreoffice.org/5351 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist Conflicts: vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm Change-Id: I4aefa1c013e62942801dd38a06034103c0df24be Reviewed-on: https://gerrit.libreoffice.org/5497 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm index e8a676e..6fb55f0 100644 --- a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm @@ -28,6 +28,7 @@ #include #include #include +#include namespace css_awt = ::com::sun::star::awt; using namespace ::com::sun::star::accessibility; @@ -219,6 +220,28 @@ using namespace ::rtl; [ pool release ]; } ++(void)addMarkup:(XAccessibleTextMarkup*)markup toString:(NSMutableAttributedString*)string inRange:(NSRange)range { +[AquaA11yTextAttributesWrapper addMarkup:markup withType:(::com::sun::star::text::TextMarkupType::SPELLCHECK) toString:string inRange:range]; +} + ++(void)addMarkup:(XAccessibleTextMarkup*)markup withType:(long)type toString:(NSMutableAttributedString*)string inRange:(NSRange)range { +const long markupCount = markup->getTextMarkupCount(type); +for (long markupIndex = 0; markupIndex < markupCount; ++markupIndex) { +TextSegment markupSegment = markup->getTextMarkup(markupIndex, type); +NSRange markupRange = NSMakeRange(markupSegment.SegmentStart, markupSegment.SegmentEnd - markupSegment.SegmentStart); +markupRange = NSIntersectionRange(range, markupRange); +if (markupRange.length > 0) { +markupRange.location -= range.location; +switch(type) { +case ::com::sun::star::text::TextMarkupType::SPELLCHECK: { +[string addAttribute:NSAccessibilityMisspelledTextAttribute value:[NSNumber numberWithBool:YES] range:markupRange]; +break; +} +} +} +} +} + +(NSMutableAttributedString *)createAttributedStringForElement:(AquaA11yWrapper *)wrapper inOrigRange:(id)origRange { static const Sequence < OUString > emptySequence; // vars @@ -245,6 +268,8 @@ using namespace ::rtl; [ AquaA11yTextAttributesWrapper applyAttributesFrom: attributes toString: string forRange: rangeForAttributeRun storeDefaultsTo: nil getDefaultsFrom: wrapper ]; currentIndex = textSegment.SegmentEnd; } +if ([wrapper accessibleTextMarkup]) +[AquaA11yTextAttributesWrapper addMarkup:[wrapper accessibleTextMarkup] toString:string inRange:[origRange rangeValue]]; [ string endEditing ]; } } catch ( IllegalArgumentException & e ) { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-4-1' - vcl/aqua vcl/inc
vcl/aqua/source/a11y/aqua11ywrapper.mm |6 ++ vcl/inc/aqua/aqua11ywrapper.h |3 +++ 2 files changed, 9 insertions(+) New commits: commit 5e920d03b1cfdd8c7714fc9f5c1d484d4de656c8 Author: Boris Dušek Date: Sun Aug 11 16:34:07 2013 +0200 Add XAccessibleTextMarkup to AquaA11yWrapper Change-Id: Ic15aeb46b384531c4d64d6ec8a103f3e44068cf1 Reviewed-on: https://gerrit.libreoffice.org/5350 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist Reviewed-on: https://gerrit.libreoffice.org/5496 diff --git a/vcl/aqua/source/a11y/aqua11ywrapper.mm b/vcl/aqua/source/a11y/aqua11ywrapper.mm index fe1ba6d..4cff69e 100644 --- a/vcl/aqua/source/a11y/aqua11ywrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ywrapper.mm @@ -101,6 +101,8 @@ static BOOL isPopupMenuOpen = NO; mpReferenceWrapper -> rAccessibleTextAttributes = Reference < XAccessibleTextAttributes > ( rxAccessibleContext, UNO_QUERY ); // XAccessibleMultiLineText mpReferenceWrapper -> rAccessibleMultiLineText = Reference < XAccessibleMultiLineText > ( rxAccessibleContext, UNO_QUERY ); +// XAccessibleTextMarkup +mpReferenceWrapper -> rAccessibleTextMarkup = Reference < XAccessibleTextMarkup > ( rxAccessibleContext, UNO_QUERY ); // XAccessibleEventBroadcaster #if 0 /* #i102033# NSAccessibility does not seemt to know an equivalent for transient children. @@ -1097,6 +1099,10 @@ Reference < XAccessibleContext > hitTestRunner ( com::sun::star::awt::Point poin return mpReferenceWrapper -> rAccessibleMultiLineText.get(); } +-(XAccessibleTextMarkup *)accessibleTextMarkup { +return mpReferenceWrapper -> rAccessibleTextMarkup.get(); +} + -(NSView *)viewElementForParent { return self; } diff --git a/vcl/inc/aqua/aqua11ywrapper.h b/vcl/inc/aqua/aqua11ywrapper.h index 185536a..a35aa84 100644 --- a/vcl/inc/aqua/aqua11ywrapper.h +++ b/vcl/inc/aqua/aqua11ywrapper.h @@ -32,6 +32,7 @@ #include #include #include +#include // rAccessibleXYZ as a field in an Objective-C-Class would not call Con-/Destructor, so use a struct instead struct ReferenceWrapper @@ -47,6 +48,7 @@ struct ReferenceWrapper ::com::sun::star::uno::Reference < ::com::sun::star::accessibility::XAccessibleValue > rAccessibleValue; ::com::sun::star::uno::Reference < ::com::sun::star::accessibility::XAccessibleTextAttributes > rAccessibleTextAttributes; ::com::sun::star::uno::Reference < ::com::sun::star::accessibility::XAccessibleMultiLineText > rAccessibleMultiLineText; +::com::sun::star::uno::Reference < ::com::sun::star::accessibility::XAccessibleTextMarkup > rAccessibleTextMarkup; }; @interface AquaA11yWrapper : NSView @@ -109,6 +111,7 @@ struct ReferenceWrapper -(::com::sun::star::accessibility::XAccessibleValue *)accessibleValue; -(::com::sun::star::accessibility::XAccessibleTextAttributes *)accessibleTextAttributes; -(::com::sun::star::accessibility::XAccessibleMultiLineText *)accessibleMultiLineText; +-(::com::sun::star::accessibility::XAccessibleTextMarkup *)accessibleTextMarkup; @end #endif // _SV_AQUA11WRAPPER_H ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-4-1' - vcl/aqua vcl/inc
vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm | 20 +++ vcl/aqua/source/a11y/aqua11ywrapper.mm |9 vcl/inc/aqua/aqua11ywrapper.h|3 ++ 3 files changed, 28 insertions(+), 4 deletions(-) New commits: commit a6edddefab9f46defc0cee262c38bb8eae32916a Author: Boris Dušek Date: Sun Aug 11 08:44:26 2013 +0200 fdo#67957: Font name reported in AXFont always Times New Roman This is a partial fix. Now VoiceOver does report changes in font faces but it works correctly only when the paragraph text style has font "Times New Roman". If it has not, then parts of the text with "Times New Roman" have not change in font reported, but parts with font different both from the paragraph style font and "Times New Roman" do have font change reported. In other words, the default font for paragraph is still "Times New Roman" in accessibility even though sometimes it's not true. This also fixes font size being reported only when bold or italic is set, and has more robustness for handling mixed bold/italic when at least one of them is set in the paragraph style as well. Change-Id: Id0715727d04cd9b814aa0e4093939cd3e6abe897 Reviewed-on: https://gerrit.libreoffice.org/5344 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist Reviewed-on: https://gerrit.libreoffice.org/5495 diff --git a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm index 2e4ab40..e8a676e 100644 --- a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm @@ -50,7 +50,7 @@ using namespace ::rtl; } +(int)convertBoldStyle:(PropertyValue)property { -int boldStyle = 0; +int boldStyle = NSUnboldFontMask; float value = 0; property.Value >>= value; if ( value == ::css_awt::FontWeight::SEMIBOLD @@ -63,7 +63,7 @@ using namespace ::rtl; } +(int)convertItalicStyle:(PropertyValue)property { -int italicStyle = 0; +int italicStyle = NSUnitalicFontMask; sal_Int16 value = property.Value.get< ::css_awt::FontSlant>(); if ( value == ::css_awt::FontSlant_ITALIC ) { italicStyle = NSItalicFontMask; @@ -198,10 +198,22 @@ using namespace ::rtl; if ( wrapperStore != nil ) { // default [ wrapperStore setDefaultFontname: CreateNSString ( fontname ) ]; [ wrapperStore setDefaultFontsize: fontsize ]; +[ wrapperStore setDefaultFonttraits: fonttraits ]; NSFont * font = [ [ NSFontManager sharedFontManager ] fontWithFamily: CreateNSString ( fontname ) traits: fonttraits weight: 0 size: fontsize ]; [ AquaA11yTextAttributesWrapper addFont: font toString: string forRange: range ]; -} else if ( wrapper != nil && fonttraits != 0 ) { // attribute run and bold and/or italic was found -NSFont * font = [ [ NSFontManager sharedFontManager ] fontWithFamily: [ wrapper defaultFontname ] traits: fonttraits weight: 0 size: [ wrapper defaultFontsize ] ]; +} else if ( wrapper != nil) { // attribute run and bold and/or italic was found +NSString *fontName = nil; +if (fontname.isEmpty()) +fontName = [wrapper defaultFontname]; +else +fontName = CreateNSString(fontname); +if (!(fonttraits & (NSBoldFontMask | NSUnboldFontMask))) +fonttraits |= [wrapper defaultFonttraits] & (NSBoldFontMask | NSUnboldFontMask); +if (!(fonttraits & (NSItalicFontMask | NSUnitalicFontMask))) +fonttraits |= [wrapper defaultFonttraits] & (NSItalicFontMask | NSUnitalicFontMask); +if (fontsize == 0.0) +fontsize = [wrapper defaultFontsize]; +NSFont * font = [ [ NSFontManager sharedFontManager ] fontWithFamily: fontName traits: fonttraits weight: 0 size: fontsize ]; [ AquaA11yTextAttributesWrapper addFont: font toString: string forRange: range ]; } [ pool release ]; diff --git a/vcl/aqua/source/a11y/aqua11ywrapper.mm b/vcl/aqua/source/a11y/aqua11ywrapper.mm index 9a35cbc..fe1ba6d 100644 --- a/vcl/aqua/source/a11y/aqua11ywrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ywrapper.mm @@ -73,6 +73,7 @@ static BOOL isPopupMenuOpen = NO; -(void) setDefaults: (Reference < XAccessibleContext >) rxAccessibleContext { mDefaultFontsize = 0.0; +mDefaultFonttraits = 0; mpDefaultFontname = nil; mpReferenceWrapper = new ReferenceWrapper; mActsAsRadioGroup = NO; @@ -1123,6 +1124,14 @@ Reference < XAccessibleContext > hitTestRunner ( com::sun::star::awt::Point poin return mDefaultFontsize; } +-(void)setDefaultFonttraits:(int)fonttraits { +mDefaultFonttraits = fonttraits; +} + +-(int)defaultFonttraits { +return mDefaultFonttraits; +} + -(void)setActsAsRadioGroup:(BOOL)actsAsRadioGroup { mActsAsRadioGroup = actsAsRadioGroup; } diff --git a/vcl/inc/aqua/aqua11ywrapper.h b/vcl/
[Libreoffice-commits] core.git: Branch 'libreoffice-4-1' - vcl/aqua
vcl/aqua/source/a11y/aqua11ytextwrapper.mm |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 788d11aee3b59bb8428beae231d85f0c7d0235ce Author: Boris Dušek Date: Fri Aug 9 08:41:42 2013 +0200 fdo#67680: Impossible to search for text attributes with VoiceOver Change-Id: I02ae12233aa37830106eeffd16876670413f4627 Reviewed-on: https://gerrit.libreoffice.org/5334 Reviewed-by: Norbert Thiebaud Tested-by: Norbert Thiebaud Reviewed-on: https://gerrit.libreoffice.org/5494 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/vcl/aqua/source/a11y/aqua11ytextwrapper.mm b/vcl/aqua/source/a11y/aqua11ytextwrapper.mm index 4d4b75c..ab02eaf 100644 --- a/vcl/aqua/source/a11y/aqua11ytextwrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ytextwrapper.mm @@ -108,13 +108,13 @@ using namespace ::rtl; +(id)sharedTextUIElementsAttributeForElement:(AquaA11yWrapper *)wrapper { (void)wrapper; -return [ [ NSArray alloc ] init ]; // unsupported +return [NSArray arrayWithObject:wrapper]; } +(id)sharedCharacterRangeAttributeForElement:(AquaA11yWrapper *)wrapper { (void)wrapper; -return [ NSValue valueWithRange: NSMakeRange ( 0, 0 ) ]; // unsupported +return [ NSValue valueWithRange: NSMakeRange ( 0, [wrapper accessibleText]->getCharacterCount() ) ]; } +(void)addAttributeNamesTo:(NSMutableArray *)attributeNames { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-4-1' - vcl/aqua
vcl/aqua/source/a11y/aqua11ywrapper.mm | 23 +-- 1 file changed, 1 insertion(+), 22 deletions(-) New commits: commit 30d96626c51282b172a3c3f48f8b01ee137dfd08 Author: Boris Dušek Date: Fri Aug 2 00:20:57 2013 +0200 Use NSAccessibilityActionDescription for action descriptions Reviewed-on: https://gerrit.libreoffice.org/5238 Reviewed-by: Norbert Thiebaud Tested-by: Norbert Thiebaud Conflicts: vcl/aqua/source/a11y/aqua11ywrapper.mm Change-Id: I26a233e72274be7afc2e3e41e13a6743f75e695f Reviewed-on: https://gerrit.libreoffice.org/5493 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/vcl/aqua/source/a11y/aqua11ywrapper.mm b/vcl/aqua/source/a11y/aqua11ywrapper.mm index 04c29ad..9a35cbc 100644 --- a/vcl/aqua/source/a11y/aqua11ywrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ywrapper.mm @@ -880,29 +880,8 @@ static BOOL isPopupMenuOpen = NO; return self; } -// TODO: hard-coded like the role descriptions. is there a better way? -(NSString *)accessibilityActionDescription:(NSString *)action { -if ( [ action isEqualToString: NSAccessibilityConfirmAction ] ) { -return @"confirm"; -} else if ( [ action isEqualToString: NSAccessibilityDecrementAction ] ) { -return @"decrement"; -} else if ( [ action isEqualToString: NSAccessibilityDeleteAction ] ) { -return @"delete"; -} else if ( [ action isEqualToString: NSAccessibilityIncrementAction ] ) { -return @"increment"; -} else if ( [ action isEqualToString: NSAccessibilityPickAction ] ) { -return @"pick"; -} else if ( [ action isEqualToString: NSAccessibilityPressAction ] ) { -return @"press"; -} else if ( [ action isEqualToString: NSAccessibilityCancelAction ] ) { -return @"cancel"; -} else if ( [ action isEqualToString: NSAccessibilityRaiseAction ] ) { -return @"raise"; -} else if ( [ action isEqualToString: NSAccessibilityShowMenuAction ] ) { -return @"show menu"; -} else { -return [ NSString string ]; -} +return NSAccessibilityActionDescription(action); } -(AquaA11yWrapper *)actionResponder { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-4-1' - vcl/aqua
vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 80d0ddc474ff506ef90f74613982d1e87ebf51f2 Author: Boris Dušek Date: Fri Aug 2 00:04:35 2013 +0200 Fix accessibility of text attributes on OS X The applyAttributesFrom:... method takes range parameter that specifies a range in the 'string' parameter passed to that method, not in the whole string of the UI element as retrievd in createAttributedStringForElement:... (the former string is a substring of the latter). In other words, the 'range' parameter in applyAttributesFrom: is relative to the string passed to that method, not to the whole string of the UI element. This enables proper reading of text attributes in Writer - when moving cursor through text, VoiceOver now announces e.g. "bold" or "plain" to indicate changes in text formatting. Change-Id: I21a633af0bf426759f639435581fcd3bfeafa598 Reviewed-on: https://gerrit.libreoffice.org/5236 Reviewed-by: Norbert Thiebaud Tested-by: Norbert Thiebaud Reviewed-on: https://gerrit.libreoffice.org/5492 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm index d35a53f..2e4ab40 100644 --- a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm @@ -222,12 +222,12 @@ using namespace ::rtl; [ string beginEditing ]; // add default attributes for whole string Sequence < PropertyValue > defaultAttributes = [ wrapper accessibleTextAttributes ] -> getDefaultAttributes ( emptySequence ); -[ AquaA11yTextAttributesWrapper applyAttributesFrom: defaultAttributes toString: string forRange: [ origRange rangeValue ] storeDefaultsTo: wrapper getDefaultsFrom: nil ]; +[ AquaA11yTextAttributesWrapper applyAttributesFrom: defaultAttributes toString: string forRange: NSMakeRange ( 0, len ) storeDefaultsTo: wrapper getDefaultsFrom: nil ]; // add attributes for attribute run(s) while ( currentIndex < endIndex ) { TextSegment textSegment = [ wrapper accessibleText ] -> getTextAtIndex ( currentIndex, AccessibleTextType::ATTRIBUTE_RUN ); int endOfRange = endIndex > textSegment.SegmentEnd ? textSegment.SegmentEnd : endIndex; -NSRange rangeForAttributeRun = NSMakeRange ( currentIndex, endOfRange - currentIndex ); +NSRange rangeForAttributeRun = NSMakeRange ( currentIndex - loc , endOfRange - currentIndex ); // add run attributes Sequence < PropertyValue > attributes = [ wrapper accessibleTextAttributes ] -> getRunAttributes ( currentIndex, emptySequence ); [ AquaA11yTextAttributesWrapper applyAttributesFrom: attributes toString: string forRange: rangeForAttributeRun storeDefaultsTo: nil getDefaultsFrom: wrapper ]; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sw/source
sw/source/core/access/accpara.cxx | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) New commits: commit cc0dd9f8bd4ee52e5a26c0630e7960386aeffb15 Author: Boris Dušek Date: Sat Aug 17 17:23:40 2013 +0200 fdo#68219: Parent style text attributes missing in accessibility Thanks to Niklas Johansson for testing. Change-Id: I550076e7d62f8db389cdbf902fce0ff7f8f98165 Reviewed-on: https://gerrit.libreoffice.org/5480 Reviewed-by: Norbert Thiebaud Tested-by: Norbert Thiebaud diff --git a/sw/source/core/access/accpara.cxx b/sw/source/core/access/accpara.cxx index c97d162..f9afed9 100644 --- a/sw/source/core/access/accpara.cxx +++ b/sw/source/core/access/accpara.cxx @@ -1197,6 +1197,14 @@ uno::Sequence SwAccessibleParagraph::getCharacterAttributes( return aValues; } +static void SetPutRecursive(SfxItemSet &targetSet, const SfxItemSet &sourceSet) +{ +const SfxItemSet *const pParentSet = sourceSet.GetParent(); +if (pParentSet) +SetPutRecursive(targetSet, *pParentSet); +targetSet.Put(sourceSet); +} + // #i63870# void SwAccessibleParagraph::_getDefaultAttributesImpl( const uno::Sequence< OUString >& aRequestedAttributes, @@ -1243,7 +1251,7 @@ void SwAccessibleParagraph::_getDefaultAttributesImpl( SfxItemSet aCharSet( const_cast(pTxtNode->GetDoc()->GetAttrPool()), RES_CHRATR_BEGIN, RES_CHRATR_END - 1, 0 ); -aCharSet.Put( pTxtNode->GetTxtColl()->GetAttrSet() ); +SetPutRecursive( aCharSet, pTxtNode->GetTxtColl()->GetAttrSet() ); pSet->Put( aCharSet ); } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/aqua
vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm | 15 +++ 1 file changed, 15 insertions(+) New commits: commit 995c2cd310d04c22701871d1bd02962535619760 Author: Boris Dušek Date: Sun Aug 11 19:45:19 2013 +0200 Make VoiceOver announce paragraph alignment Change-Id: I7d9d012e0af3b5685421ca2f10d2d8cb3420cc15 Reviewed-on: https://gerrit.libreoffice.org/5352 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm index 41f5c80..67ebca6 100644 --- a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm @@ -29,6 +29,7 @@ #include #include #include +#include namespace css_awt = ::com::sun::star::awt; using namespace ::com::sun::star::accessibility; @@ -205,6 +206,7 @@ using namespace ::rtl; static const OUString attrForegroundColor("CharColor"); static const OUString attrBackgroundColor("CharBackColor"); static const OUString attrSuperscript("CharEscapement"); +static const OUString attrTextAlignment("ParaAdjust"); // vars sal_Int32 underlineColor = 0; BOOL underlineHasColor = NO; @@ -255,6 +257,19 @@ using namespace ::rtl; if ( [ number shortValue ] != 0 ) { [ string addAttribute: NSAccessibilitySuperscriptTextAttribute value: number range: range ]; } +} else if ( property.Name.equals ( attrTextAlignment ) ) { +sal_Int32 alignment; +property.Value >>= alignment; +NSNumber *textAlignment = nil; +switch(alignment) { +case ::com::sun::star::style::ParagraphAdjust_RIGHT : textAlignment = [NSNumber numberWithInteger:NSRightTextAlignment]; break; +case ::com::sun::star::style::ParagraphAdjust_CENTER: textAlignment = [NSNumber numberWithInteger:NSCenterTextAlignment] ; break; +case ::com::sun::star::style::ParagraphAdjust_BLOCK : textAlignment = [NSNumber numberWithInteger:NSJustifiedTextAlignment]; break; +case ::com::sun::star::style::ParagraphAdjust_LEFT : +default : textAlignment = [NSNumber numberWithInteger:NSLeftTextAlignment] ; break; +} +NSDictionary *paragraphStyle = [NSDictionary dictionaryWithObjectsAndKeys:textAlignment, @"AXTextAlignment", textAlignment, @"AXVisualTextAlignment", nil]; +[string addAttribute:@"AXParagraphStyle" value:paragraphStyle range:range]; } } } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/aqua
vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm | 25 +++ 1 file changed, 25 insertions(+) New commits: commit db0fa92637a1b2edf26da9917c9dce050ebc8a78 Author: Boris Dušek Date: Sun Aug 11 16:37:48 2013 +0200 fdo#67980 - VoiceOver does not inform about misspelled text Change-Id: I4aefa1c013e62942801dd38a06034103c0df24be Reviewed-on: https://gerrit.libreoffice.org/5351 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm index d95f999..41f5c80 100644 --- a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm @@ -28,6 +28,7 @@ #include #include #include +#include namespace css_awt = ::com::sun::star::awt; using namespace ::com::sun::star::accessibility; @@ -267,6 +268,28 @@ using namespace ::rtl; [ pool release ]; } ++(void)addMarkup:(XAccessibleTextMarkup*)markup toString:(NSMutableAttributedString*)string inRange:(NSRange)range { +[AquaA11yTextAttributesWrapper addMarkup:markup withType:(::com::sun::star::text::TextMarkupType::SPELLCHECK) toString:string inRange:range]; +} + ++(void)addMarkup:(XAccessibleTextMarkup*)markup withType:(long)type toString:(NSMutableAttributedString*)string inRange:(NSRange)range { +const long markupCount = markup->getTextMarkupCount(type); +for (long markupIndex = 0; markupIndex < markupCount; ++markupIndex) { +TextSegment markupSegment = markup->getTextMarkup(markupIndex, type); +NSRange markupRange = NSMakeRange(markupSegment.SegmentStart, markupSegment.SegmentEnd - markupSegment.SegmentStart); +markupRange = NSIntersectionRange(range, markupRange); +if (markupRange.length > 0) { +markupRange.location -= range.location; +switch(type) { +case ::com::sun::star::text::TextMarkupType::SPELLCHECK: { +[string addAttribute:NSAccessibilityMisspelledTextAttribute value:[NSNumber numberWithBool:YES] range:markupRange]; +break; +} +} +} +} +} + +(NSMutableAttributedString *)createAttributedStringForElement:(AquaA11yWrapper *)wrapper inOrigRange:(id)origRange { static const Sequence < OUString > emptySequence; // vars @@ -297,6 +320,8 @@ using namespace ::rtl; currentIndex = textSegment.SegmentEnd; } [defaultFontDescriptor release]; +if ([wrapper accessibleTextMarkup]) +[AquaA11yTextAttributesWrapper addMarkup:[wrapper accessibleTextMarkup] toString:string inRange:[origRange rangeValue]]; [ string endEditing ]; } } catch ( IllegalArgumentException & e ) { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/aqua vcl/inc
vcl/aqua/source/a11y/aqua11ywrapper.mm |6 ++ vcl/inc/aqua/aqua11ywrapper.h |3 +++ 2 files changed, 9 insertions(+) New commits: commit 487d9ffe0480470fb7c03fe71e466e8bcc700c33 Author: Boris Dušek Date: Sun Aug 11 16:34:07 2013 +0200 Add XAccessibleTextMarkup to AquaA11yWrapper Change-Id: Ic15aeb46b384531c4d64d6ec8a103f3e44068cf1 Reviewed-on: https://gerrit.libreoffice.org/5350 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/vcl/aqua/source/a11y/aqua11ywrapper.mm b/vcl/aqua/source/a11y/aqua11ywrapper.mm index aee6360..e5dde15 100644 --- a/vcl/aqua/source/a11y/aqua11ywrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ywrapper.mm @@ -107,6 +107,8 @@ static std::ostream &operator<<(std::ostream &s, NSPoint point) { mpReferenceWrapper -> rAccessibleTextAttributes = Reference < XAccessibleTextAttributes > ( rxAccessibleContext, UNO_QUERY ); // XAccessibleMultiLineText mpReferenceWrapper -> rAccessibleMultiLineText = Reference < XAccessibleMultiLineText > ( rxAccessibleContext, UNO_QUERY ); +// XAccessibleTextMarkup +mpReferenceWrapper -> rAccessibleTextMarkup = Reference < XAccessibleTextMarkup > ( rxAccessibleContext, UNO_QUERY ); // XAccessibleEventBroadcaster #if 0 /* #i102033# NSAccessibility does not seemt to know an equivalent for transient children. @@ -1113,6 +1115,10 @@ Reference < XAccessibleContext > hitTestRunner ( com::sun::star::awt::Point poin return mpReferenceWrapper -> rAccessibleMultiLineText.get(); } +-(XAccessibleTextMarkup *)accessibleTextMarkup { +return mpReferenceWrapper -> rAccessibleTextMarkup.get(); +} + -(NSView *)viewElementForParent { return self; } diff --git a/vcl/inc/aqua/aqua11ywrapper.h b/vcl/inc/aqua/aqua11ywrapper.h index 83b5a77..d7767c1 100644 --- a/vcl/inc/aqua/aqua11ywrapper.h +++ b/vcl/inc/aqua/aqua11ywrapper.h @@ -32,6 +32,7 @@ #include #include #include +#include // rAccessibleXYZ as a field in an Objective-C-Class would not call Con-/Destructor, so use a struct instead struct ReferenceWrapper @@ -47,6 +48,7 @@ struct ReferenceWrapper ::com::sun::star::uno::Reference < ::com::sun::star::accessibility::XAccessibleValue > rAccessibleValue; ::com::sun::star::uno::Reference < ::com::sun::star::accessibility::XAccessibleTextAttributes > rAccessibleTextAttributes; ::com::sun::star::uno::Reference < ::com::sun::star::accessibility::XAccessibleMultiLineText > rAccessibleMultiLineText; +::com::sun::star::uno::Reference < ::com::sun::star::accessibility::XAccessibleTextMarkup > rAccessibleTextMarkup; }; @interface AquaA11yWrapper : NSView @@ -100,6 +102,7 @@ struct ReferenceWrapper -(::com::sun::star::accessibility::XAccessibleValue *)accessibleValue; -(::com::sun::star::accessibility::XAccessibleTextAttributes *)accessibleTextAttributes; -(::com::sun::star::accessibility::XAccessibleMultiLineText *)accessibleMultiLineText; +-(::com::sun::star::accessibility::XAccessibleTextMarkup *)accessibleTextMarkup; @end #endif // _SV_AQUA11WRAPPER_H ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/aqua vcl/inc
vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm | 112 +-- vcl/aqua/source/a11y/aqua11ywrapper.mm | 33 - vcl/inc/aqua/aqua11ywrapper.h|9 - 3 files changed, 82 insertions(+), 72 deletions(-) New commits: commit fb6edeb20de56359be3d45316a2d665ad8d424a2 Author: Boris Dušek Date: Sun Aug 11 15:02:04 2013 +0200 Refactoring: remove 3 unneeded ivars The default font size, font name and font traits were stored as ivars of AquaA11yWrapper, but they are in fact only needed as temporary state for the createAttributedStringForElement:inOrigRange: method of AquaA11yTextAttributesWrapper. So remove these 3 ivars and instead introduce a class that holds these 3 properties and make createAttributedStringForElement:inOrigRange: use instance of this class to hold the needed state instead. I checked that the default font size, font name and font traits ivars are really only used in AquaA11yTextAttributesWrapper at that one place. Change-Id: Id2e45977c394db116f3fb0636136300c23e71f25 Reviewed-on: https://gerrit.libreoffice.org/5346 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm index e8a676e..d95f999 100644 --- a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm @@ -36,6 +36,72 @@ using namespace ::com::sun::star::lang; using namespace ::com::sun::star::uno; using namespace ::rtl; +// cannot use NSFontDescriptor as it has no notion of explicit NSUn{bold,italic}FontMask +@interface AquaA11yFontDescriptor : NSObject +{ +NSString *_name; +NSFontTraitMask _traits; +CGFloat _size; +} +-(void)setName:(NSString*)name; +-(void)setBold:(NSFontTraitMask)bold; +-(void)setItalic:(NSFontTraitMask)italic; +-(void)setSize:(CGFloat)size; +-(NSFont*)font; +@end + +@implementation AquaA11yFontDescriptor +- (id)init +{ +if((self = [super init])) +{ +_name = nil; +_traits = 0; +_size = 0.0; +} +return self; +} + +- (id)initWithDescriptor:(AquaA11yFontDescriptor*)descriptor { +if((self = [super init])) +{ +_name = [descriptor->_name retain]; +_traits = descriptor->_traits; +_size = descriptor->_size; +} +return self; +} + +- (void)dealloc { +[_name release]; +[super dealloc]; +} + +-(void)setName:(NSString*)name { +if (_name != name) { +[name retain]; +[_name release]; +_name = name; +} +} + +-(void)setBold:(NSFontTraitMask)bold { +_traits &= ~(NSBoldFontMask | NSUnboldFontMask); +_traits |= bold & (NSBoldFontMask | NSUnboldFontMask); +}; + +-(void)setItalic:(NSFontTraitMask)italic { +_traits &= ~(NSItalicFontMask | NSUnitalicFontMask); +_traits |= italic & (NSItalicFontMask | NSUnitalicFontMask); +}; + +-(void)setSize:(CGFloat)size { _size = size; } + +-(NSFont*)font { +return [[NSFontManager sharedFontManager] fontWithFamily:_name traits:_traits weight:0 size:_size]; +} +@end + @implementation AquaA11yTextAttributesWrapper : NSObject +(int)convertUnderlineStyle:(PropertyValue)property { @@ -123,7 +189,7 @@ using namespace ::rtl; } } -+(void)applyAttributesFrom:(Sequence < PropertyValue >)attributes toString:(NSMutableAttributedString *)string forRange:(NSRange)range storeDefaultsTo:(AquaA11yWrapper *)wrapperStore getDefaultsFrom:(AquaA11yWrapper *)wrapper { ++(void)applyAttributesFrom:(Sequence < PropertyValue >)attributes toString:(NSMutableAttributedString *)string forRange:(NSRange)range fontDescriptor:(AquaA11yFontDescriptor*)fontDescriptor { NSAutoreleasePool * pool = [ [ NSAutoreleasePool alloc ] init ]; // constants static const OUString attrUnderline("CharUnderline"); @@ -139,9 +205,6 @@ using namespace ::rtl; static const OUString attrBackgroundColor("CharBackColor"); static const OUString attrSuperscript("CharEscapement"); // vars -OUString fontname; -int fonttraits = 0; -float fontsize = 0.0; sal_Int32 underlineColor = 0; BOOL underlineHasColor = NO; // add attributes to string @@ -156,13 +219,17 @@ using namespace ::rtl; [ string addAttribute: NSAccessibilityUnderlineTextAttribute value: [ NSNumber numberWithInt: style ] range: range ]; } } else if ( property.Name.equals ( attrFontname ) ) { +OUString fontname; property.Value >>= fontname; +[fontDescriptor setName:CreateNSString(fontname)]; } else if ( property.Name.equals ( attrBold ) ) { -fonttraits |= [ AquaA11yTextAttributesWrapper convertBoldStyle: property ]; +[fontDescriptor setBold:[AquaA11yTextAttributesWrapper convertBoldStyle:property]]; } else if ( p
[Libreoffice-commits] core.git: vcl/aqua vcl/inc
vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm | 20 +++ vcl/aqua/source/a11y/aqua11ywrapper.mm |9 vcl/inc/aqua/aqua11ywrapper.h|3 ++ 3 files changed, 28 insertions(+), 4 deletions(-) New commits: commit 3e9ae4da947cd9c3f75b6e4942f2ba52337df075 Author: Boris Dušek Date: Sun Aug 11 08:44:26 2013 +0200 fdo#67957: Font name reported in AXFont always Times New Roman This is a partial fix. Now VoiceOver does report changes in font faces but it works correctly only when the paragraph text style has font "Times New Roman". If it has not, then parts of the text with "Times New Roman" have not change in font reported, but parts with font different both from the paragraph style font and "Times New Roman" do have font change reported. In other words, the default font for paragraph is still "Times New Roman" in accessibility even though sometimes it's not true. This also fixes font size being reported only when bold or italic is set, and has more robustness for handling mixed bold/italic when at least one of them is set in the paragraph style as well. Change-Id: Id0715727d04cd9b814aa0e4093939cd3e6abe897 Reviewed-on: https://gerrit.libreoffice.org/5344 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm index 2e4ab40..e8a676e 100644 --- a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm @@ -50,7 +50,7 @@ using namespace ::rtl; } +(int)convertBoldStyle:(PropertyValue)property { -int boldStyle = 0; +int boldStyle = NSUnboldFontMask; float value = 0; property.Value >>= value; if ( value == ::css_awt::FontWeight::SEMIBOLD @@ -63,7 +63,7 @@ using namespace ::rtl; } +(int)convertItalicStyle:(PropertyValue)property { -int italicStyle = 0; +int italicStyle = NSUnitalicFontMask; sal_Int16 value = property.Value.get< ::css_awt::FontSlant>(); if ( value == ::css_awt::FontSlant_ITALIC ) { italicStyle = NSItalicFontMask; @@ -198,10 +198,22 @@ using namespace ::rtl; if ( wrapperStore != nil ) { // default [ wrapperStore setDefaultFontname: CreateNSString ( fontname ) ]; [ wrapperStore setDefaultFontsize: fontsize ]; +[ wrapperStore setDefaultFonttraits: fonttraits ]; NSFont * font = [ [ NSFontManager sharedFontManager ] fontWithFamily: CreateNSString ( fontname ) traits: fonttraits weight: 0 size: fontsize ]; [ AquaA11yTextAttributesWrapper addFont: font toString: string forRange: range ]; -} else if ( wrapper != nil && fonttraits != 0 ) { // attribute run and bold and/or italic was found -NSFont * font = [ [ NSFontManager sharedFontManager ] fontWithFamily: [ wrapper defaultFontname ] traits: fonttraits weight: 0 size: [ wrapper defaultFontsize ] ]; +} else if ( wrapper != nil) { // attribute run and bold and/or italic was found +NSString *fontName = nil; +if (fontname.isEmpty()) +fontName = [wrapper defaultFontname]; +else +fontName = CreateNSString(fontname); +if (!(fonttraits & (NSBoldFontMask | NSUnboldFontMask))) +fonttraits |= [wrapper defaultFonttraits] & (NSBoldFontMask | NSUnboldFontMask); +if (!(fonttraits & (NSItalicFontMask | NSUnitalicFontMask))) +fonttraits |= [wrapper defaultFonttraits] & (NSItalicFontMask | NSUnitalicFontMask); +if (fontsize == 0.0) +fontsize = [wrapper defaultFontsize]; +NSFont * font = [ [ NSFontManager sharedFontManager ] fontWithFamily: fontName traits: fonttraits weight: 0 size: fontsize ]; [ AquaA11yTextAttributesWrapper addFont: font toString: string forRange: range ]; } [ pool release ]; diff --git a/vcl/aqua/source/a11y/aqua11ywrapper.mm b/vcl/aqua/source/a11y/aqua11ywrapper.mm index bb0d81b..375997f 100644 --- a/vcl/aqua/source/a11y/aqua11ywrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ywrapper.mm @@ -82,6 +82,7 @@ static std::ostream &operator<<(std::ostream &s, NSPoint point) { -(void) setDefaults: (Reference < XAccessibleContext >) rxAccessibleContext { mDefaultFontsize = 0.0; +mDefaultFonttraits = 0; mpDefaultFontname = nil; mpReferenceWrapper = new ReferenceWrapper; mActsAsRadioGroup = NO; @@ -1145,6 +1146,14 @@ Reference < XAccessibleContext > hitTestRunner ( com::sun::star::awt::Point poin return mDefaultFontsize; } +-(void)setDefaultFonttraits:(int)fonttraits { +mDefaultFonttraits = fonttraits; +} + +-(int)defaultFonttraits { +return mDefaultFonttraits; +} + -(void)setActsAsRadioGroup:(BOOL)actsAsRadioGroup { mActsAsRadioGroup = actsAsRadioGroup; } diff --git a/vcl/inc/aqua/aqua11ywrapper.h b/vcl/inc/aqua/aqua11ywrap
[Libreoffice-commits] core.git: Branch 'libreoffice-4-0' - vcl/aqua
vcl/aqua/source/a11y/aqua11yfocuslistener.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit ddba6389b685d4f839da350d0ea42e6aebf67b70 Author: Boris Dušek Date: Fri Aug 2 00:36:54 2013 +0200 Revert "fdo#54320: VoiceOver does not follow keyboard focus" The code was correct (and docs confusing). The code did not work because 67410 was not fixed at that moment. With 67410 fixed, the code works as it was originally. Also in the meantime I discovered a comment in the NSAccessibility.h header telling that NSAccessibilityPostNotification should be passed the newly focused element and that the function itself will make sure to post the notification on the NSApp element instead. This reverts commit e9257fa0e642de2f1c79f2c80387334010812dab. Change-Id: I7f76ebde963cf57879273d9848ff195877759524 Reviewed-on: https://gerrit.libreoffice.org/5280 Reviewed-by: Norbert Thiebaud Tested-by: Norbert Thiebaud diff --git a/vcl/aqua/source/a11y/aqua11yfocuslistener.cxx b/vcl/aqua/source/a11y/aqua11yfocuslistener.cxx index ace2616..5a0c339 100644 --- a/vcl/aqua/source/a11y/aqua11yfocuslistener.cxx +++ b/vcl/aqua/source/a11y/aqua11yfocuslistener.cxx @@ -83,7 +83,7 @@ AquaA11yFocusListener::focusedObjectChanged(const Reference< XAccessible >& xAcc if( xContext.is() ) { m_focusedObject = [ AquaA11yFactory wrapperForAccessibleContext: xContext ]; -NSAccessibilityPostNotification(NSApp, NSAccessibilityFocusedUIElementChangedNotification); +NSAccessibilityPostNotification(m_focusedObject, NSAccessibilityFocusedUIElementChangedNotification); } } } catch(const RuntimeException &) { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-4-0' - vcl/aqua
vcl/aqua/source/a11y/aqua11yfactory.mm | 27 +++ 1 file changed, 27 insertions(+) New commits: commit 86499a56c2a746bcbde8a7f6b278b0b5ef84ce86 Author: Boris DuÅ¡ek Date: Wed Jul 31 00:08:46 2013 +0200 fdo#67410: VoiceOver does not provide typing or cursor movement echo in text Change-Id: Ief39aecd247b612c52cd970b6c5911f34d8cb69e Reviewed-on: https://gerrit.libreoffice.org/5208 Reviewed-by: LuboÅ¡ LuÅák Tested-by: LuboÅ¡ LuÅák Reviewed-on: https://gerrit.libreoffice.org/5279 Reviewed-by: Norbert Thiebaud Tested-by: Norbert Thiebaud diff --git a/vcl/aqua/source/a11y/aqua11yfactory.mm b/vcl/aqua/source/a11y/aqua11yfactory.mm index 222fb6c..64f1783 100644 --- a/vcl/aqua/source/a11y/aqua11yfactory.mm +++ b/vcl/aqua/source/a11y/aqua11yfactory.mm @@ -155,6 +155,30 @@ static bool enabled = false; #endif { [ dAllWrapper setObject: aWrapper forKey: nKey ]; +/* fdo#67410: Accessibility notifications are not delivered on NSView subclasses that do not + "reasonably" participate in NSView hierarchy (perhaps the only important point is + that the view is a transitive subview of the NSWindow's content view, but I + did not try to verify that). + + So let the superview-subviews relationship mirror the AXParent-AXChildren relationship. +*/ +id parent = [aWrapper accessibilityAttributeValue:NSAccessibilityParentAttribute]; +if (parent) { +if ([parent isKindOfClass:[NSView class]]) { +// SAL_DEBUG("Wrapper INIT: " << [[aWrapper description] UTF8String] << " ==> " << [[parent description] UTF8String]); +NSView *parentView = (NSView *)parent; +[parentView addSubview:aWrapper positioned:NSWindowBelow relativeTo:nil]; +} else if ([parent isKindOfClass:NSClassFromString(@"SalFrameWindow")]) { +NSWindow *window = (NSWindow *)parent; +NSView *salView = [window contentView]; +// SAL_DEBUG("Wrapper INIT SAL: " << [[aWrapper description] UTF8String] << " ==> " << [[salView description] UTF8String]); +[salView addSubview:aWrapper positioned:NSWindowBelow relativeTo:nil]; +} else { +// SAL_DEBUG("Wrapper INIT: !! " << [[aWrapper description] UTF8String] << " !==>! " << [[parent description] UTF8String] << "!!"); +} +} else { +// SAL_DEBUG("Wrapper INIT: " << [[aWrapper description] UTF8String] << " ==> NO PARENT"); +} } } return aWrapper; @@ -169,6 +193,9 @@ static bool enabled = false; // TODO: when RADIO_BUTTON search for associated RadioGroup-wrapper and delete that as well AquaA11yWrapper * theWrapper = [ AquaA11yFactory wrapperForAccessibleContext: rxAccessibleContext createIfNotExists: NO ]; if ( theWrapper != nil ) { +if (![theWrapper isKindOfClass:NSClassFromString(@"SalFrameView")]) { +[theWrapper removeFromSuperview]; +} [ [ AquaA11yFactory allWrapper ] removeObjectForKey: [ AquaA11yFactory keyForAccessibleContext: rxAccessibleContext ] ]; [ theWrapper release ]; } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/aqua
vcl/aqua/source/a11y/aqua11ytextwrapper.mm |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 9c8831244062202e9066b97be7082e72e1194866 Author: Boris Dušek Date: Fri Aug 9 08:41:42 2013 +0200 fdo#67680: Impossible to search for text attributes with VoiceOver Change-Id: I02ae12233aa37830106eeffd16876670413f4627 Reviewed-on: https://gerrit.libreoffice.org/5334 Reviewed-by: Norbert Thiebaud Tested-by: Norbert Thiebaud diff --git a/vcl/aqua/source/a11y/aqua11ytextwrapper.mm b/vcl/aqua/source/a11y/aqua11ytextwrapper.mm index 4d4b75c..ab02eaf 100644 --- a/vcl/aqua/source/a11y/aqua11ytextwrapper.mm +++ b/vcl/aqua/source/a11y/aqua11ytextwrapper.mm @@ -108,13 +108,13 @@ using namespace ::rtl; +(id)sharedTextUIElementsAttributeForElement:(AquaA11yWrapper *)wrapper { (void)wrapper; -return [ [ NSArray alloc ] init ]; // unsupported +return [NSArray arrayWithObject:wrapper]; } +(id)sharedCharacterRangeAttributeForElement:(AquaA11yWrapper *)wrapper { (void)wrapper; -return [ NSValue valueWithRange: NSMakeRange ( 0, 0 ) ]; // unsupported +return [ NSValue valueWithRange: NSMakeRange ( 0, [wrapper accessibleText]->getCharacterCount() ) ]; } +(void)addAttributeNamesTo:(NSMutableArray *)attributeNames { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits