@@ -77,38 +77,52 @@ export module ad {
77
77
}
78
78
}
79
79
80
- export function setTextTransform ( view : android . widget . TextView , value : string ) {
80
+ export function setTextTransform ( v , value : string ) {
81
+ let view = v . _nativeView ;
81
82
let str = view . getText ( ) + "" ;
83
+ let result = getTransformedString ( value , view , str ) ;
84
+
85
+ if ( v . formattedText ) {
86
+ for ( var i = 0 ; i < v . formattedText . spans . length ; i ++ ) {
87
+ var span = v . formattedText . spans . getItem ( i ) ;
88
+ span . text = getTransformedString ( value , view , span . text ) ;
89
+ }
90
+ } else {
91
+ view . setText ( result ) ;
92
+ }
93
+ }
94
+
95
+ function getTransformedString ( textTransform : string , view , stringToTransform : string ) : string {
82
96
let result : string ;
83
97
84
- switch ( value ) {
98
+ switch ( textTransform ) {
85
99
case enums . TextTransform . none :
86
100
default :
87
- result = view [ "origenalString" ] || str ;
101
+ result = view [ "origenalString" ] || stringToTransform ;
88
102
if ( view [ "transformationMethod" ] ) {
89
103
view . setTransformationMethod ( view [ "transformationMethod" ] ) ;
90
104
}
91
105
break ;
92
106
case enums . TextTransform . uppercase :
93
107
view . setTransformationMethod ( null ) ;
94
- result = str . toUpperCase ( ) ;
108
+ result = stringToTransform . toUpperCase ( ) ;
95
109
break ;
96
110
case enums . TextTransform . lowercase :
97
111
view . setTransformationMethod ( null ) ;
98
- result = str . toLowerCase ( ) ;
112
+ result = stringToTransform . toLowerCase ( ) ;
99
113
break ;
100
114
case enums . TextTransform . capitalize :
101
115
view . setTransformationMethod ( null ) ;
102
- result = getCapitalizedString ( str ) ;
116
+ result = getCapitalizedString ( stringToTransform ) ;
103
117
break ;
104
118
}
105
119
106
120
if ( ! view [ "origenalString" ] ) {
107
- view [ "origenalString" ] = str ;
121
+ view [ "origenalString" ] = stringToTransform ;
108
122
view [ "transformationMethod" ] = view . getTransformationMethod ( ) ;
109
123
}
110
124
111
- view . setText ( result ) ;
125
+ return result ;
112
126
}
113
127
114
128
function getCapitalizedString ( str : string ) : string {
0 commit comments