Merge "Revert "Showing default activity in activity chooser view only if enough space."" into jb-dev

This commit is contained in:
Svetoslav Ganov
2012-05-15 10:49:01 -07:00
committed by Android (Google) Code Review
6 changed files with 10 additions and 70 deletions

View File

@@ -764,16 +764,6 @@ public class ActivityChooserModel extends DataSetObservable {
}
}
/**
* Gets whether the given observer is already registered.
*
* @param observer The observer.
* @return True if already registered.
*/
public boolean isRegisteredObserver(DataSetObserver observer) {
return mObservers.contains(observer);
}
/**
* Represents a record in the history.
*/

View File

@@ -20,10 +20,8 @@ import com.android.internal.R;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.content.res.Configuration;
import android.content.res.Resources;
import android.content.res.TypedArray;
import android.database.DataSetObserver;
@@ -175,11 +173,6 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod
*/
private int mDefaultActionButtonContentDescription;
/**
* Whether this view has a default activity affordance.
*/
private boolean mHasDefaultActivity;
/**
* Create a new instance.
*
@@ -252,8 +245,6 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod
Resources resources = context.getResources();
mListPopupMaxWidth = Math.max(resources.getDisplayMetrics().widthPixels / 2,
resources.getDimensionPixelSize(com.android.internal.R.dimen.config_prefDialogWidth));
updateHasDefaultActivity();
}
/**
@@ -267,21 +258,6 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod
}
}
@Override
protected void onConfigurationChanged(Configuration newConfig) {
Configuration oldConfig = mContext.getResources().getConfiguration();
final int changed = oldConfig.diff(newConfig);
if ((changed & ActivityInfo.CONFIG_SCREEN_SIZE) != 0
|| (changed & ActivityInfo.CONFIG_ORIENTATION) != 0) {
updateHasDefaultActivity();
}
}
private void updateHasDefaultActivity() {
mHasDefaultActivity = mContext.getResources().getBoolean(
R.bool.activity_chooser_view_has_default_activity);
}
/**
* Sets the background for the button that expands the activity
* overflow list.
@@ -407,8 +383,7 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod
protected void onAttachedToWindow() {
super.onAttachedToWindow();
ActivityChooserModel dataModel = mAdapter.getDataModel();
if (dataModel != null
&& !dataModel.isRegisteredObserver(mModelDataSetOberver)) {
if (dataModel != null) {
dataModel.registerObserver(mModelDataSetOberver);
}
mIsAttachedToWindow = true;
@@ -418,8 +393,7 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod
protected void onDetachedFromWindow() {
super.onDetachedFromWindow();
ActivityChooserModel dataModel = mAdapter.getDataModel();
if (dataModel != null
&& dataModel.isRegisteredObserver(mModelDataSetOberver)) {
if (dataModel != null) {
dataModel.unregisterObserver(mModelDataSetOberver);
}
ViewTreeObserver viewTreeObserver = getViewTreeObserver();
@@ -522,7 +496,7 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod
// Default activity button.
final int activityCount = mAdapter.getActivityCount();
final int historySize = mAdapter.getHistorySize();
if (mHasDefaultActivity && activityCount > 0 && historySize > 0) {
if (activityCount > 0 && historySize > 0) {
mDefaultActivityButton.setVisibility(VISIBLE);
ResolveInfo activity = mAdapter.getDefaultActivity();
PackageManager packageManager = mContext.getPackageManager();
@@ -538,9 +512,9 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod
}
// Activity chooser content.
if (mDefaultActivityButton.getVisibility() == VISIBLE) {
mActivityChooserContent.setBackground(mActivityChooserContentBackground);
mActivityChooserContent.setBackgroundDrawable(mActivityChooserContentBackground);
} else {
mActivityChooserContent.setBackground(null);
mActivityChooserContent.setBackgroundDrawable(null);
}
}
@@ -603,7 +577,7 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod
// OnLongClickListener#onLongClick
@Override
public boolean onLongClick(View view) {
if (mHasDefaultActivity && view == mDefaultActivityButton) {
if (view == mDefaultActivityButton) {
if (mAdapter.getCount() > 0) {
mIsSelectingDefaultActivity = true;
showPopupUnchecked(mInitialActivityCount);
@@ -656,16 +630,14 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod
public void setDataModel(ActivityChooserModel dataModel) {
ActivityChooserModel oldDataModel = mAdapter.getDataModel();
if (oldDataModel != null) {
if (oldDataModel != null && isShown()) {
oldDataModel.unregisterObserver(mModelDataSetOberver);
}
mDataModel = dataModel;
if (dataModel != null) {
if (dataModel != null && isShown()) {
dataModel.registerObserver(mModelDataSetOberver);
notifyDataSetChanged();
} else {
notifyDataSetInvalidated();
}
notifyDataSetChanged();
}
@Override

View File

@@ -44,7 +44,6 @@ import com.android.internal.R;
* <code>
* // In Activity#onCreateOptionsMenu
* public boolean onCreateOptionsMenu(Menu menu) {
* getManuInflater().inflate(R.menu.my_menu, menu);
* // Get the menu item.
* MenuItem menuItem = menu.findItem(R.id.my_menu_item);
* // Get the provider and hold onto it to set/change the share intent.
@@ -246,7 +245,7 @@ public class ShareActionProvider extends ActionProvider {
* call {@link android.app.Activity#invalidateOptionsMenu()} to recreate the
* action view. You should <strong>not</strong> call
* {@link android.app.Activity#invalidateOptionsMenu()} from
* {@link android.app.Activity#onCreateOptionsMenu(Menu)}.
* {@link android.app.Activity#onCreateOptionsMenu(Menu)}."
* <p>
* <code>
* private void doShare(Intent intent) {

View File

@@ -1,19 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2012 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.
-->
<resources>
<bool name="activity_chooser_view_has_default_activity">true</bool>
</resources>

View File

@@ -22,5 +22,4 @@
<bool name="show_ongoing_ime_switcher">true</bool>
<bool name="action_bar_expanded_action_views_exclusive">true</bool>
<bool name="target_honeycomb_needs_options_menu">true</bool>
<bool name="activity_chooser_view_has_default_activity">false</bool>
</resources>

View File

@@ -1380,7 +1380,6 @@
<java-symbol type="bool" name="config_wifi_dual_band_support" />
<java-symbol type="bool" name="config_wimaxEnabled" />
<java-symbol type="bool" name="show_ongoing_ime_switcher" />
<java-symbol type="bool" name="activity_chooser_view_has_default_activity" />
<java-symbol type="color" name="config_defaultNotificationColor" />
<java-symbol type="drawable" name="ic_notification_ime_default" />
<java-symbol type="drawable" name="stat_notify_car_mode" />