Replace ActionBarSherlock with AppCompat

pull/46/merge
Alex Baker 11 years ago
parent cda6773970
commit 63639cf47a

@ -68,8 +68,9 @@ android.applicationVariants.all { variant ->
}
dependencies {
compile 'com.android.support:support-v4:19.0.+'
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
compile group: 'com.android.support', name: 'support-v4', version: '19.0.+'
compile group: 'com.android.support', name: 'appcompat-v7', version: '19.0.+'
compile 'net.simonvt.menudrawer:menudrawer:3.0.4@aar'
compile project(":android-aac-enc")

@ -15,6 +15,7 @@
-keep class com.todoroo.astrid.data.*
-keep class com.todoroo.astrid.helper.AmazonRequestsHelper
-keep class android.support.v4.**
-keep class android.support.v7.**
-keep class com.google.gson.stream.JsonReader {
public void setLenient(boolean);
}
@ -26,19 +27,12 @@
-dontwarn com.google.**
-dontnote com.google.common.base.**
#actionbarsherlock preserves
-keep class android.support.v4.app.** { *; }
-keep interface android.support.v4.app.** { *; }
-keep class com.actionbarsherlock.** { *; }
-keep interface com.actionbarsherlock.** { *; }
-keepattributes *Annotation*
-keepclassmembers class **.R$* {
public static <fields>;
}
-dontwarn com.actionbarsherlock.internal.**
# android default preserves
-keep public class * extends android.app.Activity
-keep public class * extends android.app.Application

@ -8,9 +8,9 @@ package com.todoroo.astrid.actfm;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentTransaction;
import android.support.v7.app.ActionBar;
import android.view.MenuItem;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.view.MenuItem;
import com.todoroo.andlib.utility.AndroidUtilities;
import com.todoroo.astrid.activity.AstridActivity;
import com.todoroo.astrid.service.ThemeService;

@ -10,12 +10,17 @@ import android.content.Intent;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.support.v7.app.ActionBar;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.util.TypedValue;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
@ -28,11 +33,6 @@ import android.widget.ListView;
import android.widget.TextView;
import android.widget.TextView.OnEditorActionListener;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.app.SherlockListFragment;
import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuInflater;
import com.actionbarsherlock.view.MenuItem;
import com.todoroo.andlib.service.Autowired;
import com.todoroo.andlib.service.DependencyInjectionService;
import com.todoroo.astrid.actfm.ActFmCameraModule.CameraResultCallback;
@ -47,7 +47,7 @@ import com.todoroo.astrid.data.UserActivity;
import org.json.JSONObject;
import org.tasks.R;
public abstract class CommentsFragment extends SherlockListFragment {
public abstract class CommentsFragment extends ListFragment {
// private TagData tagData;
protected UpdateAdapter updateAdapter;

@ -10,19 +10,19 @@ import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBarActivity;
import android.text.TextUtils;
import android.util.DisplayMetrics;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup.LayoutParams;
import android.view.Window;
import android.view.inputmethod.InputMethodManager;
import android.widget.EditText;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.app.SherlockFragmentActivity;
import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuItem;
import com.actionbarsherlock.view.Window;
import com.todoroo.andlib.service.Autowired;
import com.todoroo.andlib.service.DependencyInjectionService;
import com.todoroo.andlib.utility.AndroidUtilities;
@ -42,7 +42,9 @@ import org.json.JSONArray;
import org.json.JSONObject;
import org.tasks.R;
public class TagSettingsActivity extends SherlockFragmentActivity {
import static android.support.v4.view.MenuItemCompat.setShowAsAction;
public class TagSettingsActivity extends ActionBarActivity {
public static final String TOKEN_NEW_FILTER = "newFilter"; //$NON-NLS-1$
@ -293,13 +295,13 @@ public class TagSettingsActivity extends SherlockFragmentActivity {
if (Preferences.getBoolean(R.string.p_save_and_cancel, false)) {
item = menu.add(Menu.NONE, MENU_DISCARD_ID, 0, R.string.TEA_menu_discard);
item.setIcon(ThemeService.getDrawable(R.drawable.ic_action_cancel));
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
setShowAsAction(item, MenuItem.SHOW_AS_ACTION_IF_ROOM);
}
if (isDialog) {
item = menu.add(Menu.NONE, MENU_SAVE_ID, 0, R.string.TEA_menu_save);
item.setIcon(ThemeService.getDrawable(R.drawable.ic_action_save));
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
setShowAsAction(item, MenuItem.SHOW_AS_ACTION_IF_ROOM);
}
return super.onCreateOptionsMenu(menu);
}

@ -13,12 +13,12 @@ import android.speech.SpeechRecognizer;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.view.WindowManager.BadTokenException;
import android.widget.EditText;
import android.widget.Toast;
import com.actionbarsherlock.app.SherlockFragmentActivity;
import com.todoroo.aacenc.RecognizerApi.RecognizerApiListener;
import com.todoroo.andlib.service.Autowired;
import com.todoroo.andlib.service.ContextManager;
@ -57,7 +57,7 @@ import org.tasks.R;
* @author Arne
*
*/
public class AstridActivity extends SherlockFragmentActivity
public class AstridActivity extends ActionBarActivity
implements FilterListFragment.OnFilterItemClickedListener,
TaskListFragment.OnTaskListItemClickedListener,
RecognizerApiListener {

@ -16,10 +16,13 @@ import android.content.IntentFilter;
import android.graphics.Bitmap;
import android.graphics.drawable.BitmapDrawable;
import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.view.inputmethod.EditorInfo;
@ -34,9 +37,6 @@ import android.widget.TextView;
import android.widget.TextView.OnEditorActionListener;
import android.widget.Toast;
import com.actionbarsherlock.app.SherlockListFragment;
import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuItem;
import com.todoroo.astrid.adapter.FilterAdapter;
import com.todoroo.astrid.api.AstridApiConstants;
import com.todoroo.astrid.api.Filter;
@ -51,7 +51,7 @@ import org.tasks.R;
* @author Tim Su <tim@todoroo.com>
*
*/
public class FilterListFragment extends SherlockListFragment {
public class FilterListFragment extends ListFragment {
public static final String TAG_FILTERLIST_FRAGMENT = "filterlist_fragment"; //$NON-NLS-1$

@ -7,9 +7,9 @@ package com.todoroo.astrid.activity;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.app.ActionBar;
import android.view.KeyEvent;
import com.actionbarsherlock.app.ActionBar;
import com.todoroo.andlib.utility.AndroidUtilities;
import com.todoroo.astrid.service.ThemeService;
@ -22,15 +22,11 @@ public class TaskEditActivity extends AstridActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
ThemeService.applyTheme(this);
ActionBar actionBar = getSupportActionBar();
if(ThemeService.getTheme() == R.style.Tasks) {
actionBar.setLogo(R.drawable.ic_action_save_light);
} else {
actionBar.setLogo(R.drawable.ic_action_save);
}
super.onCreate(savedInstanceState);
setContentView(R.layout.task_edit_wrapper_activity);
ActionBar actionBar = getSupportActionBar();
setContentView(R.layout.task_edit_wrapper_activity);
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setDisplayShowTitleEnabled(true);

@ -16,11 +16,15 @@ import android.graphics.Bitmap;
import android.os.Bundle;
import android.os.Handler;
import android.speech.RecognizerIntent;
import android.support.v4.app.Fragment;
import android.support.v4.view.ViewPager;
import android.text.TextUtils;
import android.util.DisplayMetrics;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.View.MeasureSpec;
import android.view.ViewGroup;
@ -37,10 +41,6 @@ import android.widget.LinearLayout;
import android.widget.ScrollView;
import android.widget.Toast;
import com.actionbarsherlock.app.SherlockFragment;
import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuInflater;
import com.actionbarsherlock.view.MenuItem;
import com.todoroo.andlib.service.Autowired;
import com.todoroo.andlib.service.DependencyInjectionService;
import com.todoroo.andlib.service.ExceptionService;
@ -94,6 +94,8 @@ import java.util.HashMap;
import java.util.List;
import java.util.concurrent.atomic.AtomicReference;
import static android.support.v4.view.MenuItemCompat.setShowAsAction;
/**
* This activity is responsible for creating new tasks and editing existing
* ones. It saves a task when it is paused (screen rotated, back button pressed)
@ -102,7 +104,7 @@ import java.util.concurrent.atomic.AtomicReference;
* @author timsu
*
*/
public final class TaskEditFragment extends SherlockFragment implements
public final class TaskEditFragment extends Fragment implements
ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
public static final String TAG_TASKEDIT_FRAGMENT = "taskedit_fragment"; //$NON-NLS-1$
@ -980,15 +982,15 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
item = menu.add(Menu.NONE, MENU_ATTACH_ID, 0, R.string.premium_attach_file);
item.setIcon(ThemeService.getDrawable(R.drawable.ic_action_new_attachment));
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
setShowAsAction(item, MenuItem.SHOW_AS_ACTION_ALWAYS);
item = menu.add(Menu.NONE, MENU_RECORD_ID, 0, R.string.premium_record_audio);
item.setIcon(ThemeService.getDrawable(R.drawable.ic_action_mic));
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
setShowAsAction(item, MenuItem.SHOW_AS_ACTION_ALWAYS);
item = menu.add(Menu.NONE, MENU_DELETE_TASK_ID, 0, R.string.delete_task);
item.setIcon(ThemeService.getDrawable(R.drawable.ic_action_discard));
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
setShowAsAction(item, MenuItem.SHOW_AS_ACTION_ALWAYS);
boolean useSaveAndCancel = Preferences.getBoolean(R.string.p_save_and_cancel, false);
@ -996,13 +998,13 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
if (useSaveAndCancel) {
item = menu.add(Menu.NONE, MENU_DISCARD_ID, 0, R.string.TEA_menu_discard);
item.setIcon(ThemeService.getDrawable(R.drawable.ic_action_cancel));
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
setShowAsAction(item, MenuItem.SHOW_AS_ACTION_ALWAYS);
}
if (!(getActivity() instanceof TaskEditActivity)) {
item = menu.add(Menu.NONE, MENU_SAVE_ID, 0, R.string.TEA_menu_save);
item.setIcon(ThemeService.getDrawable(R.drawable.ic_action_save));
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
setShowAsAction(item, MenuItem.SHOW_AS_ACTION_ALWAYS);
}
}
}

@ -14,16 +14,16 @@ import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.support.v7.app.ActionBar;
import android.util.TypedValue;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.view.inputmethod.InputMethodManager;
import android.widget.FrameLayout;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuItem;
import com.todoroo.andlib.sql.QueryTemplate;
import com.todoroo.andlib.utility.AndroidUtilities;
import com.todoroo.andlib.utility.Preferences;
@ -148,15 +148,9 @@ public class TaskListActivity extends AstridActivity implements OnPageChangeList
}
}
@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
menuDrawer.closeMenu();
return super.onMenuItemSelected(featureId, item);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getSupportMenuInflater().inflate(R.menu.task_list_activity, menu);
getMenuInflater().inflate(R.menu.task_list_activity, menu);
TaskListFragment tlf = getTaskListFragment();
if(tlf instanceof TagViewFragment) {
menu.findItem(R.id.menu_delete_list).setVisible(true);

@ -22,12 +22,16 @@ import android.database.sqlite.SQLiteException;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.ListFragment;
import android.text.TextUtils;
import android.util.Log;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
@ -40,9 +44,6 @@ import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListView;
import android.widget.TextView;
import com.actionbarsherlock.app.SherlockListFragment;
import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuItem;
import com.todoroo.andlib.data.Property;
import com.todoroo.andlib.data.TodorooCursor;
import com.todoroo.andlib.service.Autowired;
@ -105,7 +106,7 @@ import java.util.concurrent.atomic.AtomicReference;
* @author Tim Su <tim@todoroo.com>
*
*/
public class TaskListFragment extends SherlockListFragment implements OnSortSelectedListener {
public class TaskListFragment extends ListFragment implements OnSortSelectedListener {
public static final String TAG_TASKLIST_FRAGMENT = "tasklist_fragment"; //$NON-NLS-1$
@ -416,7 +417,7 @@ public class TaskListFragment extends SherlockListFragment implements OnSortSele
* Create options menu (displayed when user presses menu key)
*/
@Override
public void onCreateOptionsMenu(Menu menu, com.actionbarsherlock.view.MenuInflater inflater) {
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
Activity activity = getActivity();
if (activity == null) {
return;

@ -15,20 +15,20 @@ import android.database.Cursor;
import android.graphics.drawable.BitmapDrawable;
import android.os.Bundle;
import android.os.Parcelable;
import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBarActivity;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnCreateContextMenuListener;
import android.widget.Button;
import android.widget.ListView;
import android.widget.TextView;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.app.SherlockFragmentActivity;
import com.actionbarsherlock.view.MenuItem;
import com.todoroo.andlib.data.Property.CountProperty;
import com.todoroo.andlib.service.Autowired;
import com.todoroo.andlib.service.ContextManager;
@ -66,7 +66,7 @@ import java.util.Map.Entry;
* @author Tim Su <tim@todoroo.com>
*
*/
public class CustomFilterActivity extends SherlockFragmentActivity {
public class CustomFilterActivity extends ActionBarActivity {
private static final String IDENTIFIER_TITLE = "title"; //$NON-NLS-1$
private static final String IDENTIFIER_IMPORTANCE = "importance"; //$NON-NLS-1$

@ -9,9 +9,9 @@ import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Intent;
import android.os.Bundle;
import android.view.MenuItem;
import android.widget.TextView;
import com.actionbarsherlock.view.MenuItem;
import com.todoroo.andlib.data.Property;
import com.todoroo.andlib.data.TodorooCursor;
import com.todoroo.andlib.service.Autowired;

@ -8,7 +8,7 @@
<!-- ========================================================== General -->
<style name="Tasks" parent="@style/Theme.Sherlock">
<style name="Tasks" parent="@style/Theme.AppCompat">
<item name="android:windowBackground">@null</item>
<item name="asContentBackground">@android:color/black</item>
<item name="asTextColor">#ffffff</item>
@ -47,21 +47,21 @@
<item name="actionOverflowButtonStyle">@style/AstridOverflowStyle</item>
</style>
<style name="AstridV11ActionBarStyle" parent="@style/Widget.Sherlock.ActionBar">
<style name="AstridV11ActionBarStyle" parent="@style/Widget.AppCompat.ActionBar">
<item name="android:background">@drawable/header_blue</item>
<item name="android:displayOptions">showHome|showTitle</item>
</style>
<style name="AstridActionBarStyle" parent="@style/Widget.Sherlock.ActionBar">
<style name="AstridActionBarStyle" parent="@style/Widget.AppCompat.ActionBar">
<item name="background">@drawable/header_blue</item>
<item name="displayOptions">showHome|showTitle</item>
</style>
<style name="AstridOverflowStyle" parent="Widget.Sherlock.ActionButton.Overflow">
<style name="AstridOverflowStyle" parent="Widget.AppCompat.ActionButton.Overflow">
<item name="android:src">@drawable/ic_action_overflow_light</item>
</style>
<style name="Tasks.Light" parent="@style/Theme.Sherlock.Light">
<style name="Tasks.Light" parent="@style/Theme.AppCompat.Light">
<item name="asContentBackground">@android:color/white</item>
<item name="asEditBackground">#e5e5e5</item>
<item name="asTextColor">#000000</item>
@ -102,15 +102,14 @@
<item name="background">@drawable/header_day_blue</item>
</style>
<style name="AstridOverflowStyle.Light" parent="Widget.Sherlock.ActionButton.Overflow">
<style name="AstridOverflowStyle.Light" parent="Widget.AppCompat.ActionButton.Overflow">
<item name="android:src">@drawable/ic_action_overflow</item>
</style>
<style name="Tasks.FullTransparent" parent="@style/Theme.Sherlock">
<style name="Tasks.FullTransparent" parent="@style/Theme.AppCompat">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:backgroundDimEnabled">false</item>
<item name="android:windowIsFloating">true</item>
</style>
@ -131,7 +130,6 @@
<item name="android:windowIsFloating">true</item>
<item name="android:windowBackground">@drawable/panel_background</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
<item name="android:layout_width">fill_parent</item>
@ -142,7 +140,6 @@
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="windowActionBar">false</item>
<item name="windowContentOverlay">@null</item>
<item name="asEditBackground">#101010</item>
<item name="asEditRowBackground">@drawable/task_edit_background</item>
<item name="asThemeTextColor">@color/blue_theme_color</item>
@ -230,7 +227,6 @@
<item name="android:windowBackground">@drawable/reminder_dialog_inset_background</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
</style>
@ -312,7 +308,6 @@
<item name="android:windowTitleStyle">@style/TEA_DialogWindowTitle</item>
<item name="android:windowBackground">@drawable/dialog_full_holo_dark</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustResize</item>
<item name="asTextColor">#ffffff</item>
@ -327,7 +322,6 @@
<item name="android:windowFrame">@null</item>
<item name="android:windowTitleStyle">@style/TEA_DialogWindowTitle</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustResize</item>
<item name="asTextColor">#ffffff</item>
@ -337,7 +331,6 @@
<item name="android:windowFrame">@null</item>
<item name="android:windowTitleStyle">@style/TEA_DialogWindowTitle</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustResize</item>
<item name="asTextColor">#000000</item>

Loading…
Cancel
Save