Skip to content

Commit d96c0ae

Browse files
committed
Show tabs above kiosks in drawer
1 parent 8400a9a commit d96c0ae

File tree

2 files changed

+34
-27
lines changed

2 files changed

+34
-27
lines changed

app/src/main/java/org/schabi/newpipe/MainActivity.java

Lines changed: 33 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -263,19 +263,6 @@ public void onDrawerClosed(final View drawerView) {
263263
*/
264264
private void addDrawerMenuForCurrentService() throws ExtractionException {
265265
//Tabs
266-
final int currentServiceId = ServiceHelper.getSelectedServiceId(this);
267-
final StreamingService service = NewPipe.getService(currentServiceId);
268-
269-
int kioskMenuItemId = 0;
270-
271-
for (final String ks : service.getKioskList().getAvailableKiosks()) {
272-
drawerLayoutBinding.navigation.getMenu()
273-
.add(R.id.menu_tabs_group, kioskMenuItemId, 0, KioskTranslator
274-
.getTranslatedKioskName(ks, this))
275-
.setIcon(KioskTranslator.getKioskIcon(ks));
276-
kioskMenuItemId++;
277-
}
278-
279266
drawerLayoutBinding.navigation.getMenu()
280267
.add(R.id.menu_tabs_group, ITEM_ID_SUBSCRIPTIONS, ORDER,
281268
R.string.tab_subscriptions)
@@ -293,6 +280,20 @@ private void addDrawerMenuForCurrentService() throws ExtractionException {
293280
.add(R.id.menu_tabs_group, ITEM_ID_HISTORY, ORDER, R.string.action_history)
294281
.setIcon(R.drawable.ic_history);
295282

283+
//Kiosks
284+
final int currentServiceId = ServiceHelper.getSelectedServiceId(this);
285+
final StreamingService service = NewPipe.getService(currentServiceId);
286+
287+
int kioskMenuItemId = 0;
288+
289+
for (final String ks : service.getKioskList().getAvailableKiosks()) {
290+
drawerLayoutBinding.navigation.getMenu()
291+
.add(R.id.menu_kiosks_group, kioskMenuItemId, 0, KioskTranslator
292+
.getTranslatedKioskName(ks, this))
293+
.setIcon(KioskTranslator.getKioskIcon(ks));
294+
kioskMenuItemId++;
295+
}
296+
296297
//Settings and About
297298
drawerLayoutBinding.navigation.getMenu()
298299
.add(R.id.menu_options_about_group, ITEM_ID_SETTINGS, ORDER, R.string.settings)
@@ -312,10 +313,13 @@ private boolean drawerItemSelected(final MenuItem item) {
312313
changeService(item);
313314
break;
314315
case R.id.menu_tabs_group:
316+
tabSelected(item);
317+
break;
318+
case R.id.menu_kiosks_group:
315319
try {
316-
tabSelected(item);
320+
kioskSelected(item);
317321
} catch (final Exception e) {
318-
ErrorUtil.showUiErrorSnackbar(this, "Selecting main page tab", e);
322+
ErrorUtil.showUiErrorSnackbar(this, "Selecting drawer kiosk", e);
319323
}
320324
break;
321325
case R.id.menu_options_about_group:
@@ -339,7 +343,7 @@ private void changeService(final MenuItem item) {
339343
.setChecked(true);
340344
}
341345

342-
private void tabSelected(final MenuItem item) throws ExtractionException {
346+
private void tabSelected(final MenuItem item) {
343347
switch (item.getItemId()) {
344348
case ITEM_ID_SUBSCRIPTIONS:
345349
NavigationHelper.openSubscriptionFragment(getSupportFragmentManager());
@@ -356,18 +360,19 @@ private void tabSelected(final MenuItem item) throws ExtractionException {
356360
case ITEM_ID_HISTORY:
357361
NavigationHelper.openStatisticFragment(getSupportFragmentManager());
358362
break;
359-
default:
360-
final StreamingService currentService = ServiceHelper.getSelectedService(this);
361-
int kioskMenuItemId = 0;
362-
for (final String kioskId : currentService.getKioskList().getAvailableKiosks()) {
363-
if (kioskMenuItemId == item.getItemId()) {
364-
NavigationHelper.openKioskFragment(getSupportFragmentManager(),
365-
currentService.getServiceId(), kioskId);
366-
break;
367-
}
368-
kioskMenuItemId++;
369-
}
363+
}
364+
}
365+
366+
private void kioskSelected(final MenuItem item) throws ExtractionException {
367+
final StreamingService currentService = ServiceHelper.getSelectedService(this);
368+
int kioskMenuItemId = 0;
369+
for (final String kioskId : currentService.getKioskList().getAvailableKiosks()) {
370+
if (kioskMenuItemId == item.getItemId()) {
371+
NavigationHelper.openKioskFragment(getSupportFragmentManager(),
372+
currentService.getServiceId(), kioskId);
370373
break;
374+
}
375+
kioskMenuItemId++;
371376
}
372377
}
373378

@@ -408,6 +413,7 @@ private void toggleServices() {
408413

409414
drawerLayoutBinding.navigation.getMenu().removeGroup(R.id.menu_services_group);
410415
drawerLayoutBinding.navigation.getMenu().removeGroup(R.id.menu_tabs_group);
416+
drawerLayoutBinding.navigation.getMenu().removeGroup(R.id.menu_kiosks_group);
411417
drawerLayoutBinding.navigation.getMenu().removeGroup(R.id.menu_options_about_group);
412418

413419
// Show up or down arrow

app/src/main/res/menu/drawer_items.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,6 @@
22
<menu xmlns:android="http://schemas.android.com/apk/res/android">
33
<group android:id="@+id/menu_services_group" />
44
<group android:id="@+id/menu_tabs_group" />
5+
<group android:id="@+id/menu_kiosks_group" />
56
<group android:id="@+id/menu_options_about_group" />
67
</menu>

0 commit comments

Comments
 (0)