Skip to content

Commit

Permalink
Refactor LiveTvGuideActivity to fragment
Browse files Browse the repository at this point in the history
  • Loading branch information
nielsvanvelzen committed Sep 29, 2022
1 parent 4f781b9 commit fe6fcbe
Show file tree
Hide file tree
Showing 5 changed files with 117 additions and 78 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

import org.jellyfin.androidtv.R;
import org.jellyfin.androidtv.ui.livetv.LiveTvGuide;
import org.jellyfin.androidtv.ui.livetv.LiveTvGuideActivity;
import org.jellyfin.androidtv.ui.livetv.LiveTvGuideFragment;
import org.jellyfin.androidtv.util.ImageUtils;
import org.jellyfin.androidtv.util.Utils;
import org.jellyfin.apiclient.interaction.ApiClient;
Expand Down Expand Up @@ -41,7 +41,7 @@ private void initComponent(Context context, LiveTvGuide tvGuide, ChannelInfoDto
int headerWidth = Utils.convertDpToPixel(context, 160);
v.setLayoutParams(new AbsListView.LayoutParams(
headerWidth,
Utils.convertDpToPixel(context, LiveTvGuideActivity.GUIDE_ROW_HEIGHT_DP)
Utils.convertDpToPixel(context, LiveTvGuideFragment.GUIDE_ROW_HEIGHT_DP)
));
this.addView(v);
this.setFocusable(true);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
import org.jellyfin.androidtv.R;
import org.jellyfin.androidtv.databinding.ProgramGridCellBinding;
import org.jellyfin.androidtv.ui.livetv.LiveTvGuide;
import org.jellyfin.androidtv.ui.livetv.LiveTvGuideActivity;
import org.jellyfin.androidtv.ui.livetv.LiveTvGuideFragment;
import org.jellyfin.androidtv.util.Utils;

public class GuidePagingButton extends RelativeLayout {
Expand All @@ -32,7 +32,7 @@ public GuidePagingButton(final Activity activity, final LiveTvGuide guide, int s

setBackgroundColor(Utils.getThemeColor(activity, R.attr.buttonDefaultNormalBackground));
setFocusable(true);
setOnClickListener(v -> guide.displayChannels(start, LiveTvGuideActivity.PAGE_SIZE));
setOnClickListener(v -> guide.displayChannels(start, LiveTvGuideFragment.PAGE_SIZE));
}

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
package org.jellyfin.androidtv.ui.livetv

import android.os.Bundle
import android.view.KeyEvent
import android.view.View
import androidx.fragment.app.add
import androidx.fragment.app.commit
import org.jellyfin.androidtv.R
import org.jellyfin.androidtv.ui.shared.BaseActivity

class LiveTvGuideActivity : BaseActivity(R.layout.fragment_content_view) {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)

supportFragmentManager.commit {
add<LiveTvGuideFragment>(R.id.content_view)
}
}

// Forward key events to fragments
private fun onKeyEvent(keyCode: Int, event: KeyEvent?): Boolean = supportFragmentManager.fragments
.filter { it.isVisible }
.filterIsInstance<View.OnKeyListener>()
.any { it.onKey(currentFocus, keyCode, event) }

override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean =
onKeyEvent(keyCode, event) || super.onKeyDown(keyCode, event)

override fun onKeyUp(keyCode: Int, event: KeyEvent?): Boolean =
onKeyEvent(keyCode, event) || super.onKeyUp(keyCode, event)
}
Loading

0 comments on commit fe6fcbe

Please sign in to comment.