/*
* Copyright (C) 2014 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.support.v7.widget;
import android.support.v7.internal.app.WindowCallback;
import android.support.v7.view.ActionMode;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
/**
* A simple decorator stub for WindowCallback that passes through any calls
* to the wrapped instance as a base implementation. Call super.foo() to call into
* the wrapped callback for any subclasses.
*
* @hide for internal use
*/
public class WindowCallbackWrapper implements WindowCallback {
private WindowCallback mWrapped;
public WindowCallbackWrapper(WindowCallback wrapped) {
if (wrapped == null) {
throw new IllegalArgumentException("Window callback may not be null");
}
mWrapped = wrapped;
}
@Override
public boolean onMenuItemSelected(int featureId, MenuItem menuItem) {
return mWrapped.onMenuItemSelected(featureId, menuItem);
}
@Override
public boolean onCreatePanelMenu(int featureId, Menu menu) {
return mWrapped.onCreatePanelMenu(featureId, menu);
}
@Override
public boolean onPreparePanel(int featureId, View menuView, Menu menu) {
return mWrapped.onPreparePanel(featureId, menuView, menu);
}
@Override
public void onPanelClosed(int featureId, Menu menu) {
mWrapped.onPanelClosed(featureId, menu);
}
@Override
public boolean onMenuOpened(int featureId, Menu menu) {
return mWrapped.onMenuOpened(featureId, menu);
}
@Override
public ActionMode startActionMode(ActionMode.Callback callback) {
return mWrapped.startActionMode(callback);
}
@Override
public View onCreatePanelView(int featureId) {
return mWrapped.onCreatePanelView(featureId);
}
}
|