michael@0: /* michael@0: * Copyright (C) 2011 The Android Open Source Project michael@0: * michael@0: * Licensed under the Apache License, Version 2.0 (the "License"); michael@0: * you may not use this file except in compliance with the License. michael@0: * You may obtain a copy of the License at michael@0: * michael@0: * http://www.apache.org/licenses/LICENSE-2.0 michael@0: * michael@0: * Unless required by applicable law or agreed to in writing, software michael@0: * distributed under the License is distributed on an "AS IS" BASIS, michael@0: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. michael@0: * See the License for the specific language governing permissions and michael@0: * limitations under the License. michael@0: */ michael@0: michael@0: #define LOG_TAG "InputWindow" michael@0: michael@0: #include "InputWindow.h" michael@0: michael@0: #include "cutils_log.h" michael@0: michael@0: namespace android { michael@0: michael@0: // --- InputWindowInfo --- michael@0: michael@0: bool InputWindowInfo::touchableRegionContainsPoint(int32_t x, int32_t y) const { michael@0: return touchableRegion.contains(x, y); michael@0: } michael@0: michael@0: bool InputWindowInfo::frameContainsPoint(int32_t x, int32_t y) const { michael@0: return x >= frameLeft && x <= frameRight michael@0: && y >= frameTop && y <= frameBottom; michael@0: } michael@0: michael@0: bool InputWindowInfo::isTrustedOverlay() const { michael@0: return layoutParamsType == TYPE_INPUT_METHOD michael@0: || layoutParamsType == TYPE_INPUT_METHOD_DIALOG michael@0: || layoutParamsType == TYPE_SECURE_SYSTEM_OVERLAY; michael@0: } michael@0: michael@0: bool InputWindowInfo::supportsSplitTouch() const { michael@0: return layoutParamsFlags & FLAG_SPLIT_TOUCH; michael@0: } michael@0: michael@0: michael@0: // --- InputWindowHandle --- michael@0: michael@0: InputWindowHandle::InputWindowHandle(const sp& inputApplicationHandle) : michael@0: inputApplicationHandle(inputApplicationHandle), mInfo(NULL) { michael@0: } michael@0: michael@0: InputWindowHandle::~InputWindowHandle() { michael@0: delete mInfo; michael@0: } michael@0: michael@0: void InputWindowHandle::releaseInfo() { michael@0: if (mInfo) { michael@0: delete mInfo; michael@0: mInfo = NULL; michael@0: } michael@0: } michael@0: michael@0: } // namespace android