Bug 469347 - Refactor the bridge
Summary: Refactor the bridge
Status: NEW
Alias: None
Product: UI Automation
Classification: Mono
Component: Winforms - ATK (show other bugs)
Version: Unspecified
Hardware: All All
: P4 - Low : Enhancement
Target Milestone: ---
Assignee: E-mail List
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-01-26 15:24 UTC by Andres Aragoneses
Modified: 2009-10-28 20:09 UTC (History)
0 users

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andres Aragoneses 2009-01-26 15:24:49 UTC
Interesting things to overcome:

- Abstract methods are not always necessary and are usually left empty with /*TODO*/ marks (for example the ones in ParentAdapter).
- Fix this FIXME in Adapter.cs which means a lot of refactoring: 		"consider to add a new param here: Adapter parent; in order to have the parent always accessible, and prevent workarounds such as using provider navigation (like in the UiaAtkBridge.Window or UiaAtkBridge.ComboBox cases).
- Remove all warnings.
- Split files which have more than one class, in n files, for instance List.cs.
- In cases where there are more than one class in a file, maybe it's better to think yet again if it's better to split them or keep them in one (for example, see the FIXME in AutomationBridge::HandleNewStatusBarControlType).
- Fix the FIXME in IncludeNewAdapter: "FIXME: figure out why we can't uncomment this:"
- Be more specific in some constructors (for instance fix the FIXME in ComponentParentAdapter one).
- Remove the GLibHacks class.
- Prepare the bridge to be prepared for interface changes at runtime (MenuItem elements that suddendly have sub-menuitems; comboboxes that change style, etc.).
- <put your wishlist item here>
Comment 1 Brad Taylor 2009-01-26 15:33:22 UTC
Additionally, it seems critical to me to handle Name and NameProperty changes at a higher level (Adapter...?).  This should be a simple fix and a big win for us as we won't have to deal with listening to AutomationPropertyChanged events for NameProperty on every single control.
Comment 2 Andres Aragoneses 2009-01-26 15:38:56 UTC
(In reply to comment #1)
> Additionally, it seems critical to me to handle Name and NameProperty changes
> at a higher level (Adapter...?).  This should be a simple fix and a big win for
> us as we won't have to deal with listening to AutomationPropertyChanged events
> for NameProperty on every single control.

Sounds good.