improved light font option
This commit is contained in:
parent
02def20f43
commit
3fc86d9036
|
@ -8,6 +8,6 @@ val TextView.empty: Boolean
|
||||||
|
|
||||||
fun TextView.applyFontFamily(lightFont: Boolean) {
|
fun TextView.applyFontFamily(lightFont: Boolean) {
|
||||||
if (lightFont) {
|
if (lightFont) {
|
||||||
typeface = Typeface.create("sans-serif-light", typeface.style)
|
typeface = Typeface.create("sans-serif-light", typeface?.style ?: 0)
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -58,9 +58,11 @@ class ParcelableActivitiesAdapter(
|
||||||
context: Context
|
context: Context
|
||||||
) : LoadMoreSupportAdapter<RecyclerView.ViewHolder>(context), IActivitiesAdapter<List<ParcelableActivity>> {
|
) : LoadMoreSupportAdapter<RecyclerView.ViewHolder>(context), IActivitiesAdapter<List<ParcelableActivity>> {
|
||||||
|
|
||||||
private val inflater: LayoutInflater
|
override val mediaLoadingHandler = MediaLoadingHandler(R.id.media_preview_progress)
|
||||||
override val mediaLoadingHandler: MediaLoadingHandler
|
|
||||||
private val statusAdapterDelegate: DummyItemAdapter
|
private val inflater = LayoutInflater.from(context)
|
||||||
|
private val statusAdapterDelegate = DummyItemAdapter(context,
|
||||||
|
TwidereLinkify(OnLinkClickHandler(context, null, preferences)), this)
|
||||||
private val eventListener: EventListener
|
private val eventListener: EventListener
|
||||||
private var data: List<ParcelableActivity>? = null
|
private var data: List<ParcelableActivity>? = null
|
||||||
private var activityAdapterListener: ActivityAdapterListener? = null
|
private var activityAdapterListener: ActivityAdapterListener? = null
|
||||||
|
@ -79,10 +81,6 @@ class ParcelableActivitiesAdapter(
|
||||||
}
|
}
|
||||||
|
|
||||||
init {
|
init {
|
||||||
statusAdapterDelegate = DummyItemAdapter(context,
|
|
||||||
TwidereLinkify(OnLinkClickHandler(context, null, preferences)), this)
|
|
||||||
inflater = LayoutInflater.from(context)
|
|
||||||
mediaLoadingHandler = MediaLoadingHandler(R.id.media_preview_progress)
|
|
||||||
eventListener = EventListener(this)
|
eventListener = EventListener(this)
|
||||||
statusAdapterDelegate.updateOptions()
|
statusAdapterDelegate.updateOptions()
|
||||||
}
|
}
|
||||||
|
@ -321,6 +319,9 @@ class ParcelableActivitiesAdapter(
|
||||||
override val mediaPreviewEnabled: Boolean
|
override val mediaPreviewEnabled: Boolean
|
||||||
get() = statusAdapterDelegate.mediaPreviewEnabled
|
get() = statusAdapterDelegate.mediaPreviewEnabled
|
||||||
|
|
||||||
|
override val lightFont: Boolean
|
||||||
|
get() = statusAdapterDelegate.lightFont
|
||||||
|
|
||||||
override var showAccountsColor: Boolean
|
override var showAccountsColor: Boolean
|
||||||
get() = statusAdapterDelegate.showAccountsColor
|
get() = statusAdapterDelegate.showAccountsColor
|
||||||
set(value) {
|
set(value) {
|
||||||
|
|
|
@ -42,6 +42,8 @@ interface IActivitiesAdapter<in Data> : IContentAdapter, IGapSupportedAdapter {
|
||||||
|
|
||||||
val showAccountsColor: Boolean
|
val showAccountsColor: Boolean
|
||||||
|
|
||||||
|
val lightFont: Boolean
|
||||||
|
|
||||||
fun getActivity(position: Int): ParcelableActivity?
|
fun getActivity(position: Int): ParcelableActivity?
|
||||||
|
|
||||||
fun setData(data: Data?)
|
fun setData(data: Data?)
|
||||||
|
|
|
@ -1171,9 +1171,14 @@ class StatusFragment : BaseFragment(), LoaderCallbacks<SingleResponse<Parcelable
|
||||||
val resources = activity.resources
|
val resources = activity.resources
|
||||||
itemView.countsUsers.addItemDecoration(SpacingItemDecoration(resources.getDimensionPixelOffset(R.dimen.element_spacing_normal)))
|
itemView.countsUsers.addItemDecoration(SpacingItemDecoration(resources.getDimensionPixelOffset(R.dimen.element_spacing_normal)))
|
||||||
|
|
||||||
|
// Apply font families
|
||||||
|
itemView.name.applyFontFamily(adapter.lightFont)
|
||||||
itemView.text.applyFontFamily(adapter.lightFont)
|
itemView.text.applyFontFamily(adapter.lightFont)
|
||||||
|
itemView.quotedName.applyFontFamily(adapter.lightFont)
|
||||||
itemView.quotedText.applyFontFamily(adapter.lightFont)
|
itemView.quotedText.applyFontFamily(adapter.lightFont)
|
||||||
|
itemView.locationView.applyFontFamily(adapter.lightFont)
|
||||||
|
itemView.translateLabel.applyFontFamily(adapter.lightFont)
|
||||||
|
itemView.translateResult.applyFontFamily(adapter.lightFont)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -82,10 +82,7 @@ import org.apache.commons.lang3.ObjectUtils
|
||||||
import org.mariotaku.chameleon.Chameleon
|
import org.mariotaku.chameleon.Chameleon
|
||||||
import org.mariotaku.chameleon.ChameleonUtils
|
import org.mariotaku.chameleon.ChameleonUtils
|
||||||
import org.mariotaku.kpreferences.get
|
import org.mariotaku.kpreferences.get
|
||||||
import org.mariotaku.ktextension.Bundle
|
import org.mariotaku.ktextension.*
|
||||||
import org.mariotaku.ktextension.empty
|
|
||||||
import org.mariotaku.ktextension.set
|
|
||||||
import org.mariotaku.ktextension.toTypedArray
|
|
||||||
import org.mariotaku.microblog.library.MicroBlogException
|
import org.mariotaku.microblog.library.MicroBlogException
|
||||||
import org.mariotaku.microblog.library.twitter.model.FriendshipUpdate
|
import org.mariotaku.microblog.library.twitter.model.FriendshipUpdate
|
||||||
import org.mariotaku.microblog.library.twitter.model.Paging
|
import org.mariotaku.microblog.library.twitter.model.Paging
|
||||||
|
@ -101,6 +98,7 @@ import org.mariotaku.twidere.annotation.AccountType
|
||||||
import org.mariotaku.twidere.annotation.Referral
|
import org.mariotaku.twidere.annotation.Referral
|
||||||
import org.mariotaku.twidere.constant.KeyboardShortcutConstants.*
|
import org.mariotaku.twidere.constant.KeyboardShortcutConstants.*
|
||||||
import org.mariotaku.twidere.constant.displaySensitiveContentsKey
|
import org.mariotaku.twidere.constant.displaySensitiveContentsKey
|
||||||
|
import org.mariotaku.twidere.constant.lightFontKey
|
||||||
import org.mariotaku.twidere.constant.newDocumentApiKey
|
import org.mariotaku.twidere.constant.newDocumentApiKey
|
||||||
import org.mariotaku.twidere.constant.profileImageStyleKey
|
import org.mariotaku.twidere.constant.profileImageStyleKey
|
||||||
import org.mariotaku.twidere.fragment.AbsStatusesFragment.StatusesFragmentDelegate
|
import org.mariotaku.twidere.fragment.AbsStatusesFragment.StatusesFragmentDelegate
|
||||||
|
@ -1341,6 +1339,16 @@ class UserFragment : BaseFragment(), OnClickListener, OnLinkClickListener,
|
||||||
|
|
||||||
private fun setupViewStyle() {
|
private fun setupViewStyle() {
|
||||||
profileImage.style = preferences[profileImageStyleKey]
|
profileImage.style = preferences[profileImageStyleKey]
|
||||||
|
|
||||||
|
val lightFont = preferences[lightFontKey]
|
||||||
|
|
||||||
|
profileNameContainer.name.applyFontFamily(lightFont)
|
||||||
|
profileNameContainer.screenName.applyFontFamily(lightFont)
|
||||||
|
profileNameContainer.followingYouIndicator.applyFontFamily(lightFont)
|
||||||
|
descriptionContainer.description.applyFontFamily(lightFont)
|
||||||
|
urlContainer.url.applyFontFamily(lightFont)
|
||||||
|
locationContainer.location.applyFontFamily(lightFont)
|
||||||
|
createdAtContainer.createdAt.applyFontFamily(lightFont)
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun setupUserPages() {
|
private fun setupUserPages() {
|
||||||
|
|
|
@ -25,6 +25,7 @@ import android.support.v7.widget.RecyclerView.ViewHolder
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
|
import org.mariotaku.ktextension.applyFontFamily
|
||||||
import org.mariotaku.twidere.R
|
import org.mariotaku.twidere.R
|
||||||
import org.mariotaku.twidere.adapter.ParcelableActivitiesAdapter
|
import org.mariotaku.twidere.adapter.ParcelableActivitiesAdapter
|
||||||
import org.mariotaku.twidere.adapter.iface.IActivitiesAdapter
|
import org.mariotaku.twidere.adapter.iface.IActivitiesAdapter
|
||||||
|
@ -46,43 +47,34 @@ class ActivityTitleSummaryViewHolder(
|
||||||
private val adapter: ParcelableActivitiesAdapter
|
private val adapter: ParcelableActivitiesAdapter
|
||||||
) : ViewHolder(itemView), View.OnClickListener {
|
) : ViewHolder(itemView), View.OnClickListener {
|
||||||
|
|
||||||
private val itemContent: IColorLabelView
|
private val itemContent = itemView.findViewById(R.id.itemContent) as IColorLabelView
|
||||||
private val activityTypeView: IconActionView
|
private val activityTypeView = itemView.findViewById(R.id.activity_type) as IconActionView
|
||||||
private val titleView: TextView
|
private val titleView = itemView.findViewById(R.id.title) as TextView
|
||||||
private val summaryView: TextView
|
private val summaryView = itemView.findViewById(R.id.summary) as TextView
|
||||||
private val timeView: ShortTimeView
|
private val timeView = itemView.findViewById(R.id.time) as ShortTimeView
|
||||||
private val profileImagesContainer: ViewGroup
|
private val profileImagesContainer = itemView.findViewById(R.id.profile_images_container) as ViewGroup
|
||||||
private val profileImageMoreNumber: BadgeView
|
private val profileImageMoreNumber = itemView.findViewById(R.id.activity_profile_image_more_number) as BadgeView
|
||||||
private val profileImageViews: Array<ProfileImageView>
|
private val profileImageViews = arrayOf(
|
||||||
private val profileImageSpace: View
|
|
||||||
|
|
||||||
private var mActivityEventListener: IActivitiesAdapter.ActivityEventListener? = null
|
|
||||||
|
|
||||||
init {
|
|
||||||
|
|
||||||
itemContent = itemView.findViewById(R.id.itemContent) as IColorLabelView
|
|
||||||
activityTypeView = itemView.findViewById(R.id.activity_type) as IconActionView
|
|
||||||
titleView = itemView.findViewById(R.id.title) as TextView
|
|
||||||
summaryView = itemView.findViewById(R.id.summary) as TextView
|
|
||||||
timeView = itemView.findViewById(R.id.time) as ShortTimeView
|
|
||||||
profileImageSpace = itemView.findViewById(R.id.profile_image_space)
|
|
||||||
|
|
||||||
profileImagesContainer = itemView.findViewById(R.id.profile_images_container) as ViewGroup
|
|
||||||
profileImageViews = arrayOf(
|
|
||||||
itemView.findViewById(R.id.activity_profile_image_0) as ProfileImageView,
|
itemView.findViewById(R.id.activity_profile_image_0) as ProfileImageView,
|
||||||
itemView.findViewById(R.id.activity_profile_image_1) as ProfileImageView,
|
itemView.findViewById(R.id.activity_profile_image_1) as ProfileImageView,
|
||||||
itemView.findViewById(R.id.activity_profile_image_2) as ProfileImageView,
|
itemView.findViewById(R.id.activity_profile_image_2) as ProfileImageView,
|
||||||
itemView.findViewById(R.id.activity_profile_image_3) as ProfileImageView,
|
itemView.findViewById(R.id.activity_profile_image_3) as ProfileImageView,
|
||||||
itemView.findViewById(R.id.activity_profile_image_4) as ProfileImageView
|
itemView.findViewById(R.id.activity_profile_image_4) as ProfileImageView
|
||||||
)
|
)
|
||||||
profileImageMoreNumber = itemView.findViewById(R.id.activity_profile_image_more_number) as BadgeView
|
private val profileImageSpace: View = itemView.findViewById(R.id.profile_image_space)
|
||||||
|
|
||||||
|
private var activityEventListener: IActivitiesAdapter.ActivityEventListener? = null
|
||||||
|
|
||||||
|
init {
|
||||||
val resources = adapter.context.resources
|
val resources = adapter.context.resources
|
||||||
val lp = titleView.layoutParams as ViewGroup.MarginLayoutParams
|
val lp = titleView.layoutParams as ViewGroup.MarginLayoutParams
|
||||||
val spacing = resources.getDimensionPixelSize(R.dimen.element_spacing_small)
|
val spacing = resources.getDimensionPixelSize(R.dimen.element_spacing_small)
|
||||||
lp.leftMargin = spacing
|
lp.leftMargin = spacing
|
||||||
MarginLayoutParamsCompat.setMarginStart(lp, spacing)
|
MarginLayoutParamsCompat.setMarginStart(lp, spacing)
|
||||||
timeView.showAbsoluteTime = adapter.showAbsoluteTime
|
timeView.showAbsoluteTime = adapter.showAbsoluteTime
|
||||||
|
titleView.applyFontFamily(adapter.lightFont)
|
||||||
|
summaryView.applyFontFamily(adapter.lightFont)
|
||||||
|
timeView.applyFontFamily(adapter.lightFont)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun displayActivity(activity: ParcelableActivity) {
|
fun displayActivity(activity: ParcelableActivity) {
|
||||||
|
@ -163,18 +155,18 @@ class ActivityTitleSummaryViewHolder(
|
||||||
}
|
}
|
||||||
|
|
||||||
fun setActivityEventListener(listener: IActivitiesAdapter.ActivityEventListener) {
|
fun setActivityEventListener(listener: IActivitiesAdapter.ActivityEventListener) {
|
||||||
mActivityEventListener = listener
|
activityEventListener = listener
|
||||||
(itemContent as View).setOnClickListener(this)
|
(itemContent as View).setOnClickListener(this)
|
||||||
// ((View) itemContent).setOnLongClickListener(this);
|
// ((View) itemContent).setOnLongClickListener(this);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onClick(v: View) {
|
override fun onClick(v: View) {
|
||||||
if (mActivityEventListener == null) return
|
if (activityEventListener == null) return
|
||||||
val position = layoutPosition
|
val position = layoutPosition
|
||||||
when (v.id) {
|
when (v.id) {
|
||||||
R.id.itemContent -> {
|
R.id.itemContent -> {
|
||||||
mActivityEventListener!!.onActivityClick(this, position)
|
activityEventListener!!.onActivityClick(this, position)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -84,8 +84,15 @@ class StatusViewHolder(private val adapter: IStatusesAdapter<*>, itemView: View)
|
||||||
View.inflate(quotedMediaPreview.context, R.layout.layout_card_media_preview,
|
View.inflate(quotedMediaPreview.context, R.layout.layout_card_media_preview,
|
||||||
itemView.quotedMediaPreview)
|
itemView.quotedMediaPreview)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
nameView.applyFontFamily(adapter.lightFont)
|
||||||
|
timeView.applyFontFamily(adapter.lightFont)
|
||||||
textView.applyFontFamily(adapter.lightFont)
|
textView.applyFontFamily(adapter.lightFont)
|
||||||
|
mediaLabelTextView.applyFontFamily(adapter.lightFont)
|
||||||
|
|
||||||
|
quotedNameView.applyFontFamily(adapter.lightFont)
|
||||||
quotedTextView.applyFontFamily(adapter.lightFont)
|
quotedTextView.applyFontFamily(adapter.lightFont)
|
||||||
|
quotedMediaLabelTextView.applyFontFamily(adapter.lightFont)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue