@@ -120,8 +120,7 @@ class SearchOrbView(context: Context, attrs: AttributeSet?) : FrameLayout(contex
120120
121121 private val isKatnissPackagePresent: Boolean
122122 get() {
123- val info: PackageInfo ?
124- info = try {
123+ val info: PackageInfo ? = try {
125124 mContext.packageManager.getPackageInfo(" com.google.android.katniss" , 0 )
126125 } catch (e: PackageManager .NameNotFoundException ) {
127126 null
@@ -133,12 +132,12 @@ class SearchOrbView(context: Context, attrs: AttributeSet?) : FrameLayout(contex
133132 super .onFinishInflate()
134133 mWidgetView = findViewById(R .id.widget_wrapper)
135134 mMicOrbView = findViewById(R .id.mic_orb)
136- mMicOrbView?.setOnFocusChangeListener( OnFocusChangeListener { v, hasFocus ->
135+ mMicOrbView?.onFocusChangeListener = OnFocusChangeListener { v, hasFocus ->
137136 setSearchState(false )
138137 if (mAssistantIcon != null ) {
139- mMicOrbView?.setOrbIcon( if (hasFocus) mDefaultColorMicIcon else mAssistantIcon)
138+ mMicOrbView?.orbIcon = if (hasFocus) mDefaultColorMicIcon else mAssistantIcon
140139 }
141- })
140+ }
142141 initializeSearchOrbs()
143142 initTextSwitcher(context)
144143 }
@@ -173,37 +172,46 @@ class SearchOrbView(context: Context, attrs: AttributeSet?) : FrameLayout(contex
173172 val keyboardOrbView = v as SearchOrbView
174173 keyboardOrbView.orbIcon = if (hasFocus) mKeyboardFocusedIcon else mKeyboardUnfocusedIcon
175174 keyboardOrbView.orbColor = if (hasFocus) mColorBright else mColorDim
176- if (hasFocus) {
177- mMicOrbView?.orbIcon = mMicUnfocusedIcon
178- } else if (mAssistantIcon != null ) {
179- mMicOrbView?.orbIcon = mAssistantIcon
180- } else {
181- mMicOrbView?.orbIcon = mDefaultColorMicIcon
175+ when {
176+ hasFocus -> {
177+ mMicOrbView?.orbIcon = mMicUnfocusedIcon
178+ }
179+ mAssistantIcon != null -> {
180+ mMicOrbView?.orbIcon = mAssistantIcon
181+ }
182+ else -> {
183+ mMicOrbView?.orbIcon = mDefaultColorMicIcon
184+ }
182185 }
183186 }
184187 mOrbAnimation = ObjectAnimator .ofFloat(this , " keyboardOrbProgress" , 0.0f )
185- mOrbAnimation?.setDuration( mKeyboardOrbAnimationDuration.toLong() )
188+ mOrbAnimation?.duration = mKeyboardOrbAnimationDuration.toLong()
186189 } else {
187190 mKeyboardFocusedIcon = null
188191 mKeyboardUnfocusedIcon = null
189192 mKeyboardOrbView = null
190193 mKeyboardContainer = null
191194 }
192195 val partnerSearchIcon = Partner .get(mContext).customSearchIcon
193- if (mAssistantIcon != null ) {
194- mMicOrbView?.orbIcon = mAssistantIcon
195- mMicOrbView?.orbColor = mColorBright
196- mMicOrbView?.enableOrbColorAnimation(false )
197- } else if (partnerSearchIcon != null ) {
198- mMicOrbView?.orbIcon = partnerSearchIcon
199- } else if (mWahlbergUx) {
200- mMicOrbView?.orbColor = mColorBright
201- mMicOrbView?.orbIcon = mDefaultColorMicIcon
202- mMicOrbView?.enableOrbColorAnimation(false )
203- } else {
204- mMicOrbView?.orbColors = SearchOrbView .Colors (ContextCompat .getColor(mContext, R .color.search_orb_bg_color_old), ContextCompat .getColor(mContext, R .color.search_orb_bg_bright_color_old))
205- mMicOrbView?.orbIcon = ContextCompat .getDrawable(mContext, R .drawable.ic_search_mic_out_normal)
206- mMicOrbView?.enableOrbColorAnimation(true )
196+ when {
197+ mAssistantIcon != null -> {
198+ mMicOrbView?.orbIcon = mAssistantIcon
199+ mMicOrbView?.orbColor = mColorBright
200+ mMicOrbView?.enableOrbColorAnimation(false )
201+ }
202+ partnerSearchIcon != null -> {
203+ mMicOrbView?.orbIcon = partnerSearchIcon
204+ }
205+ mWahlbergUx -> {
206+ mMicOrbView?.orbColor = mColorBright
207+ mMicOrbView?.orbIcon = mDefaultColorMicIcon
208+ mMicOrbView?.enableOrbColorAnimation(false )
209+ }
210+ else -> {
211+ mMicOrbView?.orbColors = SearchOrbView .Colors (ContextCompat .getColor(mContext, R .color.search_orb_bg_color_old), ContextCompat .getColor(mContext, R .color.search_orb_bg_bright_color_old))
212+ mMicOrbView?.orbIcon = ContextCompat .getDrawable(mContext, R .drawable.ic_search_mic_out_normal)
213+ mMicOrbView?.enableOrbColorAnimation(true )
214+ }
207215 }
208216 viewTreeObserver.addOnGlobalLayoutListener { setKeyboardOrbProgress(mKeyboardOrbProgress) }
209217 }
@@ -221,8 +229,7 @@ class SearchOrbView(context: Context, attrs: AttributeSet?) : FrameLayout(contex
221229 val i = if (focused) if (! isKeyboard) - 2 else - 3 else - 1
222230 mCurrentIndex = i
223231 if (old != mCurrentIndex) {
224- val useFade: Boolean
225- useFade = old != - 1 && mCurrentIndex != - 1
232+ val useFade: Boolean = old != - 1 && mCurrentIndex != - 1
226233 val z: Boolean = ! isReset
227234 configSwitcher(z, focused, if (useFade) 2 else 1 )
228235 if (mWahlbergUx) {
@@ -250,7 +257,7 @@ class SearchOrbView(context: Context, attrs: AttributeSet?) : FrameLayout(contex
250257
251258 private fun initTextSwitcher (context : Context ) {
252259 mSwitcher = findViewById(R .id.text_switcher)
253- mSwitcher?.setAnimateFirstView( false )
260+ mSwitcher?.animateFirstView = false
254261 mSwitcher?.setFactory(object : ViewSwitcher .ViewFactory {
255262 var inflater = context.getSystemService(Context .LAYOUT_INFLATER_SERVICE ) as LayoutInflater
256263 override fun makeView (): View {
@@ -264,7 +271,7 @@ class SearchOrbView(context: Context, attrs: AttributeSet?) : FrameLayout(contex
264271 if (old == mCurrentIndex) {
265272 mCurrentIndex = (mCurrentIndex + 1 ) % mTextToShow.size
266273 }
267- configSwitcher(true , false , 0 )
274+ configSwitcher(switchViews = true , focused = false , animType = 0 )
268275 mSwitcher?.setText(fixItalics(mTextToShow[mCurrentIndex]))
269276 mHandler.postDelayed(this , mIdleTextFlipDelay.toLong())
270277 }
@@ -290,19 +297,22 @@ class SearchOrbView(context: Context, attrs: AttributeSet?) : FrameLayout(contex
290297 val outAnim: Int
291298 val v = if (switchViews) mSwitcher!! .nextView else mSwitcher!! .currentView
292299 if (v is TextView ) {
293- val textView = v
294- textView.setTextColor(if (focused) mFocusedColor else mUnfocusedColor)
295- textView.setTypeface(null , Typeface .ITALIC )
300+ v.setTextColor(if (focused) mFocusedColor else mUnfocusedColor)
301+ v.setTypeface(null , Typeface .ITALIC )
296302 }
297- if (animType == 1 ) {
298- inAnim = R .anim.slide_in_left
299- outAnim = R .anim.slide_out_right
300- } else if (animType == 0 ) {
301- inAnim = R .anim.slide_in_bottom
302- outAnim = R .anim.slide_out_top
303- } else {
304- inAnim = R .anim.fade_in
305- outAnim = R .anim.fade_out
303+ when (animType) {
304+ 1 -> {
305+ inAnim = R .anim.slide_in_left
306+ outAnim = R .anim.slide_out_right
307+ }
308+ 0 -> {
309+ inAnim = R .anim.slide_in_bottom
310+ outAnim = R .anim.slide_out_top
311+ }
312+ else -> {
313+ inAnim = R .anim.fade_in
314+ outAnim = R .anim.fade_out
315+ }
306316 }
307317 mSwitcher!! .setInAnimation(mContext, inAnim)
308318 mSwitcher!! .setOutAnimation(mContext, outAnim)
@@ -341,7 +351,7 @@ class SearchOrbView(context: Context, attrs: AttributeSet?) : FrameLayout(contex
341351 searchOrbView!! .enableOrbColorAnimation(z)
342352 }
343353
344- private fun setVisibile (visible : Boolean ) {
354+ private fun setVisible (visible : Boolean ) {
345355 animateVisibility(mWidgetView, visible)
346356 animateVisibility(mSwitcher, visible)
347357 }
@@ -377,30 +387,28 @@ class SearchOrbView(context: Context, attrs: AttributeSet?) : FrameLayout(contex
377387 }
378388 }
379389
380- private fun setKeyboardOrbProgress (prog : Float ) {
381- val focusable: Boolean
382- val visible: Boolean
390+ private fun setKeyboardOrbProgress (progress : Float ) {
383391 var i = 0
384392 var i2 = 1
385- focusable = prog .toDouble() == 1.0
386- visible = prog > 0.0f
387- mKeyboardOrbProgress = prog
393+ val focusable: Boolean = progress .toDouble() == 1.0
394+ val visible: Boolean = progress > 0.0f
395+ mKeyboardOrbProgress = progress
388396 if (mKeyboardOrbView != null ) {
389397 mKeyboardOrbView!! .isFocusable = focusable
390- mKeyboardOrbView!! .alpha = prog
398+ mKeyboardOrbView!! .alpha = progress
391399 val frameLayout = mKeyboardContainer
392400 if (! visible) {
393401 i = INVISIBLE
394402 }
395403 frameLayout!! .visibility = i
396- mKeyboardContainer!! .scaleX = prog
397- mKeyboardContainer!! .scaleY = prog
404+ mKeyboardContainer!! .scaleX = progress
405+ mKeyboardContainer!! .scaleY = progress
398406 val orbWidth = mKeyboardOrbView!! .measuredWidth
399407 if (layoutDirection != LAYOUT_DIRECTION_RTL ) {
400408 i2 = - 1
401409 }
402- val offset = (i2 * (mSearchOrbsSpacing + orbWidth)).toFloat() * (1.0f - prog )
403- mKeyboardOrbView!! .translationX = offset / prog
410+ val offset = (i2 * (mSearchOrbsSpacing + orbWidth)).toFloat() * (1.0f - progress )
411+ mKeyboardOrbView!! .translationX = offset / progress
404412 if (mSwitcher != null ) {
405413 mSwitcher!! .translationX = offset
406414 }
@@ -415,7 +423,7 @@ class SearchOrbView(context: Context, attrs: AttributeSet?) : FrameLayout(contex
415423 public override fun onAttachedToWindow () {
416424 var isTouchExplorationEnabled = true
417425 super .onAttachedToWindow()
418- setVisibile (true )
426+ setVisible (true )
419427 val am = mContext.getSystemService(Context .ACCESSIBILITY_SERVICE ) as AccessibilityManager
420428 if (! (am.isEnabled && am.isTouchExplorationEnabled)) {
421429 isTouchExplorationEnabled = false
@@ -461,22 +469,22 @@ class SearchOrbView(context: Context, attrs: AttributeSet?) : FrameLayout(contex
461469 }
462470
463471 fun animateIn () {
464- setVisibile (true )
472+ setVisible (true )
465473 }
466474
467475 private fun animateOut () {
468- setVisibile (false )
476+ setVisible (false )
469477 reset()
470478 }
471479
472480 override fun setActivated (active : Boolean ) {}
473481
474482 fun updateSearchSuggestions (suggestions : Array <String >? ) {
475483 mCurrentIndex = 0
476- if (suggestions == null || suggestions.size == 0 ) {
477- mTextToShow = mDefaultTextToShow
484+ mTextToShow = if (suggestions == null || suggestions.isEmpty() ) {
485+ mDefaultTextToShow
478486 } else {
479- mTextToShow = suggestions
487+ suggestions
480488 }
481489 }
482490
0 commit comments