mirror of
https://github.com/anyproto/anytype-kotlin.git
synced 2025-06-08 05:47:05 +09:00
Editor | Fix | App might crash when uploading cover image from device gallery (#2366)
* Dashboard | Hotfix | Settings button colors (#2336) * App | Tech | Change log for 0.8.0 (#2338)
This commit is contained in:
parent
4ca0b420ad
commit
605ae7fb3f
5 changed files with 52 additions and 23 deletions
29
CHANGELOG.md
29
CHANGELOG.md
|
@ -1,18 +1,41 @@
|
|||
# Change log for Android @Anytype app.
|
||||
|
||||
## Version 0.7.1 (WIP)
|
||||
## Version 0.8.0
|
||||
|
||||
### New features & enhancements 🚀
|
||||
|
||||
* App | Danger zone: allow account deletion (#2333)
|
||||
* Editor | Improved markup shortcuts supported for all basic text blocks (#2275)
|
||||
* Editor | Allowing to merge description with title in header (#2303)
|
||||
* Editor | Support palette colors for background and text in title blocks (#2326)
|
||||
* Editor | Fallback to basic paragraph when pressing backspace in empty bulleted, checkbox, toggle or numbered blocks (#2274)
|
||||
* Sets | Shortcut way for editing your view from settings panel (#2285)
|
||||
* Relations | Disable / enable relations editing based on object restrictions (locked state, read-only relations, etc.) (#2258)
|
||||
* Objects | Show menu options based on object layout type and object restrictions (#2313)
|
||||
|
||||
### Fixes & tech 🚒
|
||||
|
||||
*
|
||||
* Object | Filter out already existing relations when adding relations to object (#2309)
|
||||
* Editor | Supporting tab indentation in code-snippet blocks (#2240)
|
||||
* Editor | "Preview" action for link-to-object block should be among the first visible actions (#2321)
|
||||
* Editor | Filter out current object when searching objects for move-to operation (#2304)
|
||||
* Editor | Restore media block meta data when application is destroyed by the Android OS (#2294)
|
||||
* Editor | Search results for move-to operation are now sorted by last modification date (#2269)
|
||||
* Sets | Make long text ellipsized in headers of rows (#2276)
|
||||
* Dashboard | Activated checkbox of task / todo objects is not displayed in the history (#2322)
|
||||
* Relations | Filter out already existing tags when adding values to relation (#2262)
|
||||
* Show action icon for relations URL, Email, Phone based on relation value: when value is present, action button is enabled, when not, it is disabled (#2290)
|
||||
* Search | Display profile objects in search results (#2271)
|
||||
* Auth | Fix | Disable that awful QR-code scanning sound (#2267)
|
||||
* Auth | Trim recovery phrase when needed (#2266)
|
||||
* Tech | Stop supporting Android 7 (#2268)
|
||||
|
||||
### Design & UX 🔳
|
||||
|
||||
*
|
||||
* Editor | Better DND: when dropping the dragged block without changing its initial position, editor enters select mode (#2261)
|
||||
* Editor | Better support for different appearance settings of link-to-object blocks (#2342))
|
||||
* Editor | Less aggressive error state for media blocks (#2277)
|
||||
* Dashboard | Buttons reordering (#2330)
|
||||
|
||||
## Version 0.7.0
|
||||
|
||||
|
|
|
@ -5,19 +5,19 @@
|
|||
android:viewportHeight="24">
|
||||
<path
|
||||
android:pathData="M12.219,1.75C12.219,1.336 12.554,1 12.969,1C13.383,1 13.719,1.336 13.719,1.75V3.533C13.472,3.511 13.222,3.5 12.969,3.5C12.716,3.5 12.466,3.511 12.219,3.533V1.75ZM9.384,4.291L8.493,2.748C8.286,2.389 7.827,2.267 7.469,2.474C7.11,2.681 6.987,3.139 7.194,3.498L8.085,5.042C8.493,4.755 8.928,4.503 9.384,4.291ZM6.011,7.117L4.467,6.226C4.108,6.018 3.65,6.141 3.442,6.5C3.235,6.859 3.358,7.318 3.717,7.525L5.259,8.415C5.472,7.959 5.724,7.525 6.011,7.117ZM4.501,11.25H2.719C2.305,11.25 1.969,11.586 1.969,12C1.969,12.414 2.305,12.75 2.719,12.75H4.501C4.48,12.503 4.469,12.253 4.469,12C4.469,11.747 4.48,11.497 4.501,11.25ZM5.259,15.585L3.717,16.475C3.358,16.683 3.235,17.141 3.442,17.5C3.65,17.859 4.108,17.982 4.467,17.774L6.011,16.883C5.724,16.475 5.472,16.041 5.259,15.585ZM8.085,18.958L7.194,20.502C6.987,20.861 7.11,21.319 7.469,21.526C7.827,21.733 8.286,21.611 8.493,21.252L9.384,19.709C8.928,19.497 8.493,19.245 8.085,18.958ZM12.219,20.467V22.25C12.219,22.664 12.554,23 12.969,23C13.383,23 13.719,22.664 13.719,22.25V20.467C13.472,20.489 13.222,20.5 12.969,20.5C12.716,20.5 12.466,20.489 12.219,20.467ZM16.554,19.709L17.444,21.252C17.651,21.61 18.11,21.733 18.469,21.526C18.827,21.319 18.95,20.86 18.743,20.502L17.852,18.958C17.444,19.245 17.01,19.497 16.554,19.709ZM19.927,16.883L21.471,17.775C21.829,17.982 22.288,17.859 22.495,17.5C22.702,17.141 22.579,16.683 22.221,16.476L20.678,15.585C20.465,16.041 20.214,16.476 19.927,16.883ZM21.436,12.75H23.219C23.633,12.75 23.969,12.414 23.969,12C23.969,11.586 23.633,11.25 23.219,11.25H21.436C21.458,11.497 21.469,11.747 21.469,12C21.469,12.253 21.458,12.503 21.436,12.75ZM20.678,8.415L22.221,7.524C22.579,7.317 22.702,6.859 22.495,6.5C22.288,6.141 21.829,6.018 21.471,6.225L19.927,7.117C20.214,7.525 20.465,7.959 20.678,8.415ZM17.852,5.042L18.743,3.498C18.95,3.14 18.827,2.681 18.469,2.474C18.11,2.267 17.651,2.39 17.444,2.748L16.554,4.291C17.01,4.503 17.444,4.755 17.852,5.042Z"
|
||||
android:fillColor="#2C2B27"
|
||||
android:fillColor="@color/glyph_selected"
|
||||
android:fillType="evenOdd"/>
|
||||
<path
|
||||
android:pathData="M19.969,12C19.969,8.134 16.835,5 12.969,5C9.103,5 5.969,8.134 5.969,12C5.969,15.866 9.103,19 12.969,19C16.835,19 19.969,15.866 19.969,12ZM21.469,12C21.469,7.306 17.663,3.5 12.969,3.5C8.274,3.5 4.469,7.306 4.469,12C4.469,16.694 8.274,20.5 12.969,20.5C17.663,20.5 21.469,16.694 21.469,12Z"
|
||||
android:fillColor="#2C2B27"
|
||||
android:fillColor="@color/glyph_selected"
|
||||
android:fillType="evenOdd"/>
|
||||
<path
|
||||
android:pathData="M12.594,11.35L12.594,11.35A0.75,0.75 104.964,0 1,13.618 11.625L18.743,20.502A0.75,0.75 105.137,0 1,18.469 21.526L18.469,21.526A0.75,0.75 105.137,0 1,17.444 21.252L12.319,12.375A0.75,0.75 104.964,0 1,12.594 11.35z"
|
||||
android:fillColor="#2C2B27"/>
|
||||
android:fillColor="@color/glyph_selected"/>
|
||||
<path
|
||||
android:pathData="M12.592,12.652L12.592,12.652A0.75,0.75 75.023,0 1,12.318 11.627L17.444,2.749A0.75,0.75 74.141,0 1,18.469 2.474L18.469,2.474A0.75,0.75 74.141,0 1,18.743 3.499L13.617,12.377A0.75,0.75 75.023,0 1,12.592 12.652z"
|
||||
android:fillColor="#2C2B27"/>
|
||||
android:fillColor="@color/glyph_selected"/>
|
||||
<path
|
||||
android:pathData="M1.969,12L1.969,12A0.75,0.75 0,0 1,2.719 11.25L12.969,11.25A0.75,0.75 0,0 1,13.719 12L13.719,12A0.75,0.75 0,0 1,12.969 12.75L2.719,12.75A0.75,0.75 0,0 1,1.969 12z"
|
||||
android:fillColor="#2C2B27"/>
|
||||
android:fillColor="@color/glyph_selected"/>
|
||||
</vector>
|
||||
|
|
|
@ -13,16 +13,11 @@
|
|||
android:layout_marginStart="20dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
android:layout_marginTop="70dp"
|
||||
android:fontFamily="@font/graphik_semibold"
|
||||
android:maxLines="1"
|
||||
android:ellipsize="end"
|
||||
android:textAlignment="center"
|
||||
android:text="@string/greet_user"
|
||||
android:textColor="@color/text_white"
|
||||
android:textSize="28sp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
style="@style/DashboardGreetingTextStyle" />
|
||||
|
||||
<com.anytypeio.anytype.core_ui.widgets.AvatarWidget
|
||||
android:id="@+id/avatarContainer"
|
||||
|
|
|
@ -274,4 +274,13 @@
|
|||
<item name="maxLines">4</item>
|
||||
</style>
|
||||
|
||||
<style name="DashboardGreetingTextStyle">
|
||||
<item name="android:fontFamily">@font/inter_bold</item>
|
||||
<item name="android:maxLines">1</item>
|
||||
<item name="android:ellipsize">end</item>
|
||||
<item name="android:textAlignment">center</item>
|
||||
<item name="android:textColor">@color/text_white</item>
|
||||
<item name="android:textSize">28sp</item>
|
||||
</style>
|
||||
|
||||
</resources>
|
|
@ -9,22 +9,24 @@ import com.anytypeio.anytype.presentation.objects.menu.ObjectMenuOptionsProvider
|
|||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.combine
|
||||
import kotlinx.coroutines.flow.map
|
||||
import kotlinx.coroutines.flow.mapNotNull
|
||||
import timber.log.Timber
|
||||
|
||||
class ObjectMenuOptionsProviderImpl(
|
||||
private val details: Flow<Map<Id, Block.Fields>>,
|
||||
private val restrictions: Flow<List<ObjectRestriction>>,
|
||||
) : ObjectMenuOptionsProvider {
|
||||
|
||||
private fun observeLayout(ctx: Id): Flow<ObjectType.Layout?> {
|
||||
return details
|
||||
.map { details ->
|
||||
val fields = requireNotNull(details[ctx]) {
|
||||
"Can't find details by objectId=$ctx"
|
||||
}
|
||||
private fun observeLayout(ctx: Id): Flow<ObjectType.Layout?> = details
|
||||
.mapNotNull { details ->
|
||||
val fields = details[ctx]
|
||||
if (fields != null) {
|
||||
ObjectWrapper.Basic(fields.map).layout
|
||||
} else {
|
||||
Timber.w("Details missing for object: $ctx")
|
||||
null
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
override fun provide(ctx: Id, isLocked: Boolean): Flow<Options> {
|
||||
return combine(observeLayout(ctx), restrictions) { layout, restrictions ->
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue