Bug 484189 - TrackBar: Bad encoding of TrackBar's text
Summary: TrackBar: Bad encoding of TrackBar's text
Status: REOPENED
: 504551 (view as bug list)
Alias: None
Product: UI Automation
Classification: Mono
Component: Winforms - ATK (show other bugs)
Version: Release 0.9.1
Hardware: Other Other
: P4 - Low : Minor
Target Milestone: ---
Assignee: E-mail List
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-03-11 08:13 UTC by Ray Wang
Modified: 2010-08-31 14:19 UTC (History)
2 users (show)

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 Ray Wang 2009-03-11 08:13:07 UTC
PROBLEM STATEMENT:
when you get the text from a trackbar, the encoding of text is bad.

REPRODUCE:
1. start uia2atk/test/samples/trackbar.py and accercier
2. navigate to a track bar(slider) from left side
3. open IPython tab
4. try to issue "acc.queryText().getText(0, acc.queryText().characterCount)" 

RESULTS:
the output is '\xe2\x80\x8e1'

EXPECTED RESULTS:
the output should be 1
Comment 1 Brian Merrell 2009-05-16 04:34:24 UTC
*** Bug 504551 has been marked as a duplicate of this bug. ***
Comment 2 Brian Merrell 2009-05-16 04:35:11 UTC
Oops, I just logged a duplicate of this bug.  Here is my PROBLEM STATEMENT, maybe it will provide some extra information:

I am a bit confused, but it looks like I am getting a UTF-8 value back from the
text interface of a TrackBar's "slider" accessible.  The value I expect is "1".
 I am getting back a "1" in a string, but it appears to be prefixed with some
UTF-8 bytes.  The value I am getting is '\xe2\x80\x8e1', that is, a "1"
prefixed with "\xe2\x80\x8e".  Obviously, my test fails because '1' !=
'\xe2\x80\x8e1'.  "\xe2\x80\x8e" alone (without the "1", appears to be a blank
space or something).
Comment 3 Michael Gorse 2009-07-20 04:30:26 UTC
Fixed; waiting for review (#343)
Comment 4 Michael Gorse 2010-03-11 20:57:19 UTC
Fixed in UiaAtkBridge R153482.
Comment 5 Ray Wang 2010-03-12 06:01:32 UTC
Hi Mike, I try to verify this bug, but after I installed uiaatkbridge with r153482 package, I get this error.

no implementation for interface method Atk.TableImplementor::GetSelectedColumns(int&) in class UiaAtkBridge.Table
METHOD .ctor(System.Windows.Automation.Provider.IRawElementProviderFragment)
METHOD RaiseAutomationEvent(System.Windows.Automation.AutomationEvent,System.Windows.Automation.AutomationEventArgs)
METHOD RaiseStructureChangedEvent(object,System.Windows.Automation.StructureChangedEventArgs)
METHOD RaiseAutomationPropertyChangedEvent(System.Windows.Automation.AutomationPropertyChangedEventArgs)
METHOD RefAt(int,int)
METHOD GetIndexAt(int,int)
METHOD GetColumnAtIndex(int)
METHOD GetRowAtIndex(int)
METHOD get_NColumns()
METHOD get_NRows()
METHOD GetColumnExtentAt(int,int)
METHOD GetRowExtentAt(int,int)
METHOD get_Caption()
METHOD set_Caption(Atk.Object)
METHOD GetColumnDescription(int)
METHOD GetColumnHeader(int)
METHOD GetRowDescription(int)
METHOD GetRowHeader(int)
METHOD get_Summary()
METHOD set_Summary(Atk.Object)
METHOD SetColumnDescription(int,string)
METHOD SetColumnHeader(int,Atk.Object)
METHOD SetRowDescription(int,string)
METHOD SetRowHeader(int,Atk.Object)
METHOD get_SelectedColumns()
METHOD get_SelectedRows()
METHOD GetSelectedColumns(int&)
METHOD GetSelectedColumns(int[]&)
METHOD GetSelectedRows(int&)
METHOD GetSelectedRows(int[]&)
METHOD IsColumnSelected(int)
METHOD IsRowSelected(int)
METHOD IsSelected(int,int)
METHOD AddRowSelection(int)
METHOD RemoveRowSelection(int)
METHOD AddColumnSelection(int)
METHOD RemoveColumnSelection(int)
METHOD EmitRowReorderingSignal()
METHOD OnRefStateSet()
Error setting up UIA: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Automation.Provider.AutomationInteropProvider ---> System.Reflection.ReflectionTypeLoadException: The classes in the module cannot be loaded.
  at (wrapper managed-to-native) System.Reflection.Assembly:GetTypes (bool)
  at System.Reflection.Assembly.GetTypes () [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.BridgeManager.GetAutomationBridge (System.String bridgeAssemblyName) [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.BridgeManager.GetAutomationBridges () [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.AutomationInteropProvider..cctor () [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Mono.UIAutomation.Winforms.FormListener.Initialize () [0x00000] in <filename unknown>:0 
  at Mono.UIAutomation.Winforms.Global.Initialize () [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Application.InitializeUIAutomation () [0x00000] in <filename unknown>:0 
Traceback (most recent call last):
  File UIAutomationProvider, line unknown, in .cctor
  File UIAutomationProvider, line unknown, in GetAutomationBridges
  File UIAutomationProvider, line unknown, in GetAutomationBridge
  File UIAutomationWinforms, line unknown, in Initialize
  File UIAutomationWinforms, line unknown, in Initialize
  File System.Windows.Forms, line unknown, in .cctor
  File System.Windows.Forms, line unknown, in .ctor
  File System.Windows.Forms, line unknown, in get_MenuAccessKeysUnderlined
  File System.Windows.Forms, line unknown, in get_MenuAccessKeysUnderlined
  File button_label_linklabel, line unknown, in Initialize
  File System.Windows.Forms, line unknown, in .ctor
  File System.Windows.Forms, line unknown, in .ctor
  File System.Windows.Forms, line unknown, in .ctor
  File System.Windows.Forms, line unknown, in .ctor
SystemError: An exception was thrown by the type initializer for System.Windows.Forms.WindowsFormsSynchronizationContext
Comment 6 Ray Wang 2010-04-07 09:23:24 UTC
verified, close this bug
Comment 7 calen chen 2010-06-24 07:30:30 UTC
I reopen bug because it still can reproduce in a11y-sled11-64bit, a11y-oS111-64bit and a11y-oS111-32bit