Skip to content

Commit

Permalink
no comment.
Browse files Browse the repository at this point in the history
  • Loading branch information
Mariotaku Lee authored and Mariotaku Lee committed Jun 10, 2012
1 parent 2ef4953 commit b5266d5
Show file tree
Hide file tree
Showing 9 changed files with 68 additions and 75 deletions.
2 changes: 1 addition & 1 deletion res/layout-sw600dp-land/main.xml
Expand Up @@ -32,7 +32,7 @@

<FrameLayout
android:id="@+id/left_pane"
android:layout_width="0dp"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
</FrameLayout>
</FrameLayout>
Expand Down
19 changes: 15 additions & 4 deletions src/org/mariotaku/twidere/activity/HomeActivity.java
Expand Up @@ -26,6 +26,7 @@
import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentManager.OnBackStackChangedListener;
import android.support.v4.app.FragmentTransaction;
import android.view.Gravity;
Expand Down Expand Up @@ -106,7 +107,13 @@ public void onActivityResult(int requestCode, int resultCode, Intent intent) {

@Override
public void onBackStackChanged() {

if (!isDualPaneMode()) return;
FragmentManager fm = getSupportFragmentManager();
Fragment fragment = fm.findFragmentById(PANE_LEFT);
View main_view = findViewById(R.id.main);
boolean left_pane_used = fragment != null && fragment.isAdded() ;
main_view.setVisibility(left_pane_used ? View.GONE : View.VISIBLE);
setPagingEnabled(!left_pane_used);
}

@Override
Expand Down Expand Up @@ -184,14 +191,18 @@ public void onDestroy() {
cleanDatabasesByItemLimit(this);
super.onDestroy();
}

private void navigateToTop() {
if (isDualPaneMode()) {
getSupportFragmentManager().popBackStack();
}
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case MENU_HOME:
if (isDualPaneMode()) {
getSupportFragmentManager().popBackStack();
}
navigateToTop();
break;
case MENU_COMPOSE:
startActivity(new Intent(INTENT_ACTION_COMPOSE));
Expand Down
12 changes: 1 addition & 11 deletions src/org/mariotaku/twidere/fragment/AccountsFragment.java
Expand Up @@ -48,7 +48,7 @@
import android.widget.ImageView;
import android.widget.ListView;

public class AccountsFragment extends BaseListFragment implements LoaderCallbacks<Cursor>, OnBackStackChangedListener {
public class AccountsFragment extends BaseListFragment implements LoaderCallbacks<Cursor>{

private ListView mListView;

Expand Down Expand Up @@ -82,7 +82,6 @@ public void onReceive(Context context, Intent intent) {
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
getFragmentManager().addOnBackStackChangedListener(this);
LazyImageLoader imageloader = ((TwidereApplication) getActivity().getApplication()).getProfileImageLoader();
mResolver = getActivity().getContentResolver();
mAdapter = new AccountsAdapter(getActivity(), imageloader);
Expand All @@ -109,15 +108,6 @@ public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
}

@Override
public void onBackStackChanged() {
if (getActivity() instanceof HomeActivity) {
boolean is_displaying_details = mDetailFragment != null && mDetailFragment.isAdded();
((HomeActivity) getActivity()).setPagingEnabled(!is_displaying_details);
}

}

@Override
public boolean onContextItemSelected(MenuItem item) {
Intent intent;
Expand Down
18 changes: 12 additions & 6 deletions src/org/mariotaku/twidere/fragment/BaseStatusesListFragment.java
Expand Up @@ -333,6 +333,8 @@ public void onStop() {
}
super.onStop();
}

private Fragment mDetailFragment;

private void openStatus(ParcelableStatus status) {
final long account_id = status.account_id, status_id = status.status_id;
Expand All @@ -341,12 +343,16 @@ private void openStatus(ParcelableStatus status) {
bundle.putParcelable(INTENT_KEY_STATUS, status);
if (activity instanceof HomeActivity && ((HomeActivity) activity).isDualPaneMode()) {
HomeActivity home_activity = (HomeActivity) activity;
Fragment fragment = new ViewStatusFragment();
Bundle args = new Bundle(bundle);
args.putLong(INTENT_KEY_ACCOUNT_ID, account_id);
args.putLong(INTENT_KEY_STATUS_ID, status_id);
fragment.setArguments(args);
home_activity.showAtPane(HomeActivity.PANE_RIGHT, fragment, true);
if (mDetailFragment instanceof ViewStatusFragment && mDetailFragment.isAdded()) {
((ViewStatusFragment)mDetailFragment).displayStatus(status);
} else {
mDetailFragment = new ViewStatusFragment();
Bundle args = new Bundle(bundle);
args.putLong(INTENT_KEY_ACCOUNT_ID, account_id);
args.putLong(INTENT_KEY_STATUS_ID, status_id);
mDetailFragment.setArguments(args);
home_activity.showAtPane(HomeActivity.PANE_RIGHT, mDetailFragment, true);
}
} else {
Uri.Builder builder = new Uri.Builder();
builder.scheme(SCHEME_TWIDERE);
Expand Down
12 changes: 1 addition & 11 deletions src/org/mariotaku/twidere/fragment/SearchTweetsFragment.java
Expand Up @@ -14,8 +14,7 @@
import android.support.v4.app.FragmentManager.OnBackStackChangedListener;
import android.support.v4.content.Loader;

public class SearchTweetsFragment extends BaseStatusesListFragment<List<ParcelableStatus>> implements
OnBackStackChangedListener {
public class SearchTweetsFragment extends BaseStatusesListFragment<List<ParcelableStatus>> {

private ParcelableStatusesAdapter mAdapter;
private final List<ParcelableStatus> mData = new ArrayList<ParcelableStatus>();
Expand Down Expand Up @@ -46,14 +45,6 @@ public void onActivityCreated(Bundle savedInstanceState) {
LazyImageLoader imageloader = ((TwidereApplication) getActivity().getApplication()).getProfileImageLoader();
mAdapter = new ParcelableStatusesAdapter(getActivity(), imageloader);
super.onActivityCreated(savedInstanceState);
getFragmentManager().addOnBackStackChangedListener(this);
}

@Override
public void onBackStackChanged() {
if (getActivity() instanceof HomeActivity) {
((HomeActivity) getActivity()).setPagingEnabled(!isAdded());
}
}

@Override
Expand All @@ -72,7 +63,6 @@ public Loader<List<ParcelableStatus>> onCreateLoader(int id, Bundle args) {
@Override
public void onDestroyView() {
mData.clear();
getFragmentManager().removeOnBackStackChangedListener(this);
super.onDestroyView();
}

Expand Down
13 changes: 2 additions & 11 deletions src/org/mariotaku/twidere/fragment/UserFavoritesFragment.java
Expand Up @@ -14,8 +14,8 @@
import android.support.v4.app.FragmentManager.OnBackStackChangedListener;
import android.support.v4.content.Loader;

public class UserFavoritesFragment extends BaseStatusesListFragment<List<ParcelableStatus>> implements
OnBackStackChangedListener {
public class UserFavoritesFragment extends BaseStatusesListFragment<List<ParcelableStatus>>
{

private ParcelableStatusesAdapter mAdapter;
private final List<ParcelableStatus> mData = new ArrayList<ParcelableStatus>();
Expand Down Expand Up @@ -46,14 +46,6 @@ public void onActivityCreated(Bundle savedInstanceState) {
LazyImageLoader imageloader = ((TwidereApplication) getActivity().getApplication()).getProfileImageLoader();
mAdapter = new ParcelableStatusesAdapter(getActivity(), imageloader);
super.onActivityCreated(savedInstanceState);
getFragmentManager().addOnBackStackChangedListener(this);
}

@Override
public void onBackStackChanged() {
if (getActivity() instanceof HomeActivity) {
((HomeActivity) getActivity()).setPagingEnabled(!isAdded());
}
}

@Override
Expand All @@ -76,7 +68,6 @@ else if (screen_name != null)
@Override
public void onDestroyView() {
mData.clear();
getFragmentManager().removeOnBackStackChangedListener(this);
super.onDestroyView();
}

Expand Down
11 changes: 1 addition & 10 deletions src/org/mariotaku/twidere/fragment/UserProfileFragment.java
Expand Up @@ -59,7 +59,7 @@
import android.widget.TextView;

public class UserProfileFragment extends BaseListFragment implements OnClickListener, OnLongClickListener,
OnItemClickListener, OnItemLongClickListener, OnBackStackChangedListener {
OnItemClickListener, OnItemLongClickListener {

private LazyImageLoader mProfileImageLoader;
private ImageView mProfileImage;
Expand Down Expand Up @@ -112,7 +112,6 @@ public void onReceive(Context context, Intent intent) {
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
getFragmentManager().addOnBackStackChangedListener(this);
Bundle args = getArguments();
long user_id = -1;
String screen_name = null;
Expand Down Expand Up @@ -144,13 +143,6 @@ public void onActivityCreated(Bundle savedInstanceState) {

}

@Override
public void onBackStackChanged() {
if (getActivity() instanceof HomeActivity) {
((HomeActivity) getActivity()).setPagingEnabled(!isAdded());
}
}

@Override
public void onClick(View view) {
switch (view.getId()) {
Expand Down Expand Up @@ -199,7 +191,6 @@ public void onDestroyView() {
if (mUserInfoTask != null) {
mUserInfoTask.cancel(true);
}
getFragmentManager().removeOnBackStackChangedListener(this);
super.onDestroyView();
}

Expand Down
12 changes: 1 addition & 11 deletions src/org/mariotaku/twidere/fragment/UserTimelineFragment.java
Expand Up @@ -14,8 +14,7 @@
import android.support.v4.app.FragmentManager.OnBackStackChangedListener;
import android.support.v4.content.Loader;

public class UserTimelineFragment extends BaseStatusesListFragment<List<ParcelableStatus>> implements
OnBackStackChangedListener {
public class UserTimelineFragment extends BaseStatusesListFragment<List<ParcelableStatus>> {

private ParcelableStatusesAdapter mAdapter;
private final List<ParcelableStatus> mData = new ArrayList<ParcelableStatus>();
Expand Down Expand Up @@ -46,14 +45,6 @@ public void onActivityCreated(Bundle savedInstanceState) {
LazyImageLoader imageloader = ((TwidereApplication) getActivity().getApplication()).getProfileImageLoader();
mAdapter = new ParcelableStatusesAdapter(getActivity(), imageloader);
super.onActivityCreated(savedInstanceState);
getFragmentManager().addOnBackStackChangedListener(this);
}

@Override
public void onBackStackChanged() {
if (getActivity() instanceof HomeActivity) {
((HomeActivity) getActivity()).setPagingEnabled(!isAdded());
}
}

@Override
Expand All @@ -76,7 +67,6 @@ else if (screen_name != null)
@Override
public void onDestroyView() {
mData.clear();
getFragmentManager().removeOnBackStackChangedListener(this);
super.onDestroyView();
}

Expand Down
44 changes: 34 additions & 10 deletions src/org/mariotaku/twidere/fragment/ViewConversationFragment.java
Expand Up @@ -9,6 +9,7 @@
import org.mariotaku.popupmenu.PopupMenu;
import org.mariotaku.popupmenu.PopupMenu.OnMenuItemClickListener;
import org.mariotaku.twidere.R;
import org.mariotaku.twidere.activity.HomeActivity;
import org.mariotaku.twidere.adapter.ParcelableStatusesAdapter;
import org.mariotaku.twidere.app.TwidereApplication;
import org.mariotaku.twidere.util.LazyImageLoader;
Expand All @@ -28,6 +29,7 @@
import android.os.Handler;
import android.os.Message;
import android.os.SystemClock;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.view.MenuItem;
import android.view.View;
Expand Down Expand Up @@ -100,16 +102,7 @@ public void onDestroyView() {
@Override
public void onItemClick(AdapterView<?> adapter, View view, int position, long id) {
ParcelableStatus status = mAdapter.findItem(id);
Uri.Builder builder = new Uri.Builder();
builder.scheme(SCHEME_TWIDERE);
builder.authority(AUTHORITY_STATUS);
builder.appendQueryParameter(QUERY_PARAM_ACCOUNT_ID, String.valueOf(status.account_id));
builder.appendQueryParameter(QUERY_PARAM_STATUS_ID, String.valueOf(status.status_id));
Intent intent = new Intent(Intent.ACTION_DEFAULT, builder.build());
Bundle bundle = new Bundle();
bundle.putParcelable(INTENT_KEY_STATUS, status);
intent.putExtras(bundle);
startActivity(intent);
openStatus(status);
}

@Override
Expand All @@ -129,6 +122,37 @@ public boolean onItemLongClick(AdapterView<?> adapter, View view, int position,
return false;
}

private Fragment mDetailFragment;
private void openStatus(ParcelableStatus status) {
final long account_id = status.account_id, status_id = status.status_id;
FragmentActivity activity = getActivity();
Bundle bundle = new Bundle();
bundle.putParcelable(INTENT_KEY_STATUS, status);
if (activity instanceof HomeActivity && ((HomeActivity) activity).isDualPaneMode()) {
HomeActivity home_activity = (HomeActivity) activity;
if (mDetailFragment instanceof ViewStatusFragment && mDetailFragment.isAdded()) {
((ViewStatusFragment)mDetailFragment).displayStatus(status);
} else {
mDetailFragment = new ViewStatusFragment();
Bundle args = new Bundle(bundle);
args.putLong(INTENT_KEY_ACCOUNT_ID, account_id);
args.putLong(INTENT_KEY_STATUS_ID, status_id);
mDetailFragment.setArguments(args);
home_activity.showAtPane(HomeActivity.PANE_RIGHT, mDetailFragment, true);
}
} else {
Uri.Builder builder = new Uri.Builder();
builder.scheme(SCHEME_TWIDERE);
builder.authority(AUTHORITY_STATUS);
builder.appendQueryParameter(QUERY_PARAM_ACCOUNT_ID, String.valueOf(account_id));
builder.appendQueryParameter(QUERY_PARAM_STATUS_ID, String.valueOf(status_id));
Intent intent = new Intent(Intent.ACTION_VIEW, builder.build());

intent.putExtras(bundle);
startActivity(intent);
}
}

@Override
public boolean onMenuItemClick(MenuItem item) {
if (mSelectedStatus != null) {
Expand Down

0 comments on commit b5266d5

Please sign in to comment.