diff --git a/res/layout/sort_dialog.xml b/res/layout/sort_dialog.xml index 41f00c69..aa227827 100644 --- a/res/layout/sort_dialog.xml +++ b/res/layout/sort_dialog.xml @@ -20,24 +20,16 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. --> - - - - + + diff --git a/res/values/translatable.xml b/res/values/translatable.xml index d5e855fb..06cd4a9d 100644 --- a/res/values/translatable.xml +++ b/res/values/translatable.xml @@ -320,4 +320,5 @@ THE SOFTWARE. Vanilla Music needs read permission to display your music library Ok + Reverse sort diff --git a/src/ch/blinkenlights/android/vanilla/LibraryActivity.java b/src/ch/blinkenlights/android/vanilla/LibraryActivity.java index 353ad0d5..ba3ad154 100644 --- a/src/ch/blinkenlights/android/vanilla/LibraryActivity.java +++ b/src/ch/blinkenlights/android/vanilla/LibraryActivity.java @@ -53,12 +53,12 @@ import android.view.View; import android.view.ViewGroup; import android.view.ViewParent; import android.view.inputmethod.InputMethodManager; +import android.widget.CheckBox; import android.widget.HorizontalScrollView; import android.widget.ImageButton; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.ListView; -import android.widget.RadioGroup; import android.widget.TextView; import android.widget.Toast; import android.widget.SearchView; @@ -827,14 +827,8 @@ public class LibraryActivity return true; case MENU_SORT: { MediaAdapter adapter = (MediaAdapter)mCurrentAdapter; - int mode = adapter.getSortMode(); - int check; - if (mode < 0) { - check = R.id.descending; - mode = ~mode; - } else { - check = R.id.ascending; - } + LinearLayout header = (LinearLayout)getLayoutInflater().inflate(R.layout.sort_dialog, null); + CheckBox reverseSort = (CheckBox)header.findViewById(R.id.reverse_sort); int[] itemIds = adapter.getSortEntries(); String[] items = new String[itemIds.length]; @@ -843,8 +837,11 @@ public class LibraryActivity items[i] = res.getString(itemIds[i]); } - RadioGroup header = (RadioGroup)getLayoutInflater().inflate(R.layout.sort_dialog, null); - header.check(check); + int mode = adapter.getSortMode(); + if (mode < 0) { + mode =~ mode; + reverseSort.setChecked(true); + } AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle(R.string.sort_by); @@ -954,9 +951,10 @@ public class LibraryActivity // subtract 1 for header int which = list.getCheckedItemPosition() - 1; - RadioGroup group = (RadioGroup)list.findViewById(R.id.sort_direction); - if (group.getCheckedRadioButtonId() == R.id.descending) + CheckBox reverseSort = (CheckBox)list.findViewById(R.id.reverse_sort); + if (reverseSort.isChecked()) { which = ~which; + } mPagerAdapter.setSortMode(which); }