/* * Twidere - Twitter client for Android * * Copyright (C) 2012-2017 Mariotaku Lee * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ package org.mariotaku.twidere.fragment.statuses import android.content.Context import android.os.Bundle import androidx.loader.content.Loader import org.mariotaku.twidere.TwidereConstants.* import org.mariotaku.twidere.fragment.ParcelableStatusesFragment import org.mariotaku.twidere.loader.statuses.NetworkPublicTimelineLoader import org.mariotaku.twidere.model.ParcelableStatus import org.mariotaku.twidere.util.Utils import java.util.* /** * Created by mariotaku on 14/12/2. */ class NetworkPublicTimelineFragment : ParcelableStatusesFragment() { override val savedStatusesFileArgs: Array? get() { val context = context ?: return null val accountKey = Utils.getAccountKey(context, arguments) val result = ArrayList() result.add(AUTHORITY_NETWORK_PUBLIC_TIMELINE) result.add("account=$accountKey") return result.toTypedArray() } override val readPositionTagWithArguments: String? get() { val arguments = arguments ?: return null val tabPosition = arguments.getInt(EXTRA_TAB_POSITION, -1) if (tabPosition < 0) return null return "networkpublic_timeline" } override fun onCreateStatusesLoader(context: Context, args: Bundle, fromUser: Boolean): Loader?> { refreshing = true val data = adapterData val accountKey = Utils.getAccountKey(context, args) val tabPosition = args.getInt(EXTRA_TAB_POSITION, -1) val loadingMore = args.getBoolean(EXTRA_LOADING_MORE, false) return NetworkPublicTimelineLoader(context, accountKey, data, savedStatusesFileArgs, tabPosition, fromUser, loadingMore) } }