package name fixes
This commit is contained in:
parent
de0df1a825
commit
d28d19f94b
|
@ -1 +1 @@
|
|||
0092b6f712ca9eb26e416a7bb5e3b707145f1d1d
|
||||
ebf9e884f18766a69aeb1fc46883c346cbbee63b
|
||||
|
|
|
@ -21,7 +21,7 @@ package org.mariotaku.twidere.util
|
|||
|
||||
import android.accounts.AccountManager
|
||||
import android.support.test.InstrumentationRegistry
|
||||
import org.mariotaku.twidere.extensions.model.updateDetails
|
||||
import org.mariotaku.twidere.extension.model.updateDetails
|
||||
import org.mariotaku.twidere.model.AccountDetails
|
||||
import org.mariotaku.twidere.model.util.AccountUtils
|
||||
import org.mariotaku.twidere.test.R
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
package org.mariotaku.twidere.extensions.model
|
||||
package org.mariotaku.twidere.extension.model
|
||||
|
||||
import android.accounts.Account
|
||||
import android.accounts.AccountManager
|
|
@ -37,7 +37,7 @@ import org.apache.commons.cli.*
|
|||
import org.json.JSONArray
|
||||
import org.json.JSONObject
|
||||
import org.mariotaku.ktextension.subArray
|
||||
import org.mariotaku.twidere.extensions.model.updateDetails
|
||||
import org.mariotaku.twidere.extension.model.updateDetails
|
||||
import org.mariotaku.twidere.model.AccountDetails
|
||||
import org.mariotaku.twidere.model.UserKey
|
||||
import org.mariotaku.twidere.model.util.AccountUtils
|
||||
|
|
|
@ -21,12 +21,12 @@ package org.mariotaku.twidere.extension.model
|
|||
|
||||
import org.mariotaku.microblog.library.twitter.model.UserList
|
||||
import org.mariotaku.twidere.model.UserKey
|
||||
import org.mariotaku.twidere.model.util.ParcelableUserListUtils
|
||||
import org.mariotaku.twidere.extension.model.api.microblog.toParcelable
|
||||
|
||||
/**
|
||||
* Created by mariotaku on 2017/4/7.
|
||||
*/
|
||||
|
||||
fun Array<UserList>.toParcelables(accountKey: UserKey, profileImageSize: String = "normal") = Array(size) {
|
||||
ParcelableUserListUtils.from(this[it], accountKey, profileImageSize = profileImageSize)
|
||||
this[it].toParcelable(accountKey, profileImageSize = profileImageSize)
|
||||
}
|
|
@ -76,23 +76,23 @@ fun Status.toParcelable(accountKey: UserKey): ParcelableStatus {
|
|||
result.in_reply_to_status_id = status.inReplyToId
|
||||
result.in_reply_to_user_key = status.inReplyToAccountId?.let { UserKey(it, accountKey.host) }
|
||||
|
||||
val user = status.account
|
||||
result.user_key = user.getKey(accountKey.host)
|
||||
result.user_name = user.displayName
|
||||
result.user_screen_name = user.username
|
||||
result.user_profile_image_url = user.avatar
|
||||
result.user_is_protected = user.isLocked
|
||||
val account = status.account
|
||||
result.user_key = account.getKey(accountKey.host)
|
||||
result.user_name = account.displayName
|
||||
result.user_screen_name = account.username
|
||||
result.user_profile_image_url = account.avatar
|
||||
result.user_is_protected = account.isLocked
|
||||
// Twitter will escape <> to <>, so if a status contains those symbols unescaped
|
||||
// We should treat this as an html
|
||||
val html = HtmlSpanBuilder.fromHtml(status.content, status.content)
|
||||
result.text_unescaped = html?.toString()
|
||||
result.text_plain = result.text_unescaped
|
||||
result.spans = html?.spanItems
|
||||
result.media = mediaAttachments?.mapToArray { it.toParcelable() }
|
||||
result.media = status.mediaAttachments?.mapToArray { it.toParcelable() }
|
||||
result.source = status.application?.sourceHtml
|
||||
result.is_favorite = status.isFavourited
|
||||
result.is_possibly_sensitive = status.isSensitive
|
||||
result.mentions = mentions?.mapToArray { it.toParcelable(accountKey) }
|
||||
result.mentions = status.mentions?.mapToArray { it.toParcelable(accountKey) }
|
||||
|
||||
extras.display_text_range = calculateDisplayTextRange(result.spans, result.media)
|
||||
|
||||
|
|
|
@ -0,0 +1,46 @@
|
|||
/*
|
||||
* Twidere - Twitter client for Android
|
||||
*
|
||||
* Copyright (C) 2012-2017 Mariotaku Lee <mariotaku.lee@gmail.com>
|
||||
*
|
||||
* 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
package org.mariotaku.twidere.extension.model.api.microblog
|
||||
|
||||
import org.mariotaku.microblog.library.twitter.model.UserList
|
||||
import org.mariotaku.twidere.extension.model.api.getProfileImageOfSize
|
||||
import org.mariotaku.twidere.model.ParcelableUserList
|
||||
import org.mariotaku.twidere.model.UserKey
|
||||
import org.mariotaku.twidere.model.util.UserKeyUtils
|
||||
|
||||
fun UserList.toParcelable(accountKey: UserKey, position: Long = 0, isFollowing: Boolean = false,
|
||||
profileImageSize: String = "normal"): ParcelableUserList {
|
||||
val obj = ParcelableUserList()
|
||||
val user = user
|
||||
obj.position = position
|
||||
obj.account_key = accountKey
|
||||
obj.id = id
|
||||
obj.is_public = UserList.Mode.PUBLIC == mode
|
||||
obj.is_following = isFollowing
|
||||
obj.name = name
|
||||
obj.description = description
|
||||
obj.user_key = UserKeyUtils.fromUser(user)
|
||||
obj.user_name = user.name
|
||||
obj.user_screen_name = user.screenName
|
||||
obj.user_profile_image_url = user.getProfileImageOfSize(profileImageSize)
|
||||
obj.members_count = memberCount
|
||||
obj.subscribers_count = subscriberCount
|
||||
return obj
|
||||
}
|
|
@ -108,6 +108,7 @@ import org.mariotaku.twidere.annotation.Referral
|
|||
import org.mariotaku.twidere.constant.*
|
||||
import org.mariotaku.twidere.constant.KeyboardShortcutConstants.*
|
||||
import org.mariotaku.twidere.extension.*
|
||||
import org.mariotaku.twidere.extension.model.api.microblog.toParcelable
|
||||
import org.mariotaku.twidere.extension.model.applyTo
|
||||
import org.mariotaku.twidere.extension.model.getBestProfileBanner
|
||||
import org.mariotaku.twidere.extension.model.originalProfileImage
|
||||
|
@ -1563,7 +1564,7 @@ class UserFragment : BaseFragment(), OnClickListener, OnLinkClickListener,
|
|||
do {
|
||||
val resp = microBlog.getUserListOwnerships(paging)
|
||||
resp.mapTo(ownedLists) { item ->
|
||||
val userList = ParcelableUserListUtils.from(item, user.account_key)
|
||||
val userList = item.toParcelable( user.account_key)
|
||||
userList.is_user_inside = listMemberships.any { it.id == item.id }
|
||||
return@mapTo userList
|
||||
}
|
||||
|
|
|
@ -56,6 +56,7 @@ import org.mariotaku.twidere.adapter.SupportTabsAdapter
|
|||
import org.mariotaku.twidere.app.TwidereApplication
|
||||
import org.mariotaku.twidere.constant.newDocumentApiKey
|
||||
import org.mariotaku.twidere.extension.applyTheme
|
||||
import org.mariotaku.twidere.extension.model.api.microblog.toParcelable
|
||||
import org.mariotaku.twidere.fragment.iface.IBaseFragment.SystemWindowsInsetsCallback
|
||||
import org.mariotaku.twidere.fragment.iface.SupportFragmentCallback
|
||||
import org.mariotaku.twidere.fragment.users.UserListMembersFragment
|
||||
|
@ -66,7 +67,6 @@ import org.mariotaku.twidere.model.SingleResponse
|
|||
import org.mariotaku.twidere.model.UserKey
|
||||
import org.mariotaku.twidere.model.event.UserListSubscriptionEvent
|
||||
import org.mariotaku.twidere.model.event.UserListUpdatedEvent
|
||||
import org.mariotaku.twidere.model.util.ParcelableUserListUtils
|
||||
import org.mariotaku.twidere.text.validator.UserListNameValidator
|
||||
import org.mariotaku.twidere.util.*
|
||||
|
||||
|
@ -419,7 +419,7 @@ class UserListFragment : AbsToolbarTabPagesFragment(), OnClickListener,
|
|||
return SingleResponse(MicroBlogException("Invalid argument"))
|
||||
}
|
||||
}
|
||||
return SingleResponse(ParcelableUserListUtils.from(list, accountKey))
|
||||
return SingleResponse(list.toParcelable(accountKey))
|
||||
} catch (e: MicroBlogException) {
|
||||
return SingleResponse(e)
|
||||
}
|
||||
|
|
|
@ -33,6 +33,7 @@ import org.mariotaku.microblog.library.twitter.model.UserList
|
|||
import org.mariotaku.twidere.R
|
||||
import org.mariotaku.twidere.TwidereConstants.LOGTAG
|
||||
import org.mariotaku.twidere.constant.loadItemLimitKey
|
||||
import org.mariotaku.twidere.extension.model.api.microblog.toParcelable
|
||||
import org.mariotaku.twidere.extension.model.newMicroBlogInstance
|
||||
import org.mariotaku.twidere.loader.iface.IPaginationLoader
|
||||
import org.mariotaku.twidere.model.ParcelableUserList
|
||||
|
@ -40,7 +41,6 @@ import org.mariotaku.twidere.model.UserKey
|
|||
import org.mariotaku.twidere.model.pagination.CursorPagination
|
||||
import org.mariotaku.twidere.model.pagination.Pagination
|
||||
import org.mariotaku.twidere.model.util.AccountUtils
|
||||
import org.mariotaku.twidere.model.util.ParcelableUserListUtils
|
||||
import org.mariotaku.twidere.util.collection.NoDuplicatesArrayList
|
||||
import org.mariotaku.twidere.util.dagger.GeneralComponent
|
||||
import java.util.*
|
||||
|
@ -99,13 +99,13 @@ abstract class BaseUserListsLoader(
|
|||
val dataSize = data.size
|
||||
for (i in 0..listSize - 1) {
|
||||
val list = listLoaded[i]
|
||||
data.add(ParcelableUserListUtils.from(list, accountKey, (dataSize + i).toLong(),
|
||||
data.add(list.toParcelable(accountKey, (dataSize + i).toLong(),
|
||||
isFollowing(list), profileImageSize))
|
||||
}
|
||||
} else {
|
||||
for (i in 0..listSize - 1) {
|
||||
val list = listLoaded[i]
|
||||
data.add(ParcelableUserListUtils.from(listLoaded[i], accountKey, i.toLong(),
|
||||
data.add(listLoaded[i].toParcelable(accountKey, i.toLong(),
|
||||
isFollowing(list), profileImageSize))
|
||||
}
|
||||
}
|
||||
|
|
|
@ -68,7 +68,7 @@ abstract class AbsRequestUsersLoader(
|
|||
val am = AccountManager.get(context)
|
||||
details = accountKey?.let { AccountUtils.getAccountDetails(am, it, true) } ?:
|
||||
throw ActivityNotFoundException()
|
||||
users = getUsers(details)
|
||||
users = getUsersInternal(details)
|
||||
} catch (e: MicroBlogException) {
|
||||
DebugLog.w(tr = e)
|
||||
return ListResponse.getListInstance(data, e)
|
||||
|
@ -92,17 +92,6 @@ abstract class AbsRequestUsersLoader(
|
|||
|
||||
}
|
||||
|
||||
@Throws(MicroBlogException::class)
|
||||
private fun getUsers(details: AccountDetails): List<ParcelableUser> {
|
||||
val paging = Paging()
|
||||
paging.applyItemLimit(details, loadItemLimit)
|
||||
pagination?.applyTo(paging)
|
||||
val users = getUsers(details, paging)
|
||||
prevPagination = users.previousPage
|
||||
nextPagination = users.nextPage
|
||||
return users
|
||||
}
|
||||
|
||||
protected open fun processUsersData(details: AccountDetails, list: MutableList<ParcelableUser>) {
|
||||
Collections.sort(data)
|
||||
}
|
||||
|
@ -121,4 +110,15 @@ abstract class AbsRequestUsersLoader(
|
|||
@Throws(MicroBlogException::class)
|
||||
protected abstract fun getUsers(details: AccountDetails, paging: Paging):
|
||||
PaginatedList<ParcelableUser>
|
||||
|
||||
@Throws(MicroBlogException::class)
|
||||
private fun getUsersInternal(details: AccountDetails): List<ParcelableUser> {
|
||||
val paging = Paging()
|
||||
paging.applyItemLimit(details, loadItemLimit)
|
||||
pagination?.applyTo(paging)
|
||||
val users = getUsers(details, paging)
|
||||
prevPagination = users.previousPage
|
||||
nextPagination = users.nextPage
|
||||
return users
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,8 +20,6 @@
|
|||
package org.mariotaku.twidere.model.util
|
||||
|
||||
import android.text.TextUtils
|
||||
import org.mariotaku.microblog.library.twitter.model.UserList
|
||||
import org.mariotaku.twidere.extension.model.api.getProfileImageOfSize
|
||||
import org.mariotaku.twidere.model.ParcelableUserList
|
||||
import org.mariotaku.twidere.model.UserKey
|
||||
|
||||
|
@ -30,26 +28,6 @@ import org.mariotaku.twidere.model.UserKey
|
|||
*/
|
||||
object ParcelableUserListUtils {
|
||||
|
||||
fun from(list: UserList, accountKey: UserKey, position: Long = 0,
|
||||
isFollowing: Boolean = false, profileImageSize: String = "normal"): ParcelableUserList {
|
||||
val obj = ParcelableUserList()
|
||||
val user = list.user
|
||||
obj.position = position
|
||||
obj.account_key = accountKey
|
||||
obj.id = list.id
|
||||
obj.is_public = UserList.Mode.PUBLIC == list.mode
|
||||
obj.is_following = isFollowing
|
||||
obj.name = list.name
|
||||
obj.description = list.description
|
||||
obj.user_key = UserKeyUtils.fromUser(user)
|
||||
obj.user_name = user.name
|
||||
obj.user_screen_name = user.screenName
|
||||
obj.user_profile_image_url = user.getProfileImageOfSize(profileImageSize)
|
||||
obj.members_count = list.memberCount
|
||||
obj.subscribers_count = list.subscriberCount
|
||||
return obj
|
||||
}
|
||||
|
||||
fun check(userList: ParcelableUserList, accountKey: UserKey, listId: String?,
|
||||
userKey: UserKey?, screenName: String?, listName: String?): Boolean {
|
||||
if (userList.account_key != accountKey) return false
|
||||
|
|
|
@ -7,13 +7,13 @@ import org.mariotaku.ktextension.mapToArray
|
|||
import org.mariotaku.microblog.library.MicroBlog
|
||||
import org.mariotaku.twidere.R
|
||||
import org.mariotaku.twidere.constant.nameFirstKey
|
||||
import org.mariotaku.twidere.extension.model.api.microblog.toParcelable
|
||||
import org.mariotaku.twidere.extension.model.newMicroBlogInstance
|
||||
import org.mariotaku.twidere.model.AccountDetails
|
||||
import org.mariotaku.twidere.model.ParcelableUser
|
||||
import org.mariotaku.twidere.model.ParcelableUserList
|
||||
import org.mariotaku.twidere.model.UserKey
|
||||
import org.mariotaku.twidere.model.event.UserListMembersChangedEvent
|
||||
import org.mariotaku.twidere.model.util.ParcelableUserListUtils
|
||||
|
||||
/**
|
||||
* Created by mariotaku on 2016/12/9.
|
||||
|
@ -29,7 +29,7 @@ class AddUserListMembersTask(
|
|||
val microBlog = account.newMicroBlogInstance(context, MicroBlog::class.java)
|
||||
val userIds = users.mapToArray(ParcelableUser::key)
|
||||
val result = microBlog.addUserListMembers(listId, UserKey.getIds(userIds))
|
||||
return ParcelableUserListUtils.from(result, account.key)
|
||||
return result.toParcelable(account.key)
|
||||
}
|
||||
|
||||
override fun onSucceed(callback: Any?, result: ParcelableUserList) {
|
||||
|
|
|
@ -23,12 +23,12 @@ import android.content.Context
|
|||
import android.widget.Toast
|
||||
import org.mariotaku.microblog.library.MicroBlog
|
||||
import org.mariotaku.twidere.R
|
||||
import org.mariotaku.twidere.extension.model.api.microblog.toParcelable
|
||||
import org.mariotaku.twidere.extension.model.newMicroBlogInstance
|
||||
import org.mariotaku.twidere.model.AccountDetails
|
||||
import org.mariotaku.twidere.model.ParcelableUserList
|
||||
import org.mariotaku.twidere.model.UserKey
|
||||
import org.mariotaku.twidere.model.event.UserListDestroyedEvent
|
||||
import org.mariotaku.twidere.model.util.ParcelableUserListUtils
|
||||
|
||||
/**
|
||||
* Created by mariotaku on 2017/2/10.
|
||||
|
@ -42,7 +42,7 @@ class DestroyUserListTask(
|
|||
override fun onExecute(account: AccountDetails, params: Any?): ParcelableUserList {
|
||||
val microBlog = account.newMicroBlogInstance(context, MicroBlog::class.java)
|
||||
val userList = microBlog.destroyUserList(listId)
|
||||
return ParcelableUserListUtils.from(userList, account.key)
|
||||
return userList.toParcelable(account.key)
|
||||
}
|
||||
|
||||
override fun onSucceed(callback: Any?, result: ParcelableUserList) {
|
||||
|
|
|
@ -24,12 +24,12 @@ import android.widget.Toast
|
|||
import org.mariotaku.microblog.library.MicroBlog
|
||||
import org.mariotaku.microblog.library.twitter.model.UserListUpdate
|
||||
import org.mariotaku.twidere.R
|
||||
import org.mariotaku.twidere.extension.model.api.microblog.toParcelable
|
||||
import org.mariotaku.twidere.extension.model.newMicroBlogInstance
|
||||
import org.mariotaku.twidere.model.AccountDetails
|
||||
import org.mariotaku.twidere.model.ParcelableUserList
|
||||
import org.mariotaku.twidere.model.UserKey
|
||||
import org.mariotaku.twidere.model.event.UserListUpdatedEvent
|
||||
import org.mariotaku.twidere.model.util.ParcelableUserListUtils
|
||||
|
||||
/**
|
||||
* Created by mariotaku on 2017/2/10.
|
||||
|
@ -44,7 +44,7 @@ class UpdateUserListDetailsTask(
|
|||
override fun onExecute(account: AccountDetails, params: Any?): ParcelableUserList {
|
||||
val microBlog = account.newMicroBlogInstance(context, MicroBlog::class.java)
|
||||
val list = microBlog.updateUserList(listId, update)
|
||||
return ParcelableUserListUtils.from(list, account.key)
|
||||
return list.toParcelable(account.key)
|
||||
}
|
||||
|
||||
override fun onSucceed(callback: Any?, result: ParcelableUserList) {
|
||||
|
|
|
@ -42,12 +42,12 @@ import org.mariotaku.twidere.constant.homeRefreshDirectMessagesKey
|
|||
import org.mariotaku.twidere.constant.homeRefreshMentionsKey
|
||||
import org.mariotaku.twidere.constant.homeRefreshSavedSearchesKey
|
||||
import org.mariotaku.twidere.constant.nameFirstKey
|
||||
import org.mariotaku.twidere.extension.model.api.microblog.toParcelable
|
||||
import org.mariotaku.twidere.extension.model.newMicroBlogInstance
|
||||
import org.mariotaku.twidere.model.*
|
||||
import org.mariotaku.twidere.model.event.*
|
||||
import org.mariotaku.twidere.model.util.AccountUtils
|
||||
import org.mariotaku.twidere.model.util.ParcelableRelationshipUtils
|
||||
import org.mariotaku.twidere.model.util.ParcelableUserListUtils
|
||||
import org.mariotaku.twidere.provider.TwidereDataStore.*
|
||||
import org.mariotaku.twidere.task.*
|
||||
import org.mariotaku.twidere.task.twitter.GetActivitiesAboutMeTask
|
||||
|
@ -432,7 +432,7 @@ class AsyncTwitterWrapper(
|
|||
override fun onExecute(account: AccountDetails, params: Any?): ParcelableUserList {
|
||||
val microBlog = account.newMicroBlogInstance(context, MicroBlog::class.java)
|
||||
val userList = microBlog.createUserListSubscription(listId)
|
||||
return ParcelableUserListUtils.from(userList, account.key)
|
||||
return userList.toParcelable(account.key)
|
||||
}
|
||||
|
||||
override fun onSucceed(callback: Any?, result: ParcelableUserList) {
|
||||
|
@ -453,7 +453,7 @@ class AsyncTwitterWrapper(
|
|||
userListUpdate.setMode(if (isPublic) UserList.Mode.PUBLIC else UserList.Mode.PRIVATE)
|
||||
userListUpdate.setDescription(description)
|
||||
val list = microBlog.createUserList(userListUpdate)
|
||||
return ParcelableUserListUtils.from(list, account.key)
|
||||
return list.toParcelable(account.key)
|
||||
}
|
||||
|
||||
override fun onSucceed(callback: Any?, result: ParcelableUserList) {
|
||||
|
@ -475,7 +475,7 @@ class AsyncTwitterWrapper(
|
|||
val microBlog = account.newMicroBlogInstance(context, MicroBlog::class.java)
|
||||
val userKeys = users.mapToArray(ParcelableUser::key)
|
||||
val userList = microBlog.deleteUserListMembers(userListId, UserKey.getIds(userKeys))
|
||||
return ParcelableUserListUtils.from(userList, account.key)
|
||||
return userList.toParcelable(account.key)
|
||||
}
|
||||
|
||||
override fun onSucceed(callback: Any?, result: ParcelableUserList) {
|
||||
|
@ -526,7 +526,7 @@ class AsyncTwitterWrapper(
|
|||
override fun onExecute(account: AccountDetails, params: Any?): ParcelableUserList {
|
||||
val microBlog = account.newMicroBlogInstance(context, MicroBlog::class.java)
|
||||
val userList = microBlog.destroyUserListSubscription(listId)
|
||||
return ParcelableUserListUtils.from(userList, account.key)
|
||||
return userList.toParcelable(account.key)
|
||||
}
|
||||
|
||||
override fun onSucceed(callback: Any?, result: ParcelableUserList) {
|
||||
|
|
Loading…
Reference in New Issue