mirror of
https://github.com/TwidereProject/Twidere-Android
synced 2025-02-02 17:56:56 +01:00
fixed extension library
This commit is contained in:
parent
bad968e5b4
commit
dd1e71f775
@ -56,7 +56,7 @@ subprojects {
|
||||
TwitterText : '1.14.3',
|
||||
MediaViewerLibrary: '0.9.23',
|
||||
MultiValueSwitch : '0.9.8',
|
||||
PickNCrop : '0.9.24',
|
||||
PickNCrop : '0.9.25',
|
||||
AndroidGIFDrawable: '1.2.6',
|
||||
KPreferences : '0.9.6',
|
||||
Kovenant : '3.3.0',
|
||||
|
@ -66,7 +66,8 @@ public final class Twidere implements TwidereConstants {
|
||||
public static void setComposeExtensionResult(@NonNull final Activity activity,
|
||||
@Nullable final String text, final boolean isReplacementMode, @Nullable Uri[] media) {
|
||||
final Intent intent = new Intent();
|
||||
intent.putExtra(Intent.EXTRA_TEXT, isReplacementMode);
|
||||
intent.putExtra(Intent.EXTRA_TEXT, text);
|
||||
intent.putExtra(EXTRA_IS_REPLACE_MODE, isReplacementMode);
|
||||
|
||||
if (media != null && media.length > 0) {
|
||||
intent.setData(media[0]);
|
||||
|
@ -22,6 +22,7 @@ package org.mariotaku.ktextension
|
||||
import android.graphics.drawable.Drawable
|
||||
import android.support.v4.view.MenuItemCompat
|
||||
import android.view.Menu
|
||||
import android.view.SubMenu
|
||||
|
||||
fun Menu.setItemAvailability(id: Int, available: Boolean) {
|
||||
val item = findItem(id) ?: return
|
||||
@ -59,3 +60,7 @@ fun Menu.setMenuItemShowAsActionFlags(id: Int, flags: Int) {
|
||||
item.setShowAsActionFlags(flags)
|
||||
MenuItemCompat.setShowAsAction(item, flags)
|
||||
}
|
||||
|
||||
fun Menu.findSubmenu(id: Int): SubMenu? {
|
||||
return findItem(id)?.subMenu
|
||||
}
|
||||
|
@ -274,11 +274,13 @@ class ComposeActivity : BaseActivity(), OnMenuItemClickListener, OnClickListener
|
||||
|
||||
|
||||
val composeExtensionsIntent = Intent(INTENT_ACTION_EXTENSION_COMPOSE)
|
||||
MenuUtils.addIntentToMenu(this, menu, composeExtensionsIntent, MENU_GROUP_COMPOSE_EXTENSION)
|
||||
val imageExtensionsIntent = Intent(INTENT_ACTION_EXTENSION_EDIT_IMAGE)
|
||||
val mediaMenuItem = menu.findItem(R.id.status_attachment)
|
||||
if (mediaMenuItem != null && mediaMenuItem.hasSubMenu()) {
|
||||
MenuUtils.addIntentToMenu(this, mediaMenuItem.subMenu, imageExtensionsIntent,
|
||||
val subMenu = mediaMenuItem.subMenu
|
||||
MenuUtils.addIntentToMenu(this, subMenu, composeExtensionsIntent,
|
||||
MENU_GROUP_COMPOSE_EXTENSION)
|
||||
MenuUtils.addIntentToMenu(this, subMenu, imageExtensionsIntent,
|
||||
MENU_GROUP_IMAGE_EXTENSION)
|
||||
}
|
||||
updateViewStyle()
|
||||
@ -329,7 +331,9 @@ class ComposeActivity : BaseActivity(), OnMenuItemClickListener, OnClickListener
|
||||
}
|
||||
|
||||
val src = MediaPickerActivity.getMediaUris(data)
|
||||
TaskStarter.execute(AddMediaTask(this, src, false, false))
|
||||
if (src.isNotNullOrEmpty()) {
|
||||
TaskStarter.execute(AddMediaTask(this, src, false, false))
|
||||
}
|
||||
}
|
||||
}
|
||||
REQUEST_PURCHASE_EXTRA_FEATURES -> {
|
||||
@ -703,23 +707,24 @@ class ComposeActivity : BaseActivity(), OnMenuItemClickListener, OnClickListener
|
||||
val intent = item.intent ?: return
|
||||
try {
|
||||
val action = intent.action
|
||||
if (INTENT_ACTION_EXTENSION_COMPOSE == action) {
|
||||
val accountKeys = accountsAdapter.selectedAccountKeys
|
||||
intent.putExtra(EXTRA_TEXT, ParseUtils.parseString(editText.text))
|
||||
intent.putExtra(EXTRA_ACCOUNT_KEYS, accountKeys)
|
||||
if (accountKeys.isNotEmpty()) {
|
||||
val accountKey = accountKeys.first()
|
||||
intent.putExtra(EXTRA_NAME, DataStoreUtils.getAccountName(this, accountKey))
|
||||
intent.putExtra(EXTRA_SCREEN_NAME, DataStoreUtils.getAccountScreenName(this, accountKey))
|
||||
when (action) {
|
||||
INTENT_ACTION_EXTENSION_COMPOSE -> {
|
||||
val accountKeys = accountsAdapter.selectedAccountKeys
|
||||
intent.putExtra(EXTRA_TEXT, ParseUtils.parseString(editText.text))
|
||||
intent.putExtra(EXTRA_ACCOUNT_KEYS, accountKeys)
|
||||
if (accountKeys.isNotEmpty()) {
|
||||
val accountKey = accountKeys.first()
|
||||
intent.putExtra(EXTRA_NAME, DataStoreUtils.getAccountName(this, accountKey))
|
||||
intent.putExtra(EXTRA_SCREEN_NAME, DataStoreUtils.getAccountScreenName(this, accountKey))
|
||||
}
|
||||
inReplyToStatus?.let {
|
||||
intent.putExtra(EXTRA_IN_REPLY_TO_ID, it.id)
|
||||
intent.putExtra(EXTRA_IN_REPLY_TO_NAME, it.user_name)
|
||||
intent.putExtra(EXTRA_IN_REPLY_TO_SCREEN_NAME, it.user_screen_name)
|
||||
}
|
||||
startActivityForResult(intent, REQUEST_EXTENSION_COMPOSE)
|
||||
}
|
||||
inReplyToStatus?.let {
|
||||
intent.putExtra(EXTRA_IN_REPLY_TO_ID, it.id)
|
||||
intent.putExtra(EXTRA_IN_REPLY_TO_NAME, it.user_name)
|
||||
intent.putExtra(EXTRA_IN_REPLY_TO_SCREEN_NAME, it.user_screen_name)
|
||||
}
|
||||
startActivityForResult(intent, REQUEST_EXTENSION_COMPOSE)
|
||||
} else {
|
||||
startActivity(intent)
|
||||
else -> startActivity(intent)
|
||||
}
|
||||
} catch (e: ActivityNotFoundException) {
|
||||
Analyzer.logException(e)
|
||||
|
@ -95,9 +95,8 @@ object MenuUtils {
|
||||
item.setTitle(icon)
|
||||
}
|
||||
|
||||
fun addIntentToMenu(context: Context?, menu: Menu?, queryIntent: Intent?,
|
||||
fun addIntentToMenu(context: Context, menu: Menu, queryIntent: Intent,
|
||||
groupId: Int = Menu.NONE) {
|
||||
if (context == null || menu == null || queryIntent == null) return
|
||||
val pm = context.packageManager
|
||||
val res = context.resources
|
||||
val density = res.displayMetrics.density
|
||||
|
Loading…
x
Reference in New Issue
Block a user