diff --git a/res/layout/message_view_header.xml b/res/layout/message_view_header.xml index 473996f8d..cb366797d 100644 --- a/res/layout/message_view_header.xml +++ b/res/layout/message_view_header.xml @@ -153,34 +153,16 @@ - - - - - - diff --git a/res/menu/message_list_option.xml b/res/menu/message_list_option.xml index e868bf835..cf4161acb 100644 --- a/res/menu/message_list_option.xml +++ b/res/menu/message_list_option.xml @@ -112,6 +112,14 @@ android:showAsAction="never" android:title="@string/mark_as_unread_action"/> + + + + Remove star Copy Select text + Show headers + Hide headers Switch to dark theme Switch to light theme diff --git a/src/com/fsck/k9/activity/MessageList.java b/src/com/fsck/k9/activity/MessageList.java index a86b31022..6e65fcd52 100644 --- a/src/com/fsck/k9/activity/MessageList.java +++ b/src/com/fsck/k9/activity/MessageList.java @@ -838,6 +838,12 @@ public class MessageList extends K9FragmentActivity implements MessageListFragme mMessageViewFragment.onSelectText(); return true; } + case R.id.show_headers: + case R.id.hide_headers: { + mMessageViewFragment.onToggleAllHeadersView(); + updateMenu(); + return true; + } } if (!mSingleFolderMode) { @@ -927,6 +933,8 @@ public class MessageList extends K9FragmentActivity implements MessageListFragme menu.findItem(R.id.toggle_unread).setVisible(false); menu.findItem(R.id.select_text).setVisible(false); menu.findItem(R.id.toggle_message_view_theme).setVisible(false); + menu.findItem(R.id.show_headers).setVisible(false); + menu.findItem(R.id.hide_headers).setVisible(false); } else { // hide prev/next buttons in split mode if (mDisplayMode != DisplayMode.MESSAGE_VIEW) { @@ -974,6 +982,13 @@ public class MessageList extends K9FragmentActivity implements MessageListFragme menu.findItem(R.id.archive).setVisible(false); menu.findItem(R.id.spam).setVisible(false); } + + if (mMessageViewFragment.allHeadersVisible()) { + menu.findItem(R.id.show_headers).setVisible(false); + } else { + menu.findItem(R.id.hide_headers).setVisible(false); + } + } diff --git a/src/com/fsck/k9/fragment/MessageViewFragment.java b/src/com/fsck/k9/fragment/MessageViewFragment.java index 51f5723c3..fefa26f48 100644 --- a/src/com/fsck/k9/fragment/MessageViewFragment.java +++ b/src/com/fsck/k9/fragment/MessageViewFragment.java @@ -276,6 +276,14 @@ public class MessageViewFragment extends SherlockFragment implements OnClickList } } + public void onToggleAllHeadersView() { + mMessageView.getMessageHeaderView().onShowAdditionalHeaders(); + } + + public boolean allHeadersVisible() { + return mMessageView.getMessageHeaderView().additionalHeadersVisible(); + } + private void delete() { if (mMessage != null) { // Disable the delete button after it's tapped (to try to prevent diff --git a/src/com/fsck/k9/view/MessageHeader.java b/src/com/fsck/k9/view/MessageHeader.java index 3d08f4946..c0bd45db9 100644 --- a/src/com/fsck/k9/view/MessageHeader.java +++ b/src/com/fsck/k9/view/MessageHeader.java @@ -59,7 +59,6 @@ public class MessageHeader extends ScrollView implements OnClickListener { private Account mAccount; private FontSizes mFontSizes = K9.getFontSizes(); private Contacts mContacts; - private ImageView mShowAdditionalHeadersIcon; private SavedState mSavedState; private OnLayoutChangedListener mOnLayoutChangedListener; @@ -99,7 +98,6 @@ public class MessageHeader extends ScrollView implements OnClickListener { mDateView = (TextView) findViewById(R.id.date); mTimeView = (TextView) findViewById(R.id.time); mFlagged = (CheckBox) findViewById(R.id.flagged); - mShowAdditionalHeadersIcon = (ImageView) findViewById(R.id.show_additional_headers_icon); defaultSubjectColor = mSubjectView.getCurrentTextColor(); mSubjectView.setTextSize(TypedValue.COMPLEX_UNIT_SP, mFontSizes.getMessageViewSubject()); @@ -111,7 +109,6 @@ public class MessageHeader extends ScrollView implements OnClickListener { mToView.setTextSize(TypedValue.COMPLEX_UNIT_SP, mFontSizes.getMessageViewTo()); mCcView.setTextSize(TypedValue.COMPLEX_UNIT_SP, mFontSizes.getMessageViewCC()); - mShowAdditionalHeadersIcon.setOnClickListener(this); mFromView.setOnClickListener(this); mToView.setOnClickListener(this); mCcView.setOnClickListener(this); @@ -127,10 +124,6 @@ public class MessageHeader extends ScrollView implements OnClickListener { @Override public void onClick(View view) { switch (view.getId()) { - case R.id.show_additional_headers_icon: { - onShowAdditionalHeaders(); - break; - } case R.id.from: { onAddSenderToContacts(); break; @@ -173,7 +166,6 @@ public class MessageHeader extends ScrollView implements OnClickListener { private void hideAdditionalHeaders() { mAdditionalHeadersView.setVisibility(View.GONE); mAdditionalHeadersView.setText(""); - mShowAdditionalHeadersIcon.setImageResource(R.drawable.show_more); } @@ -192,7 +184,6 @@ public class MessageHeader extends ScrollView implements OnClickListener { // Show the additional headers that we have got. populateAdditionalHeadersView(additionalHeaders); mAdditionalHeadersView.setVisibility(View.VISIBLE); - mShowAdditionalHeadersIcon.setImageResource(R.drawable.show_less); } if (!allHeadersDownloaded) { /*