зеркало из https://github.com/mozilla/gecko-dev.git
Bug 569653 - Investigate and fix unsafe selection changes. r=surkov
This commit is contained in:
Родитель
1fbfa52b25
Коммит
fd674e7edb
|
@ -40,6 +40,7 @@
|
||||||
|
|
||||||
#include "nsAccessibilityService.h"
|
#include "nsAccessibilityService.h"
|
||||||
#include "nsAccUtils.h"
|
#include "nsAccUtils.h"
|
||||||
|
#include "nsDocAccessible.h"
|
||||||
#include "nsEventShell.h"
|
#include "nsEventShell.h"
|
||||||
#include "nsIAccessibleEvent.h"
|
#include "nsIAccessibleEvent.h"
|
||||||
#include "nsTextEquivUtils.h"
|
#include "nsTextEquivUtils.h"
|
||||||
|
@ -780,8 +781,14 @@ nsHTMLSelectOptionAccessible::SelectionChangedIfOption(nsIContent *aPossibleOpti
|
||||||
if (!option)
|
if (!option)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
nsEventShell::FireEvent(nsIAccessibleEvent::EVENT_SELECTION_WITHIN,
|
|
||||||
multiSelect);
|
nsRefPtr<nsAccEvent> selWithinEvent =
|
||||||
|
new nsAccEvent(nsIAccessibleEvent::EVENT_SELECTION_WITHIN, multiSelect);
|
||||||
|
|
||||||
|
if (!selWithinEvent)
|
||||||
|
return;
|
||||||
|
|
||||||
|
option->GetDocAccessible()->FireDelayedAccessibleEvent(selWithinEvent);
|
||||||
|
|
||||||
PRUint32 state = nsAccUtils::State(option);
|
PRUint32 state = nsAccUtils::State(option);
|
||||||
PRUint32 eventType;
|
PRUint32 eventType;
|
||||||
|
@ -792,7 +799,11 @@ nsHTMLSelectOptionAccessible::SelectionChangedIfOption(nsIContent *aPossibleOpti
|
||||||
eventType = nsIAccessibleEvent::EVENT_SELECTION_REMOVE;
|
eventType = nsIAccessibleEvent::EVENT_SELECTION_REMOVE;
|
||||||
}
|
}
|
||||||
|
|
||||||
nsEventShell::FireEvent(eventType, option);
|
nsRefPtr<nsAccEvent> setAddRemoveEvent =
|
||||||
|
new nsAccEvent(eventType, option);
|
||||||
|
|
||||||
|
if (setAddRemoveEvent)
|
||||||
|
option->GetDocAccessible()->FireDelayedAccessibleEvent(setAddRemoveEvent);
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
Загрузка…
Ссылка в новой задаче