Merge branch 'recloudstream:master' into master

This commit is contained in:
MCDeltaT 2022-12-24 15:38:57 +00:00 committed by GitHub
commit a7cfcbe252
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
19 changed files with 758 additions and 398 deletions

View file

@ -45,7 +45,8 @@
android:supportsRtl="true"
android:theme="@style/AppTheme"
android:usesCleartextTraffic="true"
tools:targetApi="o">
tools:targetApi="o"
android:enableOnBackInvokedCallback="true">
<meta-data
android:name="com.google.android.gms.cast.framework.OPTIONS_PROVIDER_CLASS_NAME"

View file

@ -237,7 +237,6 @@ object APIHolder {
}
private fun Context.getHasTrailers(): Boolean {
if (isTvSettings()) return false
val settingsManager = PreferenceManager.getDefaultSharedPreferences(this)
return settingsManager.getBoolean(this.getString(R.string.show_trailers_key), true)
}

View file

@ -690,6 +690,8 @@ class CS3IPlayer : IPlayer {
maxVideoHeight
)
)
// Allows any seeking to be +- 0.3s to allow for faster seeking
.setSeekParameters(SeekParameters(300_000, 300_000))
.setLoadControl(
DefaultLoadControl.Builder()
.setTargetBufferBytes(

View file

@ -0,0 +1,52 @@
package com.lagradost.cloudstream3.ui.player
import com.lagradost.cloudstream3.utils.ExtractorLink
import com.lagradost.cloudstream3.utils.ExtractorUri
class ExtractorLinkGenerator(
private val links: List<ExtractorLink>,
private val subtitles: List<SubtitleData>,
) : IGenerator {
override val hasCache = false
override fun getCurrentId(): Int? {
return null
}
override fun hasNext(): Boolean {
return false
}
override fun getAll(): List<Any>? {
return null
}
override fun hasPrev(): Boolean {
return false
}
override fun getCurrent(offset: Int): Any? {
return null
}
override fun goto(index: Int) {}
override fun next() {}
override fun prev() {}
override suspend fun generateLinks(
clearCache: Boolean,
isCasting: Boolean,
callback: (Pair<ExtractorLink?, ExtractorUri?>) -> Unit,
subtitleCallback: (SubtitleData) -> Unit,
offset: Int
): Boolean {
subtitles.forEach(subtitleCallback)
links.forEach {
callback.invoke(it to null)
}
return true
}
}

View file

@ -83,6 +83,8 @@ import kotlinx.android.synthetic.main.fragment_result.result_next_airing
import kotlinx.android.synthetic.main.fragment_result.result_next_airing_time
import kotlinx.android.synthetic.main.fragment_result.result_no_episodes
import kotlinx.android.synthetic.main.fragment_result.result_play_movie
import kotlinx.android.synthetic.main.fragment_result.result_poster
import kotlinx.android.synthetic.main.fragment_result.result_poster_holder
import kotlinx.android.synthetic.main.fragment_result.result_reload_connection_open_in_browser
import kotlinx.android.synthetic.main.fragment_result.result_reload_connectionerror
import kotlinx.android.synthetic.main.fragment_result.result_resume_parent

View file

@ -3,30 +3,28 @@ package com.lagradost.cloudstream3.ui.result
import android.app.Dialog
import android.os.Bundle
import android.view.View
import android.widget.LinearLayout
import androidx.core.view.isGone
import androidx.core.view.isVisible
import androidx.recyclerview.widget.RecyclerView
import com.google.android.material.bottomsheet.BottomSheetDialog
import com.lagradost.cloudstream3.APIHolder.updateHasTrailers
import com.lagradost.cloudstream3.DubStatus
import com.lagradost.cloudstream3.LoadResponse
import com.lagradost.cloudstream3.R
import com.lagradost.cloudstream3.SearchResponse
import com.lagradost.cloudstream3.mvvm.ResourceSome
import com.lagradost.cloudstream3.mvvm.Some
import com.lagradost.cloudstream3.mvvm.observe
import com.lagradost.cloudstream3.ui.player.ExtractorLinkGenerator
import com.lagradost.cloudstream3.ui.player.GeneratorPlayer
import com.lagradost.cloudstream3.ui.search.SearchAdapter
import com.lagradost.cloudstream3.ui.search.SearchHelper
import com.lagradost.cloudstream3.utils.AppUtils.setMaxViewPoolSize
import com.lagradost.cloudstream3.utils.ExtractorLink
import com.lagradost.cloudstream3.utils.SingleSelectionHelper.showBottomDialogInstant
import com.lagradost.cloudstream3.utils.UIHelper.dismissSafe
import com.lagradost.cloudstream3.utils.UIHelper.navigate
import com.lagradost.cloudstream3.utils.UIHelper.popCurrentPage
import kotlinx.android.synthetic.main.fragment_home.*
import kotlinx.android.synthetic.main.fragment_result.*
import kotlinx.android.synthetic.main.fragment_result_tv.*
import kotlinx.android.synthetic.main.fragment_result_tv.result_episodes
import kotlinx.android.synthetic.main.fragment_result_tv.result_episodes_text
import kotlinx.android.synthetic.main.fragment_result_tv.result_play_movie
import kotlinx.android.synthetic.main.fragment_result_tv.result_root
class ResultFragmentTv : ResultFragment() {
override val resultLayout = R.layout.fragment_result_tv
@ -85,6 +83,24 @@ class ResultFragmentTv : ResultFragment() {
}
}
override fun setTrailers(trailers: List<ExtractorLink>?) {
context?.updateHasTrailers()
if (!LoadResponse.isTrailersEnabled) return
result_play_trailer?.isGone = trailers.isNullOrEmpty()
result_play_trailer?.setOnClickListener {
if (trailers.isNullOrEmpty()) return@setOnClickListener
activity.navigate(
R.id.global_to_navigation_player, GeneratorPlayer.newInstance(
ExtractorLinkGenerator(
trailers,
emptyList()
)
)
)
}
}
override fun setRecommendations(rec: List<SearchResponse>?, validApiName: String?) {
currentRecommendations = rec ?: emptyList()
val isInvalid = rec.isNullOrEmpty()

View file

@ -137,7 +137,7 @@ class SettingsUpdates : PreferenceFragmentCompat() {
activity?.showBottomDialog(
prefNames.toList(),
prefValues.indexOf(currentInstaller),
getString(R.string.app_layout),
getString(R.string.apk_installer_settings),
true,
{}) {
try {

View file

@ -227,6 +227,33 @@
tools:text="The Perfect Run The Perfect Run" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<androidx.cardview.widget.CardView
android:id="@+id/result_poster_holder"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="10dp"
app:cardCornerRadius="@dimen/rounded_image_radius">
<ImageView
android:id="@+id/result_poster"
android:layout_width="100dp"
android:layout_height="140dp"
android:layout_gravity="bottom"
android:contentDescription="@string/result_poster_img_des"
android:foreground="@drawable/outline_drawable"
android:scaleType="centerCrop"
tools:src="@drawable/example_poster" />
</androidx.cardview.widget.CardView>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<com.lagradost.cloudstream3.widget.FlowLayout
android:layout_width="match_parent"
@ -264,7 +291,6 @@
style="@style/ResultInfoText"
tools:text="121min" />
</com.lagradost.cloudstream3.widget.FlowLayout>
<!--
This has half margin and half padding to make TV focus on description look better.
The focus outline now settles between the poster and text.
@ -285,6 +311,10 @@
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
<TextView
android:id="@+id/result_cast_text"
android:layout_width="wrap_content"
@ -392,6 +422,7 @@
<LinearLayout
android:animateLayoutChanges="true"
android:id="@+id/result_movie_parent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@ -409,7 +440,7 @@
android:layout_marginBottom="10dp"
android:layout_weight="1"
android:minWidth="250dp"
android:nextFocusRight="@id/result_download_movie"
android:nextFocusRight="@id/result_play_trailer"
android:nextFocusUp="@id/result_cast_items"
android:nextFocusDown="@id/result_resume_series_button_play"
android:text="@string/play_movie_button"
@ -418,6 +449,22 @@
</com.google.android.material.button.MaterialButton>
<com.google.android.material.button.MaterialButton
android:id="@+id/result_play_trailer"
style="@style/WhiteButton"
android:layout_width="wrap_content"
android:layout_marginStart="0dp"
android:layout_marginEnd="5dp"
android:layout_marginBottom="10dp"
android:layout_weight="1"
android:minWidth="250dp"
android:nextFocusUp="@id/result_cast_items"
android:nextFocusDown="@id/result_resume_series_button_play"
android:text="@string/play_trailer_button"
android:visibility="gone"
app:icon="@drawable/ic_baseline_play_arrow_24">
</com.google.android.material.button.MaterialButton>
<FrameLayout
android:id="@+id/result_movie_progress_downloaded_holder"
@ -440,7 +487,7 @@
android:layout_marginEnd="0dp"
android:clickable="true"
android:focusable="true"
android:nextFocusLeft="@id/result_play_movie"
android:nextFocusLeft="@id/result_play_trailer"
android:nextFocusUp="@id/result_cast_items"
android:nextFocusDown="@id/result_resume_series_button_play"

View file

@ -246,7 +246,7 @@
<string name="show_dub_key" translatable="false">show_dub_key</string>
<string name="show_sub_key" translatable="false">show_sub_key</string>
<string name="show_title_key" translatable="false">show_title_key</string>
<string name="poster_ui_settings">التحكم في عناصر الواجهة علي الملصق </string>
<string name="poster_ui_settings">التحكم في عناصر الواجهة على الملصق</string>
<string name="no_update_found">لم يتم العثور على تحديثات</string>
<string name="check_for_update">تحقق من التحديثات</string>
<string name="video_lock">قفل</string>
@ -305,9 +305,9 @@
<string name="category_providers">المصادر</string>
<string name="category_ui">الواجهة</string>
<string name="automatic">أوتوماتيك</string>
<string name="tv_layout">واجهة تلفاز</string>
<string name="phone_layout">واجهة هاتف</string>
<string name="emulator_layout">واجهة محاكي</string>
<string name="tv_layout">واجهة التلفاز</string>
<string name="phone_layout">واجهة الهاتف</string>
<string name="emulator_layout">واجهة المحاكي</string>
<string name="primary_color_settings">اللون الأساسي</string>
<string name="app_theme_settings">مظهر التطبيق</string>
<string name="bottom_title_settings">موضع عنوان الملصق</string>
@ -419,7 +419,7 @@
<string name="provider_languages_tip">شاهد الفيديوهات بهذه اللغات</string>
<string name="previous">السابق</string>
<string name="skip_setup">تخطي الإعداد</string>
<string name="app_layout_subtext">تغيير شكل البرنامح حتي يلائم جهازك</string>
<string name="app_layout_subtext">قم بتغيير مظهر التطبيق ليناسب جهازك</string>
<string name="crash_reporting_title">إبلاغ الأعطال</string>
<string name="preferred_media_subtext">ماذا تريد ان تري</string>
<string name="setup_done">تم</string>
@ -514,4 +514,19 @@
<string name="apk_installer_settings_des">بعض الهواتف لا تدعم مثبت الحزمة الجديد. جرب الخيار القديم إذا لم يتم تثبيت التحديثات.</string>
<string name="apk_installer_legacy">قياسي</string>
<string name="apk_installer_package_installer">مثبت الحزمة</string>
<string name="pref_category_player_layout">التخطيط</string>
<string name="redo_setup_process">إعادة عملية الإعداد</string>
<string name="pref_category_links">الروابط</string>
<string name="pref_category_app_updates">تحديثات التطبيق</string>
<string name="pref_category_backup">نسخ احتياطي</string>
<string name="pref_category_extensions">الإضافات</string>
<string name="pref_category_actions">الإجراءات</string>
<string name="pref_category_cache">الذاكرة المؤقتة</string>
<string name="pref_category_gestures">الإيماءات</string>
<string name="pref_category_player_features">ميزات المشغل</string>
<string name="pref_category_subtitles">الترجمات</string>
<string name="pref_category_defaults">الإفتراضي</string>
<string name="pref_category_ui_features">المميزات</string>
<string name="pref_category_looks">المظهر</string>
<string name="play_trailer_button">تشغيل المقطع الدعائي</string>
</resources>

View file

@ -12,7 +12,7 @@
<string name="episode_more_options_des">Περισσότερες Επιλογές</string>
<string name="go_back_img_des">Πίσω</string>
<string name="next_episode">Επόμενο Επεισόδιο</string>
<string name="result_poster_img_des">Πόστερ</string>
<string name="result_poster_img_des">Αφίσα</string>
<string name="result_tags">Κατηγορίες</string>
<string name="result_share">Κοινοποίηση</string>
<string name="result_open_in_browser">Άνοιγμα στον περιηγητή</string>
@ -24,14 +24,14 @@
<string name="type_dropped">Διακόπηκε</string>
<string name="type_plan_to_watch">Για παρακολούθηση</string>
<string name="type_none">Τίποτα</string>
<string name="play_movie_button">Αναπαραγωγή Ταινίας</string>
<string name="play_movie_button">Αναπαραγωγή ταινίας</string>
<string name="play_torrent_button">Μετάδοση Torrent</string>
<string name="pick_source">Πηγές</string>
<string name="pick_subtitle">Υπότιτλοι</string>
<string name="reload_error">Προσπάθεια επανασύνδεσης…</string>
<string name="go_back">Πίσω</string>
<string name="episode_poster_img_des">Πόστερ</string>
<string name="play_episode">Αναπαραγωγή Επεισοδίου</string>
<string name="episode_poster_img_des">Αφίσα επεισοδίου</string>
<string name="play_episode">Αναπαραγωγή επεισοδίου</string>
<!--<string name="need_storage">Απαιτείται άδεια για την λήψη επεισοδίου</string>-->
<string name="download">Λήψη</string>
<string name="error_loading_links_toast">Σφάλμα φόρτωσης συνδέσμων</string>
@ -40,15 +40,15 @@
<string name="app_dubbed_text">Dub</string>
<string name="app_subbed_text">Sub</string>
<string name="popup_delete_file">Διαγραφή Αρχείου</string>
<string name="popup_play_file">Αναπαραγωγή Αρχείου</string>
<string name="popup_resume_download">Συνέχιση Λήψης</string>
<string name="popup_pause_download">Παύση Λήψης</string>
<string name="acra_report_toast">Λυπούμαστε, η εφαρμογή κατέρρευσε. Μια ανώνυμη αναφορά σφαλμάτων θα σταλεί στους προγραμματιστές</string>
<string name="popup_play_file">Αναπαραγωγή αρχείου</string>
<string name="popup_resume_download">Συνέχιση λήψης</string>
<string name="popup_pause_download">Παύση λήψης</string>
<string name="acra_report_toast">Λυπόμαστε, η εφαρμογή κατέρρευσε. Μια ανώνυμη αναφορά σφαλμάτων θα σταλεί στους προγραμματιστές</string>
<string name="pref_disable_acra">Απενεργοποιήστε την αυτόματη αναφορά σφαλμάτων</string>
<string name="show_log_cat">Εμφάνιση Logcat 🐈</string>
<string name="home_more_info">Παραπάνω πληροφορίες</string>
<string name="home_more_info">Περαιτέρω πληροφορίες</string>
<string name="home_expanded_hide">Απόκρυψη</string>
<string name="home_main_poster_img_des">Κύριο Πόστερ</string>
<string name="home_main_poster_img_des">Κύρια αφίσα</string>
<string name="home_play">Αναπαραγωγή</string>
<string name="home_info">Πληροφορίες</string>
<string name="home_next_random_img_des">Next Random</string>
@ -56,7 +56,7 @@
<string name="filter_bookmarks">Φιλτράρισμα Σελιδοδεικτών</string>
<string name="error_bookmarks_text">Σελιδοδείκτες</string>
<string name="action_remove_from_bookmarks">Αφαίρεση</string>
<string name="play_episode_toast">Αναπαραγωγή Επεισοδίου</string>
<string name="play_episode_toast">Αναπαραγωγή επεισοδίου</string>
<string name="sort_apply">Υποβολή</string>
<string name="sort_cancel">Ακύρωση</string>
<string name="player_speed">Ταχύτητα αναπαραγωγής</string>
@ -77,87 +77,88 @@
<string name="subs_auto_select_language">Αυτόματη επιλογή γλώσσας</string>
<string name="subs_download_languages">Λήψη γλωσσών</string>
<string name="subs_hold_to_reset_to_default">Κρατήστε πατημένο για επαναφορά στις προεπιλεγμένες τιμές</string>
<string name="continue_watching">Συνέχεια Παρακολούθησης</string>
<string name="continue_watching">Συνέχεια παρακολούθησης</string>
<string name="action_remove_watching">Αφαίρεση</string>
<string name="action_open_watching">Επιπλέον Πληροφορίες</string>
<string name="action_open_watching">Περαιτέρω πληροφορίες</string>
<string name="vpn_might_be_needed">Η χρήση ενός VPN ίσως χρειαστεί για την ομαλή λειτουργία του τρέχοντος παρόχου</string>
<string name="vpn_torrent">Πρόκειται για torrent, η χρήση ενός VPN συνιστάται</string>
<string name="vpn_torrent">Ο πάροχος αυτός πρόκειται για torrent, η χρήση ενός VPN συνιστάται</string>
<string name="torrent_plot">Περιγραφή</string>
<string name="normal_no_plot">Δεν βρέθηκε περιγραφή</string>
<string name="torrent_no_plot">Δεν βρέθηκε περιγραφή</string>
<string name="picture_in_picture">Εικόνα-σε-Εικόνα</string>
<string name="picture_in_picture">Εικόνα-εντός-Εικόνας</string>
<string name="picture_in_picture_des">Συνεχίζει την αναπαραγωγή σε ένα μίνι παράθυρο πάνω από άλλες εφαρμογές</string>
<string name="player_size_settings">Αλλαγή μεγέθους παραθύρου</string>
<string name="player_size_settings_des">Αφαίρεση μαύρων περιγραμμάτων</string>
<string name="player_subtitles_settings">Υπότιτλοι</string>
<string name="player_subtitles_settings_des">Ρυθμίσεις υποτίτλων του προγράμματος αναπαραγωγής</string>
<string name="chromecast_subtitles_settings">Chromecast Υπότιτλοι</string>
<string name="chromecast_subtitles_settings_des">Ρυθμίσεις Chromecast υποτίτλων</string>
<string name="eigengraumode_settings">Eigengrau Mode</string>
<string name="chromecast_subtitles_settings">Υπότιτλοι για Chromecast</string>
<string name="chromecast_subtitles_settings_des">Ρυθμίσεις υποτίτλων για Chromecast</string>
<string name="eigengraumode_settings">Eigengravy Mode</string>
<string name="eigengraumode_settings_des">Προσθέτει την επιλογή ταχύτητας στο πρόγραμμα αναπαραγωγής</string>
<string name="swipe_to_seek_settings">Σύρετε για αναζήτηση</string>
<string name="swipe_to_seek_settings_des">Σύρετε αριστερά ή δεξιά για να ελέγξετε τον χρόνο στην κάτω μπάρα</string>
<string name="swipe_to_seek_settings">Σύρετε για ιχνηλασία</string>
<string name="swipe_to_seek_settings_des">Σύρετε αριστερά ή δεξιά για να ελέγξετε τον χρόνο στην μπάρα του προγράμματος αναπαραγωγής</string>
<string name="swipe_to_change_settings">Σύρετε για να αλλάξετε ρυθμίσεις</string>
<string name="swipe_to_change_settings_des">Σύρετε αριστερά ή δεξιά για να αλλάξετε τη φωτεινότητα ή την ένταση</string>
<string name="double_tap_to_seek_settings">Διπλό πάτημα για αναζήτηση</string>
<string name="double_tap_to_seek_settings_des">Διπλό πάτημα στα αριστερά ή δεξιά για αναζήτηση μπροστά ή πίσω</string>
<string name="double_tap_to_seek_settings">Διπλό πάτημα για ιχνηλασία</string>
<string name="double_tap_to_seek_settings_des">Διπλό πάτημα στα αριστερά ή δεξιά για ιχνηλασία προς τα μπροστά ή πίσω</string>
<string name="search">Αναζήτηση</string>
<string name="settings_info">Πληροφορίες</string>
<string name="advanced_search">Προχωρημένη Αναζήτηση</string>
<string name="advanced_search_des">Δίνει τα αποτελέσματα αναζήτησης ταξινομημένα ανά πάροχο</string>
<string name="bug_report_settings_off">Αποστέλλει δεδομένα μόνο για σφάλματα</string>
<string name="bug_report_settings_off">Αποστέλλει δεδομένα μόνο για καταρρεύσεις</string>
<string name="bug_report_settings_on">Δεν στέλνει δεδομένα</string>
<string name="updates_settings">Εμφάνιση ενημερώσεων</string>
<string name="updates_settings_des">Αυτόματη αναζήτηση νέων ενημερώσεων</string>
<string name="uprereleases_settings">Ενημέρωση σε προ-εκδόσεις (beta)</string>
<string name="uprereleases_settings_des">Αναζητήστε ενημερώσεις προ-εκδόσεων (beta) αντί για σταθερές εκδόσεις</string>
<string name="github">Github</string>
<string name="lightnovel">Ελαφριά novel εφαρμογή από τους ίδιους προγραμματιστές</string>
<string name="anim">Anime εφαρμογή από τους ίδιους προγραμματιστές</string>
<string name="discord">Εγγραφείτε στο Discord</string>
<string name="benene">Δώστε μπανάνα στους προγραμματιστές</string>
<string name="benene_des">Μπανάνα δόθηκε δώθηκε</string>
<string name="uprereleases_settings_des">Αναζητήστε ενημερώσεις προ-εκδόσεων (beta) αντί για σταθερές εκδόσεις (stable)</string>
<string name="github">GitHub</string>
<string name="lightnovel">Εφαρμογή βιβλίων από τους ίδιους προγραμματιστές</string>
<string name="anim">Εφαρμογή άνιμε από τους ίδιους προγραμματιστές</string>
<string name="discord">Βρείτε μας στο Discord</string>
<string name="benene">Δώστε μία μπανάνα στους προγραμματιστές</string>
<string name="benene_des">Μπανάνα δόθηκε</string>
<string name="player_speed_text_format" formatted="true">Ταχύτητα (%.2fx)</string>
<string name="rated_format" formatted="true">Βαθμολογία: %.1f</string>
<string name="new_update_format" formatted="true">Νέα ενημέρωση διαθέσιμη!\n%s -&gt; %s</string>
<string name="new_update_format" formatted="true">Νέα διαθέσιμη ενημέρωση!
\n%s -&gt; %s</string>
<string name="double_tap_to_pause_settings_des">Πάτημα στη μέση για παύση</string>
<string name="use_system_brightness_settings">Χρήση φωτεινότητας συστήματος</string>
<string name="use_system_brightness_settings_des">Χρήση φωτεινότητας συστήματος στο ενσωματωμένο πρόγραμμα αναπαραγωγής αντί να εφαρμοστεί το προεπιλεγμένο σκούρο επικάλυμμα
</string>
<string name="use_system_brightness_settings_des">Χρήση φωτεινότητας συστήματος στο ενσωματωμένο πρόγραμμα αναπαραγωγής, αντί εφαρμογής προεπιλεγμένου σκούρου επικαλύμματος</string>
<string name="episode_sync_settings">Ενημέρωση προόδου παρακολούθησης</string>
<string name="episode_sync_settings_des">Αυτόματος συγχρονισμός της προόδου του τρέχοντος επεισοδίου</string>
<string name="restore_settings">Επαναφορά δεδομένων από αντίγραφο ασφαλείας</string>
<string name="backup_settings">Αντίγραφα ασφαλείας</string>
<string name="restore_success">Τα αντίγραφα ασφαλείας φορτώθηκαν</string>
<string name="restore_failed_format" formatted="true">Η επαναφορά αντιγράφων ασφαλαείας απέτυχε από το αρχείο %s</string>
<string name="backup_success">Επιτυχής αποθήκευση δεδομένων</string>
<string name="backup_failed">Δεν έχει δοθεί άδεια για πρόσβαση στον αποθηκευτικό χώρο, προσπαθήστε ξανά</string>
<string name="restore_failed_format" formatted="true">Η επαναφορά αντιγράφων ασφαλείας απέτυχε από το αρχείο %s</string>
<string name="backup_success">Τα δεδομένα αποθηκεύτηκαν</string>
<string name="backup_failed">Δεν έχει δοθεί άδεια για πρόσβαση στον αποθηκευτικό χώρο. Παρακαλώ προσπαθήστε ξανά.</string>
<string name="backup_failed_error_format">Σφάλμα δημιουργίας αντιγράφων ασφαλείας %s</string>
<string name="category_account">Λογαριασμοί</string>
<string name="category_updates">Ενημερώσεις και αντίγραφα ασφαλείας</string>
<string name="show_fillers_settings">Εμφάνιση filler επεισοδίου για anime</string>
<string name="show_trailers_settings">Εμφάνιση trailers</string>
<string name="kitsu_settings">Εμφάνιση posters από kitsu</string>
<string name="show_fillers_settings">Εμφάνιση filler επεισοδίου για άνιμε</string>
<string name="show_trailers_settings">Εμφάνιση trailer</string>
<string name="kitsu_settings">Εμφάνιση αφισών από Kitsu</string>
<string name="pref_filter_search_quality">Απόκρυψη επιλεγμένης ποιότητας βίντεο στα αποτελέσματα αναζήτησης</string>
<string name="app_language">App Language</string>
<string name="no_chromecast_support_toast">Αυτός ο πάροχος δεν έχει υποστήριξη Chromecast</string>
<string name="app_language">Γλώσσα εφαρμογής</string>
<string name="no_chromecast_support_toast">Αυτός ο πάροχος δεν έχει υποστήριξη για Chromecast</string>
<string name="no_links_found_toast">Δεν βρέθηκαν διαθέσιμοι σύνδεσμοι</string>
<string name="copy_link_toast">Ο σύνδεσμος αντιγράφηκε στο πρόχειρο</string>
<string name="season">Season</string>
<string name="season">Κύκλος</string>
<string name="season_format">%s %d%s</string>
<string name="no_season">No Season</string>
<string name="episode">Episode</string>
<string name="episodes">Episodes</string>
<string name="no_season">Κανένας κύκλος</string>
<string name="episode">Επεισόδιο</string>
<string name="episodes">Επεισόδια</string>
<string name="episodes_range">%d-%d</string>
<string name="episode_format" formatted="true">%d %s</string>
<string name="season_short">S</string>
<string name="season_short">Κ</string>
<string name="episode_short">E</string>
<string name="no_episodes_found">No Episodes found</string>
<string name="no_episodes_found">Δεν βρέθηκαν επεισόδια</string>
<string name="delete_file">Διαγραφή αρχείου</string>
<string name="delete">Διαγραφή</string>
<string name="pause">Πάυση</string>
<string name="pause">Παύση</string>
<string name="resume">Συνέχιση</string>
<string name="delete_message" formatted="true">Αυτό θα διαγράψει μόνιμα το %s\nΕπιβεβαίωση;</string>
<string name="delete_message" formatted="true">Αυτό θα διαγράψει μόνιμα το %s
\nΕίστε σίγουροι πως θέλετε να προχωρήσετε;</string>
<string name="resume_time_left" formatted="true">%dm\nαπομένουν</string>
<string name="status_ongoing">Σε εξέλιξη</string>
<string name="status">Κατάσταση</string>
@ -168,30 +169,30 @@
<string name="queued">προστέθηκε στην ουρά</string>
<string name="no_subtitles">Δεν υπάρχουν διαθέσιμοι υπότιτλοι</string>
<string name="default_subtitles">Προεπιλεγμένοι υπότιτλοι</string>
<string name="free_storage">Ελέυθερος</string>
<string name="free_storage">Ελεύθερος</string>
<string name="used_storage">Σε χρήση</string>
<string name="app_storage">Εφαρμογή</string>
<string name="movies">Ταινίες</string>
<string name="tv_series">Τηλεοπτικές Σειρές</string>
<string name="tv_series">Τηλεοπτικές σειρές</string>
<string name="cartoons">Κινούμενα σχέδια</string>
<string name="torrent">Torrents</string>
<string name="documentaries">Ντοκιμαντέρ</string>
<string name="asian_drama">Ασιατικά Δράμα</string>
<string name="livestreams">Ζωντανές ροές</string>
<string name="asian_drama">Ασιατικά Δράματα</string>
<string name="livestreams">Ζωντανές Μεταδόσεις</string>
<string name="others">Άλλα</string>
<string name="movies_singular">Ταινία</string>
<string name="tv_series_singular">Σειρά</string>
<string name="cartoons_singular">Cartoon</string>
<string name="cartoons_singular">Κινούμενα Σχέδια</string>
<string name="documentaries_singular">Ντοκιμαντέρ</string>
<string name="asian_drama_singular">Ασιατικό Δράμα</string>
<string name="live_singular">Ζωντανή ροή</string>
<string name="live_singular">Ζωντανή Μετάδοση</string>
<string name="other_singular">Άλλο</string>
<string name="source_error">Σφάλμα πηγής</string>
<string name="remote_error">Απομακρυσμένο σφάλμα</string>
<string name="render_error">Σφάλμα απόδοσης</string>
<string name="unexpected_error">Μη αναμενόμενο σφάλμα αναπαραγωγής</string>
<string name="unexpected_error">Απρόσμενο σφάλμα αναπαραγωγής</string>
<string name="storage_error">Σφάλμα λήψης, επιβεβαιώστε ότι η άδεια αποθήκευσης είναι ενεργοποιημένη</string>
<string name="episode_action_chromecast_episode">Chromecast επεισόδο</string>
<string name="episode_action_chromecast_episode">Chromecast επεισόδιο</string>
<string name="episode_action_play_in_app">Αναπαραγωγή εντός της εφαρμογής</string>
<string name="episode_action_play_in_format">Αναπαραγωγή σε %s</string>
<string name="episode_action_play_in_browser">Αναπαραγωγή στον περιηγητή</string>
@ -204,7 +205,7 @@
<string name="show_dub">Dub</string>
<string name="show_sub">Sub</string>
<string name="show_title">Τίτλος</string>
<string name="poster_ui_settings">Εναλλαγή των στοιχείων UI στο poster</string>
<string name="poster_ui_settings">Εναλλαγή γραφικών στοιχείων στην αφίσα</string>
<string name="video_lock">Κλείδωμα</string>
<string name="video_aspect_ratio_resize">Αλλαγή μεγέθους</string>
<string name="video_source">Πηγή</string>
@ -212,28 +213,28 @@
<string name="dont_show_again">Να μην εμφανιστεί ξανά</string>
<string name="skip_update">Παράλειψη της τρέχουσας ενημέρωσης</string>
<string name="update">Ενημέρωση</string>
<string name="watch_quality_pref">Προτίμηση ποιότητας παρακολούθησης</string>
<string name="limit_title">Μέγιστοι χαρακτήρες για τίτλο</string>
<string name="limit_title_rez">Ανάλυση αναπαραγωγής βίντεο</string>
<string name="video_buffer_size_settings">Μέγεθος buffer βίντεο</string>
<string name="video_buffer_length_settings">Μήκος buffer βίντεο</string>
<string name="video_buffer_disk_settings">Προσωρινή μνήμη βίντεο στο δίσκο</string>
<string name="watch_quality_pref">Προτιμώμενη ποιότητας παρακολούθησης</string>
<string name="limit_title">Μέγιστος αριθμός χαρακτήρων τίτλου</string>
<string name="limit_title_rez">Ανάλυση προγράμματος αναπαραγωγής βίντεο</string>
<string name="video_buffer_size_settings">Μέγεθος buffer για βίντεο</string>
<string name="video_buffer_length_settings">Μήκος buffer για βίντεο</string>
<string name="video_buffer_disk_settings">Μέγεθος προσωρινής μνήμης βίντεο στον δίσκο</string>
<string name="video_buffer_clear_settings">Εκκαθάριση προσωρινής μνήμης βίντεο και εικόνων</string>
<string name="video_ram_description">Θα προκαλέσει τυχαία σφάλματα εάν οριστεί πολύ ψηλά. Μην το αλλάξετε εάν έχετε χαμηλή ποσότητα μνήμης ram, όπως σε Android TV ή παλιό τηλέφωνο</string>
<string name="video_disk_description">Μπορεί να προκαλέσει προβλήματα σε συστήματα με χαμηλό αποθηκευτικό χώρο, όπως σε συσκευές Android TV, εάν τον ρυθμίσετε πολύ ψηλά</string>
<string name="dns_pref_summary">Χρήσιμο για παράκαμψη μπλοκ ISP</string>
<string name="video_ram_description">Προκαλεί καταρρεύσεις εάν οριστεί πολύ ψηλά. Μην το αλλάξετε εάν έχετε χαμηλή ποσότητα μνήμης RAM, όπως σε Android TV ή παλιά συσκευή.</string>
<string name="video_disk_description">Προκαλεί προβλήματα σε συστήματα με χαμηλό αποθηκευτικό χώρο, όπως σε συσκευές Android TV.</string>
<string name="dns_pref_summary">Χρήσιμο για παράκαμψη μπλοκαρισμάτων από ISP</string>
<string name="add_site_pref">Αντίγραφο ιστοτόπου</string>
<string name="remove_site_pref">Αφαίρεση ιστοτόπου</string>
<string name="add_site_summary">Προσθήκη αντιγράφου ενός υπάρχοντος ιστοτόπου, με έναν διαφορετικό σύνδεσμο</string>
<string name="download_path_pref">Διαδρομή λήψης</string>
<string name="display_subbed_dubbed_settings">Εμφάνιση Dubbed/Subbed Anime</string>
<string name="display_subbed_dubbed_settings">Εμφάνιση Dubbed/Subbed Άνιμε</string>
<string name="resize_fit">Προσαρμογή στην οθόνη</string>
<string name="resize_fill">Τέντωμα</string>
<string name="resize_zoom">Μεγέθυνση</string>
<string name="legal_notice">Αποποίηση ευθυνών</string>
<string name="category_general">Γενικά</string>
<string name="random_button_settings">Τυχαίο κουμπί</string>
<string name="random_button_settings_desc">Εμφάνιση τυχαίου κουμπιού στην Αρχική οθόνη</string>
<string name="random_button_settings">Κουμπί τυχαίας δράσης</string>
<string name="random_button_settings_desc">Εμφάνιση κουμπιού τυχαίας δράσης στην Αρχική Οθόνη</string>
<string name="provider_lang_settings">Γλώσσες παρόχων</string>
<string name="app_layout">Διάταξη εφαρμογής</string>
<string name="preferred_media_settings">Προτιμώμενα μέσα</string>
@ -261,7 +262,7 @@
<string name="upload_sync">Συγχρονισμός</string>
<string name="sync_score">Βαθμολογήθηκε</string>
<string name="authenticated_user" formatted="true">Πιστοποιήθηκε %s</string>
<string name="authenticated_user_fail" formatted="true">Αποτυχία πιστοποίησης σε %s</string>
<string name="authenticated_user_fail" formatted="true">Αποτυχία σύνδεσης στο %s</string>
<string name="none">Τίποτα</string>
<string name="normal">Κανονικά</string>
<string name="all">Όλα</string>
@ -293,7 +294,7 @@
<string name="resolution_and_title">Ανάλυση και τίτλος</string>
<string name="title">Τίτλος</string>
<string name="resolution">Ανάλυση</string>
<string name="error_invalid_id">Μη έγκυρο id</string>
<string name="error_invalid_id">Μη έγκυρο ID</string>
<string name="error_invalid_data">Μη έγκυρα δεδομένα</string>
<string name="error_invalid_url">Μη έγκυρος σύνδεσμος</string>
<string name="error">Σφάλμα</string>
@ -307,7 +308,7 @@
<string name="next">Επόμενο</string>
<string name="provider_languages_tip">Παρακολούθηση βίντεο σε αυτή την γλώσσα</string>
<string name="previous">Προηγούμενο</string>
<string name="skip_setup">Παράλειψη διαμόρφωσης</string>
<string name="skip_setup">Παράλειψη διαμόρφωσης της εφαρμογής</string>
<string name="app_layout_subtext">Αλλαγή της εμφάνισης της συσκευής για να ταιριάζει με την συσκευή σας</string>
<string name="crash_reporting_title">Αναφορά κατάρρευσης</string>
<string name="preferred_media_subtext">Τι θα θέλατε να δείτε</string>
@ -318,8 +319,8 @@
<string name="repository_url_hint">Σύνδεσμος αποθετηρίου</string>
<string name="plugin_loaded">Το πρόσθετο φορτώθηκε</string>
<string name="plugin_deleted">Το πρόσθετο διαγράφηκε</string>
<string name="plugin_load_fail" formatted="true">Απέτυχε να φορτωθεί το %s</string>
<string name="batch_download_start_format" formatted="true">Ξεκίνησε η λήψη %d %s</string>
<string name="plugin_load_fail" formatted="true">Αποτυχία φόρτωσης του %s</string>
<string name="batch_download_start_format" formatted="true">Ξεκίνησε η λήψη %d %s</string>
<string name="batch_download_finish_format" formatted="true">Κατέβηκε το %d %s επιτυχώς</string>
<string name="batch_download_nothing_to_download_format" formatted="true">Όλα τα %s έχουν ήδη κατέβει</string>
<string name="batch_download">Μαζική λήψη</string>
@ -327,12 +328,16 @@
<string name="plugin">Πρόσθετα</string>
<string name="delete_repository_plugins">Αυτό θα διαγράψει όλα τα πρόσθετα του αποθετηρίου</string>
<string name="delete_repository">Διαγραφή αποθετηρίου</string>
<string name="setup_extensions_subtext">Λήψη της λίστας των ιστοσελίδων που θέλετε να δείτε</string>
<string name="setup_extensions_subtext">Κατεβάστε την λίστα των ιστότοπων που θέλετε να χρησιμοποιήσετε</string>
<string name="plugins_downloaded" formatted="true">Κατέβηκε: %d</string>
<string name="plugins_disabled" formatted="true">Απενεργοποιήθηκε: %d</string>
<string name="plugins_not_downloaded" formatted="true">Δεν κατέβηκε: %d</string>
<string name="plugins_updated" formatted="true">Ενημερώθηκαν %d πρόσθετα</string>
<string name="blank_repo_message">Προσθήκη ενός αποθετηρίου για να εγκαταστήσετε πρόσθετα ιστοσελίδας</string>
<string name="blank_repo_message">Το CloudStream δεν έχει προεγκατεστημένους ιστότοπους. Πρέπει να εγκαταστήσετε ιστότοπους μέσω ορισμένων αποθετηρίων.
\n
\nΛόγω ενός χαζού DMCA takedown από μέρους των Sky UK Limited 🤮 δεν μπορούμε να προσθέσουμε απευθείας σύνδεσμο προς τα προαναφερόμενα αποθετήρια εντός της εφαρμογής.
\n
\nΒρείτε μας στο Discord ή ψάξτε στο διαδίκτυο.</string>
<string name="view_public_repositories_button">Προβολή αποθετηρίων κοινότητας</string>
<string name="view_public_repositories_button_short">Δημόσια λίστα</string>
<string name="uppercase_all_subtitles">Κεφαλοποίηση υποτίτλων</string>
@ -343,7 +348,7 @@
<string name="video_tracks">Κομμάτια βίντεο</string>
<string name="apply_on_restart">Εφαρμογή στην επανεκκίνηση</string>
<string name="safe_mode_title">Η ασφαλής λειτουργία ενεργοποιήθηκε</string>
<string name="safe_mode_description">Ένα μη αντιστρέψιμο σφάλμα συνέβη και απενεργοποιήσαμε όλα τα πρόσθετα, ώστε να μπορέσετε να διαπιστώσετε ποιο πρόσθετο προκάλεσε αυτή τη κατάρρευση.</string>
<string name="safe_mode_description">Όλα τα extensions απενεργοποιήθηκαν , ώστε να μπορέσετε να διαπιστώσετε ποιο από αυτά προκάλεσε τη κατάρρευση.</string>
<string name="safe_mode_crash_info">Προβολή πληροφορίας κατάρρευσης</string>
<string name="extension_rating" formatted="true">Βαθμολογία: %s</string>
<string name="extension_description">Περιγραφή</string>
@ -370,4 +375,115 @@
<string name="next_episode_time_day_format" formatted="true">%dμ %dω %dλ</string>
<string name="next_episode_time_hour_format" formatted="true">%dω %dλ</string>
<string name="next_episode_time_min_format" formatted="true">%dλ</string>
<string name="search_hint_site" formatted="true">Αναζήτηση %s…</string>
<string name="play_livestream_button">Αναπαραγωγή ζωντανής μετάδοσης</string>
<string name="downloaded">Ληφθέν</string>
<string name="download_canceled">Η λήψη ακυρώθηκε</string>
<string name="download_failed">Η λήψη απέτυχε</string>
<string name="download_started">Η λήψη ξεκίνησε</string>
<string name="download_paused">Η λήψη παύθηκε</string>
<string name="downloading">Κατεβαίνει</string>
<string name="sort_close">Κλείσιμο</string>
<string name="sort_clear">Εκκαθάριση</string>
<string name="subs_subtitle_languages">Γλώσσα υποτίτλων</string>
<string name="action_open_play">\@string/home_play</string>
<string name="provider_info_meta">Δεν έχουν παρασχεθεί μεταδεδομένα από τον ιστότοπο, η φόρτωση του βίντεο θα αποτύχει αν δεν υπάρχει στον ιστότοπο.</string>
<string name="double_tap_to_pause_settings">Διπλό πάτημα για παύση</string>
<string name="double_tap_to_seek_amount_settings">Μέγεθος ιχνηλασίας στο πρόγραμμα αναπαραγωγής</string>
<string name="automatic_plugin_updates">Αυτόματη ενημέρωση plugin</string>
<string name="automatic_plugin_download">Αυτόματη λήψη plugin</string>
<string name="dns_pref">DNS μέσω HTTPS</string>
<string name="example_site_url">παράδειγμα.com</string>
<string name="quality_hq">HQ</string>
<string name="quality_ts">TS</string>
<string name="quality_tc">TC</string>
<string name="quality_blueray">Blu-ray</string>
<string name="quality_workprint">WP</string>
<string name="quality_dvd">DVD</string>
<string name="quality_4k">4K</string>
<string name="quality_sdr">SDR</string>
<string name="quality_webrip">Web</string>
<string name="quality_hdr">HDR</string>
<string name="skip_type_mixed_op">Ανάμεικτοι τίτλοι αρχής</string>
<string name="skip_type_creddits">Εύσημα</string>
<string name="skip_type_intro">Εισαγωγή</string>
<string name="go_forward_30">+30</string>
<string name="status_completed">Ολοκληρώθηκε</string>
<string name="nsfw">NSFW</string>
<string name="nsfw_singular">NSFW</string>
<string name="episode_action_chromecast_mirror">Chromecast mirror</string>
<string name="nginx_url_pref">Σύνδεσμος NGINX σέρβερ</string>
<string name="example_site_name">ΟΚουλΙστότοποςΜου</string>
<string name="sync_total_episodes_none">/\?\?</string>
<string name="sync_total_episodes_some" formatted="true">/%d</string>
<string name="sync_score_format" formatted="true">%d / 10</string>
<string name="clear_history">Εκκαθάριση ιστορικού</string>
<string name="history">Ιστορικό</string>
<string name="enable_skip_op_from_database_des">Εμφάνισε pop-up για παράλειψη τίτλων αρχής και τέλους</string>
<string name="clipboard_too_large">Υπερβολικά μεγάλο μέγεθος κειμένου. Αδύνατη η αποθήκευση στο πρόχειρο.</string>
<string name="yes">Ναι</string>
<string name="no">Όχι</string>
<string name="update_notification_downloading">Λήψη ενημέρωσης εφαρμογής…</string>
<string name="update_notification_installing">Εγκατάσταση ενημέρωσης εφαρμογής…</string>
<string name="update_notification_failed">Αδύνατη η εγκατάσταση της νέας έκδοσης της εφαρμογής</string>
<string name="type_re_watching">Ξαναβλέπει</string>
<string name="stream">Μετάδοση</string>
<string name="download_done">Η λήψη ολοκληρώθηκε</string>
<string name="autoplay_next_settings">Αυτόματη αναπαραγωγή επόμενου επεισοδίου</string>
<string name="automatic_plugin_download_summary">Αυτόματη εγκατάσταση όλων των μη-εγκατεστημένων plugin από τους προστιθεμένους παρόχους.</string>
<string name="anime">Άνιμε</string>
<string name="no_update_found">Δεν βρέθηκε ενημέρωση</string>
<string name="check_for_update">Έλεγχος για ενημέρωση</string>
<string name="example_password">κωδικός123</string>
<string name="example_username">ΤοΚουλΨευδώνυμοΜου</string>
<string name="example_email">γειασου@κόσμε.com</string>
<string name="subtitles_example_text">Η γρήγορη, καφέ αλεπού πηδάει πάνω από τον τεμπέλη σκύλο / The quick brown fox jumps over the lazy dog</string>
<string name="quality_cam">Cam</string>
<string name="quality_cam_rip">Cam</string>
<string name="quality_cam_hd">Cam</string>
<string name="quality_hd">HD</string>
<string name="quality_sd">SD</string>
<string name="quality_uhd">UHD</string>
<string name="is_adult">18+</string>
<string name="skip_type_op">Τίτλοι αρχής</string>
<string name="skip_type_ed">Τίτλοι τέλους</string>
<string name="skip_type_recap">Ανακεφαλαίωση</string>
<string name="skip_type_mixed_ed">Ανάμεικτοι τίτλοι τέλους</string>
<string name="go_back_30">-30</string>
<string name="rating">Κριτική</string>
<string name="ova_singular">\@string/ova</string>
<string name="pref_category_app_updates">Ενημερώσεις εφαρμογής</string>
<string name="pref_category_backup">Αντίγραφο ασφαλείας</string>
<string name="pref_category_extensions">Extensions</string>
<string name="pref_category_actions">Δράσεις</string>
<string name="pref_category_cache">Προσωρινή μνήμη</string>
<string name="pref_category_player_features">Χαρακτηριστικά προγράμματος αναπαραγωγής</string>
<string name="pref_category_subtitles">Υπότιτλοι</string>
<string name="pref_category_player_layout">Δομή</string>
<string name="pref_category_defaults">Προεπιλεγμένα</string>
<string name="login_format" formatted="true">%s %s</string>
<string name="subs_font_size">Μέγεθος γραμματοσειράς</string>
<string name="anime_singular">\@string/anime</string>
<string name="pref_category_links">Σύνδεσμοι</string>
<string name="pref_category_looks">Εμφάνιση</string>
<string name="pref_category_ui_features">Χαρακτηριστικά</string>
<string name="example_ip">127.0.0.1</string>
<string name="all_languages_preference">Όλες οι γλώσσες</string>
<string name="skip_type_format" formatted="true">Παράλειψη %s</string>
<string name="apk_installer_package_installer">PackageInstaller</string>
<string name="apk_installer_legacy">Legacy</string>
<string name="play_trailer_button">Αναπαραγωγή τρέιλερ</string>
<string name="action_add_to_bookmarks">Ορισμός κατάστασης θέασης</string>
<string name="sort_copy">Αντιγραφή</string>
<string name="sort_save">Αποθήκευση</string>
<string name="subs_import_text" formatted="true">Εισάγετε γραμματοσειρές τοποθετώντας \'τες στο %s</string>
<string name="autoplay_next_settings_des">Αναπαραγωγή του επόμενου επεισοδίου με το τέλος του τρέχοντος</string>
<string name="apk_installer_settings">Εγκαταστάτης APK</string>
<string name="apk_installer_settings_des">Ορισμένες συσκευές δεν υποστηρίζουν τον νέο εγκαταστάτη πακέτων. Δοκιμάστε την επιλογή Legacy εάν δεν εγκαθίστανται οι ενημερώσεις.</string>
<string name="ova">OVA</string>
<string name="torrent_singular">Torrent</string>
<string name="pref_category_gestures">Χειρονομίες</string>
<string name="action_mark_as_watched">Σημείωσε το ως πλήρως παρακολουθημένο</string>
<string name="confirm_exit_dialog">Είστε σίγουροι πως θέλετε να βγείτε;</string>
<string name="redo_setup_process">Επανάληψη διαδικασίας διαμόρφωσης της εφαρμογής</string>
</resources>

View file

@ -489,4 +489,19 @@
<string name="apk_installer_settings_des">Alcuni telefoni non supportano il nuovo programma di installazione dei pacchetti. Prova l\'opzione legacy se gli aggiornamenti non vengono installati.</string>
<string name="apk_installer_settings">Installer APK</string>
<string name="apk_installer_legacy">Legacy</string>
<string name="play_trailer_button">Riproduci trailer</string>
<string name="redo_setup_process">Ripeti il processo di configurazione</string>
<string name="pref_category_links">Link</string>
<string name="pref_category_app_updates">Aggiornamenti app</string>
<string name="pref_category_backup">Backup</string>
<string name="pref_category_extensions">Estensioni</string>
<string name="pref_category_actions">Azioni</string>
<string name="pref_category_cache">Cache</string>
<string name="pref_category_gestures">Gesti</string>
<string name="pref_category_player_features">Funzionalità lettore</string>
<string name="pref_category_subtitles">Sottotitoli</string>
<string name="pref_category_player_layout">Layout</string>
<string name="pref_category_defaults">Predefiniti</string>
<string name="pref_category_looks">Aspetto</string>
<string name="pref_category_ui_features">Funzionalità</string>
</resources>

View file

@ -135,7 +135,7 @@
<string name="restore_success">Wczytano plik kopii zapasowej</string>
<string name="restore_failed_format" formatted="true">Nie udało się przywrócić danych z pliku %s</string>
<string name="backup_success">Dane zapisane z powodzeniem</string>
<string name="backup_failed">Brak uprawnień do pamięci, spróbuj ponownie</string>
<string name="backup_failed">Brak uprawnień do pamięci, spróbuj ponownie.</string>
<string name="backup_failed_error_format">Błąd tworzenia kopii zapasowej %s</string>
<string name="search">Szukaj</string>
<string name="category_account">Konta</string>
@ -259,7 +259,7 @@
<string name="video_buffer_disk_settings">Pamięć podręczna wideo na dysku</string>
<string name="video_buffer_clear_settings">Wyczyść pamięć podręczną wideo i obrazów</string>
<string name="video_ram_description">Ustawienie zbyt wysokiej wartości może powodować problemy w systemach z małą ilością pamięci RAM, takich jak urządzenia Android TV lub stare telefony.</string>
<string name="video_disk_description">Zbyt wysokie ustawienie może powodować problemy w systemach z małą ilością miejsca w pamięci, takich jak urządzenia Android TV</string>
<string name="video_disk_description">Zbyt wysokie ustawienie może powodować problemy w systemach z małą ilością miejsca w pamięci, takich jak urządzenia Android TV.</string>
<string name="dns_pref">DNS przez HTTPS</string>
<string name="dns_pref_summary">Przydatne w pomijaniu blokad dostawców internetu</string>
<string name="add_site_pref">Sklonuj stronę</string>
@ -321,7 +321,7 @@
<string name="subtitle_offset_extra_hint_later_format">Użyj tego, jeśli napisy są wyświetlane %d ms za wcześnie</string>
<string name="subtitle_offset_extra_hint_before_format">Użyj tego, jeśli napisy są wyświetlane %d ms za późno</string>
<string name="subtitle_offset_extra_hint_none_format">Brak opóźnienia napisów</string>
<string name="subtitles_example_text">Pchnąć w tę łódź jeża lub ośm skrzyń fig.</string>
<string name="subtitles_example_text">Pchnąć w tę łódź jeża lub ośm skrzyń fig</string>
<string name="recommended">Polecane</string>
<string name="player_loaded_subtitles" formatted="true">Załadowano %s</string>
<string name="player_load_subtitles">Wczytaj z pliku</string>
@ -470,4 +470,19 @@
<string name="skip_type_intro">Intro</string>
<string name="skip_type_mixed_ed">Mixed ending</string>
<string name="enable_skip_op_from_database_des">Pokaż wyskakujące okienka pomijania dla niektórych segmentów</string>
<string name="pref_category_extensions">Dodatki</string>
<string name="pref_category_actions">Działania</string>
<string name="pref_category_cache">Pamięć podręczna</string>
<string name="redo_setup_process">Powtórz proces konfiguracji</string>
<string name="pref_category_links">Linki</string>
<string name="pref_category_app_updates">Aktualizacje aplikacji</string>
<string name="pref_category_backup">Kopia zapasowa</string>
<string name="pref_category_subtitles">Napisy</string>
<string name="pref_category_gestures">Gesty</string>
<string name="pref_category_player_features">Funkcje odtwarzacza</string>
<string name="pref_category_ui_features">Funkcje</string>
<string name="pref_category_defaults">Ustawienia domyślne</string>
<string name="pref_category_player_layout">Układ</string>
<string name="pref_category_looks">Wygląd</string>
<string name="play_trailer_button">Odtwórz zwiastun</string>
</resources>

View file

@ -214,7 +214,8 @@
<string name="go_back_30">-30</string>
<string name="go_forward_30">+30</string>
<string name="delete_message" formatted="true">这将永久删除 %s\n您确定吗?</string>
<string name="resume_time_left" formatted="true">剩余 %d 分钟</string>
<string name="resume_time_left" formatted="true">%d 分钟
\n剩余</string>
<string name="status_ongoing">连载中</string>
<string name="status_completed">已完结</string>
<string name="status">状态</string>
@ -533,4 +534,19 @@
<string name="apk_installer_settings_des">部分手机不支持新的软件包安装程序。如果未安装更新,请尝试使用传统选项。</string>
<string name="apk_installer_legacy">传统</string>
<string name="apk_installer_package_installer">软件包安装程序</string>
<string name="play_trailer_button">播放预告片</string>
<string name="pref_category_ui_features">功能</string>
<string name="pref_category_defaults">默认</string>
<string name="redo_setup_process">重置设置向导</string>
<string name="pref_category_player_layout">布局</string>
<string name="pref_category_links">链接</string>
<string name="pref_category_extensions">扩展</string>
<string name="pref_category_subtitles">字幕</string>
<string name="pref_category_app_updates">应用更新</string>
<string name="pref_category_backup">备份</string>
<string name="pref_category_cache">缓存</string>
<string name="pref_category_gestures">手势</string>
<string name="pref_category_player_features">播放器功能</string>
<string name="pref_category_actions">行为</string>
<string name="pref_category_looks">外观</string>
</resources>

View file

@ -119,6 +119,7 @@
<string name="type_none">None</string>
<string name="type_re_watching">Rewatching</string>
<string name="play_movie_button">Play Movie</string>
<string name="play_trailer_button">Play Trailer</string>
<string name="play_livestream_button">Play Livestream</string>
<string name="play_torrent_button">Stream Torrent</string>
<string name="pick_source">Sources</string>
@ -242,6 +243,7 @@
<string name="automatic_plugin_download_summary">Automatically install all not yet installed plugins from added repositories.</string>
<string name="updates_settings">Show app updates</string>
<string name="updates_settings_des">Automatically search for new updates on start</string>
<string name="redo_setup_process">Redo setup process</string>
<string name="uprereleases_settings">Update to prereleases</string>
<string name="uprereleases_settings_des">Search for prerelease updates instead of full releases only</string>
<string name="apk_installer_settings">APK Installer</string>
@ -389,6 +391,19 @@
responsibility of user to avoid any actions that might violate the laws governing his/her locality. Use
CloudStream 3 at your own risk.
</string>
<string name="pref_category_links">Links</string>
<string name="pref_category_app_updates">App updates</string>
<string name="pref_category_backup">Backup</string>
<string name="pref_category_extensions">Extensions</string>
<string name="pref_category_actions">Actions</string>
<string name="pref_category_cache">Cache</string>
<string name="pref_category_gestures">Gestures</string>
<string name="pref_category_player_features">Player features</string>
<string name="pref_category_subtitles">Subtitles</string>
<string name="pref_category_player_layout">Layout</string>
<string name="pref_category_defaults">Defaults</string>
<string name="pref_category_looks">Looks</string>
<string name="pref_category_ui_features">Features</string>
<string name="category_general">General</string>
<string name="random_button_settings">Random Button</string>
<string name="random_button_settings_desc">Show random button on Homepage</string>

View file

@ -158,7 +158,7 @@
<item name="colorAccent">@color/material_dynamic_primary80</item>
<item name="colorOnPrimary">@color/material_dynamic_primary20</item>
<!-- Needed for leanback fuckery -->
<item name="android:colorAccent">@color/material_dynamic_primary30</item>
<item name="android:colorAccent">@color/material_dynamic_primary80</item>
</style>
<style name="OverlayPrimaryColorMonetTwo">
@ -168,7 +168,7 @@
<item name="colorAccent">@color/material_dynamic_secondary80</item>
<item name="colorOnPrimary">@color/material_dynamic_secondary20</item>
<!-- Needed for leanback fuckery -->
<item name="android:colorAccent">@color/material_dynamic_secondary30</item>
<item name="android:colorAccent">@color/material_dynamic_secondary80</item>
</style>
<style name="OverlayPrimaryColorBlue">

View file

@ -1,6 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<SwitchPreference
android:icon="@drawable/baseline_sync_24"
android:summary="@string/episode_sync_settings_des"
android:title="@string/episode_sync_settings"
app:defaultValue="true"
app:key="@string/episode_sync_enabled_key" />
<PreferenceCategory
android:title="@string/pref_category_defaults">
<Preference
android:icon="@drawable/ic_baseline_hd_24"
android:key="@string/quality_pref_key"
android:title="@string/watch_quality_pref" />
<Preference
android:icon="@drawable/netflix_play"
android:key="@string/player_pref_key"
android:title="@string/player_pref" />
</PreferenceCategory>
<PreferenceCategory
android:title="@string/pref_category_player_layout">
<Preference
android:icon="@drawable/ic_baseline_text_format_24"
android:key="@string/prefer_limit_title_key"
android:title="@string/limit_title" />
<Preference
android:icon="@drawable/ic_baseline_text_format_24"
android:key="@string/prefer_limit_title_rez_key"
android:title="@string/limit_title_rez" />
</PreferenceCategory>
<PreferenceCategory
android:title="@string/pref_category_subtitles">
<Preference
android:icon="@drawable/ic_outline_subtitles_24"
android:key="@string/subtitle_settings_key"
@ -11,28 +47,11 @@
android:key="@string/subtitle_settings_chromecast_key"
android:title="@string/chromecast_subtitles_settings"
app:summary="@string/chromecast_subtitles_settings_des" />
</PreferenceCategory>
<Preference
android:icon="@drawable/ic_baseline_hd_24"
android:key="@string/quality_pref_key"
android:title="@string/watch_quality_pref" />
<Preference
android:icon="@drawable/netflix_play"
android:key="@string/player_pref_key"
android:title="@string/player_pref" />
<Preference
android:icon="@drawable/ic_baseline_text_format_24"
android:key="@string/prefer_limit_title_key"
android:title="@string/limit_title" />
<Preference
android:icon="@drawable/ic_baseline_text_format_24"
android:key="@string/prefer_limit_title_rez_key"
android:title="@string/limit_title_rez" />
<PreferenceCategory
android:title="@string/pref_category_player_features">
<SwitchPreference
android:icon="@drawable/ic_baseline_picture_in_picture_alt_24"
android:summary="@string/picture_in_picture_des"
@ -51,18 +70,6 @@
android:title="@string/eigengraumode_settings"
app:defaultValue="false"
app:key="@string/playback_speed_enabled_key" />
<SwitchPreference
android:icon="@drawable/ic_baseline_ondemand_video_24"
android:summary="@string/swipe_to_seek_settings_des"
android:title="@string/swipe_to_seek_settings"
app:defaultValue="true"
app:key="@string/swipe_enabled_key" />
<SwitchPreference
android:icon="@drawable/ic_baseline_ondemand_video_24"
android:summary="@string/swipe_to_change_settings_des"
android:title="@string/swipe_to_change_settings"
app:defaultValue="true"
app:key="@string/swipe_vertical_enabled_key" />
<SwitchPreference
android:icon="@drawable/ic_baseline_skip_next_24"
android:summary="@string/autoplay_next_settings_des"
@ -75,6 +82,22 @@
app:defaultValue="true"
android:summary="@string/enable_skip_op_from_database_des"
app:key="@string/enable_skip_op_from_database" />
</PreferenceCategory>
<PreferenceCategory
android:title="@string/pref_category_gestures">
<SwitchPreference
android:icon="@drawable/ic_baseline_ondemand_video_24"
android:summary="@string/swipe_to_seek_settings_des"
android:title="@string/swipe_to_seek_settings"
app:defaultValue="true"
app:key="@string/swipe_enabled_key" />
<SwitchPreference
android:icon="@drawable/ic_baseline_ondemand_video_24"
android:summary="@string/swipe_to_change_settings_des"
android:title="@string/swipe_to_change_settings"
app:defaultValue="true"
app:key="@string/swipe_vertical_enabled_key" />
<SwitchPreference
android:icon="@drawable/ic_baseline_touch_app_24"
android:summary="@string/double_tap_to_seek_settings_des"
@ -99,14 +122,10 @@
app:min="5"
app:seekBarIncrement="5"
app:showSeekBarValue="true" />
</PreferenceCategory>
<SwitchPreference
android:icon="@drawable/baseline_sync_24"
android:summary="@string/episode_sync_settings_des"
android:title="@string/episode_sync_settings"
app:defaultValue="true"
app:key="@string/episode_sync_enabled_key" />
<PreferenceCategory
android:title="@string/pref_category_cache">
<Preference
android:icon="@drawable/ic_baseline_storage_24"
android:key="@string/video_buffer_disk_key"
@ -129,4 +148,5 @@
android:icon="@drawable/ic_baseline_delete_outline_24"
android:key="@string/video_buffer_clear_key"
android:title="@string/video_buffer_clear_settings" />
</PreferenceCategory>
</PreferenceScreen>

View file

@ -1,6 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<SwitchPreference
android:defaultValue="false"
android:icon="@drawable/ic_baseline_bug_report_24"
android:key="acra.disable"
android:summaryOff="@string/bug_report_settings_off"
android:summaryOn="@string/bug_report_settings_on"
android:title="@string/pref_disable_acra" />
<PreferenceCategory
android:title="@string/pref_category_app_updates">
<Preference
android:title="@string/check_for_update"
app:icon="@drawable/ic_baseline_system_update_24"
@ -19,7 +29,16 @@
android:title="@string/apk_installer_settings"
android:summary="@string/apk_installer_settings_des"
/>
<SwitchPreference
android:icon="@drawable/ic_baseline_notifications_active_24"
android:summary="@string/updates_settings_des"
android:title="@string/updates_settings"
app:defaultValue="true"
app:key="@string/auto_update_key" />
</PreferenceCategory>
<PreferenceCategory
android:title="@string/pref_category_backup">
<Preference
android:icon="@drawable/baseline_save_as_24"
android:key="@string/backup_key"
@ -29,37 +48,33 @@
android:icon="@drawable/baseline_restore_page_24"
android:key="@string/restore_key"
android:title="@string/restore_settings" />
</PreferenceCategory>
<Preference
android:icon="@drawable/baseline_description_24"
android:key="@string/show_logcat_key"
android:title="@string/show_log_cat" />
<SwitchPreference
android:defaultValue="false"
android:icon="@drawable/ic_baseline_bug_report_24"
android:key="acra.disable"
android:summaryOff="@string/bug_report_settings_off"
android:summaryOn="@string/bug_report_settings_on"
android:title="@string/pref_disable_acra" />
<PreferenceCategory
android:title="@string/pref_category_extensions">
<SwitchPreference
android:defaultValue="true"
android:icon="@drawable/ic_baseline_extension_24"
android:key="@string/auto_update_plugins_key"
android:title="@string/automatic_plugin_updates" />
<SwitchPreference
android:defaultValue="false"
android:icon="@drawable/ic_baseline_extension_24"
android:key="@string/auto_download_plugins_key"
android:title="@string/automatic_plugin_download"
android:summary="@string/automatic_plugin_download_summary" />
<SwitchPreference
android:icon="@drawable/ic_baseline_notifications_active_24"
android:summary="@string/updates_settings_des"
android:title="@string/updates_settings"
app:defaultValue="true"
app:key="@string/auto_update_key" />
</PreferenceCategory>
<PreferenceCategory
android:title="@string/pref_category_actions">
<Preference
android:icon="@drawable/baseline_description_24"
android:key="@string/show_logcat_key"
android:title="@string/show_log_cat" />
<Preference
android:icon="@drawable/ic_baseline_construction_24"
android:title="Redo setup process"
android:title="@string/redo_setup_process"
app:key="@string/redo_setup_key" />
</PreferenceCategory>
</PreferenceScreen>

View file

@ -28,6 +28,15 @@
android:title="@string/legal_notice"
android:icon="@drawable/ic_baseline_warning_24" />
<Preference
android:key="@string/benene_count"
android:title="@string/benene"
android:icon="@drawable/benene"
app:summary="@string/benene_des" />
<PreferenceCategory
android:title="@string/pref_category_links">
<Preference
android:title="@string/github"
android:icon="@drawable/ic_github_logo"
@ -53,9 +62,6 @@
android:action="android.intent.action.VIEW"
android:data="https://discord.gg/5Hus6fM" />
</Preference>
<Preference
android:key="@string/benene_count"
android:title="@string/benene"
android:icon="@drawable/benene"
app:summary="@string/benene_des" />
</PreferenceCategory>
</PreferenceScreen>

View file

@ -1,6 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<PreferenceCategory
android:title="@string/pref_category_looks">
<Preference
android:icon="@drawable/ic_baseline_color_lens_24"
android:key="@string/primary_color_key"
@ -13,6 +16,16 @@
android:icon="@drawable/ic_baseline_tv_24"
android:key="@string/app_layout_key"
android:title="@string/app_layout" />
<SwitchPreference
android:defaultValue="true"
android:icon="@drawable/baseline_grid_view_24"
android:key="@string/bottom_title_key"
android:summary="@string/bottom_title_settings_des"
android:title="@string/bottom_title_settings" />
</PreferenceCategory>
<PreferenceCategory
android:title="@string/pref_category_ui_features">
<Preference
android:icon="@drawable/ic_baseline_tv_24"
android:key="@string/poster_ui_key"
@ -23,12 +36,6 @@
android:title="@string/advanced_search"
android:summary="@string/advanced_search_des"
app:defaultValue="true" />
<SwitchPreference
android:defaultValue="true"
android:icon="@drawable/baseline_grid_view_24"
android:key="@string/bottom_title_key"
android:summary="@string/bottom_title_settings_des"
android:title="@string/bottom_title_settings" />
<SwitchPreference
android:key="@string/show_trailers_key"
android:icon="@drawable/baseline_theaters_24"
@ -54,4 +61,5 @@
android:icon="@drawable/ic_baseline_filter_list_24"
android:key="@string/pref_filter_search_quality_key"
android:title="@string/pref_filter_search_quality" />
</PreferenceCategory>
</PreferenceScreen>