Merge "Hide space for title if the title is GONE." into cw-f-dev

This commit is contained in:
Michael Kwan
2016-08-16 17:56:41 +00:00
committed by Android (Google) Code Review

View File

@@ -103,7 +103,8 @@ public class WatchHeaderListView extends ListView {
@Override @Override
public int getHeaderViewsCount() { public int getHeaderViewsCount() {
return mTopPanel == null ? super.getHeaderViewsCount() : super.getHeaderViewsCount() + 1; return mTopPanel == null ? super.getHeaderViewsCount()
: super.getHeaderViewsCount() + (mTopPanel.getVisibility() == GONE ? 0 : 1);
} }
private void wrapAdapterIfNecessary() { private void wrapAdapterIfNecessary() {
@@ -133,7 +134,7 @@ public class WatchHeaderListView extends ListView {
} }
private int getTopPanelCount() { private int getTopPanelCount() {
return mTopPanel == null ? 0 : 1; return (mTopPanel == null || mTopPanel.getVisibility() == GONE) ? 0 : 1;
} }
@Override @Override
@@ -143,33 +144,19 @@ public class WatchHeaderListView extends ListView {
@Override @Override
public boolean areAllItemsEnabled() { public boolean areAllItemsEnabled() {
return mTopPanel == null && super.areAllItemsEnabled(); return getTopPanelCount() == 0 && super.areAllItemsEnabled();
} }
@Override @Override
public boolean isEnabled(int position) { public boolean isEnabled(int position) {
if (mTopPanel != null) { int topPanelCount = getTopPanelCount();
if (position == 0) { return position < topPanelCount ? false : super.isEnabled(position - topPanelCount);
return false;
} else {
return super.isEnabled(position - 1);
}
}
return super.isEnabled(position);
} }
@Override @Override
public Object getItem(int position) { public Object getItem(int position) {
if (mTopPanel != null) { int topPanelCount = getTopPanelCount();
if (position == 0) { return position < topPanelCount ? null : super.getItem(position - topPanelCount);
return null;
} else {
return super.getItem(position - 1);
}
}
return super.getItem(position);
} }
@Override @Override
@@ -187,15 +174,9 @@ public class WatchHeaderListView extends ListView {
@Override @Override
public View getView(int position, View convertView, ViewGroup parent) { public View getView(int position, View convertView, ViewGroup parent) {
if (mTopPanel != null) { int topPanelCount = getTopPanelCount();
if (position == 0) { return position < topPanelCount
return mTopPanel; ? mTopPanel : super.getView(position - topPanelCount, convertView, parent);
} else {
return super.getView(position - 1, convertView, parent);
}
}
return super.getView(position, convertView, parent);
} }
@Override @Override