• R/O
  • HTTP
  • SSH
  • HTTPS

nvdajp: コミット

NVDA with Japanese branch


コミットメタ情報

リビジョン2bf0e3491aa228b9fef14306143b82ca2207396f (tree)
日時2016-01-21 15:37:32
作者Takuya Nishimoto <nishimotz@gmai...>
コミッターTakuya Nishimoto

ログメッセージ

merged nvaccess master

変更サマリ

差分

--- a/source/eventHandler.py
+++ b/source/eventHandler.py
@@ -227,20 +227,20 @@ def shouldAcceptEvent(eventName, windowHandle=None):
227227 if not windowHandle:
228228 # We can't filter without a window handle.
229229 return True
230+ wClass = winUser.getClassName(windowHandle)
230231 key = (eventName,
231232 winUser.getWindowThreadProcessID(windowHandle)[0],
232- winUser.getClassName(windowHandle))
233+ wClass)
233234 if key in _acceptEvents:
234235 return True
235236 if eventName == "valueChange" and config.conf["presentation"]["progressBarUpdates"]["reportBackgroundProgressBars"]:
236237 return True
237238 if eventName == "show":
238- # Only accept 'show' events for specific cases, as otherwise we get flooded.
239239 # ATOKxxUIComment
240- className = winUser.getClassName(windowHandle)
241- if className.startswith("ATOK") and className.endswith("UIComment"):
240+ if wClass.startswith("ATOK") and wClass.endswith("UIComment"):
242241 return True
243- return className in (
242+ # Only accept 'show' events for specific cases, as otherwise we get flooded.
243+ return wClass in (
244244 "Frame Notification Bar", # notification bars
245245 "tooltips_class32", # tooltips
246246 "mscandui21.candidate", "mscandui40.candidate", "MSCandUIWindow_Candidate", # IMM candidates
@@ -248,7 +248,7 @@ def shouldAcceptEvent(eventName, windowHandle=None):
248248 )
249249 if eventName == "reorder":
250250 # Prevent another flood risk.
251- return winUser.getClassName(windowHandle) == "TTrayAlert" # #4841: Skype
251+ return wClass == "TTrayAlert" # #4841: Skype
252252 if eventName == "alert" and winUser.getClassName(winUser.getAncestor(windowHandle, winUser.GA_PARENT)) == "ToastChildWindowClass":
253253 # Toast notifications.
254254 return True
@@ -263,6 +263,14 @@ def shouldAcceptEvent(eventName, windowHandle=None):
263263 return True
264264
265265 fg = winUser.getForegroundWindow()
266+ if wClass == "NetUIHWND" and winUser.getClassName(fg) == "Net UI Tool Window Layered":
267+ # #5504: In Office >= 2013 with the ribbon showing only tabs,
268+ # when a tab is expanded, the window we get from the focus object is incorrect.
269+ # This window isn't beneath the foreground window,
270+ # so our foreground application checks fail.
271+ # Just compare the root owners.
272+ if winUser.getAncestor(windowHandle, winUser.GA_ROOTOWNER) == winUser.getAncestor(fg, winUser.GA_ROOTOWNER):
273+ return True
266274 if (winUser.isDescendantWindow(fg, windowHandle)
267275 # #3899, #3905: Covers cases such as the Firefox Page Bookmarked window and OpenOffice/LibreOffice context menus.
268276 or winUser.isDescendantWindow(fg, winUser.getAncestor(windowHandle, winUser.GA_ROOTOWNER))):
--- a/user_docs/en/changes.t2t
+++ b/user_docs/en/changes.t2t
@@ -40,6 +40,7 @@
4040 - Reporting of mouse shape changes again works as expected. (#5595)
4141 - When speaking line indentation, non-breaking spaces are now treated as normal spaces. Previously, this could cause announcements such as "space space space" instead of "3 space". (#5610)
4242 - When closing a modern Microsoft input method candidate list, focus is correctly restored to either the input composition or the underlying document. (#4145)
43+- In Microsoft Office 2013 and later, when the ribbon is set to show only tabs, items in the ribbon are again reported as expected when a tab is activated. (#5504)
4344
4445
4546 == Changes for Developers ==
旧リポジトリブラウザで表示