SuchABot has uploaded a new change for review. https://gerrit.wikimedia.org/r/76346
Change subject: [WIP] Move away from ActionBarSherlock into AppCompat ...................................................................... [WIP] Move away from ActionBarSherlock into AppCompat Mostly works, but needs testing before we can merge. Specifically around the menu items behavior on 2.3+ GitHub: https://github.com/wikimedia/apps-android-commons/pull/40 Change-Id: Ic70cf8a9054379bd5325a1c26a7f65690e061988 --- M commons/pom.xml M commons/res/menu/activity_share.xml M commons/res/menu/fragment_contributions_list.xml M commons/res/menu/fragment_image_detail.xml M commons/res/menu/fragment_multiple_upload_list.xml M commons/res/values-v14/styles.xml M commons/res/values/styles.xml M commons/src/main/java/org/wikimedia/commons/SettingsActivity.java M commons/src/main/java/org/wikimedia/commons/auth/AuthenticatedActivity.java M commons/src/main/java/org/wikimedia/commons/category/CategorizationFragment.java M commons/src/main/java/org/wikimedia/commons/contributions/ContributionsActivity.java M commons/src/main/java/org/wikimedia/commons/contributions/ContributionsListFragment.java M commons/src/main/java/org/wikimedia/commons/media/MediaDetailFragment.java M commons/src/main/java/org/wikimedia/commons/media/MediaDetailPagerFragment.java M commons/src/main/java/org/wikimedia/commons/upload/MultipleShareActivity.java M commons/src/main/java/org/wikimedia/commons/upload/MultipleUploadListFragment.java M commons/src/main/java/org/wikimedia/commons/upload/ShareActivity.java M commons/src/main/java/org/wikimedia/commons/upload/SingleUploadFragment.java 18 files changed, 72 insertions(+), 91 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/apps/android/commons refs/changes/46/76346/1 diff --git a/commons/pom.xml b/commons/pom.xml index 8db0b7f..2a58518 100644 --- a/commons/pom.xml +++ b/commons/pom.xml @@ -22,18 +22,6 @@ <version>1.3</version> </dependency> <dependency> - <groupId>com.actionbarsherlock</groupId> - <artifactId>actionbarsherlock</artifactId> - <version>4.2.0</version> - <type>apklib</type> - <exclusions> - <exclusion> - <groupId>com.google.android</groupId> - <artifactId>support-v4</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> <groupId>android</groupId> <artifactId>android</artifactId> </dependency> @@ -43,6 +31,19 @@ <version>18</version> </dependency> <dependency> + <groupId>android.support</groupId> + <artifactId>compatibility-v7-appcompat</artifactId> + <version>18</version> + <type>apklib</type> + </dependency> + + <dependency> + <groupId>android.support</groupId> + <artifactId>compatibility-v7-appcompat</artifactId> + <version>18</version> + <type>jar</type> + </dependency> + <dependency> <groupId>com.nostra13.universalimageloader</groupId> <artifactId>universal-image-loader</artifactId> <version>1.8.2</version> diff --git a/commons/res/menu/activity_share.xml b/commons/res/menu/activity_share.xml index d41bc4e..6a2151d 100644 --- a/commons/res/menu/activity_share.xml +++ b/commons/res/menu/activity_share.xml @@ -1,7 +1,9 @@ -<menu xmlns:android="http://schemas.android.com/apk/res/android"> +<menu xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:compat="http://schemas.android.com/apk/res-auto" + > <item android:id="@+id/menu_upload_single" android:title="@string/menu_upload_single" android:icon="@drawable/social_send_now" android:enabled="false" - android:showAsAction="always" /> + compat:showAsAction="always" /> </menu> diff --git a/commons/res/menu/fragment_contributions_list.xml b/commons/res/menu/fragment_contributions_list.xml index b9382fa..6d12c93 100644 --- a/commons/res/menu/fragment_contributions_list.xml +++ b/commons/res/menu/fragment_contributions_list.xml @@ -1,29 +1,31 @@ -<menu xmlns:android="http://schemas.android.com/apk/res/android"> +<menu xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:compat="http://schemas.android.com/apk/res-auto" + > <item android:id="@+id/menu_from_camera" android:title="@string/menu_from_camera" android:orderInCategory="100" - android:showAsAction="always|withText" + compat:showAsAction="always|withText" android:icon="@android:drawable/ic_menu_camera" /> <item android:id="@+id/menu_from_gallery" android:title="@string/menu_from_gallery" android:orderInCategory="200" - android:showAsAction="always|withText" + compat:showAsAction="always|withText" android:icon="@android:drawable/ic_menu_gallery" /> <item android:id="@+id/menu_settings" android:title="@string/menu_settings" - android:showAsAction="never" + compat:showAsAction="never" android:icon="@android:drawable/ic_menu_preferences" /> <item android:id="@+id/menu_about" android:title="@string/menu_about" - android:showAsAction="never" + compat:showAsAction="never" android:icon="@android:drawable/ic_menu_info_details" /> <item android:id="@+id/menu_feedback" android:title="@string/menu_feedback" - android:showAsAction="never" + compat:showAsAction="never" android:icon="@android:drawable/ic_menu_send" /> diff --git a/commons/res/menu/fragment_image_detail.xml b/commons/res/menu/fragment_image_detail.xml index aed7c51..2e884ec 100644 --- a/commons/res/menu/fragment_image_detail.xml +++ b/commons/res/menu/fragment_image_detail.xml @@ -1,30 +1,32 @@ <?xml version="1.0" encoding="utf-8"?> -<menu xmlns:android="http://schemas.android.com/apk/res/android"> +<menu xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:compat="http://schemas.android.com/apk/res-auto" + > <item android:id="@+id/menu_share_current_image" - android:showAsAction="ifRoom|withText" + compat:showAsAction="ifRoom|withText" android:icon="@android:drawable/ic_menu_share" android:title="@string/menu_share" /> <item android:id="@+id/menu_browser_current_image" - android:showAsAction="never" + compat:showAsAction="never" android:icon="@android:drawable/ic_menu_view" android:title="@string/menu_open_in_browser" /> <item android:id="@+id/menu_download_current_image" - android:showAsAction="never" + compat:showAsAction="never" android:icon="@drawable/ic_menu_download" android:title="@string/menu_download" /> <item android:id="@+id/menu_retry_current_image" - android:showAsAction="ifRoom|withText" + compat:showAsAction="ifRoom|withText" android:icon="@android:drawable/ic_menu_revert" android:title="@string/menu_retry" android:visible="false" android:enabled="false" /> <item android:id="@+id/menu_abort_current_image" - android:showAsAction="never" + compat:showAsAction="never" android:icon="@android:drawable/ic_menu_delete" android:title="@string/menu_abort" android:visible="false" diff --git a/commons/res/menu/fragment_multiple_upload_list.xml b/commons/res/menu/fragment_multiple_upload_list.xml index 13e491c..8fdb30a 100644 --- a/commons/res/menu/fragment_multiple_upload_list.xml +++ b/commons/res/menu/fragment_multiple_upload_list.xml @@ -1,10 +1,12 @@ <?xml version="1.0" encoding="utf-8"?> -<menu xmlns:android="http://schemas.android.com/apk/res/android"> +<menu xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:compat="http://schemas.android.com/apk/res-auto" + > <item android:id="@+id/menu_upload_multiple" android:title="@string/share_upload_button" - android:showAsAction="always|withText" + compat:showAsAction="always|withText" android:icon="@android:drawable/ic_menu_send" /> </menu> \ No newline at end of file diff --git a/commons/res/values-v14/styles.xml b/commons/res/values-v14/styles.xml index 28e2772..ca7218d 100644 --- a/commons/res/values-v14/styles.xml +++ b/commons/res/values-v14/styles.xml @@ -1,6 +1,6 @@ <resources> <style name="ProgressBar" parent="android:Widget.Holo.ProgressBar.Horizontal" /> - <style name="AppTheme" parent="android:Theme.Holo" /> + <style name="AppTheme" parent="Theme.AppCompat" /> </resources> \ No newline at end of file diff --git a/commons/res/values/styles.xml b/commons/res/values/styles.xml index 84c89ee..8d3fdaa 100644 --- a/commons/res/values/styles.xml +++ b/commons/res/values/styles.xml @@ -1,12 +1,12 @@ <resources> - <style name="AppTheme" parent="Theme.Sherlock" /> + <style name="AppTheme" parent="Theme.AppCompat" /> <style name="NoTitle" parent="AppTheme"> <item name="android:windowNoTitle">true</item> </style> - <style name="LightNoTitle" parent="Theme.Sherlock.Light.NoActionBar"></style> + <style name="LightNoTitle" parent="Theme.AppCompat"></style> <style name="NotificationText" parent="android:TextAppearance.DeviceDefault.Small"> <item name="android:textColor">?android:attr/textColorPrimary</item> diff --git a/commons/src/main/java/org/wikimedia/commons/SettingsActivity.java b/commons/src/main/java/org/wikimedia/commons/SettingsActivity.java index 693fe43..1b4d4e8 100644 --- a/commons/src/main/java/org/wikimedia/commons/SettingsActivity.java +++ b/commons/src/main/java/org/wikimedia/commons/SettingsActivity.java @@ -5,11 +5,9 @@ import android.os.Bundle; import android.preference.ListPreference; import android.preference.Preference; -import android.preference.PreferenceManager; -import android.util.Log; -import com.actionbarsherlock.app.SherlockPreferenceActivity; +import android.preference.PreferenceActivity; -public class SettingsActivity extends SherlockPreferenceActivity implements SharedPreferences.OnSharedPreferenceChangeListener { +public class SettingsActivity extends PreferenceActivity implements SharedPreferences.OnSharedPreferenceChangeListener { CommonsApplication app; @Override protected void onCreate(Bundle savedInstanceState) { diff --git a/commons/src/main/java/org/wikimedia/commons/auth/AuthenticatedActivity.java b/commons/src/main/java/org/wikimedia/commons/auth/AuthenticatedActivity.java index 4051a77..38bce1f 100644 --- a/commons/src/main/java/org/wikimedia/commons/auth/AuthenticatedActivity.java +++ b/commons/src/main/java/org/wikimedia/commons/auth/AuthenticatedActivity.java @@ -3,14 +3,13 @@ import java.io.IOException; import android.accounts.OperationCanceledException; -import com.actionbarsherlock.app.*; - import android.accounts.*; import android.os.*; +import android.support.v7.app.ActionBarActivity; import org.wikimedia.commons.*; -public class AuthenticatedActivity extends SherlockFragmentActivity { +public class AuthenticatedActivity extends ActionBarActivity { String accountType; diff --git a/commons/src/main/java/org/wikimedia/commons/category/CategorizationFragment.java b/commons/src/main/java/org/wikimedia/commons/category/CategorizationFragment.java index 5898db4..c962898 100644 --- a/commons/src/main/java/org/wikimedia/commons/category/CategorizationFragment.java +++ b/commons/src/main/java/org/wikimedia/commons/category/CategorizationFragment.java @@ -5,16 +5,13 @@ import android.content.Context; import android.database.Cursor; import android.os.*; +import android.support.v4.app.Fragment; import android.text.Editable; import android.text.TextUtils; import android.text.TextWatcher; import android.view.*; import android.view.MenuInflater; import android.widget.*; -import com.actionbarsherlock.app.SherlockFragment; -import com.actionbarsherlock.view.*; -import com.actionbarsherlock.view.Menu; -import com.actionbarsherlock.view.MenuItem; import org.mediawiki.api.ApiResult; import org.mediawiki.api.MWApi; import org.wikimedia.commons.CommonsApplication; @@ -32,7 +29,7 @@ import java.util.HashSet; import java.util.concurrent.ScheduledThreadPoolExecutor; -public class CategorizationFragment extends SherlockFragment{ +public class CategorizationFragment extends Fragment { public static interface OnCategoriesSaveHandler { public void onCategoriesSave(ArrayList<String> categories); } @@ -217,7 +214,7 @@ CheckedTextView checkedView; if(view == null) { - checkedView = (CheckedTextView) getSherlockActivity().getLayoutInflater().inflate(R.layout.layout_categories_item, null); + checkedView = (CheckedTextView) getActivity().getLayoutInflater().inflate(R.layout.layout_categories_item, null); } else { checkedView = (CheckedTextView) view; @@ -358,7 +355,7 @@ } @Override - public void onCreateOptionsMenu(Menu menu, com.actionbarsherlock.view.MenuInflater inflater) { + public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { menu.clear(); inflater.inflate(R.menu.fragment_categorization, menu); } diff --git a/commons/src/main/java/org/wikimedia/commons/contributions/ContributionsActivity.java b/commons/src/main/java/org/wikimedia/commons/contributions/ContributionsActivity.java index 0a95749..34495c6 100644 --- a/commons/src/main/java/org/wikimedia/commons/contributions/ContributionsActivity.java +++ b/commons/src/main/java/org/wikimedia/commons/contributions/ContributionsActivity.java @@ -9,10 +9,10 @@ import android.database.Cursor; import android.os.Bundle; import android.util.Log; +import android.view.Menu; +import android.view.MenuItem; import android.view.View; import android.widget.AdapterView; -import com.actionbarsherlock.view.Menu; -import com.actionbarsherlock.view.MenuItem; import org.wikimedia.commons.*; import org.wikimedia.commons.auth.*; diff --git a/commons/src/main/java/org/wikimedia/commons/contributions/ContributionsListFragment.java b/commons/src/main/java/org/wikimedia/commons/contributions/ContributionsListFragment.java index e8caa90..911e3c9 100644 --- a/commons/src/main/java/org/wikimedia/commons/contributions/ContributionsListFragment.java +++ b/commons/src/main/java/org/wikimedia/commons/contributions/ContributionsListFragment.java @@ -11,17 +11,12 @@ import android.os.Bundle; import android.os.Environment; import android.provider.MediaStore; +import android.support.v4.app.Fragment; import android.support.v4.widget.CursorAdapter; import android.text.TextUtils; import android.util.Log; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; +import android.view.*; import android.widget.*; -import com.actionbarsherlock.app.SherlockFragment; -import com.actionbarsherlock.view.Menu; -import com.actionbarsherlock.view.MenuInflater; -import com.actionbarsherlock.view.MenuItem; import com.nostra13.universalimageloader.core.DisplayImageOptions; @@ -35,7 +30,7 @@ import org.wikimedia.commons.upload.ShareActivity; import org.wikimedia.commons.upload.UploadService; -public class ContributionsListFragment extends SherlockFragment { +public class ContributionsListFragment extends Fragment { private final static int SELECT_FROM_GALLERY = 1; private final static int SELECT_FROM_CAMERA = 2; diff --git a/commons/src/main/java/org/wikimedia/commons/media/MediaDetailFragment.java b/commons/src/main/java/org/wikimedia/commons/media/MediaDetailFragment.java index 39343d8..b16708c 100644 --- a/commons/src/main/java/org/wikimedia/commons/media/MediaDetailFragment.java +++ b/commons/src/main/java/org/wikimedia/commons/media/MediaDetailFragment.java @@ -2,12 +2,11 @@ import android.graphics.*; import android.os.*; +import android.support.v4.app.Fragment; import android.text.*; import android.util.Log; import android.view.*; import android.widget.*; -import com.actionbarsherlock.app.SherlockFragment; -import com.android.volley.toolbox.NetworkImageView; import com.nostra13.universalimageloader.core.DisplayImageOptions; import com.nostra13.universalimageloader.core.assist.FailReason; import com.nostra13.universalimageloader.core.assist.ImageLoadingListener; @@ -16,7 +15,7 @@ import org.wikimedia.commons.*; -public class MediaDetailFragment extends SherlockFragment { +public class MediaDetailFragment extends Fragment { private boolean editable; private DisplayImageOptions displayOptions; diff --git a/commons/src/main/java/org/wikimedia/commons/media/MediaDetailPagerFragment.java b/commons/src/main/java/org/wikimedia/commons/media/MediaDetailPagerFragment.java index ee15689..b5493a0 100644 --- a/commons/src/main/java/org/wikimedia/commons/media/MediaDetailPagerFragment.java +++ b/commons/src/main/java/org/wikimedia/commons/media/MediaDetailPagerFragment.java @@ -11,23 +11,18 @@ import android.support.v4.view.ViewPager; import android.util.Log; import android.view.*; -import com.actionbarsherlock.app.SherlockFragment; -import com.actionbarsherlock.view.Menu; -import com.actionbarsherlock.view.MenuInflater; -import com.actionbarsherlock.view.MenuItem; -import com.actionbarsherlock.widget.ShareActionProvider; import org.wikimedia.commons.*; import org.wikimedia.commons.contributions.Contribution; import org.wikimedia.commons.contributions.ContributionsActivity; -public class MediaDetailPagerFragment extends SherlockFragment implements ViewPager.OnPageChangeListener { +public class MediaDetailPagerFragment extends Fragment implements ViewPager.OnPageChangeListener { private ViewPager pager; private Boolean editable; private CommonsApplication app; public void onPageScrolled(int i, float v, int i2) { - getSherlockActivity().supportInvalidateOptionsMenu(); + getActivity().supportInvalidateOptionsMenu(); } public void onPageSelected(int i) { @@ -54,7 +49,7 @@ // See bug https://code.google.com/p/android/issues/detail?id=27526 pager.postDelayed(new Runnable() { public void run() { - getSherlockActivity().supportInvalidateOptionsMenu(); + getActivity().supportInvalidateOptionsMenu(); } }, 5); } @@ -88,7 +83,7 @@ view.postDelayed(new Runnable() { public void run() { pager.setCurrentItem(pageNumber, false); - getSherlockActivity().supportInvalidateOptionsMenu(); + getActivity().supportInvalidateOptionsMenu(); } }, 100); } @@ -114,7 +109,7 @@ @Override public boolean onOptionsItemSelected(MenuItem item) { - MediaDetailProvider provider = (MediaDetailProvider)getSherlockActivity(); + MediaDetailProvider provider = (MediaDetailProvider)getActivity(); Media m = provider.getMediaAtPosition(pager.getCurrentItem()); switch(item.getItemId()) { case R.id.menu_share_current_image: @@ -140,12 +135,12 @@ case R.id.menu_retry_current_image: // Is this... sane? :) ((ContributionsActivity)getActivity()).retryUpload(pager.getCurrentItem()); - getSherlockActivity().getSupportFragmentManager().popBackStack(); + getActivity().getSupportFragmentManager().popBackStack(); return true; case R.id.menu_abort_current_image: // todo: delete image ((ContributionsActivity)getActivity()).deleteUpload(pager.getCurrentItem()); - getSherlockActivity().getSupportFragmentManager().popBackStack(); + getActivity().getSupportFragmentManager().popBackStack(); return true; default: return super.onOptionsItemSelected(item); @@ -226,7 +221,7 @@ menu.clear(); // see http://stackoverflow.com/a/8495697/17865 inflater.inflate(R.menu.fragment_image_detail, menu); if(pager != null) { - MediaDetailProvider provider = (MediaDetailProvider)getSherlockActivity(); + MediaDetailProvider provider = (MediaDetailProvider)getActivity(); Media m = provider.getMediaAtPosition(pager.getCurrentItem()); if(m != null && !m.getFilename().startsWith("File:")) { // Crude way of checking if the file has been successfully saved! diff --git a/commons/src/main/java/org/wikimedia/commons/upload/MultipleShareActivity.java b/commons/src/main/java/org/wikimedia/commons/upload/MultipleShareActivity.java index 62b3748..b58548b 100644 --- a/commons/src/main/java/org/wikimedia/commons/upload/MultipleShareActivity.java +++ b/commons/src/main/java/org/wikimedia/commons/upload/MultipleShareActivity.java @@ -12,7 +12,6 @@ import android.view.*; import android.view.inputmethod.InputMethodManager; import android.widget.*; -import com.actionbarsherlock.view.MenuItem; import org.wikimedia.commons.*; import org.wikimedia.commons.auth.*; diff --git a/commons/src/main/java/org/wikimedia/commons/upload/MultipleUploadListFragment.java b/commons/src/main/java/org/wikimedia/commons/upload/MultipleUploadListFragment.java index 0a54087..16e246c 100644 --- a/commons/src/main/java/org/wikimedia/commons/upload/MultipleUploadListFragment.java +++ b/commons/src/main/java/org/wikimedia/commons/upload/MultipleUploadListFragment.java @@ -4,14 +4,12 @@ import android.graphics.*; import android.net.*; import android.os.*; +import android.support.v4.app.Fragment; import android.text.*; import android.util.*; import android.view.*; import android.view.inputmethod.InputMethodManager; import android.widget.*; -import com.actionbarsherlock.app.SherlockFragment; -import com.actionbarsherlock.view.Menu; -import com.actionbarsherlock.view.MenuItem; import com.nostra13.universalimageloader.core.*; import org.wikimedia.commons.R; @@ -20,7 +18,7 @@ import org.wikimedia.commons.media.*; -public class MultipleUploadListFragment extends SherlockFragment { +public class MultipleUploadListFragment extends Fragment { public interface OnMultipleUploadInitiatedHandler { public void OnMultipleUploadInitiated(); @@ -183,7 +181,7 @@ } @Override - public void onCreateOptionsMenu(Menu menu, com.actionbarsherlock.view.MenuInflater inflater) { + public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { super.onCreateOptionsMenu(menu, inflater); menu.clear(); inflater.inflate(R.menu.fragment_multiple_upload_list, menu); diff --git a/commons/src/main/java/org/wikimedia/commons/upload/ShareActivity.java b/commons/src/main/java/org/wikimedia/commons/upload/ShareActivity.java index 0fc955a..6f56c0b 100644 --- a/commons/src/main/java/org/wikimedia/commons/upload/ShareActivity.java +++ b/commons/src/main/java/org/wikimedia/commons/upload/ShareActivity.java @@ -3,10 +3,10 @@ import android.app.*; import android.content.*; import android.os.*; +import android.view.MenuItem; import com.nostra13.universalimageloader.core.ImageLoader; import android.net.*; import android.support.v4.app.NavUtils; -import com.actionbarsherlock.view.MenuItem; import android.widget.*; import org.wikimedia.commons.*; diff --git a/commons/src/main/java/org/wikimedia/commons/upload/SingleUploadFragment.java b/commons/src/main/java/org/wikimedia/commons/upload/SingleUploadFragment.java index 73cea61..f0aa23a 100644 --- a/commons/src/main/java/org/wikimedia/commons/upload/SingleUploadFragment.java +++ b/commons/src/main/java/org/wikimedia/commons/upload/SingleUploadFragment.java @@ -7,26 +7,18 @@ import android.net.Uri; import android.os.Bundle; import android.preference.PreferenceManager; +import android.support.v4.app.Fragment; import android.text.Editable; import android.text.TextWatcher; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.view.ViewGroup; +import android.view.*; import android.view.inputmethod.InputMethodManager; import android.widget.EditText; import android.widget.TextView; -import com.actionbarsherlock.app.SherlockFragment; -import com.actionbarsherlock.view.Menu; -import com.actionbarsherlock.view.MenuInflater; -import com.actionbarsherlock.view.MenuItem; -import com.nostra13.universalimageloader.core.ImageLoader; import org.wikimedia.commons.Prefs; import org.wikimedia.commons.R; import org.wikimedia.commons.Utils; -import org.wikimedia.commons.contributions.Contribution; -public class SingleUploadFragment extends SherlockFragment { +public class SingleUploadFragment extends Fragment { public interface OnUploadActionInitiated { void uploadActionInitiated(String title, String description); @@ -71,8 +63,8 @@ public void onTextChanged(CharSequence charSequence, int i, int i2, int i3) {} public void afterTextChanged(Editable editable) { - if(getSherlockActivity() != null) { - getSherlockActivity().invalidateOptionsMenu(); + if(getActivity() != null) { + getActivity().invalidateOptionsMenu(); } } }; -- To view, visit https://gerrit.wikimedia.org/r/76346 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ic70cf8a9054379bd5325a1c26a7f65690e061988 Gerrit-PatchSet: 1 Gerrit-Project: apps/android/commons Gerrit-Branch: master Gerrit-Owner: SuchABot <[email protected]> Gerrit-Reviewer: Yuvipanda <[email protected]> _______________________________________________ MediaWiki-commits mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
