diff options
author | Kazuki Yamaguchi <k@rhe.jp> | 2017-10-05 09:35:33 +0900 |
---|---|---|
committer | Kazuki Yamaguchi <k@rhe.jp> | 2017-10-05 09:35:33 +0900 |
commit | 0f5f7dbc8a0a0751b69ac733be0d90416fc5cb5d (patch) | |
tree | 2c74bb2e1e825105bed3d148bafb9b2b360632d8 | |
parent | 3f354954d142557a74ef47fe1e0c7442459abbc8 (diff) | |
download | SmileEssence-0f5f7dbc8a0a0751b69ac733be0d90416fc5cb5d.tar.gz |
unyap
18 files changed, 69 insertions, 84 deletions
diff --git a/.idea/dictionaries/k.xml b/.idea/dictionaries/k.xml index 9f6b7db5..29029ab8 100644 --- a/.idea/dictionaries/k.xml +++ b/.idea/dictionaries/k.xml @@ -4,6 +4,7 @@ <w>favorited</w> <w>hashtags</w> <w>imageview</w> + <w>klass</w> <w>lacolaco</w> <w>listview</w> <w>noninfringement</w> diff --git a/app/app.iml b/app/app.iml index c8bdc13e..ad948429 100644 --- a/app/app.iml +++ b/app/app.iml @@ -62,13 +62,6 @@ <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" /> @@ -76,6 +69,13 @@ <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" /> + <sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" /> + <sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" /> + <sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" /> + <sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" /> + <sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" /> + <sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" /> + <sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/bundles" /> @@ -101,6 +101,7 @@ <orderEntry type="sourceFolder" forTests="false" /> <orderEntry type="library" exported="" name="orma-4.2.5" level="project" /> <orderEntry type="library" exported="" name="orma-migration-4.2.5" level="project" /> + <orderEntry type="library" exported="" name="haha-2.0.3" level="project" /> <orderEntry type="library" exported="" name="library-3.3.0-SNAPSHOT" level="project" /> <orderEntry type="library" exported="" name="support-core-ui-25.3.1" level="project" /> <orderEntry type="library" exported="" name="crashlytics-core-2.3.17" level="project" /> @@ -109,6 +110,7 @@ <orderEntry type="library" exported="" name="rxandroid-2.0.1" level="project" /> <orderEntry type="library" exported="" name="twitter4j-stream-4.0.6" level="project" /> <orderEntry type="library" exported="" name="rxjava-2.0.9" level="project" /> + <orderEntry type="library" exported="" name="leakcanary-analyzer-1.5.4" level="project" /> <orderEntry type="library" exported="" name="support-core-utils-25.3.1" level="project" /> <orderEntry type="library" exported="" name="support-fragment-25.3.1" level="project" /> <orderEntry type="library" exported="" name="reactive-streams-1.0.0" level="project" /> @@ -121,10 +123,12 @@ <orderEntry type="library" exported="" name="twitter4j-media-support-4.0.6" level="project" /> <orderEntry type="library" exported="" name="crouton-1.8.5" level="project" /> <orderEntry type="library" exported="" name="orma-annotations-4.2.5" level="project" /> + <orderEntry type="library" exported="" name="leakcanary-android-1.5.4" level="project" /> <orderEntry type="library" exported="" name="crashlytics-2.6.8" level="project" /> <orderEntry type="library" exported="" name="twitter4j-core-4.0.6" level="project" /> <orderEntry type="library" exported="" name="twitter-text-1.14.7" level="project" /> <orderEntry type="library" exported="" name="support-annotations-25.3.1" level="project" /> + <orderEntry type="library" exported="" name="leakcanary-watcher-1.5.4" level="project" /> <orderEntry type="library" exported="" name="support-compat-25.3.1" level="project" /> </component> </module>
\ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 9cd6a13f..c8100f59 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -71,11 +71,17 @@ dependencies { // twitter-text compile 'com.twitter:twitter-text:1.14.7' + annotationProcessor "com.github.gfx.android.orma:orma-processor:4.2.5" + compile "com.github.gfx.android.orma:orma:4.2.5" + // Fabric compile('com.crashlytics.sdk.android:crashlytics:2.6.8@aar') { transitive = true; } - annotationProcessor "com.github.gfx.android.orma:orma-processor:4.2.5" - compile "com.github.gfx.android.orma:orma:4.2.5" + // LeakCanary + + debugCompile 'com.squareup.leakcanary:leakcanary-android:1.5.4' + releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.4' + release2Compile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.4' }
\ No newline at end of file diff --git a/app/src/main/java/net/lacolaco/smileessence/Application.java b/app/src/main/java/net/lacolaco/smileessence/Application.java index 4ad94fb9..72af2630 100644 --- a/app/src/main/java/net/lacolaco/smileessence/Application.java +++ b/app/src/main/java/net/lacolaco/smileessence/Application.java @@ -28,6 +28,7 @@ import android.support.annotation.StringRes; import android.widget.Toast; import com.crashlytics.android.Crashlytics; import com.crashlytics.android.core.CrashlyticsCore; +import com.squareup.leakcanary.LeakCanary; import io.fabric.sdk.android.Fabric; import net.lacolaco.smileessence.data.Account; import net.lacolaco.smileessence.data.OrmaHolder; @@ -69,6 +70,11 @@ public class Application extends android.app.Application { @Override public void onCreate() { super.onCreate(); + if (LeakCanary.isInAnalyzerProcess(this)) { + return; + } + LeakCanary.install(this); + Fabric.with(this, new Crashlytics.Builder().core(new CrashlyticsCore.Builder().disabled(BuildConfig.DEBUG).build()).build()); OrmaHolder.initialize(this); diff --git a/app/src/main/java/net/lacolaco/smileessence/activity/MainActivity.java b/app/src/main/java/net/lacolaco/smileessence/activity/MainActivity.java index 8ba37f71..4997f3f1 100644 --- a/app/src/main/java/net/lacolaco/smileessence/activity/MainActivity.java +++ b/app/src/main/java/net/lacolaco/smileessence/activity/MainActivity.java @@ -53,6 +53,8 @@ import net.lacolaco.smileessence.view.adapter.PageListAdapter; import net.lacolaco.smileessence.view.dialog.ConfirmDialogFragment; import net.lacolaco.smileessence.view.page.*; +import java.lang.reflect.Field; + public class MainActivity extends Activity implements ViewPager.OnPageChangeListener { public static final int REQUEST_GET_PICTURE_FROM_GALLERY = 11; private final UIObserverBundle currentUserBundle = new UIObserverBundle(); @@ -99,15 +101,11 @@ public class MainActivity extends Activity implements ViewPager.OnPageChangeList } } - public void openSearchPage() { - setSelectedPageIndex(pagerAdapter.getIndex(SearchFragment.class)); - } - public void openSearchPage(String query) { SearchFragment fragment = (SearchFragment) pagerAdapter.getCachedFragment(pagerAdapter.getIndex(SearchFragment.class)); if (fragment != null) { fragment.startSearch(query); - openSearchPage(); + setSelectedPageIndex(pagerAdapter.getIndex(SearchFragment.class)); } } @@ -115,14 +113,10 @@ public class MainActivity extends Activity implements ViewPager.OnPageChangeList UserListFragment fragment = (UserListFragment) pagerAdapter.getCachedFragment(pagerAdapter.getIndex(UserListFragment.class)); if (fragment != null) { fragment.startUserList(listFullName); - openUserListPage(); + setSelectedPageIndex(pagerAdapter.getIndex(UserListFragment.class)); } } - private void openUserListPage() { - setSelectedPageIndex(pagerAdapter.getIndex(UserListFragment.class)); - } - // ------------------------ OVERRIDE METHODS ------------------------ @Override @@ -250,9 +244,26 @@ public class MainActivity extends Activity implements ViewPager.OnPageChangeList super.onDestroy(); currentUserBundle.detachAll(); Crouton.cancelAllCroutons(); + // Workaround for LeakCanary + fixCroutonLeak(); Logger.debug("onDestroy"); } + private void fixCroutonLeak() { + try { + Class klass = Class.forName("de.keyboardsurfer.android.widget.crouton.DefaultAnimationsBuilder"); + Field slideInDownAnimation = klass.getDeclaredField("slideInDownAnimation"); + slideInDownAnimation.setAccessible(true); + slideInDownAnimation.set(null, null); + Field slideOutUpAnimation = klass.getDeclaredField("slideOutUpAnimation"); + slideOutUpAnimation.setAccessible(true); + slideOutUpAnimation.set(null, null); + } catch (Exception e) { + Logger.error("crouton fix error: " + e); + } + } + + @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main, menu); @@ -268,9 +279,6 @@ public class MainActivity extends Activity implements ViewPager.OnPageChangeList startActivity(intent); return true; } - case R.id.actionbar_post: - openPostPage(); - return true; case R.id.actionbar_setting: startActivity(new Intent(this, SettingActivity.class)); return true; @@ -280,11 +288,6 @@ public class MainActivity extends Activity implements ViewPager.OnPageChangeList case R.id.actionbar_aclog: IntentUtils.openUri(this, world.getAccount().getUser().getAclogTimelineURL()); return true; - case R.id.actionbar_report: - world.getPostState().beginTransaction() - .appendText(getString(R.string.text_message_to_author, BuildConfig.VERSION_NAME)) - .commitWithOpen(this); - return true; default: return super.onOptionsItemSelected(item); } diff --git a/app/src/main/java/net/lacolaco/smileessence/activity/ManageAccountsActivity.java b/app/src/main/java/net/lacolaco/smileessence/activity/ManageAccountsActivity.java index 28d99ab6..af891fec 100644 --- a/app/src/main/java/net/lacolaco/smileessence/activity/ManageAccountsActivity.java +++ b/app/src/main/java/net/lacolaco/smileessence/activity/ManageAccountsActivity.java @@ -227,7 +227,7 @@ public class ManageAccountsActivity extends Activity implements AdapterView.OnIt } Account account = getItem(position); NetworkImageView iconView = (NetworkImageView) convertView.findViewById(R.id.account_icon); - ImageCache.getInstance().setImageToView(account.getUser().getProfileImageUrlOriginal(), iconView); + iconView.setImageUrl(account.getUser().getProfileImageUrlOriginal(), ImageCache.getImageLoader()); TextView textView = (TextView) convertView.findViewById(R.id.account_text_view); String text = "@" + account.getUser().getScreenName(); diff --git a/app/src/main/java/net/lacolaco/smileessence/data/ExtractionWord.java b/app/src/main/java/net/lacolaco/smileessence/data/ExtractionWord.java index a0206db2..334ab5e7 100644 --- a/app/src/main/java/net/lacolaco/smileessence/data/ExtractionWord.java +++ b/app/src/main/java/net/lacolaco/smileessence/data/ExtractionWord.java @@ -27,10 +27,7 @@ package net.lacolaco.smileessence.data; import com.github.gfx.android.orma.annotation.PrimaryKey; import com.github.gfx.android.orma.annotation.Table; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; +import java.util.*; import java.util.regex.Pattern; @Table @@ -47,8 +44,8 @@ public class ExtractionWord { this.patternString = patternString; } - public static synchronized List<ExtractionWord> cached() { - return new ArrayList<>(cache); + public static synchronized Collection<ExtractionWord> cached() { + return cache; } public static synchronized void load() { diff --git a/app/src/main/java/net/lacolaco/smileessence/data/ImageCache.java b/app/src/main/java/net/lacolaco/smileessence/data/ImageCache.java index e7a31716..daa2a443 100644 --- a/app/src/main/java/net/lacolaco/smileessence/data/ImageCache.java +++ b/app/src/main/java/net/lacolaco/smileessence/data/ImageCache.java @@ -32,14 +32,9 @@ import com.android.volley.toolbox.*; import net.lacolaco.smileessence.Application; public class ImageCache { - - // ------------------------------ FIELDS ------------------------------ - private static ImageCache instance = new ImageCache(); private ImageLoader imageLoader; - // -------------------------- STATIC METHODS -------------------------- - private ImageCache() { int cacheSizeInBytes = 64 * 1024 * 1024; // 64MB Cache diskCache = new DiskBasedCache(Application.getInstance().getCacheDir(), cacheSizeInBytes); @@ -48,27 +43,14 @@ public class ImageCache { requestQueue.start(); } - public static ImageCache getInstance() { - return instance; - } - - // -------------------------- OTHER METHODS -------------------------- - - public void setImageToView(String imageURL, NetworkImageView view) { - view.setImageUrl(imageURL, imageLoader); - } + public static ImageLoader getImageLoader() { return instance.imageLoader; } private static class ImageLruCache implements ImageLoader.ImageCache { private LruCache<String, Bitmap> cache; - // -------------------------- STATIC METHODS -------------------------- - private ImageLruCache() { - long memoryBytes = Runtime.getRuntime().maxMemory(); - int maxCount = (int) (memoryBytes / (8 * 1024)); - cache = new LruCache<>(maxCount); + cache = new LruCache<>(4 * 1024 * 1024); // 4MB } - // --------------------- Interface ImageCache --------------------- @Override public Bitmap getBitmap(String url) { diff --git a/app/src/main/java/net/lacolaco/smileessence/entity/DirectMessage.java b/app/src/main/java/net/lacolaco/smileessence/entity/DirectMessage.java index 5b19ee74..f2862151 100644 --- a/app/src/main/java/net/lacolaco/smileessence/entity/DirectMessage.java +++ b/app/src/main/java/net/lacolaco/smileessence/entity/DirectMessage.java @@ -3,12 +3,12 @@ package net.lacolaco.smileessence.entity; import net.lacolaco.smileessence.util.ListUtils; import java.util.Date; +import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; public class DirectMessage extends EntitySupport implements IdObject { - private static Map<Long, DirectMessage> storage = new ConcurrentHashMap<>(); + private static Map<Long, DirectMessage> storage = new HashMap<>(); private long id; private User sender; private User recipient; diff --git a/app/src/main/java/net/lacolaco/smileessence/entity/SavedSearch.java b/app/src/main/java/net/lacolaco/smileessence/entity/SavedSearch.java index fcb87605..8fcd0acd 100644 --- a/app/src/main/java/net/lacolaco/smileessence/entity/SavedSearch.java +++ b/app/src/main/java/net/lacolaco/smileessence/entity/SavedSearch.java @@ -1,10 +1,5 @@ package net.lacolaco.smileessence.entity; -import java.util.Collection; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - public class SavedSearch implements IdObject { private long id; private String query; @@ -18,6 +13,7 @@ public class SavedSearch implements IdObject { return new SavedSearch(obj.getId(), obj.getQuery()); } + @Override public long getId() { return id; } diff --git a/app/src/main/java/net/lacolaco/smileessence/entity/Tweet.java b/app/src/main/java/net/lacolaco/smileessence/entity/Tweet.java index 4aa461fa..c79c58ef 100644 --- a/app/src/main/java/net/lacolaco/smileessence/entity/Tweet.java +++ b/app/src/main/java/net/lacolaco/smileessence/entity/Tweet.java @@ -11,7 +11,7 @@ import java.util.*; import java.util.concurrent.ConcurrentHashMap; public class Tweet extends EntitySupport implements IdObject { - private static Map<Long, Tweet> storage = new ConcurrentHashMap<>(); + private static Map<Long, Tweet> storage = new HashMap<>(); private final long id; private User user; private String text; diff --git a/app/src/main/java/net/lacolaco/smileessence/entity/User.java b/app/src/main/java/net/lacolaco/smileessence/entity/User.java index a460fff2..abc2c047 100644 --- a/app/src/main/java/net/lacolaco/smileessence/entity/User.java +++ b/app/src/main/java/net/lacolaco/smileessence/entity/User.java @@ -2,11 +2,11 @@ package net.lacolaco.smileessence.entity; import net.lacolaco.smileessence.util.UIObservable; +import java.util.HashMap; import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; -public class User extends UIObservable { - private static Map<Long, User> storage = new ConcurrentHashMap<>(); +public class User extends UIObservable implements IdObject { + private static Map<Long, User> storage = new HashMap<>(); private long id; private boolean isProtected; private String screenName; @@ -102,6 +102,7 @@ public class User extends UIObservable { } } + @Override public long getId() { return id; } diff --git a/app/src/main/java/net/lacolaco/smileessence/view/Partials.java b/app/src/main/java/net/lacolaco/smileessence/view/Partials.java index bb14c11c..fc0e35cb 100644 --- a/app/src/main/java/net/lacolaco/smileessence/view/Partials.java +++ b/app/src/main/java/net/lacolaco/smileessence/view/Partials.java @@ -100,7 +100,7 @@ public class Partials { NetworkImageView icon = (NetworkImageView) convertView.findViewById(R.id.imageview_status_icon); String iconUrl = tweet.getOriginalTweet().getUser().getProfileImageUrlOriginal(); - ImageCache.getInstance().setImageToView(iconUrl, icon); + icon.setImageUrl(iconUrl, ImageCache.getImageLoader()); icon.setOnClickListener(v -> onIconClick(tweet, activity)); TextView header = (TextView) convertView.findViewById(R.id.textview_status_header); @@ -202,7 +202,7 @@ public class Partials { NetworkImageView icon = (NetworkImageView) convertView.findViewById(R.id.imageview_status_icon); String iconUrl = directMessage.getSender().getProfileImageUrlOriginal(); - ImageCache.getInstance().setImageToView(iconUrl, icon); + icon.setImageUrl(iconUrl, ImageCache.getImageLoader()); icon.setOnClickListener(v -> { UserDetailDialogFragment dialogFragment = new UserDetailDialogFragment(); dialogFragment.setUserID(directMessage.getSender().getId()); diff --git a/app/src/main/java/net/lacolaco/smileessence/view/adapter/EventListAdapter.java b/app/src/main/java/net/lacolaco/smileessence/view/adapter/EventListAdapter.java index 2ce0386d..3f98cfaa 100644 --- a/app/src/main/java/net/lacolaco/smileessence/view/adapter/EventListAdapter.java +++ b/app/src/main/java/net/lacolaco/smileessence/view/adapter/EventListAdapter.java @@ -108,7 +108,7 @@ public class EventListAdapter extends CustomListAdapter<Event> { private void updateViewUser(Event event, View convertedView) { NetworkImageView icon = (NetworkImageView) convertedView.findViewById(R.id.imageview_status_icon); String iconUrl = event.getSource().getProfileImageUrlOriginal(); - ImageCache.getInstance().setImageToView(iconUrl, icon); + icon.setImageUrl(iconUrl, ImageCache.getImageLoader()); TextView header = (TextView) convertedView.findViewById(R.id.textview_status_header); header.setText(event.getFormattedString()); diff --git a/app/src/main/java/net/lacolaco/smileessence/view/adapter/MessageListAdapter.java b/app/src/main/java/net/lacolaco/smileessence/view/adapter/MessageListAdapter.java index c2a53df9..9f8e5039 100644 --- a/app/src/main/java/net/lacolaco/smileessence/view/adapter/MessageListAdapter.java +++ b/app/src/main/java/net/lacolaco/smileessence/view/adapter/MessageListAdapter.java @@ -34,15 +34,16 @@ public class MessageListAdapter extends OrderedCustomListAdapter<DirectMessage> private final Activity activity; public MessageListAdapter(Activity activity) { + super(); this.activity = activity; } public long getLastID() { - return getItem(getCount() - 1).getId(); + return getCount() > 0 ? getItem(getCount() - 1).getId() : -1; } public long getTopID() { - return getItem(0).getId(); + return getCount() > 0 ? getItem(0).getId() : -1; } @Override diff --git a/app/src/main/java/net/lacolaco/smileessence/view/dialog/UserDetailDialogFragment.java b/app/src/main/java/net/lacolaco/smileessence/view/dialog/UserDetailDialogFragment.java index 9e036d32..c8d62fa8 100644 --- a/app/src/main/java/net/lacolaco/smileessence/view/dialog/UserDetailDialogFragment.java +++ b/app/src/main/java/net/lacolaco/smileessence/view/dialog/UserDetailDialogFragment.java @@ -38,7 +38,6 @@ import android.widget.TextView; import com.android.volley.toolbox.NetworkImageView; import com.handmark.pulltorefresh.library.PullToRefreshBase; import com.handmark.pulltorefresh.library.PullToRefreshListView; -import net.lacolaco.smileessence.Application; import net.lacolaco.smileessence.R; import net.lacolaco.smileessence.activity.MainActivity; import net.lacolaco.smileessence.data.Account; @@ -261,7 +260,7 @@ public class UserDetailDialogFragment extends StackableDialogFragment implements textViewName.setText(user.getName()); textViewScreenName.setText(user.getScreenName()); textViewProtected.setVisibility(user.isProtected() ? View.VISIBLE : View.GONE); - ImageCache.getInstance().setImageToView(user.getProfileImageUrlOriginal(), imageViewIcon); + imageViewIcon.setImageUrl(user.getProfileImageUrlOriginal(), ImageCache.getImageLoader()); } private void updateUserDataDetail() { @@ -284,7 +283,7 @@ public class UserDetailDialogFragment extends StackableDialogFragment implements textViewFollowerCount.setText(String.valueOf(user.getFollowersCount())); textViewFavoriteCount.setText(String.valueOf(user.getFavoritesCount())); - ImageCache.getInstance().setImageToView(user.getProfileBannerUrl(), imageViewHeader); + imageViewHeader.setImageUrl(user.getProfileBannerUrl(), ImageCache.getImageLoader()); } private void initUserData() { diff --git a/app/src/main/java/net/lacolaco/smileessence/view/page/PostFragment.java b/app/src/main/java/net/lacolaco/smileessence/view/page/PostFragment.java index f0c54f6f..c8426383 100644 --- a/app/src/main/java/net/lacolaco/smileessence/view/page/PostFragment.java +++ b/app/src/main/java/net/lacolaco/smileessence/view/page/PostFragment.java @@ -195,7 +195,6 @@ public class PostFragment extends PageFragment implements TextWatcher, View.OnFo @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { super.onCreateOptionsMenu(menu, inflater); - menu.removeItem(R.id.actionbar_post); SystemServiceHelper.showIM(getActivity(), editText); } diff --git a/app/src/main/res/menu/main.xml b/app/src/main/res/menu/main.xml index 37458740..5990cedd 100644 --- a/app/src/main/res/menu/main.xml +++ b/app/src/main/res/menu/main.xml @@ -1,11 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item - android:id="@+id/actionbar_post" - android:title="@string/actionbar_post" - android:icon="@drawable/icon_edit" - android:showAsAction="ifRoom"/> - <item android:id="@+id/actionbar_setting" android:title="@string/actionbar_setting" android:icon="@drawable/icon_settings" @@ -19,9 +14,4 @@ android:title="@string/actionbar_aclog" android:icon="@drawable/icon_website" android:showAsAction="never"/> - <item - android:id="@+id/actionbar_report" - android:title="@string/actionbar_report" - android:icon="@drawable/icon_email" - android:showAsAction="never"/> </menu>
\ No newline at end of file |