15fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn/* 25fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn * Copyright (C) 2011 The Android Open Source Project 35fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn * 45fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn * Licensed under the Apache License, Version 2.0 (the "License"); 55fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn * you may not use this file except in compliance with the License. 65fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn * You may obtain a copy of the License at 75fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn * 85fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn * http://www.apache.org/licenses/LICENSE-2.0 95fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn * 105fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn * Unless required by applicable law or agreed to in writing, software 115fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn * distributed under the License is distributed on an "AS IS" BASIS, 125fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 135fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn * See the License for the specific language governing permissions and 145fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn * limitations under the License. 155fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn */ 165fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn 175fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackbornpackage android.view; 185fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn 195fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackbornimport android.content.res.CompatibilityInfo; 205fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn 215fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn/** @hide */ 225fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackbornpublic class CompatibilityInfoHolder { 235fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn private volatile CompatibilityInfo mCompatInfo = CompatibilityInfo.DEFAULT_COMPATIBILITY_INFO; 245fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn 255fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn public void set(CompatibilityInfo compatInfo) { 265fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn if (compatInfo != null && (compatInfo.isScalingRequired() 275fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn || !compatInfo.supportsScreen())) { 285fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn mCompatInfo = compatInfo; 295fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn } else { 305fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn mCompatInfo = CompatibilityInfo.DEFAULT_COMPATIBILITY_INFO; 315fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn } 325fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn } 335fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn 345fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn public CompatibilityInfo get() { 355fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn return mCompatInfo; 365fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn } 375fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn 385fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn public CompatibilityInfo getIfNeeded() { 395fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn CompatibilityInfo ci = mCompatInfo; 405fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn if (ci == null || ci == CompatibilityInfo.DEFAULT_COMPATIBILITY_INFO) { 415fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn return null; 425fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn } 435fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn return ci; 445fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn } 455fd2169eabd77e6bfafaf456e58051a3bafb2bcaDianne Hackborn} 46