1415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes/* 2415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes * Copyright (C) 2014 The Android Open Source Project 3415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes * 4415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes * Licensed under the Apache License, Version 2.0 (the "License"); 5415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes * you may not use this file except in compliance with the License. 6415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes * You may obtain a copy of the License at 7415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes * 8415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes * http://www.apache.org/licenses/LICENSE-2.0 9415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes * 10415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes * Unless required by applicable law or agreed to in writing, software 11415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes * distributed under the License is distributed on an "AS IS" BASIS, 12415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes * See the License for the specific language governing permissions and 14415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes * limitations under the License. 15415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes */ 16415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes 17415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banespackage android.support.v7.internal.text; 18415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes 19415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banesimport android.content.Context; 20415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banesimport android.graphics.Rect; 21415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banesimport android.text.method.TransformationMethod; 22415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banesimport android.view.View; 23415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes 24415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banesimport java.util.Locale; 25415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes 26415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes/** 27415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes * @hide 28415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes */ 29415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banespublic class AllCapsTransformationMethod implements TransformationMethod { 30415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes private Locale mLocale; 31415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes 32415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes public AllCapsTransformationMethod(Context context) { 33415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes mLocale = context.getResources().getConfiguration().locale; 34415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes } 35415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes 36415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes @Override 37415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes public CharSequence getTransformation(CharSequence source, View view) { 38415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes return source != null ? source.toString().toUpperCase(mLocale) : null; 39415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes } 40415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes 41415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes @Override 42415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes public void onFocusChanged(View view, CharSequence sourceText, boolean focused, 43415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes int direction, Rect previouslyFocusedRect) { 44415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes } 45415f740df4981ef2f5fb462a50c7cf095cc21128Chris Banes}