You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by al...@apache.org on 2013/11/27 18:25:54 UTC
svn commit: r1546124 [33/33] - in /openoffice/branches/alg/aw080: ./ main/
main/accessibility/inc/accessibility/extended/
main/accessibility/inc/accessibility/helper/
main/accessibility/inc/accessibility/standard/
main/accessibility/source/extended/ ma...
Modified: openoffice/branches/alg/aw080/main/vcl/source/control/lstbox.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/alg/aw080/main/vcl/source/control/lstbox.cxx?rev=1546124&r1=1546123&r2=1546124&view=diff
==============================================================================
--- openoffice/branches/alg/aw080/main/vcl/source/control/lstbox.cxx (original)
+++ openoffice/branches/alg/aw080/main/vcl/source/control/lstbox.cxx Wed Nov 27 17:25:40 2013
@@ -170,6 +170,10 @@ void ListBox::ImplInit( Window* pParent,
mpImplLB->SetCancelHdl( LINK( this, ListBox, ImplCancelHdl ) );
mpImplLB->SetDoubleClickHdl( LINK( this, ListBox, ImplDoubleClickHdl ) );
mpImplLB->SetUserDrawHdl( LINK( this, ListBox, ImplUserDrawHdl ) );
+//IAccessibility2 Implementation 2009-----
+ mpImplLB->SetFocusHdl( LINK( this, ListBox, ImplFocusHdl ) );
+ mpImplLB->SetListItemSelectHdl( LINK( this, ListBox, ImplListItemSelectHdl ) );
+//-----IAccessibility2 Implementation 2009
mpImplLB->SetPosPixel( Point() );
mpImplLB->SetEdgeBlending(GetEdgeBlending());
mpImplLB->Show();
@@ -249,6 +253,18 @@ IMPL_LINK( ListBox, ImplSelectHdl, void*
return 1;
}
+//IAccessibility2 Implementation 2009-----
+IMPL_LINK( ListBox, ImplFocusHdl, void *, nPos )
+{
+ ImplCallEventListeners( VCLEVENT_LISTBOX_FOCUS , nPos);
+ return 1;
+}
+IMPL_LINK( ListBox, ImplListItemSelectHdl, void*, EMPTYARG )
+{
+ ImplCallEventListeners( VCLEVENT_LISTBOX_SELECT );
+ return 1;
+}
+//-----IAccessibility2 Implementation 2009
// -----------------------------------------------------------------------
@@ -1060,6 +1076,8 @@ void ListBox::SetNoSelection()
mpImplWin->SetImage( aImage );
mpImplWin->Invalidate();
}
+ // IAccessible2 implementation 2009
+ NotifyVCLEvent( VCLEVENT_LISTBOX_STATEUPDATE);
}
// -----------------------------------------------------------------------
@@ -1204,7 +1222,21 @@ void ListBox::SelectEntry( const XubStri
void ListBox::SelectEntryPos( sal_uInt16 nPos, sal_Bool bSelect )
{
if ( nPos < mpImplLB->GetEntryList()->GetEntryCount() )
+ {
+ // IAccessible2 implementation 2009
+ sal_uInt16 oldSelectCount = GetSelectEntryCount(), newSelectCount = 0, nCurrentPos = mpImplLB->GetCurrentPos();
mpImplLB->SelectEntry( nPos + mpImplLB->GetEntryList()->GetMRUCount(), bSelect );
+ newSelectCount = GetSelectEntryCount();
+ if (oldSelectCount == 0 && newSelectCount > 0)
+ NotifyVCLEvent( VCLEVENT_LISTBOX_STATEUPDATE);
+ //Only when bSelect == true, send both Selection & Focus events
+ if (nCurrentPos != nPos && bSelect)
+ {
+ ImplCallEventListeners( VCLEVENT_LISTBOX_SELECT, reinterpret_cast<void*>(nPos));
+ if (HasFocus())
+ ImplCallEventListeners( VCLEVENT_LISTBOX_FOCUS, reinterpret_cast<void*>(nPos));
+ }
+ }
}
// -----------------------------------------------------------------------
@@ -1605,6 +1637,12 @@ sal_uInt16 ListBox::GetMaxMRUCount() con
{
return mpImplLB->GetMaxMRUCount();
}
+//IAccessibility2 Implementation 2009-----
+sal_uInt16 ListBox::GetMRUCount() const
+{
+ return mpImplLB->GetEntryList()->GetMRUCount();
+}
+//-----IAccessibility2 Implementation 2009
// -----------------------------------------------------------------------
Modified: openoffice/branches/alg/aw080/main/vcl/source/control/morebtn.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/alg/aw080/main/vcl/source/control/morebtn.cxx?rev=1546124&r1=1546123&r2=1546124&view=diff
==============================================================================
--- openoffice/branches/alg/aw080/main/vcl/source/control/morebtn.cxx (original)
+++ openoffice/branches/alg/aw080/main/vcl/source/control/morebtn.cxx Wed Nov 27 17:25:40 2013
@@ -155,7 +155,7 @@ void MoreButton::Click()
// Hier den Click-Handler rufen, damit vorher die Controls initialisiert
// werden koennen
- PushButton::Click();
+ //PushButton::Click(); // IAccessibility2 Implementation 2009
// Je nach Status die Fenster updaten
if ( mbState )
@@ -197,6 +197,9 @@ void MoreButton::Click()
pWindow = mpMBData->mpItemList->Next();
}
}
+//IAccessibility2 Implementation 2009-----
+ PushButton::Click();
+//-----IAccessibility2 Implementation 2009
}
// -----------------------------------------------------------------------
Modified: openoffice/branches/alg/aw080/main/vcl/source/control/tabctrl.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/alg/aw080/main/vcl/source/control/tabctrl.cxx?rev=1546124&r1=1546123&r2=1546124&view=diff
==============================================================================
--- openoffice/branches/alg/aw080/main/vcl/source/control/tabctrl.cxx (original)
+++ openoffice/branches/alg/aw080/main/vcl/source/control/tabctrl.cxx Wed Nov 27 17:25:40 2013
@@ -619,6 +619,9 @@ void TabControl::ImplChangeTabPage( sal_
}
pPage->ActivatePage();
+//IAccessibility2 Implementation 2009-----
+ pPage->Show();
+//-----IAccessibility2 Implementation 2009
if ( pOldPage && pOldPage->HasChildPathFocus() )
{
@@ -630,7 +633,9 @@ void TabControl::ImplChangeTabPage( sal_
GrabFocus();
}
- pPage->Show();
+//IAccessibility2 Implementation 2009-----
+ // pPage->Show();
+//-----IAccessibility2 Implementation 2009
}
if ( pOldPage )
Modified: openoffice/branches/alg/aw080/main/vcl/source/window/btndlg.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/alg/aw080/main/vcl/source/window/btndlg.cxx?rev=1546124&r1=1546123&r2=1546124&view=diff
==============================================================================
--- openoffice/branches/alg/aw080/main/vcl/source/window/btndlg.cxx (original)
+++ openoffice/branches/alg/aw080/main/vcl/source/window/btndlg.cxx Wed Nov 27 17:25:40 2013
@@ -289,6 +289,15 @@ void ButtonDialog::StateChanged( StateCh
if ( nType == STATE_CHANGE_INITSHOW )
{
ImplPosControls();
+//IAccessibility2 Implementation 2009-----
+ ImplBtnDlgItem* pItem = mpItemList->First();
+ while ( pItem )
+ {
+ if ( pItem->mpPushButton && pItem->mbOwnButton )
+ pItem->mpPushButton->SetZOrder(0, WINDOW_ZORDER_LAST);
+ pItem = mpItemList->Next();
+ }
+//-----IAccessibility2 Implementation 2009
// Focus evt. auf den entsprechenden Button setzen
if ( mnFocusButtonId != BUTTONDIALOG_BUTTON_NOTFOUND )
Modified: openoffice/branches/alg/aw080/main/vcl/source/window/dlgctrl.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/alg/aw080/main/vcl/source/window/dlgctrl.cxx?rev=1546124&r1=1546123&r2=1546124&view=diff
==============================================================================
--- openoffice/branches/alg/aw080/main/vcl/source/window/dlgctrl.cxx (original)
+++ openoffice/branches/alg/aw080/main/vcl/source/window/dlgctrl.cxx Wed Nov 27 17:25:40 2013
@@ -835,7 +835,18 @@ sal_Bool Window::ImplDlgCtrl( const KeyE
if ( nStyle & WB_GROUP )
break;
- if ( pWindow->IsVisible() && pWindow->IsEnabled() && pWindow->IsInputEnabled() )
+//IAccessibility2 Implementation 2009-----
+ //Solution:Pure window shouldn't get window after controls such as buttons.
+ //if ( pWindow->IsVisible() && pWindow->IsEnabled() && pWindow->IsInputEnabled() )
+ if ( pWindow->IsVisible() && pWindow->IsEnabled() &&
+ pWindow->IsInputEnabled() && (
+ pWindow->GetType() != WINDOW_WINDOW &&
+ pWindow->GetType() != WINDOW_SYSWINDOW &&
+ pWindow->GetType() != WINDOW_WORKWINDOW &&
+ pWindow->GetType() != WINDOW_CONTROL
+ )
+ )
+//-----IAccessibility2 Implementation 2009
{
pWindow->ImplControlFocus( GETFOCUS_CURSOR | GETFOCUS_BACKWARD );
return sal_True;
Modified: openoffice/branches/alg/aw080/main/vcl/source/window/menu.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/alg/aw080/main/vcl/source/window/menu.cxx?rev=1546124&r1=1546123&r2=1546124&view=diff
==============================================================================
--- openoffice/branches/alg/aw080/main/vcl/source/window/menu.cxx (original)
+++ openoffice/branches/alg/aw080/main/vcl/source/window/menu.cxx Wed Nov 27 17:25:40 2013
@@ -1573,6 +1573,36 @@ sal_uInt16 Menu::GetCurItemId() const
{
return nSelectedId;
}
+//IAccessibility2 Implementation 2009
+void Menu::SetHightlightItem( sal_uInt16 nHighlightedItem )
+{
+ this->nHighlightedItem = nHighlightedItem;
+}
+sal_uInt16 Menu::GetHighlightItem() const
+{
+ return nHighlightedItem;
+}
+
+
+XubString Menu::GetItemAccKeyStrFromPos(sal_uInt16 nPos) const
+{
+ MenuItemData* pData = pItemList->GetDataFromPos( nPos );
+ if (pData)
+ {
+ return pData->aAccelKey.GetName();
+ }
+ return XubString();
+}
+
+sal_Bool Menu::IsTemporaryItemFromPos(sal_uInt16 nPos ) const
+{
+ MenuItemData* pData = pItemList->GetDataFromPos( nPos );
+ if (pData)
+ {
+ return pData->bIsTemporary;
+ }
+ return sal_False;
+}
void Menu::SetItemBits( sal_uInt16 nItemId, MenuItemBits nBits )
{
@@ -3728,7 +3758,12 @@ sal_uInt16 PopupMenu::ImplExecute( Windo
String aTmpEntryText( ResId( SV_RESID_STRING_NOSELECTIONPOSSIBLE, *pResMgr ) );
MenuItemData* pData = pItemList->Insert(
0xFFFF, MENUITEM_STRING, 0, aTmpEntryText, Image(), NULL, 0xFFFF );
+//IAccessibility2 Implementation 2009-----
+ sal_uInt16 nmPos;
+ pData = pItemList->GetData( pData->nId, nmPos );
pData->bIsTemporary = sal_True;
+ ImplCallEventListeners(VCLEVENT_MENU_SUBMENUCHANGED,nmPos);
+//-----IAccessibility2 Implementation 2009
}
}
else if ( Application::GetSettings().GetStyleSettings().GetAutoMnemonic() && !( nMenuFlags & MENU_FLAG_NOAUTOMNEMONICS ) )
@@ -4005,7 +4040,9 @@ void MenuFloatingWindow::doShutdown()
// otherwise the entry will not be read when the menu is opened again
if( nHighlightedItem != ITEMPOS_INVALID )
pMenu->ImplCallEventListeners( VCLEVENT_MENU_DEHIGHLIGHT, nHighlightedItem );
-
+//IAccessibility2 Implementation 2009-----
+ pMenu->SetHightlightItem(ITEMPOS_INVALID);
+//-----IAccessibility2 Implementation 2009
if( !bKeyInput && pMenu && pMenu->pStartedFrom && !pMenu->pStartedFrom->bIsMenuBar )
{
// #102461# remove highlight in parent
@@ -4676,6 +4713,9 @@ void MenuFloatingWindow::ChangeHighlight
}
}
HighlightItem( nHighlightedItem, sal_True );
+//IAccessibility2 Implementation 2009-----
+ pMenu->SetHightlightItem(nHighlightedItem);
+//-----IAccessibility2 Implementation 2009
pMenu->ImplCallHighlight( nHighlightedItem );
}
else
@@ -4977,6 +5017,10 @@ void MenuFloatingWindow::KeyInput( const
MenuFloatingWindow* pFloat = ((PopupMenu*)pMenu->pStartedFrom)->ImplGetFloatingWindow();
pFloat->GrabFocus();
pFloat->KillActivePopup();
+//IAccessibility2 Implementation 2009-----
+ sal_uInt16 highlightItem = pFloat->GetHighlightedItem();
+ pFloat->ChangeHighlightItem(highlightItem, sal_False);
+//-----IAccessibility2 Implementation 2009
}
}
}
@@ -5566,6 +5610,9 @@ void MenuBarWindow::ChangeHighlightItem(
nHighlightedItem = (sal_uInt16)n;
DBG_ASSERT( ( nHighlightedItem == ITEMPOS_INVALID ) || pMenu->ImplIsVisible( nHighlightedItem ), "ChangeHighlightItem: Not visible!" );
HighlightItem( nHighlightedItem, sal_True );
+//IAccessibility2 Implementation 2009-----
+ pMenu->SetHightlightItem(nHighlightedItem);
+//-----IAccessibility2 Implementation 2009
pMenu->ImplCallHighlight( nHighlightedItem );
if( mbAutoPopup )
Modified: openoffice/branches/alg/aw080/main/vcl/source/window/toolbox.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/alg/aw080/main/vcl/source/window/toolbox.cxx?rev=1546124&r1=1546123&r2=1546124&view=diff
==============================================================================
--- openoffice/branches/alg/aw080/main/vcl/source/window/toolbox.cxx (original)
+++ openoffice/branches/alg/aw080/main/vcl/source/window/toolbox.cxx Wed Nov 27 17:25:40 2013
@@ -6065,6 +6065,11 @@ void ToolBox::ImplChangeHighlight( ImplT
mnCurPos = aPos;
ImplShowFocus();
+//IAccessibility2 Implementation 2009-----
+ if( pItem->mpWindow )
+ pItem->mpWindow->GrabFocus();
+ if( pItem != pOldItem )
+//-----IAccessibility2 Implementation 2009
ImplCallEventListeners( VCLEVENT_TOOLBOX_HIGHLIGHT );
}
}
Modified: openoffice/branches/alg/aw080/main/vcl/source/window/toolbox2.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/alg/aw080/main/vcl/source/window/toolbox2.cxx?rev=1546124&r1=1546123&r2=1546124&view=diff
==============================================================================
--- openoffice/branches/alg/aw080/main/vcl/source/window/toolbox2.cxx (original)
+++ openoffice/branches/alg/aw080/main/vcl/source/window/toolbox2.cxx Wed Nov 27 17:25:40 2013
@@ -1737,7 +1737,11 @@ void ToolBox::SetItemState( sal_uInt16 n
ImplCallEventListeners( VCLEVENT_TOOLBOX_BUTTONSTATECHANGED, reinterpret_cast< void* >( nPos ) );
// Notify
- ImplCallEventListeners( VCLEVENT_TOOLBOX_CLICK, reinterpret_cast< void* >( nPos ) );
+//IAccessibility2 Implementation 2009-----
+ //Solution:Call accessivle listener to notify state_changed event
+ ImplCallEventListeners( VCLEVENT_TOOLBOX_ITEMUPDATED,reinterpret_cast< void* >(nPos) );
+ //ImplCallEventListeners( VCLEVENT_TOOLBOX_CLICK, reinterpret_cast< void* >( nPos ) );
+//-----IAccessibility2 Implementation 2009
}
}
}
Modified: openoffice/branches/alg/aw080/main/vcl/source/window/window.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/alg/aw080/main/vcl/source/window/window.cxx?rev=1546124&r1=1546123&r2=1546124&view=diff
==============================================================================
--- openoffice/branches/alg/aw080/main/vcl/source/window/window.cxx (original)
+++ openoffice/branches/alg/aw080/main/vcl/source/window/window.cxx Wed Nov 27 17:25:40 2013
@@ -5397,6 +5397,15 @@ long Window::Notify( NotifyEvent& rNEvt
return nRet;
}
+// IAccessible2 implementation, 2009
+void Window::NotifyVCLEvent( sal_uLong nEvent ,void* pData /*= NULL*/)
+{
+ ImplCallEventListeners( nEvent ,pData);
+}
+::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > > Window::GetAccFlowToSequence()
+{
+ return ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > >();
+}
// -----------------------------------------------------------------------
void Window::ImplCallEventListeners( sal_uLong nEvent, void* pData )
@@ -9097,10 +9106,11 @@ sal_uInt16 Window::GetAccessibleRole() c
case WINDOW_CANCELBUTTON:
case WINDOW_HELPBUTTON:
case WINDOW_IMAGEBUTTON:
- case WINDOW_MENUBUTTON:
+ //case WINDOW_MENUBUTTON:
case WINDOW_MOREBUTTON:
case WINDOW_SPINBUTTON:
case WINDOW_BUTTON: nRole = accessibility::AccessibleRole::PUSH_BUTTON; break;
+ case WINDOW_MENUBUTTON: nRole = accessibility::AccessibleRole::BUTTON_MENU; break;
case WINDOW_PATHDIALOG: nRole = accessibility::AccessibleRole::DIRECTORY_PANE; break;
case WINDOW_FILEDIALOG: nRole = accessibility::AccessibleRole::FILE_CHOOSER; break;
@@ -9115,10 +9125,15 @@ sal_uInt16 Window::GetAccessibleRole() c
case WINDOW_MULTILINEEDIT: nRole = accessibility::AccessibleRole::SCROLL_PANE; break;
case WINDOW_PATTERNFIELD:
+//IAccessibility2 Impplementaton 2009-----
+ // Need to set the role of those window control to spinbox
+ /*
case WINDOW_NUMERICFIELD:
case WINDOW_METRICFIELD:
case WINDOW_CURRENCYFIELD:
case WINDOW_LONGCURRENCYFIELD:
+ */
+//-----IAccessibility2 Impplementaton 2009
case WINDOW_EDIT: nRole = ( GetStyle() & WB_PASSWORD ) ? (accessibility::AccessibleRole::PASSWORD_TEXT) : (accessibility::AccessibleRole::TEXT); break;
case WINDOW_PATTERNBOX:
@@ -9135,7 +9150,17 @@ sal_uInt16 Window::GetAccessibleRole() c
case WINDOW_FIXEDTEXT: nRole = accessibility::AccessibleRole::LABEL; break;
case WINDOW_FIXEDBORDER:
- case WINDOW_FIXEDLINE: nRole = accessibility::AccessibleRole::SEPARATOR; break;
+ nRole = accessibility::AccessibleRole::SEPARATOR; break;
+ //IAccessibility2 Impplementaton 2009-----
+ case WINDOW_FIXEDLINE:
+ { if( GetText().Len() > 0 )
+ nRole = accessibility::AccessibleRole::LABEL;
+ else
+ nRole = accessibility::AccessibleRole::SEPARATOR;
+ break;
+ }
+ //case WINDOW_FIXEDLINE: nRole = accessibility::AccessibleRole::SEPARATOR; break;
+ //-----IAccessibility2 Impplementaton 2009
case WINDOW_FIXEDBITMAP:
case WINDOW_FIXEDIMAGE: nRole = accessibility::AccessibleRole::ICON; break;
case WINDOW_GROUPBOX: nRole = accessibility::AccessibleRole::GROUP_BOX; break;
@@ -9150,6 +9175,13 @@ sal_uInt16 Window::GetAccessibleRole() c
case WINDOW_DATEFIELD:
case WINDOW_TIMEFIELD: nRole = accessibility::AccessibleRole::DATE_EDITOR; break;
+//IAccessibility2 Impplementaton 2009-----
+ // Need to set the role of those window control to spinbox
+ case WINDOW_NUMERICFIELD:
+ case WINDOW_METRICFIELD:
+ case WINDOW_CURRENCYFIELD:
+ case WINDOW_LONGCURRENCYFIELD:
+//-----IAccessibility2 Impplementaton 2009
case WINDOW_SPINFIELD: nRole = accessibility::AccessibleRole::SPIN_BOX; break;
case WINDOW_TOOLBOX: nRole = accessibility::AccessibleRole::TOOL_BAR; break;
@@ -9201,8 +9233,12 @@ void Window::SetAccessibleName( const St
if ( !mpWindowImpl->mpAccessibleInfos )
mpWindowImpl->mpAccessibleInfos = new ImplAccessibleInfos;
+//IAccessibility2 Implementation 2009-----
+ String oldName = GetAccessibleName();
delete mpWindowImpl->mpAccessibleInfos->pAccessibleName;
mpWindowImpl->mpAccessibleInfos->pAccessibleName = new String( rName );
+ ImplCallEventListeners( VCLEVENT_WINDOW_FRAMETITLECHANGED, &oldName );
+//-----IAccessibility2 Implementation 2009
}
String Window::GetAccessibleName() const
@@ -9247,6 +9283,12 @@ String Window::GetAccessibleName() const
if ( pLabel && pLabel != this )
aAccessibleName = pLabel->GetText();
}
+ //IAccessibility2 Implementation 2009-----
+ if ( !aAccessibleName.Len() )
+ {
+ aAccessibleName = GetQuickHelpText();
+ }
+ //-----IAccessibility2 Implementation 2009
break;
case WINDOW_IMAGEBUTTON:
@@ -9260,6 +9302,16 @@ String Window::GetAccessibleName() const
}
break;
+//IAccessibility2 Implementation 2009-----
+ case WINDOW_TOOLBOX:
+ aAccessibleName = GetText();
+ if( aAccessibleName.Len() == 0 )
+ aAccessibleName =XubString( RTL_CONSTASCII_USTRINGPARAM( "Tool Bar" ) );
+ break;
+ case WINDOW_MOREBUTTON:
+ aAccessibleName = mpWindowImpl->maText;
+ break;
+//-----IAccessibility2 Implementation 2009
default:
aAccessibleName = GetText();
break;
Modified: openoffice/branches/alg/aw080/main/vcl/win/source/window/salframe.cxx
URL: http://svn.apache.org/viewvc/openoffice/branches/alg/aw080/main/vcl/win/source/window/salframe.cxx?rev=1546124&r1=1546123&r2=1546124&view=diff
==============================================================================
--- openoffice/branches/alg/aw080/main/vcl/win/source/window/salframe.cxx (original)
+++ openoffice/branches/alg/aw080/main/vcl/win/source/window/salframe.cxx Wed Nov 27 17:25:40 2013
@@ -92,6 +92,16 @@
using ::std::max;
#endif
+//IAccessibility2 Implementation 2009-----
+#ifdef WNT
+#include <oleacc.h>
+#include <com/sun/star/accessibility/XMSAAService.hpp>
+#ifndef _WIN32_WCE
+#define WM_GETOBJECT 0x003D
+#endif
+#include <win/g_msaasvc.h>
+#endif
+//-----IAccessibility2 Implementation 2009
#include <com/sun/star/uno/Exception.hdl>
#include <time.h>
@@ -153,7 +163,12 @@ sal_Bool WinSalFrame::mbInReparent = FAL
#define Uni_SupplementaryPlanesStart 0x10000
// =======================================================================
-
+//IAccessibility2 Implementation 2009-----
+#ifdef WNT
+using namespace ::com::sun::star::accessibility;
+XMSAAService* g_acc_manager1 = NULL;
+#endif
+//-----IAccessibility2 Implementation 2009
static void UpdateFrameGeometry( HWND hWnd, WinSalFrame* pFrame );
static void SetMaximizedFrameGeometry( HWND hWnd, WinSalFrame* pFrame, RECT* pParentRect = NULL );
@@ -6178,6 +6193,62 @@ LRESULT CALLBACK SalFrameWndProc( HWND h
case WM_IME_NOTIFY:
ImplHandleIMENotify( hWnd, wParam );
break;
+
+//IAccessibility2 implementation 2009-----
+#ifdef WNT
+ case WM_GETOBJECT:
+ {
+ if (!Application::IsEnableAccessInterface())
+ {
+ break;
+ }
+ else
+ {
+ // IA2 should be enabled automatically
+ AllSettings aSettings = Application::GetSettings();
+ MiscSettings aMisc = aSettings.GetMiscSettings();
+ aMisc.SetEnableATToolSupport( sal_True );
+ aSettings.SetMiscSettings( aMisc );
+ Application::SetSettings( aSettings );
+
+ if (Application::GetSettings().GetMiscSettings().GetEnableATToolSupport())
+ {
+ // Make sure to launch Accessibiliity only the following criterias are satisfied to avoid RFT interrupts regular acc processing
+ if (g_acc_manager1 == NULL)
+ {
+ sal_Bool bCancelled;
+ InitAccessBridge(sal_False,bCancelled);
+ if( bCancelled )
+ break;
+ }
+ if (g_acc_manager1 != NULL)
+ {
+ // MT: mhOnSetTitleWnd not set to reasonable value anywhere...
+ /*
+ sal_Bool bSkipSetTitleClient = sal_False;
+ SalFrame* pFrame = GetWindowPtr( hWnd );
+ if(pFrame)
+ {
+ bSkipSetTitleClient = (lParam == OBJID_CLIENT && hWnd == ((WinSalFrame*)pFrame)->mhOnSetTitleWnd);
+ }
+ */
+ if ( (lParam == OBJID_CLIENT ) /* && !bSkipSetTitleClient */ )
+ {
+ long RetResult = g_acc_manager1->getAccObjectPtr((long)hWnd, lParam, wParam);
+ if(RetResult != 0)
+ {
+ rDef = FALSE;
+ return (HRESULT)RetResult;
+ }
+ }
+ }
+ }
+ }
+ break;
+ }
+#endif
+//-----IAccessibility2 implementation 2009
+
case WM_APPCOMMAND:
if( ImplHandleAppCommand( hWnd, lParam ) )
{
@@ -6398,3 +6469,25 @@ sal_Bool ImplWriteLastError( DWORD lastE
// -----------------------------------------------------------------------
+//IAccessibility2 implementation 2009-----
+#ifdef WNT
+bool IsWNTInitAccessBridge()
+{
+ return NULL != g_acc_manager1;
+}
+#endif
+#ifdef WNT
+bool WNTEnableAccessInterface(bool bEnable)
+{
+ ImplSVData* pSVData = ImplGetSVData();
+
+ BOOL bPreVal = pSVData->maAppData.m_bEnableAccessInterface;
+ long nEnable= bEnable;
+ ::InterlockedExchange(
+ (LPLONG)&(pSVData->maAppData.m_bEnableAccessInterface),
+ nEnable);
+
+ return bPreVal;
+}
+#endif
+//-----IAccessibility2 implementation 2009
Modified: openoffice/branches/alg/aw080/main/xmlhelp/util/main_transform.xsl
URL: http://svn.apache.org/viewvc/openoffice/branches/alg/aw080/main/xmlhelp/util/main_transform.xsl?rev=1546124&r1=1546123&r2=1546124&view=diff
==============================================================================
--- openoffice/branches/alg/aw080/main/xmlhelp/util/main_transform.xsl (original)
+++ openoffice/branches/alg/aw080/main/xmlhelp/util/main_transform.xsl Wed Nov 27 17:25:40 2013
@@ -613,7 +613,7 @@
<xsl:variable name="archive"><xsl:value-of select="concat(substring-before(substring-after(@href,'text/'),'/'),'/')"/></xsl:variable>
<xsl:variable name="dbpostfix"><xsl:call-template name="createDBpostfix"><xsl:with-param name="archive" select="$archive"/></xsl:call-template></xsl:variable>
<xsl:choose>
- <xsl:when test="starts-with(@href,'http://')"> <!-- web links -->
+ <xsl:when test="starts-with(@href,'http://') or starts-with(@href,'https://')"> <!-- web links -->
<a href="{@href}"><xsl:apply-templates /></a>
</xsl:when>
<xsl:when test="contains(@href,'#')">
Modified: openoffice/branches/alg/aw080/main/xmlsecurity/source/xmlsec/nss/makefile.mk
URL: http://svn.apache.org/viewvc/openoffice/branches/alg/aw080/main/xmlsecurity/source/xmlsec/nss/makefile.mk?rev=1546124&r1=1546123&r2=1546124&view=diff
==============================================================================
--- openoffice/branches/alg/aw080/main/xmlsecurity/source/xmlsec/nss/makefile.mk (original)
+++ openoffice/branches/alg/aw080/main/xmlsecurity/source/xmlsec/nss/makefile.mk Wed Nov 27 17:25:40 2013
@@ -42,14 +42,14 @@ CFLAGS+=-DSYSTEM_LIBXML $(LIBXML_CFLAGS)
@echo "No nss -> no libxmlsec -> no xmlsecurity/nss"
.ENDIF
-.IF "$(SYSTEM_MOZILLA)" != "YES"
+.IF "$(SYSTEM_NSS)" != "YES"
MOZ_INC = $(SOLARVERSION)$/$(INPATH)$/inc$(UPDMINOREXT)$/mozilla
NSS_INC = $(MOZ_INC)$/nss
NSPR_INC = $(MOZ_INC)$/nspr
.ELSE
-# MOZ_INC already defined from environment
-NSS_INC = $(MOZ_NSS_CFLAGS)
-NSPR_INC = $(MOZ_INC)$/nspr
+# TODO: better use pkgconfig to find the proper system include path
+NSS_INC = /usr/include/nss3
+NSPR_INC = /usr/include/nspr4
.ENDIF
.IF "$(GUI)" == "WNT"
@@ -105,9 +105,8 @@ CDEFS += -DXMLSEC_NO_XSLT
# --- Files --------------------------------------------------------
SOLARINC += \
- -I$(MOZ_INC) \
--I$(NSPR_INC) \
--I$(PRJ)$/source$/xmlsec
+ -I$(NSPR_INC) \
+ -I$(PRJ)$/source$/xmlsec
SOLARINC += -I$(NSS_INC)
Propchange: openoffice/branches/alg/aw080/test/
------------------------------------------------------------------------------
Merged /openoffice/trunk/test:r1539365-1545632
Merged /openoffice/branches/ia2/test:r1417739-1541842
Propchange: openoffice/branches/alg/aw080/test/testcommon/source/org/openoffice/test/vcl/
------------------------------------------------------------------------------
Merged /openoffice/trunk/test/testcommon/source/org/openoffice/test/vcl:r1539365-1545632
Merged /openoffice/branches/ia2/test/testcommon/source/org/openoffice/test/vcl:r1417739-1541842