@@ -55,7 +55,7 @@ class MaterialSearchView @JvmOverloads constructor(
5555 })
5656 binding.searchViewEditText.setOnEditorActionListener { _, _, _ ->
5757 onSubmitQuery()
58- return @setOnEditorActionListener true // same as ,,true" :)
58+ true
5959 }
6060 binding.searchViewEditText.setOnFocusChangeListener { _, hasFocus ->
6161 visibility = if (hasFocus) {
@@ -104,9 +104,18 @@ class MaterialSearchView @JvmOverloads constructor(
104104 setNavigationContentDescription(description)
105105 }
106106
107- if (a.hasValue(R .styleable.MaterialSearchView_search_backgroundColor )) {
108- val color = a.getInt(R .styleable.MaterialSearchView_search_backgroundColor , 0 )
109- setBackgroundColor(color)
107+ if (a.hasValue(R .styleable.MaterialSearchBar_search_navigationBackgroundColor )) {
108+ val color = a.getInt(R .styleable.MaterialSearchBar_search_navigationBackgroundColor , 0 )
109+ setNavigationBackgroundColor(color)
110+ }
111+
112+ if (a.hasValue(R .styleable.MaterialSearchView_search_navigationElevation )) {
113+ val navigationElevation =
114+ a.getDimensionPixelSize(
115+ R .styleable.MaterialSearchView_search_navigationElevation ,
116+ 0
117+ )
118+ setNavigationElevation(navigationElevation.toFloat())
110119 }
111120
112121 if (a.hasValue(R .styleable.MaterialSearchView_search_clearIcon )) {
@@ -153,15 +162,6 @@ class MaterialSearchView @JvmOverloads constructor(
153162 visibility = View .GONE
154163 }
155164
156- /* TODO styles + codes, ANIMATE binding.searchViewClip.path, SCALE, path
157- private fun setTransition() {
158- val mTransition = LayoutTransition()
159- mTransition.enableTransitionType(LayoutTransition.CHANGING)
160- mTransition.setDuration(3000L)
161-
162- binding.searchViewBackground.layoutTransition = mTransition
163- }*/
164-
165165 // *********************************************************************************************
166166 override fun setNavigationIcon (@DrawableRes resId : Int ) {
167167 binding.searchViewToolbar.setNavigationIcon(resId)
@@ -183,9 +183,17 @@ class MaterialSearchView @JvmOverloads constructor(
183183 binding.searchViewToolbar.setNavigationOnClickListener(listener)
184184 }
185185
186+ override fun setNavigationElevation (elevation : Float ) {
187+ binding.searchViewToolbar.elevation = elevation
188+ }
189+
190+ override fun setNavigationBackgroundColor (@ColorInt color : Int ) {
191+ binding.searchViewToolbar.setBackgroundColor(color)
192+ }
193+
186194 // *********************************************************************************************
187195 override fun setBackgroundColor (@ColorInt color : Int ) {
188- binding.searchViewBackground .setBackgroundColor(color)
196+ binding.searchViewContentContainer .setBackgroundColor(color)
189197 }
190198
191199 override fun addView (child : View ) {
@@ -261,9 +269,7 @@ class MaterialSearchView @JvmOverloads constructor(
261269 private fun onSubmitQuery () {
262270 val query = binding.searchViewEditText.text
263271 if (query != null && TextUtils .getTrimmedLength(query) > 0 ) {
264- if (queryListener == null || ! queryListener!! .onQueryTextSubmit(query.toString())) {
265- hideKeyboard()
266- }
272+ queryListener?.onQueryTextSubmit(query.toString())
267273 }
268274 }
269275
@@ -279,6 +285,10 @@ class MaterialSearchView @JvmOverloads constructor(
279285 binding.searchViewDivider.setBackgroundColor(color)
280286 }
281287
288+ fun setDividerResource (@DrawableRes resid : Int ) {
289+ binding.searchViewDivider.setBackgroundResource(resid)
290+ }
291+
282292 fun setScrimColor (@ColorInt color : Int ) {
283293 binding.searchViewScrim.setBackgroundColor(color)
284294 }
@@ -340,9 +350,9 @@ class MaterialSearchView @JvmOverloads constructor(
340350
341351 interface OnQueryTextListener {
342352
343- fun onQueryTextChange (newText : CharSequence ): Boolean
353+ fun onQueryTextChange (newText : CharSequence )
344354
345- fun onQueryTextSubmit (query : CharSequence ): Boolean
355+ fun onQueryTextSubmit (query : CharSequence )
346356 }
347357
348358 // *********************************************************************************************
0 commit comments