18fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck/* 28fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck * Copyright (C) 2011 The Android Open Source Project 38fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck * 48fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck * Licensed under the Apache License, Version 2.0 (the "License"); 58fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck * you may not use this file except in compliance with the License. 68fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck * You may obtain a copy of the License at 78fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck * 88fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck * http://www.apache.org/licenses/LICENSE-2.0 98fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck * 108fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck * Unless required by applicable law or agreed to in writing, software 118fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck * distributed under the License is distributed on an "AS IS" BASIS, 128fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 138fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck * See the License for the specific language governing permissions and 148fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck * limitations under the License. 158fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck */ 168fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck 178fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reckpackage com.android.browser.preferences; 188fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck 198fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reckimport android.content.Context; 208fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reckimport android.preference.SeekBarPreference; 217dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reckimport android.text.TextUtils; 228fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reckimport android.util.AttributeSet; 237dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reckimport android.view.View; 248fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reckimport android.widget.SeekBar; 257dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reckimport android.widget.TextView; 267dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck 277dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reckimport com.android.browser.R; 288fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck 29eabe5dabe4e56a78c5d6cf99e6f171452bad2f23John Reckpublic class SeekBarSummaryPreference extends SeekBarPreference { 308fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck 317dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck CharSequence mSummary; 327dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck TextView mSummaryView; 337dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck 34eabe5dabe4e56a78c5d6cf99e6f171452bad2f23John Reck public SeekBarSummaryPreference( 358fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck Context context, AttributeSet attrs, int defStyle) { 368fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck super(context, attrs, defStyle); 377dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck init(); 388fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck } 398fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck 40eabe5dabe4e56a78c5d6cf99e6f171452bad2f23John Reck public SeekBarSummaryPreference(Context context, AttributeSet attrs) { 418fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck super(context, attrs); 427dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck init(); 438fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck } 448fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck 45eabe5dabe4e56a78c5d6cf99e6f171452bad2f23John Reck public SeekBarSummaryPreference(Context context) { 468fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck super(context); 477dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck init(); 487dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck } 497dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck 507dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck void init() { 517dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck setWidgetLayoutResource(R.layout.font_size_widget); 527dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck } 537dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck 547dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck @Override 557dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck public void setSummary(CharSequence summary) { 567dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck mSummary = summary; 577dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck if (mSummaryView != null) { 587dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck mSummaryView.setText(mSummary); 597dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck } 607dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck } 617dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck 627dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck @Override 637dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck public CharSequence getSummary() { 647dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck return null; 657dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck } 667dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck 677dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck @Override 687dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck protected void onBindView(View view) { 697dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck super.onBindView(view); 707dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck mSummaryView = (TextView) view.findViewById(R.id.text); 717dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck if (TextUtils.isEmpty(mSummary)) { 727dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck mSummaryView.setVisibility(View.GONE); 737dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck } else { 747dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck mSummaryView.setVisibility(View.VISIBLE); 757dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck mSummaryView.setText(mSummary); 767dc444b4c3b70a09a33c0892fb8677922bdf1eccJohn Reck } 778fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck } 788fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck 798fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck @Override 808fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck public void onStartTrackingTouch(SeekBar seekBar) { 818fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck // Intentionally blank - prevent super.onStartTrackingTouch from running 828fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck } 838fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck 848fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck @Override 858fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck public void onStopTrackingTouch(SeekBar seekBar) { 868fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck // Intentionally blank - prevent onStopTrackingTouch from running 878fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck } 888fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck 898fc22a1c7846b4c7c7b74d1ec59ffc59c2695c15John Reck} 90