Compare commits
73 Commits
v1.2.3+for
...
1.1.4+fork
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
90bef7fddb | ||
|
|
c1b382ef34 | ||
|
|
028b88aa24 | ||
|
|
9d0ce33f5e | ||
|
|
dbb23d952c | ||
|
|
7fe7e47d53 | ||
|
|
d0c93dfd4d | ||
|
|
acdccaf80a | ||
|
|
769293ce1a | ||
|
|
8d0fe18b70 | ||
|
|
6926432a6c | ||
|
|
83f12b0840 | ||
|
|
290b7db7e4 | ||
|
|
f352c20ed9 | ||
|
|
2ccbffa165 | ||
|
|
06cd80a352 | ||
|
|
de97493e6a | ||
|
|
3a24ff0d15 | ||
|
|
c463a3fc39 | ||
|
|
fc845685cc | ||
|
|
0ef0aa1a44 | ||
|
|
337689aa45 | ||
|
|
f7e3423f9c | ||
|
|
b465c09cc8 | ||
|
|
ac6c0651d6 | ||
|
|
18af6f5a12 | ||
|
|
d11ee3a702 | ||
|
|
6d9f9ce2d2 | ||
|
|
ec1496a4cc | ||
|
|
41e19185e8 | ||
|
|
e15dd6024f | ||
|
|
e52dffeece | ||
|
|
5b85bb427d | ||
|
|
4d62388617 | ||
|
|
04b8055474 | ||
|
|
3c34b6a7d2 | ||
|
|
de4964c2cd | ||
|
|
fbcaa05c03 | ||
|
|
883f28696e | ||
|
|
df52230837 | ||
|
|
a90f26a37a | ||
|
|
8c1f76d7fa | ||
|
|
f384d44f8f | ||
|
|
4ab6ed55f5 | ||
|
|
cf99bf5152 | ||
|
|
10779717cf | ||
|
|
4e5c2a9ecf | ||
|
|
db4c1bfe47 | ||
|
|
27afba1cf2 | ||
|
|
4895425b40 | ||
|
|
004c414fba | ||
|
|
c8e38b134c | ||
|
|
de5a911286 | ||
|
|
606cd7442e | ||
|
|
3ebc972268 | ||
|
|
4e39bb381c | ||
|
|
b6178681b0 | ||
|
|
29abf70cec | ||
|
|
8d63be513d | ||
|
|
e63b9d0dd6 | ||
|
|
b1fda17ac7 | ||
|
|
bad44b145c | ||
|
|
77669cedf6 | ||
|
|
19238c389f | ||
|
|
1747ff98b5 | ||
|
|
8fa5824e3e | ||
|
|
6a674d7a7e | ||
|
|
dad3b8cd6b | ||
|
|
9179d2198d | ||
|
|
d096bef234 | ||
|
|
f2c47a1b84 | ||
|
|
bc2ac4e915 | ||
|
|
ff215412c8 |
92
README.md
@@ -1,23 +1,30 @@
|
|||||||

|

|
||||||
|
|
||||||
# Megalodon
|
# Moshidon
|
||||||
|
|
||||||
[](https://translate.codeberg.org/engage/megalodon/)
|
> A fork of [megalodon](https://github.com/sk22/megalodon) which is a fork of [official Mastodon Android app](https://github.com/mastodon/mastodon-android) adding important features that are missing in the official app and possibly won’t ever be implemented, such as the federated timeline, unlisted posting, bookmarks and an image description viewer.
|
||||||
|
|
||||||
[](https://github.com/sk22/megalodon/releases/latest/download/megalodon.apk)
|
|
||||||
|
|
||||||
<a href="https://play.google.com/store/apps/details?id=org.joinmastodon.android.sk"><img height="50" alt="Get it on Google Play" src="img/google-play-badge.png"></a>
|
|
||||||
|
|
||||||
<a href="https://apt.izzysoft.de/fdroid/index/apk/org.joinmastodon.android.sk"><img height="50" alt="Get it on F-Droid" src="img/f-droid-badge.png"></a>
|
|
||||||
|
|
||||||
> A fork of the [official Mastodon Android app](https://github.com/mastodon/mastodon-android) adding important features that are missing in the official app and possibly won’t ever be implemented, such as the federated timeline, unlisted posting and an image description viewer.
|
|
||||||
|
|
||||||
|
[](https://github.com/LucasGGamerM/moshidon/releases/latest/download/moshidon.apk)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
||||||
## Key features
|
## Key features
|
||||||
|
|
||||||
|
### **Translate button**
|
||||||
|
|
||||||
|
**Allows you to translate posts in instances with the translate feature!**
|
||||||
|
|
||||||
|
**Screenshots**
|
||||||
|
|
||||||
|

|
||||||
|

|
||||||
|
|
||||||
|
### **Color themes**
|
||||||
|
|
||||||
|
**Allows you to change theme within the app. Supports Purple, pink, green, blue, orange and yellow!**
|
||||||
|
|
||||||
### **Unlisted posting**
|
### **Unlisted posting**
|
||||||
|
|
||||||
**Allows you to post publicly without having your post show up in trends, hashtags or public timelines (i.e., in the tabs “Local”, “Community” and “Posts”).**
|
**Allows you to post publicly without having your post show up in trends, hashtags or public timelines (i.e., in the tabs “Local”, “Community” and “Posts”).**
|
||||||
@@ -46,63 +53,29 @@ This is important to **ensure the content you’re sharing is as accessible as p
|
|||||||
|
|
||||||
On the Fediverse, it’s quite common for people to pin posts they want others to read before following them. You can pin/unpin posts yourself by clicking the `⋯` button in the top right corner of your posts.
|
On the Fediverse, it’s quite common for people to pin posts they want others to read before following them. You can pin/unpin posts yourself by clicking the `⋯` button in the top right corner of your posts.
|
||||||
|
|
||||||
|
### **Bookmarks**
|
||||||
|
|
||||||
|
**They allow for quickly saving posts and viewing them through the Bookmarks button on the top right of your profile.**
|
||||||
|
|
||||||
|
To bookmark a post, press the button between the Favorite and Share buttons on the bottom of the post. Bookmarks are saved privately, so the post authors won’t know you saved their post – the list of bookmarked posts is only visible to you.
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
### From app stores
|
**Press the download button above to download the APK. Open the downloaded file on your Android device to install it. Moshidon will automatically notify you about new updates inside the app.**
|
||||||
|
|
||||||
* **[Izzy's F-Droid repository](https://apt.izzysoft.de/fdroid/repo)**: [apt.izzysoft.de/fdroid/index/apk/org.joinmastodon.android.sk](https://apt.izzysoft.de/fdroid/index/apk/org.joinmastodon.android.sk)
|
To install this app on your Android device, download the [latest release from GitHub](https://github.com/LucasGGamerM/moshidon/releases/latest/download/moshidon.apk) and open it. You might have to accept installing APK files from your browser when trying to install it. You can also take a look at all releases on the [Releases](https://github.com/LucasGGamerM/moshidon/releases) page.
|
||||||
|
|
||||||
Note that you'll need to add Izzy's F-Droid repository to your F-Droid app first:
|
Moshidon makes use of [Mastodon for Android](https://github.com/mastodon/mastodon-android)’s automatic update checker. Megalodon will check for new updates available on GitHub and offer to download and install them. You can also manually press “Check for updates” at the bottom of the settings page!
|
||||||
|
|
||||||
`https://apt.izzysoft.de/fdroid/repo`
|
|
||||||
|
|
||||||
* **[Google Play Store](https://play.google.com/store/apps/details?id=org.joinmastodon.android.sk)**: [play.google.com/store/apps/details?id=org.joinmastodon.android.sk](https://play.google.com/store/apps/details?id=org.joinmastodon.android.sk)
|
|
||||||
|
|
||||||
* **[F-Droid.org](https://f-droid.org)?** Not yet, sorry!
|
|
||||||
|
|
||||||
If you want, you can help me figure out if something's missing in the [Issue #47: F-Droid.org](https://github.com/sk22/megalodon/issues/47)
|
|
||||||
|
|
||||||
### Directly from GitHub
|
|
||||||
|
|
||||||
Press the download button to download the APK. Open the downloaded file on your Android device to install it. Megalodon will automatically notify you about new updates inside the app.
|
|
||||||
|
|
||||||
[](https://github.com/sk22/megalodon/releases/latest/download/megalodon.apk)
|
|
||||||
|
|
||||||
You might have to accept installing APK files from your browser when trying to install it. You can also take a look at all releases on the [Releases](https://github.com/sk22/megalodon/releases) page.
|
|
||||||
|
|
||||||
Megalodon makes use of [Mastodon for Android](https://github.com/mastodon/mastodon-android)’s automatic update checker. Megalodon will check for new updates available on GitHub and offer to download and install them. You can also manually press “Check for updates” at the bottom of the settings page!
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
||||||
## Release variants
|
## Release variants
|
||||||
|
|
||||||
All downloads can be found on the [Releases](https://github.com/sk22/megalodon/releases) page.
|
All downloads can be found on the [Releases](https://github.com/LucasGGamerM/moshidon/releases) page.
|
||||||
|
|
||||||
**`megalodon.apk`**
|
**`moshidon.apk`**
|
||||||
|
|
||||||
Variant with an integrated updater. If you download Megalodon from here (and not from an app store), just download the regular `megalodon.apk`.
|
|
||||||
|
|
||||||
**`upstream-1234abc.apk`**
|
|
||||||
|
|
||||||
This is an **unmodified version** of the official [Mastodon for Android](https://github.com/mastodon/mastodon-android) app the respective Megalodon release is based on. Should you find any bugs in Megalodon (which you will), try to see if it occurs with this variant, too. The last 7 digits of the file name are important to know which version of the official app you're using.
|
|
||||||
|
|
||||||
<!-- **`megalodon-fdroid.apk`**
|
|
||||||
|
|
||||||
Variant without the integrated updater. This is the variant to be published to F-Droid.org where an integrated updater is not necessary. -->
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Contribution
|
|
||||||
|
|
||||||
### Translation
|
|
||||||
|
|
||||||
As with the source code, the translation is sourced from the official project, which you can contribute to on the official “**Mastodon for Android**” Crowdin project: https://crowdin.com/project/mastodon-for-android
|
|
||||||
|
|
||||||
There's also a handful of custom strings exclusive to this projects that would need to be translated. You can help translate **Megalodon** on Weblate: https://translate.codeberg.org/projects/megalodon/
|
|
||||||
|
|
||||||
[](https://translate.codeberg.org/engage/megalodon/)
|
|
||||||
|
|
||||||
|
Variant with an integrated updater. If you download Moshidon from here (and not from an app store), just download the regular `moshidon.apk`.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -131,7 +104,6 @@ There's also a handful of custom strings exclusive to this projects that would n
|
|||||||
* [Show visibility of original post when replying](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:feature/display-reply-visibility)
|
* [Show visibility of original post when replying](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:feature/display-reply-visibility)
|
||||||
* [Clickable reply/boost line above posts](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:clickable-boost-reply-line)
|
* [Clickable reply/boost line above posts](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:clickable-boost-reply-line)
|
||||||
* [Clickable reply line while replying to open original post](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:feature/clickable-reply-line-compose)
|
* [Clickable reply line while replying to open original post](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:feature/clickable-reply-line-compose)
|
||||||
* [Add push notification setting for post notifications](https://github.com/sk22/megalodon/commit/b190480d7739be47f23543d9e7644660f9b4b4ee)
|
|
||||||
|
|
||||||
|
|
||||||
### Behavior
|
### Behavior
|
||||||
@@ -143,11 +115,6 @@ There's also a handful of custom strings exclusive to this projects that would n
|
|||||||
* [Option to hide interaction numbers](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:settings/hide-interaction-numbers)
|
* [Option to hide interaction numbers](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:settings/hide-interaction-numbers)
|
||||||
* [Option to always reveal content warnings](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:feature/cw-above-text)
|
* [Option to always reveal content warnings](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:feature/cw-above-text)
|
||||||
* [Option to disable scrolling title bars](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:settings/disable-marquee)
|
* [Option to disable scrolling title bars](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:settings/disable-marquee)
|
||||||
* [No ellipsis for long poll answers](https://github.com/mastodon/mastodon-android/commit/c9aae828e2518adccdc092e41f8d1f0489636271)
|
|
||||||
* [Show poll vote button for multiple and single answer polls](https://github.com/mastodon/mastodon-android/commit/e14dfda2fdf32f0fa3043504ac5831683a87559a)
|
|
||||||
* [Show own vote after voting](https://github.com/mastodon/mastodon-android/commit/4ab9e25fec4fd9c10b7a8ddd1be522b3cc12cf28) ([Closes issue](https://github.com/mastodon/mastodon-android/commit/4ab9e25fec4fd9c10b7a8ddd1be522b3cc12cf28))
|
|
||||||
* [Make inline emoji search case-insensitive and don't only search from start of emoji names](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:better-inline-emoji-search) ([Pull request](https://github.com/mastodon/mastodon-android/pull/445))
|
|
||||||
* [Include subject line when sharing e.g. a website to Megalodon](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:external-share-include-subject)
|
|
||||||
|
|
||||||
|
|
||||||
### Visual
|
### Visual
|
||||||
@@ -155,7 +122,6 @@ There's also a handful of custom strings exclusive to this projects that would n
|
|||||||
* [Custom extended footer redesign](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:compact-extended-footer)
|
* [Custom extended footer redesign](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:compact-extended-footer)
|
||||||
* [Improvements to the true black mode](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:true-black-improvements)
|
* [Improvements to the true black mode](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:true-black-improvements)
|
||||||
* [Profile header tweaks](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:ui/profile-header-tweaks)
|
* [Profile header tweaks](https://github.com/mastodon/mastodon-android/compare/master...sk22:megalodon:ui/profile-header-tweaks)
|
||||||
* [Custom color themes](https://github.com/sk22/megalodon/pull/124) by [@LucasGGamerM](https://github.com/LucasGGamerM)
|
|
||||||
|
|
||||||
|
|
||||||
## Building
|
## Building
|
||||||
@@ -172,4 +138,4 @@ This project is released under the [GPL-3 License](./LICENSE).
|
|||||||
|
|
||||||
## Links
|
## Links
|
||||||
|
|
||||||
<a rel="me" href="https://floss.social/@megalodon">@megalodon<wbr>@floss.social</a>
|
<a rel="me" href="https://floss.social/@moshidon">@moshidon<wbr>@floss.social</a>
|
||||||
|
|||||||
@@ -5,12 +5,12 @@ plugins {
|
|||||||
android {
|
android {
|
||||||
compileSdk 33
|
compileSdk 33
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
archivesBaseName = "megalodon"
|
archivesBaseName = "moshidon"
|
||||||
applicationId "org.joinmastodon.android.sk"
|
applicationId "org.joinmastodon.android.moshinda"
|
||||||
minSdk 23
|
minSdk 23
|
||||||
targetSdk 33
|
targetSdk 33
|
||||||
versionCode 56
|
versionCode 62
|
||||||
versionName "1.1.4+fork.56"
|
versionName "1.1.4+fork.62.moshinda"
|
||||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||||
resConfigs "en", "ar-rSA", "bs-rBA", "ca-rES", "cs-rCZ", "de-rDE", "el-rGR", "es-rES",
|
resConfigs "en", "ar-rSA", "bs-rBA", "ca-rES", "cs-rCZ", "de-rDE", "el-rGR", "es-rES",
|
||||||
"eu-rES", "fi-rFI", "fr-rFR", "gl-rES", "hr-rHR", "hy-rAM", "it-rIT", "iw-rIL",
|
"eu-rES", "fi-rFI", "fr-rFR", "gl-rES", "hr-rHR", "hy-rAM", "it-rIT", "iw-rIL",
|
||||||
|
|||||||
BIN
mastodon/src/github/ic_launcher-playstore.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
@@ -111,7 +111,7 @@ public class GithubSelfUpdaterImpl extends GithubSelfUpdater{
|
|||||||
|
|
||||||
private void actuallyCheckForUpdates(){
|
private void actuallyCheckForUpdates(){
|
||||||
Request req=new Request.Builder()
|
Request req=new Request.Builder()
|
||||||
.url("https://api.github.com/repos/sk22/megalodon/releases/latest")
|
.url("https://api.github.com/repos/LucasGGamerM/moshidon/releases/latest")
|
||||||
.build();
|
.build();
|
||||||
Call call=MastodonAPIController.getHttpClient().newCall(req);
|
Call call=MastodonAPIController.getHttpClient().newCall(req);
|
||||||
try(Response resp=call.execute()){
|
try(Response resp=call.execute()){
|
||||||
@@ -144,7 +144,7 @@ public class GithubSelfUpdaterImpl extends GithubSelfUpdater{
|
|||||||
Log.d(TAG, "actuallyCheckForUpdates: new version: "+version);
|
Log.d(TAG, "actuallyCheckForUpdates: new version: "+version);
|
||||||
for(JsonElement el:obj.getAsJsonArray("assets")){
|
for(JsonElement el:obj.getAsJsonArray("assets")){
|
||||||
JsonObject asset=el.getAsJsonObject();
|
JsonObject asset=el.getAsJsonObject();
|
||||||
if("megalodon.apk".equals(asset.get("name").getAsString()) && "application/vnd.android.package-archive".equals(asset.get("content_type").getAsString()) && "uploaded".equals(asset.get("state").getAsString())){
|
if("moshidon.apk".equals(asset.get("name").getAsString()) && "application/vnd.android.package-archive".equals(asset.get("content_type").getAsString()) && "uploaded".equals(asset.get("state").getAsString())){
|
||||||
long size=asset.get("size").getAsLong();
|
long size=asset.get("size").getAsLong();
|
||||||
String url=asset.get("browser_download_url").getAsString();
|
String url=asset.get("browser_download_url").getAsString();
|
||||||
|
|
||||||
|
|||||||
@@ -14,12 +14,12 @@
|
|||||||
<application
|
<application
|
||||||
android:name=".MastodonApp"
|
android:name=".MastodonApp"
|
||||||
android:allowBackup="true"
|
android:allowBackup="true"
|
||||||
android:label="@string/sk_app_name"
|
android:label="@string/app_name"
|
||||||
android:supportsRtl="true"
|
android:supportsRtl="true"
|
||||||
android:localeConfig="@xml/locales_config"
|
android:localeConfig="@xml/locales_config"
|
||||||
android:icon="@mipmap/ic_launcher"
|
android:icon="@mipmap/ic_launcher"
|
||||||
android:roundIcon="@mipmap/ic_launcher_round"
|
android:roundIcon="@mipmap/ic_launcher_round"
|
||||||
android:theme="@style/Theme.Mastodon.AutoLightDark"
|
android:theme="@style/Theme.Mastodon.AutoLightDark.Original"
|
||||||
android:largeHeap="true">
|
android:largeHeap="true">
|
||||||
|
|
||||||
<activity android:name=".MainActivity" android:exported="true" android:configChanges="orientation|screenSize" android:windowSoftInputMode="adjustResize" android:launchMode="singleTask">
|
<activity android:name=".MainActivity" android:exported="true" android:configChanges="orientation|screenSize" android:windowSoftInputMode="adjustResize" android:launchMode="singleTask">
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
<action android:name="android.intent.action.VIEW"/>
|
<action android:name="android.intent.action.VIEW"/>
|
||||||
<category android:name="android.intent.category.BROWSABLE"/>
|
<category android:name="android.intent.category.BROWSABLE"/>
|
||||||
<category android:name="android.intent.category.DEFAULT"/>
|
<category android:name="android.intent.category.DEFAULT"/>
|
||||||
<data android:scheme="megalodon-android-auth" android:host="callback"/>
|
<data android:scheme="moshidon-android-auth" android:host="callback"/>
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
<activity android:name=".ExternalShareActivity" android:exported="true" android:configChanges="orientation|screenSize" android:windowSoftInputMode="adjustResize">
|
<activity android:name=".ExternalShareActivity" android:exported="true" android:configChanges="orientation|screenSize" android:windowSoftInputMode="adjustResize">
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 358 KiB After Width: | Height: | Size: 15 KiB |
@@ -36,7 +36,7 @@ public class GlobalUserPreferences{
|
|||||||
disableMarquee=prefs.getBoolean("disableMarquee", false);
|
disableMarquee=prefs.getBoolean("disableMarquee", false);
|
||||||
voteButtonForSingleChoice=prefs.getBoolean("voteButtonForSingleChoice", true);
|
voteButtonForSingleChoice=prefs.getBoolean("voteButtonForSingleChoice", true);
|
||||||
theme=ThemePreference.values()[prefs.getInt("theme", 0)];
|
theme=ThemePreference.values()[prefs.getInt("theme", 0)];
|
||||||
color=ColorPreference.values()[prefs.getInt("color", 0)];
|
color=ColorPreference.values()[prefs.getInt("color", 1)];
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void save(){
|
public static void save(){
|
||||||
@@ -61,8 +61,9 @@ public class GlobalUserPreferences{
|
|||||||
PURPLE,
|
PURPLE,
|
||||||
GREEN,
|
GREEN,
|
||||||
BLUE,
|
BLUE,
|
||||||
BROWN,
|
ORANGE,
|
||||||
YELLOW
|
YELLOW,
|
||||||
|
MATERIAL3
|
||||||
}
|
}
|
||||||
|
|
||||||
public enum ThemePreference{
|
public enum ThemePreference{
|
||||||
@@ -71,4 +72,3 @@ public class GlobalUserPreferences{
|
|||||||
DARK
|
DARK
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -143,7 +143,7 @@ public class PushNotificationReceiver extends BroadcastReceiver{
|
|||||||
.setShowWhen(true)
|
.setShowWhen(true)
|
||||||
.setCategory(Notification.CATEGORY_SOCIAL)
|
.setCategory(Notification.CATEGORY_SOCIAL)
|
||||||
.setAutoCancel(true)
|
.setAutoCancel(true)
|
||||||
.setColor(context.getColor(R.color.primary_700));
|
.setColor(context.getColor(R.color.shortcut_icon_background));
|
||||||
if(avatar!=null){
|
if(avatar!=null){
|
||||||
builder.setLargeIcon(UiUtils.getBitmapFromDrawable(avatar));
|
builder.setLargeIcon(UiUtils.getBitmapFromDrawable(avatar));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,9 +11,9 @@ public class CreateOAuthApp extends MastodonAPIRequest<Application>{
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static class Request{
|
private static class Request{
|
||||||
public String clientName="Megalodon";
|
public String clientName="Moshidon";
|
||||||
public String redirectUris=AccountSessionManager.REDIRECT_URI;
|
public String redirectUris=AccountSessionManager.REDIRECT_URI;
|
||||||
public String scopes=AccountSessionManager.SCOPE;
|
public String scopes=AccountSessionManager.SCOPE;
|
||||||
public String website="https://sk22.github.io/megalodon";
|
public String website="https://github.com/LucasGGamerM/moshidon";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,20 @@
|
|||||||
|
package org.joinmastodon.android.api.requests.statuses;
|
||||||
|
|
||||||
|
import org.joinmastodon.android.api.AllFieldsAreRequired;
|
||||||
|
import org.joinmastodon.android.api.MastodonAPIRequest;
|
||||||
|
import org.joinmastodon.android.model.BaseModel;
|
||||||
|
import org.joinmastodon.android.model.Status;
|
||||||
|
import org.joinmastodon.android.model.StatusTranslation;
|
||||||
|
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
|
public class GetStatusTranslation extends MastodonAPIRequest<StatusTranslation>{
|
||||||
|
public GetStatusTranslation(String id){
|
||||||
|
super(HttpMethod.POST, "/statuses/"+id+"/translate", StatusTranslation.class);
|
||||||
|
Request r = new Request();
|
||||||
|
setRequestBody(r);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static class Request{
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -61,7 +61,7 @@ import me.grishka.appkit.api.ErrorResponse;
|
|||||||
public class AccountSessionManager{
|
public class AccountSessionManager{
|
||||||
private static final String TAG="AccountSessionManager";
|
private static final String TAG="AccountSessionManager";
|
||||||
public static final String SCOPE="read write follow push";
|
public static final String SCOPE="read write follow push";
|
||||||
public static final String REDIRECT_URI="megalodon-android-auth://callback";
|
public static final String REDIRECT_URI="moshidon-android-auth://callback";
|
||||||
|
|
||||||
private static final AccountSessionManager instance=new AccountSessionManager();
|
private static final AccountSessionManager instance=new AccountSessionManager();
|
||||||
|
|
||||||
@@ -211,7 +211,7 @@ public class AccountSessionManager{
|
|||||||
.path("/oauth/authorize")
|
.path("/oauth/authorize")
|
||||||
.appendQueryParameter("response_type", "code")
|
.appendQueryParameter("response_type", "code")
|
||||||
.appendQueryParameter("client_id", result.clientId)
|
.appendQueryParameter("client_id", result.clientId)
|
||||||
.appendQueryParameter("redirect_uri", "megalodon-android-auth://callback")
|
.appendQueryParameter("redirect_uri", "moshidon-android-auth://callback")
|
||||||
.appendQueryParameter("scope", SCOPE)
|
.appendQueryParameter("scope", SCOPE)
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
|
|||||||
@@ -462,6 +462,21 @@ public abstract class BaseStatusListFragment<T extends DisplayItemsParent> exten
|
|||||||
Status status=holder.getItem().status;
|
Status status=holder.getItem().status;
|
||||||
revealSpoiler(status, holder.getItemID());
|
revealSpoiler(status, holder.getItemID());
|
||||||
}
|
}
|
||||||
|
public void onRevealTranslationClick(HeaderStatusDisplayItem.Holder holder){
|
||||||
|
Status status=holder.getItem().status;
|
||||||
|
revealTranslation(status, holder.getItemID());
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void revealTranslation(Status status, String itemID){
|
||||||
|
status.wantsTranslation=!status.wantsTranslation;
|
||||||
|
TextStatusDisplayItem.Holder text=findHolderOfType(itemID, TextStatusDisplayItem.Holder.class);
|
||||||
|
if(text!=null)
|
||||||
|
adapter.notifyItemChanged(text.getAbsoluteAdapterPosition()-getMainAdapterOffset());
|
||||||
|
HeaderStatusDisplayItem.Holder header=findHolderOfType(itemID, HeaderStatusDisplayItem.Holder.class);
|
||||||
|
if(header!=null)
|
||||||
|
header.rebind();
|
||||||
|
updateImagesSpoilerState(status, itemID);
|
||||||
|
}
|
||||||
|
|
||||||
protected void revealSpoiler(Status status, String itemID){
|
protected void revealSpoiler(Status status, String itemID){
|
||||||
status.spoilerRevealed=true;
|
status.spoilerRevealed=true;
|
||||||
|
|||||||
@@ -321,6 +321,9 @@ public class HomeTimelineFragment extends StatusListFragment{
|
|||||||
toolbarLogo.setScaleType(ImageView.ScaleType.CENTER);
|
toolbarLogo.setScaleType(ImageView.ScaleType.CENTER);
|
||||||
toolbarLogo.setImageResource(R.drawable.logo);
|
toolbarLogo.setImageResource(R.drawable.logo);
|
||||||
toolbarLogo.setImageTintList(ColorStateList.valueOf(UiUtils.getThemeColor(getActivity(), android.R.attr.textColorPrimary)));
|
toolbarLogo.setImageTintList(ColorStateList.valueOf(UiUtils.getThemeColor(getActivity(), android.R.attr.textColorPrimary)));
|
||||||
|
// toolbarLogo =new TextView(getActivity());
|
||||||
|
// toolbarLogo.setText(getString(R.string.app_name).toLowerCase(Locale.getDefault()));
|
||||||
|
// toolbarLogo.setTextAppearance(R.style.app_title);
|
||||||
|
|
||||||
toolbarShowNewPostsBtn=new Button(getActivity());
|
toolbarShowNewPostsBtn=new Button(getActivity());
|
||||||
toolbarShowNewPostsBtn.setTextAppearance(R.style.m3_title_medium);
|
toolbarShowNewPostsBtn.setTextAppearance(R.style.m3_title_medium);
|
||||||
@@ -348,9 +351,7 @@ public class HomeTimelineFragment extends StatusListFragment{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FrameLayout logoWrap=new FrameLayout(getActivity());
|
FrameLayout logoWrap=new FrameLayout(getActivity());
|
||||||
FrameLayout.LayoutParams logoParams=new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.CENTER);
|
logoWrap.addView(toolbarLogo, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.CENTER));
|
||||||
logoParams.setMargins(0, V.dp(2), 0, 0);
|
|
||||||
logoWrap.addView(toolbarLogo, logoParams);
|
|
||||||
logoWrap.addView(toolbarShowNewPostsBtn, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, V.dp(32), Gravity.CENTER));
|
logoWrap.addView(toolbarShowNewPostsBtn, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, V.dp(32), Gravity.CENTER));
|
||||||
|
|
||||||
Toolbar toolbar=getToolbar();
|
Toolbar toolbar=getToolbar();
|
||||||
|
|||||||
@@ -95,7 +95,7 @@ public class SettingsFragment extends MastodonToolbarFragment{
|
|||||||
items.add(new HeaderItem(R.string.settings_theme));
|
items.add(new HeaderItem(R.string.settings_theme));
|
||||||
items.add(themeItem=new ThemeItem());
|
items.add(themeItem=new ThemeItem());
|
||||||
items.add(new SwitchItem(R.string.theme_true_black, R.drawable.ic_fluent_dark_theme_24_regular, GlobalUserPreferences.trueBlackTheme, this::onTrueBlackThemeChanged));
|
items.add(new SwitchItem(R.string.theme_true_black, R.drawable.ic_fluent_dark_theme_24_regular, GlobalUserPreferences.trueBlackTheme, this::onTrueBlackThemeChanged));
|
||||||
items.add(new SwitchItem(R.string.sk_disable_marquee, R.drawable.ic_fluent_text_more_24_regular, GlobalUserPreferences.disableMarquee, i->{
|
items.add(new SwitchItem(R.string.disable_marquee, R.drawable.ic_fluent_text_more_24_regular, GlobalUserPreferences.disableMarquee, i->{
|
||||||
GlobalUserPreferences.disableMarquee=i.checked;
|
GlobalUserPreferences.disableMarquee=i.checked;
|
||||||
GlobalUserPreferences.save();
|
GlobalUserPreferences.save();
|
||||||
}));
|
}));
|
||||||
@@ -114,7 +114,7 @@ public class SettingsFragment extends MastodonToolbarFragment{
|
|||||||
GlobalUserPreferences.showInteractionCounts=i.checked;
|
GlobalUserPreferences.showInteractionCounts=i.checked;
|
||||||
GlobalUserPreferences.save();
|
GlobalUserPreferences.save();
|
||||||
}));
|
}));
|
||||||
items.add(new SwitchItem(R.string.sk_settings_always_reveal_content_warnings, R.drawable.ic_fluent_chat_warning_24_regular, GlobalUserPreferences.alwaysExpandContentWarnings, i->{
|
items.add(new SwitchItem(R.string.settings_always_reveal_content_warnings, R.drawable.ic_fluent_chat_warning_24_regular, GlobalUserPreferences.alwaysExpandContentWarnings, i->{
|
||||||
GlobalUserPreferences.alwaysExpandContentWarnings=i.checked;
|
GlobalUserPreferences.alwaysExpandContentWarnings=i.checked;
|
||||||
GlobalUserPreferences.save();
|
GlobalUserPreferences.save();
|
||||||
}));
|
}));
|
||||||
@@ -157,11 +157,11 @@ public class SettingsFragment extends MastodonToolbarFragment{
|
|||||||
checkForUpdateItem = new TextItem(R.string.sk_check_for_update, GithubSelfUpdater.getInstance()::checkForUpdates);
|
checkForUpdateItem = new TextItem(R.string.sk_check_for_update, GithubSelfUpdater.getInstance()::checkForUpdates);
|
||||||
items.add(checkForUpdateItem);
|
items.add(checkForUpdateItem);
|
||||||
}
|
}
|
||||||
items.add(new TextItem(R.string.sk_settings_contribute, ()->UiUtils.launchWebBrowser(getActivity(), "https://github.com/sk22/megalodon")));
|
items.add(new TextItem(R.string.settings_contribute_fork, ()->UiUtils.launchWebBrowser(getActivity(), "https://github.com/sk22/megalodon")));
|
||||||
items.add(new TextItem(R.string.settings_clear_cache, this::clearImageCache));
|
items.add(new TextItem(R.string.settings_clear_cache, this::clearImageCache));
|
||||||
items.add(new TextItem(R.string.log_out, this::confirmLogOut));
|
items.add(new TextItem(R.string.log_out, this::confirmLogOut));
|
||||||
|
|
||||||
items.add(new FooterItem(getString(R.string.sk_settings_app_version, BuildConfig.VERSION_NAME, BuildConfig.VERSION_CODE)));
|
items.add(new FooterItem(getString(R.string.settings_app_version, BuildConfig.VERSION_NAME, BuildConfig.VERSION_CODE)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -237,6 +237,7 @@ public class SettingsFragment extends MastodonToolbarFragment{
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void onColorPreferenceClick(GlobalUserPreferences.ColorPreference color){
|
private void onColorPreferenceClick(GlobalUserPreferences.ColorPreference color){
|
||||||
|
|
||||||
GlobalUserPreferences.color=color;
|
GlobalUserPreferences.color=color;
|
||||||
GlobalUserPreferences.save();
|
GlobalUserPreferences.save();
|
||||||
restartActivityToApplyNewTheme();
|
restartActivityToApplyNewTheme();
|
||||||
@@ -696,14 +697,23 @@ public class SettingsFragment extends MastodonToolbarFragment{
|
|||||||
pref = GlobalUserPreferences.ColorPreference.BLUE;
|
pref = GlobalUserPreferences.ColorPreference.BLUE;
|
||||||
onColorPreferenceClick(pref);
|
onColorPreferenceClick(pref);
|
||||||
}
|
}
|
||||||
else if(id==R.id.brown_color) {
|
else if(id==R.id.orange_color) {
|
||||||
pref = GlobalUserPreferences.ColorPreference.BROWN;
|
pref = GlobalUserPreferences.ColorPreference.ORANGE;
|
||||||
onColorPreferenceClick(pref);
|
onColorPreferenceClick(pref);
|
||||||
}
|
}
|
||||||
else if(id==R.id.yellow_color) {
|
else if(id==R.id.yellow_color) {
|
||||||
pref = GlobalUserPreferences.ColorPreference.YELLOW;
|
pref = GlobalUserPreferences.ColorPreference.YELLOW;
|
||||||
onColorPreferenceClick(pref);
|
onColorPreferenceClick(pref);
|
||||||
}
|
}
|
||||||
|
else if(id==R.id.m3_color) {
|
||||||
|
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
|
||||||
|
pref = GlobalUserPreferences.ColorPreference.MATERIAL3;
|
||||||
|
onColorPreferenceClick(pref);
|
||||||
|
}else{
|
||||||
|
Toast.makeText(getActivity(), R.string.sk_not_supported,
|
||||||
|
Toast.LENGTH_LONG).show();
|
||||||
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
return true;
|
return true;
|
||||||
@@ -715,14 +725,15 @@ public class SettingsFragment extends MastodonToolbarFragment{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBind(ColorPicker item){
|
public void onBind(ColorPicker item){
|
||||||
icon.setImageResource(R.drawable.ic_fluent_color_24_regular);
|
icon.setImageResource(R.drawable.ic_color_theme_preference);
|
||||||
button.setText(switch(GlobalUserPreferences.color){
|
button.setText(switch(GlobalUserPreferences.color){
|
||||||
case PINK -> R.string.sk_color_theme_pink;
|
case PINK -> R.string.sk_color_theme_pink;
|
||||||
case PURPLE -> R.string.sk_color_theme_purple;
|
case PURPLE -> R.string.sk_color_theme_purple;
|
||||||
case GREEN -> R.string.sk_color_theme_green;
|
case GREEN -> R.string.sk_color_theme_green;
|
||||||
case BLUE -> R.string.sk_color_theme_blue;
|
case BLUE -> R.string.sk_color_theme_blue;
|
||||||
case BROWN -> R.string.sk_color_theme_brown;
|
case ORANGE -> R.string.sk_color_theme_brown;
|
||||||
case YELLOW -> R.string.sk_color_theme_yellow;
|
case YELLOW -> R.string.sk_color_theme_yellow;
|
||||||
|
case MATERIAL3 -> R.string.sk_color_theme_material_you;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -842,10 +853,10 @@ public class SettingsFragment extends MastodonToolbarFragment{
|
|||||||
if (state == GithubSelfUpdater.UpdateState.CHECKING) return;
|
if (state == GithubSelfUpdater.UpdateState.CHECKING) return;
|
||||||
GithubSelfUpdater.UpdateInfo info=updater.getUpdateInfo();
|
GithubSelfUpdater.UpdateInfo info=updater.getUpdateInfo();
|
||||||
if(state!=GithubSelfUpdater.UpdateState.DOWNLOADED){
|
if(state!=GithubSelfUpdater.UpdateState.DOWNLOADED){
|
||||||
text.setText(getString(R.string.sk_update_available, info.version));
|
text.setText(getString(R.string.update_available, info.version));
|
||||||
button.setText(getString(R.string.download_update, UiUtils.formatFileSize(getActivity(), info.size, false)));
|
button.setText(getString(R.string.download_update, UiUtils.formatFileSize(getActivity(), info.size, false)));
|
||||||
}else{
|
}else{
|
||||||
text.setText(getString(R.string.sk_update_ready, info.version));
|
text.setText(getString(R.string.update_ready, info.version));
|
||||||
button.setText(R.string.install_update);
|
button.setText(R.string.install_update);
|
||||||
}
|
}
|
||||||
if(state==GithubSelfUpdater.UpdateState.DOWNLOADING){
|
if(state==GithubSelfUpdater.UpdateState.DOWNLOADING){
|
||||||
|
|||||||
@@ -106,13 +106,13 @@ public class InstanceChooserLoginFragment extends InstanceCatalogFragment{
|
|||||||
.execNoAuth("");
|
.execNoAuth("");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
// @Override
|
||||||
protected void onUpdateToolbar(){
|
// protected void onUpdateToolbar(){
|
||||||
super.onUpdateToolbar();
|
// super.onUpdateToolbar();
|
||||||
Toolbar toolbar=getToolbar();
|
// Toolbar toolbar=getToolbar();
|
||||||
toolbar.setElevation(0);
|
// toolbar.setElevation(0);
|
||||||
toolbar.setBackground(null);
|
// toolbar.setBackground(null);
|
||||||
}
|
// }
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected RecyclerView.Adapter getAdapter(){
|
protected RecyclerView.Adapter getAdapter(){
|
||||||
|
|||||||
@@ -40,6 +40,7 @@ public class Status extends BaseModel implements DisplayItemsParent{
|
|||||||
public long favouritesCount;
|
public long favouritesCount;
|
||||||
public long repliesCount;
|
public long repliesCount;
|
||||||
public Instant editedAt;
|
public Instant editedAt;
|
||||||
|
public boolean wantsTranslation;
|
||||||
|
|
||||||
public String url;
|
public String url;
|
||||||
public String inReplyToId;
|
public String inReplyToId;
|
||||||
|
|||||||
@@ -0,0 +1,146 @@
|
|||||||
|
package org.joinmastodon.android.model;
|
||||||
|
|
||||||
|
import org.joinmastodon.android.GlobalUserPreferences;
|
||||||
|
import org.joinmastodon.android.api.ObjectValidationException;
|
||||||
|
import org.joinmastodon.android.api.RequiredField;
|
||||||
|
import org.joinmastodon.android.events.StatusCountersUpdatedEvent;
|
||||||
|
import org.joinmastodon.android.ui.text.HtmlParser;
|
||||||
|
import org.parceler.Parcel;
|
||||||
|
|
||||||
|
import java.time.Instant;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Parcel
|
||||||
|
public class StatusTranslation extends BaseModel implements DisplayItemsParent{
|
||||||
|
// @RequiredField
|
||||||
|
public String id;
|
||||||
|
// @RequiredField
|
||||||
|
public String uri;
|
||||||
|
// @RequiredField
|
||||||
|
public Instant createdAt;
|
||||||
|
// @RequiredField
|
||||||
|
public Account account;
|
||||||
|
// @RequiredField
|
||||||
|
public String content;
|
||||||
|
// @RequiredField
|
||||||
|
public StatusPrivacy visibility;
|
||||||
|
public boolean sensitive;
|
||||||
|
// @RequiredField
|
||||||
|
public String spoilerText;
|
||||||
|
// @RequiredField
|
||||||
|
public List<Attachment> mediaAttachments;
|
||||||
|
public Application application;
|
||||||
|
// @RequiredField
|
||||||
|
public List<Mention> mentions;
|
||||||
|
// @RequiredField
|
||||||
|
public List<Hashtag> tags;
|
||||||
|
// @RequiredField
|
||||||
|
public List<Emoji> emojis;
|
||||||
|
public long reblogsCount;
|
||||||
|
public long favouritesCount;
|
||||||
|
public long repliesCount;
|
||||||
|
public Instant editedAt;
|
||||||
|
|
||||||
|
public String url;
|
||||||
|
public String inReplyToId;
|
||||||
|
public String inReplyToAccountId;
|
||||||
|
public Status reblog;
|
||||||
|
public Poll poll;
|
||||||
|
public Card card;
|
||||||
|
public String language;
|
||||||
|
public String text;
|
||||||
|
|
||||||
|
public boolean favourited;
|
||||||
|
public boolean reblogged;
|
||||||
|
public boolean muted;
|
||||||
|
public boolean bookmarked;
|
||||||
|
public boolean pinned;
|
||||||
|
|
||||||
|
public transient boolean spoilerRevealed;
|
||||||
|
public transient boolean hasGapAfter;
|
||||||
|
private transient String strippedText;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void postprocess() throws ObjectValidationException{
|
||||||
|
super.postprocess();
|
||||||
|
// if(application!=null)
|
||||||
|
// application.postprocess();
|
||||||
|
// for(Mention m:mentions)
|
||||||
|
// m.postprocess();
|
||||||
|
// for(Hashtag t:tags)
|
||||||
|
// t.postprocess();
|
||||||
|
// for(Emoji e:emojis)
|
||||||
|
// e.postprocess();
|
||||||
|
// for(Attachment a:mediaAttachments)
|
||||||
|
// a.postprocess();
|
||||||
|
// account.postprocess();
|
||||||
|
// if(poll!=null)
|
||||||
|
// poll.postprocess();
|
||||||
|
// if(card!=null)
|
||||||
|
// card.postprocess();
|
||||||
|
// if(reblog!=null)
|
||||||
|
// reblog.postprocess();
|
||||||
|
|
||||||
|
// spoilerRevealed=GlobalUserPreferences.alwaysExpandContentWarnings || !sensitive;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString(){
|
||||||
|
return "Status{"+
|
||||||
|
"id='"+id+'\''+
|
||||||
|
", uri='"+uri+'\''+
|
||||||
|
", createdAt="+createdAt+
|
||||||
|
", account="+account+
|
||||||
|
", content='"+content+'\''+
|
||||||
|
", visibility="+visibility+
|
||||||
|
", sensitive="+sensitive+
|
||||||
|
", spoilerText='"+spoilerText+'\''+
|
||||||
|
", mediaAttachments="+mediaAttachments+
|
||||||
|
", application="+application+
|
||||||
|
", mentions="+mentions+
|
||||||
|
", tags="+tags+
|
||||||
|
", emojis="+emojis+
|
||||||
|
", reblogsCount="+reblogsCount+
|
||||||
|
", favouritesCount="+favouritesCount+
|
||||||
|
", repliesCount="+repliesCount+
|
||||||
|
", url='"+url+'\''+
|
||||||
|
", inReplyToId='"+inReplyToId+'\''+
|
||||||
|
", inReplyToAccountId='"+inReplyToAccountId+'\''+
|
||||||
|
", reblog="+reblog+
|
||||||
|
", poll="+poll+
|
||||||
|
", card="+card+
|
||||||
|
", language='"+language+'\''+
|
||||||
|
", text='"+text+'\''+
|
||||||
|
", favourited="+favourited+
|
||||||
|
", reblogged="+reblogged+
|
||||||
|
", muted="+muted+
|
||||||
|
", bookmarked="+bookmarked+
|
||||||
|
", pinned="+pinned+
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getID(){
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void update(StatusCountersUpdatedEvent ev){
|
||||||
|
favouritesCount=ev.favorites;
|
||||||
|
reblogsCount=ev.reblogs;
|
||||||
|
repliesCount=ev.replies;
|
||||||
|
favourited=ev.favorited;
|
||||||
|
reblogged=ev.reblogged;
|
||||||
|
bookmarked=ev.bookmarked;
|
||||||
|
pinned=ev.pinned;
|
||||||
|
}
|
||||||
|
|
||||||
|
public StatusTranslation getContentStatus(){
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getStrippedText(){
|
||||||
|
if(strippedText==null)
|
||||||
|
strippedText=HtmlParser.strip(content);
|
||||||
|
return strippedText;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -23,6 +23,7 @@ import org.joinmastodon.android.GlobalUserPreferences;
|
|||||||
import org.joinmastodon.android.R;
|
import org.joinmastodon.android.R;
|
||||||
import org.joinmastodon.android.api.requests.accounts.GetAccountRelationships;
|
import org.joinmastodon.android.api.requests.accounts.GetAccountRelationships;
|
||||||
import org.joinmastodon.android.api.requests.statuses.GetStatusSourceText;
|
import org.joinmastodon.android.api.requests.statuses.GetStatusSourceText;
|
||||||
|
import org.joinmastodon.android.api.requests.statuses.GetStatusTranslation;
|
||||||
import org.joinmastodon.android.api.session.AccountSessionManager;
|
import org.joinmastodon.android.api.session.AccountSessionManager;
|
||||||
import org.joinmastodon.android.fragments.BaseStatusListFragment;
|
import org.joinmastodon.android.fragments.BaseStatusListFragment;
|
||||||
import org.joinmastodon.android.fragments.ComposeFragment;
|
import org.joinmastodon.android.fragments.ComposeFragment;
|
||||||
@@ -33,6 +34,7 @@ import org.joinmastodon.android.model.Account;
|
|||||||
import org.joinmastodon.android.model.Attachment;
|
import org.joinmastodon.android.model.Attachment;
|
||||||
import org.joinmastodon.android.model.Relationship;
|
import org.joinmastodon.android.model.Relationship;
|
||||||
import org.joinmastodon.android.model.Status;
|
import org.joinmastodon.android.model.Status;
|
||||||
|
import org.joinmastodon.android.model.StatusTranslation;
|
||||||
import org.joinmastodon.android.ui.text.HtmlParser;
|
import org.joinmastodon.android.ui.text.HtmlParser;
|
||||||
import org.joinmastodon.android.ui.utils.CustomEmojiHelper;
|
import org.joinmastodon.android.ui.utils.CustomEmojiHelper;
|
||||||
import org.joinmastodon.android.ui.utils.UiUtils;
|
import org.joinmastodon.android.ui.utils.UiUtils;
|
||||||
@@ -60,6 +62,7 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{
|
|||||||
private SpannableStringBuilder parsedName;
|
private SpannableStringBuilder parsedName;
|
||||||
public final Status status;
|
public final Status status;
|
||||||
private boolean hasVisibilityToggle;
|
private boolean hasVisibilityToggle;
|
||||||
|
private boolean hasTranslateToggle;
|
||||||
boolean needBottomPadding;
|
boolean needBottomPadding;
|
||||||
private String extraText;
|
private String extraText;
|
||||||
|
|
||||||
@@ -74,6 +77,7 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{
|
|||||||
HtmlParser.parseCustomEmoji(parsedName, user.emojis);
|
HtmlParser.parseCustomEmoji(parsedName, user.emojis);
|
||||||
emojiHelper.setText(parsedName);
|
emojiHelper.setText(parsedName);
|
||||||
if(status!=null){
|
if(status!=null){
|
||||||
|
hasTranslateToggle=true;
|
||||||
hasVisibilityToggle=status.sensitive || !TextUtils.isEmpty(status.spoilerText);
|
hasVisibilityToggle=status.sensitive || !TextUtils.isEmpty(status.spoilerText);
|
||||||
if(!hasVisibilityToggle && !status.mediaAttachments.isEmpty()){
|
if(!hasVisibilityToggle && !status.mediaAttachments.isEmpty()){
|
||||||
for(Attachment att:status.mediaAttachments){
|
for(Attachment att:status.mediaAttachments){
|
||||||
@@ -107,7 +111,7 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{
|
|||||||
|
|
||||||
public static class Holder extends StatusDisplayItem.Holder<HeaderStatusDisplayItem> implements ImageLoaderViewHolder{
|
public static class Holder extends StatusDisplayItem.Holder<HeaderStatusDisplayItem> implements ImageLoaderViewHolder{
|
||||||
private final TextView name, username, timestamp, extraText;
|
private final TextView name, username, timestamp, extraText;
|
||||||
private final ImageView avatar, more, visibility;
|
private final ImageView avatar, more, visibility, translate;
|
||||||
private final PopupMenu optionsMenu;
|
private final PopupMenu optionsMenu;
|
||||||
private Relationship relationship;
|
private Relationship relationship;
|
||||||
private APIRequest<?> currentRelationshipRequest;
|
private APIRequest<?> currentRelationshipRequest;
|
||||||
@@ -121,6 +125,7 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{
|
|||||||
|
|
||||||
public Holder(Activity activity, ViewGroup parent){
|
public Holder(Activity activity, ViewGroup parent){
|
||||||
super(activity, R.layout.display_item_header, parent);
|
super(activity, R.layout.display_item_header, parent);
|
||||||
|
translate=findViewById(R.id.translate);
|
||||||
name=findViewById(R.id.name);
|
name=findViewById(R.id.name);
|
||||||
username=findViewById(R.id.username);
|
username=findViewById(R.id.username);
|
||||||
timestamp=findViewById(R.id.timestamp);
|
timestamp=findViewById(R.id.timestamp);
|
||||||
@@ -133,6 +138,7 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{
|
|||||||
avatar.setClipToOutline(true);
|
avatar.setClipToOutline(true);
|
||||||
more.setOnClickListener(this::onMoreClick);
|
more.setOnClickListener(this::onMoreClick);
|
||||||
visibility.setOnClickListener(v->item.parentFragment.onVisibilityIconClick(this));
|
visibility.setOnClickListener(v->item.parentFragment.onVisibilityIconClick(this));
|
||||||
|
translate.setOnClickListener(v->item.parentFragment.onRevealTranslationClick(this));
|
||||||
|
|
||||||
optionsMenu=new PopupMenu(activity, more);
|
optionsMenu=new PopupMenu(activity, more);
|
||||||
optionsMenu.inflate(R.menu.post);
|
optionsMenu.inflate(R.menu.post);
|
||||||
@@ -226,6 +232,7 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{
|
|||||||
else
|
else
|
||||||
timestamp.setText(item.parentFragment.getString(R.string.edited_timestamp, UiUtils.formatRelativeTimestamp(itemView.getContext(), item.status.editedAt)));
|
timestamp.setText(item.parentFragment.getString(R.string.edited_timestamp, UiUtils.formatRelativeTimestamp(itemView.getContext(), item.status.editedAt)));
|
||||||
visibility.setVisibility(item.hasVisibilityToggle && !item.inset ? View.VISIBLE : View.GONE);
|
visibility.setVisibility(item.hasVisibilityToggle && !item.inset ? View.VISIBLE : View.GONE);
|
||||||
|
translate.setVisibility(item.hasTranslateToggle ? View.VISIBLE : View.GONE);
|
||||||
if(item.hasVisibilityToggle){
|
if(item.hasVisibilityToggle){
|
||||||
visibility.setImageResource(item.status.spoilerRevealed ? R.drawable.ic_visibility_off : R.drawable.ic_visibility);
|
visibility.setImageResource(item.status.spoilerRevealed ? R.drawable.ic_visibility_off : R.drawable.ic_visibility);
|
||||||
visibility.setContentDescription(item.parentFragment.getString(item.status.spoilerRevealed ? R.string.hide_content : R.string.reveal_content));
|
visibility.setContentDescription(item.parentFragment.getString(item.status.spoilerRevealed ? R.string.hide_content : R.string.reveal_content));
|
||||||
@@ -233,6 +240,9 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{
|
|||||||
visibility.setTooltipText(visibility.getContentDescription());
|
visibility.setTooltipText(visibility.getContentDescription());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(item.hasTranslateToggle){
|
||||||
|
translate.setImageResource(item.status.wantsTranslation ? R.drawable.ic_translate_on : R.drawable.ic_translate_off);
|
||||||
|
}
|
||||||
itemView.setPadding(itemView.getPaddingLeft(), itemView.getPaddingTop(), itemView.getPaddingRight(), item.needBottomPadding ? V.dp(16) : 0);
|
itemView.setPadding(itemView.getPaddingLeft(), itemView.getPaddingTop(), itemView.getPaddingRight(), item.needBottomPadding ? V.dp(16) : 0);
|
||||||
if(TextUtils.isEmpty(item.extraText)){
|
if(TextUtils.isEmpty(item.extraText)){
|
||||||
extraText.setVisibility(View.GONE);
|
extraText.setVisibility(View.GONE);
|
||||||
|
|||||||
@@ -8,17 +8,22 @@ import android.text.TextUtils;
|
|||||||
import android.util.TypedValue;
|
import android.util.TypedValue;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
import android.widget.Button;
|
||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
import org.joinmastodon.android.R;
|
import org.joinmastodon.android.R;
|
||||||
|
import org.joinmastodon.android.api.requests.statuses.GetStatusTranslation;
|
||||||
import org.joinmastodon.android.fragments.BaseStatusListFragment;
|
import org.joinmastodon.android.fragments.BaseStatusListFragment;
|
||||||
import org.joinmastodon.android.model.Status;
|
import org.joinmastodon.android.model.Status;
|
||||||
|
import org.joinmastodon.android.model.StatusTranslation;
|
||||||
import org.joinmastodon.android.ui.drawables.SpoilerStripesDrawable;
|
import org.joinmastodon.android.ui.drawables.SpoilerStripesDrawable;
|
||||||
import org.joinmastodon.android.ui.text.HtmlParser;
|
import org.joinmastodon.android.ui.text.HtmlParser;
|
||||||
import org.joinmastodon.android.ui.utils.CustomEmojiHelper;
|
import org.joinmastodon.android.ui.utils.CustomEmojiHelper;
|
||||||
import org.joinmastodon.android.ui.views.LinkedTextView;
|
import org.joinmastodon.android.ui.views.LinkedTextView;
|
||||||
|
|
||||||
|
import me.grishka.appkit.api.Callback;
|
||||||
|
import me.grishka.appkit.api.ErrorResponse;
|
||||||
import me.grishka.appkit.imageloader.ImageLoaderViewHolder;
|
import me.grishka.appkit.imageloader.ImageLoaderViewHolder;
|
||||||
import me.grishka.appkit.imageloader.MovieDrawable;
|
import me.grishka.appkit.imageloader.MovieDrawable;
|
||||||
import me.grishka.appkit.imageloader.requests.ImageLoaderRequest;
|
import me.grishka.appkit.imageloader.requests.ImageLoaderRequest;
|
||||||
@@ -35,6 +40,7 @@ public class TextStatusDisplayItem extends StatusDisplayItem{
|
|||||||
super(parentID, parentFragment);
|
super(parentID, parentFragment);
|
||||||
this.text=text;
|
this.text=text;
|
||||||
this.status=status;
|
this.status=status;
|
||||||
|
// this.wantsTranslation=wantsTranslation;
|
||||||
emojiHelper.setText(text);
|
emojiHelper.setText(text);
|
||||||
if(!TextUtils.isEmpty(status.spoilerText)){
|
if(!TextUtils.isEmpty(status.spoilerText)){
|
||||||
parsedSpoilerText=HtmlParser.parseCustomEmoji(status.spoilerText, status.emojis);
|
parsedSpoilerText=HtmlParser.parseCustomEmoji(status.spoilerText, status.emojis);
|
||||||
@@ -91,7 +97,26 @@ public class TextStatusDisplayItem extends StatusDisplayItem{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBind(TextStatusDisplayItem item){
|
public void onBind(TextStatusDisplayItem item){
|
||||||
text.setText(item.text);
|
if(item.status.wantsTranslation){
|
||||||
|
new GetStatusTranslation(item.status.id)
|
||||||
|
.setCallback(new Callback<StatusTranslation>(){
|
||||||
|
@Override
|
||||||
|
public void onSuccess(StatusTranslation status){
|
||||||
|
text.setText(status.getStrippedText());
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void onError(ErrorResponse error){
|
||||||
|
item.status.wantsTranslation=false;
|
||||||
|
text.setText(item.text);
|
||||||
|
error.showToast(item.parentFragment.getActivity());
|
||||||
|
}
|
||||||
|
|
||||||
|
})
|
||||||
|
.wrapProgress(item.parentFragment.getActivity(), R.string.loading, true)
|
||||||
|
.exec(item.parentFragment.getAccountID());
|
||||||
|
}else{
|
||||||
|
text.setText(item.text);
|
||||||
|
}
|
||||||
text.setTextIsSelectable(item.textSelectable);
|
text.setTextIsSelectable(item.textSelectable);
|
||||||
spoilerTitleInline.setTextIsSelectable(item.textSelectable);
|
spoilerTitleInline.setTextIsSelectable(item.textSelectable);
|
||||||
text.setInvalidateOnEveryFrame(false);
|
text.setInvalidateOnEveryFrame(false);
|
||||||
|
|||||||
@@ -698,14 +698,14 @@ public class UiUtils{
|
|||||||
GlobalUserPreferences.trueBlackTheme ? R.style.Theme_Mastodon_Dark_TrueBlack_Blue : R.style.Theme_Mastodon_Dark_Blue;
|
GlobalUserPreferences.trueBlackTheme ? R.style.Theme_Mastodon_Dark_TrueBlack_Blue : R.style.Theme_Mastodon_Dark_Blue;
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
case BROWN:
|
case ORANGE:
|
||||||
context.setTheme(switch(GlobalUserPreferences.theme){
|
context.setTheme(switch(GlobalUserPreferences.theme){
|
||||||
case AUTO ->
|
case AUTO ->
|
||||||
GlobalUserPreferences.trueBlackTheme ? R.style.Theme_Mastodon_AutoLightDark_TrueBlack_Brown : R.style.Theme_Mastodon_AutoLightDark_Brown;
|
GlobalUserPreferences.trueBlackTheme ? R.style.Theme_Mastodon_AutoLightDark_TrueBlack_Orange : R.style.Theme_Mastodon_AutoLightDark_Orange;
|
||||||
case LIGHT ->
|
case LIGHT ->
|
||||||
R.style.Theme_Mastodon_Light_Brown;
|
R.style.Theme_Mastodon_Light_Orange;
|
||||||
case DARK ->
|
case DARK ->
|
||||||
GlobalUserPreferences.trueBlackTheme ? R.style.Theme_Mastodon_Dark_TrueBlack_Brown : R.style.Theme_Mastodon_Dark_Brown;
|
GlobalUserPreferences.trueBlackTheme ? R.style.Theme_Mastodon_Dark_TrueBlack_Orange : R.style.Theme_Mastodon_Dark_Orange;
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
case YELLOW:
|
case YELLOW:
|
||||||
@@ -718,6 +718,16 @@ public class UiUtils{
|
|||||||
GlobalUserPreferences.trueBlackTheme ? R.style.Theme_Mastodon_Dark_TrueBlack_Yellow : R.style.Theme_Mastodon_Dark_Yellow;
|
GlobalUserPreferences.trueBlackTheme ? R.style.Theme_Mastodon_Dark_TrueBlack_Yellow : R.style.Theme_Mastodon_Dark_Yellow;
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
|
case MATERIAL3:
|
||||||
|
context.setTheme(switch(GlobalUserPreferences.theme){
|
||||||
|
case AUTO ->
|
||||||
|
GlobalUserPreferences.trueBlackTheme ? R.style.Theme_Mastodon_AutoLightDark_TrueBlack_Material3 : R.style.Theme_Mastodon_AutoLightDark_Material3;
|
||||||
|
case LIGHT ->
|
||||||
|
R.style.Theme_Mastodon_Light_Material3;
|
||||||
|
case DARK ->
|
||||||
|
GlobalUserPreferences.trueBlackTheme ? R.style.Theme_Mastodon_Dark_TrueBlack_Material3 : R.style.Theme_Mastodon_Dark_Material3;
|
||||||
|
});
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<item android:color="@color/gray_25" android:state_enabled="true"/>
|
<item android:color="?colorBackgroundLightest" android:state_enabled="true"/>
|
||||||
<item android:color="@color/gray_100"/>
|
<item android:color="?android:colorBackground"/>
|
||||||
</selector>
|
</selector>
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<item android:color="?colorButtonText" android:state_enabled="true"/>
|
<item android:color="@color/black" android:state_enabled="true"/>
|
||||||
<item android:color="?colorTabInactive"/>
|
<item android:color="?colorTabInactive"/>
|
||||||
</selector>
|
</selector>
|
||||||
22
mastodon/src/main/res/drawable-anydpi-v24/ic_ntf_logo.xml
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:aapt="http://schemas.android.com/aapt"
|
||||||
|
android:width="24dp"
|
||||||
|
android:height="24dp"
|
||||||
|
android:viewportWidth="24"
|
||||||
|
android:viewportHeight="24"
|
||||||
|
android:tint="#FFFFFF">
|
||||||
|
<group android:scaleX="0.9699526"
|
||||||
|
android:scaleY="0.9699526"
|
||||||
|
android:translateX="0.96"
|
||||||
|
android:translateY="6.925208">
|
||||||
|
<path
|
||||||
|
android:pathData="m3.639,-0c-1.097,0 -1.983,0.387 -2.658,1.141 -0.655,0.754 -0.981,1.771 -0.981,3.053l0,6.27L2.482,10.464L2.482,4.378c0,-1.284 0.539,-1.935 1.618,-1.935 1.192,0 1.791,0.773 1.791,2.3l0,3.331l2.468,0l0,-3.331c0,-1.527 0.598,-2.3 1.791,-2.3 1.078,0 1.618,0.651 1.618,1.935l0,6.085l2.482,0l0,-6.27c0,-1.281 -0.326,-2.299 -0.981,-3.053 -0.676,-0.754 -1.56,-1.141 -2.658,-1.141 -1.27,0 -2.232,0.488 -2.868,1.466L7.125,2.504 6.506,1.466C5.87,0.488 4.909,-0 3.639,-0Z"
|
||||||
|
android:strokeWidth="0.796"
|
||||||
|
android:fillColor="#000000"/>
|
||||||
|
<path
|
||||||
|
android:pathData="m18.947,10.464q-1.113,0 -1.986,-0.493 -0.873,-0.507 -1.366,-1.366 -0.479,-0.873 -0.479,-1.958 0,-1.07 0.479,-1.944 0.493,-0.873 1.366,-1.366 0.873,-0.507 1.986,-0.507 1.099,0 1.972,0.507 0.873,0.493 1.352,1.366 0.493,0.873 0.493,1.944 0,1.085 -0.493,1.958 -0.479,0.859 -1.352,1.366 -0.873,0.493 -1.972,0.493zM18.947,8.759q0.535,0 0.986,-0.254 0.451,-0.254 0.718,-0.732 0.268,-0.479 0.268,-1.127 0,-0.634 -0.268,-1.113 -0.268,-0.479 -0.718,-0.732 -0.451,-0.254 -0.986,-0.254 -0.535,0 -0.986,0.254 -0.451,0.254 -0.732,0.732 -0.268,0.479 -0.268,1.113 0,0.634 0.268,1.127 0.282,0.479 0.732,0.732 0.451,0.254 0.986,0.254z"
|
||||||
|
android:strokeWidth="0.687"
|
||||||
|
android:fillColor="#000000"
|
||||||
|
android:strokeColor="#00000000"/>
|
||||||
|
</group>
|
||||||
|
</vector>
|
||||||
BIN
mastodon/src/main/res/drawable-hdpi/ic_ntf_logo.png
Normal file
|
After Width: | Height: | Size: 405 B |
BIN
mastodon/src/main/res/drawable-mdpi/ic_ntf_logo.png
Normal file
|
After Width: | Height: | Size: 295 B |
BIN
mastodon/src/main/res/drawable-xhdpi/ic_ntf_logo.png
Normal file
|
After Width: | Height: | Size: 567 B |
BIN
mastodon/src/main/res/drawable-xxhdpi/ic_ntf_logo.png
Normal file
|
After Width: | Height: | Size: 902 B |
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<solid android:color="@color/gray_800"/>
|
<solid android:color="?colorWindowBackground"/>
|
||||||
<corners android:radius="10dp"/>
|
<corners android:radius="10dp"/>
|
||||||
<padding android:top="16dp" android:left="16dp" android:right="16dp" android:bottom="16dp"/>
|
<padding android:top="16dp" android:left="16dp" android:right="16dp" android:bottom="16dp"/>
|
||||||
</shape>
|
</shape>
|
||||||
23
mastodon/src/main/res/drawable/ic_color_theme_preference.xml
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
|
||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="24dp"
|
||||||
|
android:height="24dp"
|
||||||
|
android:viewportWidth="24"
|
||||||
|
android:viewportHeight="24">
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M12,22C6.49,22 2,17.51 2,12S6.49,2 12,2s10,4.04 10,9c0,3.31 -2.69,6 -6,6h-1.77c-0.28,0 -0.5,0.22 -0.5,0.5 0,0.12 0.05,0.23 0.13,0.33 0.41,0.47 0.64,1.06 0.64,1.67 0,1.38 -1.12,2.5 -2.5,2.5zM12,4c-4.41,0 -8,3.59 -8,8s3.59,8 8,8c0.28,0 0.5,-0.22 0.5,-0.5 0,-0.16 -0.08,-0.28 -0.14,-0.35 -0.41,-0.46 -0.63,-1.05 -0.63,-1.65 0,-1.38 1.12,-2.5 2.5,-2.5L16,15c2.21,0 4,-1.79 4,-4 0,-3.86 -3.59,-7 -8,-7z"/>
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M6.5,11.5m-1.5,0a1.5,1.5 0,1 1,3 0a1.5,1.5 0,1 1,-3 0"/>
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M9.5,7.5m-1.5,0a1.5,1.5 0,1 1,3 0a1.5,1.5 0,1 1,-3 0"/>
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M14.5,7.5m-1.5,0a1.5,1.5 0,1 1,3 0a1.5,1.5 0,1 1,-3 0"/>
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M17.5,11.5m-1.5,0a1.5,1.5 0,1 1,3 0a1.5,1.5 0,1 1,-3 0"/>
|
||||||
|
</vector>
|
||||||
74
mastodon/src/main/res/drawable/ic_launcher_background.xml
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<vector
|
||||||
|
android:height="108dp"
|
||||||
|
android:width="108dp"
|
||||||
|
android:viewportHeight="108"
|
||||||
|
android:viewportWidth="108"
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
<path android:fillColor="#3DDC84"
|
||||||
|
android:pathData="M0,0h108v108h-108z"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M9,0L9,108"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M19,0L19,108"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M29,0L29,108"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M39,0L39,108"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M49,0L49,108"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M59,0L59,108"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M69,0L69,108"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M79,0L79,108"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M89,0L89,108"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M99,0L99,108"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M0,9L108,9"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M0,19L108,19"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M0,29L108,29"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M0,39L108,39"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M0,49L108,49"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M0,59L108,59"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M0,69L108,69"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M0,79L108,79"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M0,89L108,89"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M0,99L108,99"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M19,29L89,29"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M19,39L89,39"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M19,49L89,49"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M19,59L89,59"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M19,69L89,69"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M19,79L89,79"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M29,19L29,89"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M39,19L39,89"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M49,19L49,89"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M59,19L59,89"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M69,19L69,89"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
<path android:fillColor="#00000000" android:pathData="M79,19L79,89"
|
||||||
|
android:strokeColor="#33FFFFFF" android:strokeWidth="0.8"/>
|
||||||
|
</vector>
|
||||||
23
mastodon/src/main/res/drawable/ic_launcher_foreground.xml
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:aapt="http://schemas.android.com/aapt"
|
||||||
|
android:width="108dp"
|
||||||
|
android:height="108dp"
|
||||||
|
android:viewportWidth="108"
|
||||||
|
android:viewportHeight="108">
|
||||||
|
<group android:scaleX="2.5091188"
|
||||||
|
android:scaleY="2.5091188">
|
||||||
|
<path
|
||||||
|
android:pathData="M0,0h43.043v43.043h-43.043z"
|
||||||
|
android:strokeWidth="1.53886"
|
||||||
|
android:fillColor="#282c37"/>
|
||||||
|
<path
|
||||||
|
android:pathData="m13.779,16.29c-1.097,0 -1.983,0.387 -2.658,1.141 -0.655,0.754 -0.981,1.771 -0.981,3.053l0,6.27L12.622,26.754L12.622,20.668c0,-1.284 0.539,-1.935 1.618,-1.935 1.192,0 1.791,0.773 1.791,2.3l0,3.331l2.468,0l0,-3.331c0,-1.527 0.598,-2.3 1.791,-2.3 1.078,0 1.618,0.651 1.618,1.935l0,6.085l2.482,0l0,-6.27c0,-1.281 -0.326,-2.299 -0.981,-3.053 -0.676,-0.754 -1.56,-1.141 -2.658,-1.141 -1.27,0 -2.232,0.488 -2.868,1.466L17.265,18.794 16.646,17.756C16.01,16.778 15.049,16.29 13.779,16.29Z"
|
||||||
|
android:strokeWidth="0.796"
|
||||||
|
android:fillColor="#eed7f4"/>
|
||||||
|
<path
|
||||||
|
android:pathData="m29.087,26.754q-1.113,0 -1.986,-0.493 -0.873,-0.507 -1.366,-1.366 -0.479,-0.873 -0.479,-1.958 0,-1.07 0.479,-1.944 0.493,-0.873 1.366,-1.366 0.873,-0.507 1.986,-0.507 1.099,0 1.972,0.507 0.873,0.493 1.352,1.366 0.493,0.873 0.493,1.944 0,1.085 -0.493,1.958 -0.479,0.859 -1.352,1.366 -0.873,0.493 -1.972,0.493zM29.087,25.049q0.535,0 0.986,-0.254 0.451,-0.254 0.718,-0.732 0.268,-0.479 0.268,-1.127 0,-0.634 -0.268,-1.113 -0.268,-0.479 -0.718,-0.732 -0.451,-0.254 -0.986,-0.254 -0.535,0 -0.986,0.254 -0.451,0.254 -0.732,0.732 -0.268,0.479 -0.268,1.113 0,0.634 0.268,1.127 0.282,0.479 0.732,0.732 0.451,0.254 0.986,0.254z"
|
||||||
|
android:strokeWidth="0.687"
|
||||||
|
android:fillColor="#eed7f4"
|
||||||
|
android:strokeColor="#00000000"/>
|
||||||
|
</group>
|
||||||
|
</vector>
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
<vector android:height="24dp" android:viewportHeight="320"
|
|
||||||
android:viewportWidth="320" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
|
||||||
<group android:rotation="90" android:translateX="304" android:translateY="16" android:scaleX=".9" android:scaleY=".9">
|
|
||||||
<clip-path android:pathData="M0,0 0,320 320,320 320,0">
|
|
||||||
<path android:fillColor="#fff" android:pathData="M331.17,455.15c-0.9,-16.19 -2.47,-32.4 -4,-48.56 -0.18,-1.83 -0.35,-3.66 -0.53,-5.49 0,-0.4 -0.07,-0.79 -0.11,-1.19 -0.23,-2.39 -0.45,-4.79 -0.67,-7.18q-1.17,-12.75 -2.2,-25.6c-1,-12.83 -2,-25.72 -3,-38.63q-0.5,-6.45 -1,-12.91c-1.36,-17.23 -2.81,-34.48 -4.56,-51.69 -2.47,-24.15 -5.54,-48.22 -9.8,-72a13.13,13.13 0,0 0,-2 1c-18.27,11.86 -31.15,63.65 -38.89,82.19a2.7,2.7 0,0 1,-5.18 -0.79c-0.53,-5.37 -0.76,-10.78 -0.77,-16.2v-1.05a303.5,303.5 0,0 1,7.59 -65.79c4.46,-19.78 9.28,-44 23.15,-59.59 0.23,-0.26 1.83,-1.9 1.83,-1.9 -3,-14.17 -14.66,-42.19 -14.67,-42.2a136.07,136.07 0,0 0,-12.61 -25.07C242.82,29.09 204.46,0 166.47,0a70.43,70.43 0,0 0,-16.56 1.94c-39.17,9.42 -70.55,53.52 -88.75,87C40.69,126.5 29.93,168.34 20.1,209.72 5.32,271.87 -2.82,335.37 -8.77,398.91 -13.67,451.32 -30.7,510 22.87,541.51c24.5,14.41 53.18,23.56 81.15,28.16a213.92,213.92 0,0 0,34.86 2.51c10.31,0 20.64,-0.47 30.93,-0.95l108.72,-5c1.57,-0.07 3.2,-0.12 4.83,-0.12 8.69,0 17.78,1.42 22.39,8.4 0.55,-5.81 -4.53,-15.25 -10.6,-25.33l12.44,-2.81c0.31,-10 1.32,-17.53 5.46,-11.76 2,2.84 4.78,6 8.24,5.55 4.06,-0.49 5.79,-5.35 6.52,-9.37C332.36,505.83 332.59,480.52 331.17,455.15ZM168.3,538.52c-9.72,0.45 -19.77,0.91 -29.42,0.91a180.1,180.1 0,0 1,-29.54 -2.07C83.06,533 58.9,524.71 39.48,513.28c-12.37,-7.27 -18.39,-16 -20.79,-30 -2.74,-16 -0.24,-36.07 2.41,-57.29 1,-7.83 2,-15.93 2.74,-24C30.92,326.23 39.59,269.28 52,217.29c9.57,-40.22 19.67,-79.12 38,-112.74 21.38,-39.27 46.67,-65.73 67.64,-70.77a37.8,37.8 0,0 1,8.91 -1c14.5,0 31.71,7.73 47.22,21.2C228.67,67 240.3,83.72 245,99c-11.69,29.46 -22.95,68.57 -27.31,96.85C206,271.74 198.13,413.31 201.13,537Z"/>
|
|
||||||
<path android:fillColor="#fff" android:pathData="M177.15,182.12a30.01,18.34 97.5,1 0,7.83 -59.51a30.01,18.34 97.5,1 0,-7.83 59.51z"/>
|
|
||||||
<path android:fillColor="#fff" android:pathData="M0,320 320,320 288,288 32,288"/>
|
|
||||||
</clip-path>
|
|
||||||
</group>
|
|
||||||
</vector>
|
|
||||||
5
mastodon/src/main/res/drawable/ic_translate_off.xml
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<vector android:height="24dp" android:tint="#000000"
|
||||||
|
android:viewportHeight="24" android:viewportWidth="24"
|
||||||
|
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
<path android:fillColor="?colorSecondary" android:pathData="M12.87,15.07l-2.54,-2.51 0.03,-0.03c1.74,-1.94 2.98,-4.17 3.71,-6.53L17,6L17,4h-7L10,2L8,2v2L1,4v1.99h11.17C11.5,7.92 10.44,9.75 9,11.35 8.07,10.32 7.3,9.19 6.69,8h-2c0.73,1.63 1.73,3.17 2.98,4.56l-5.09,5.02L4,19l5,-5 3.11,3.11 0.76,-2.04zM18.5,10h-2L12,22h2l1.12,-3h4.75L21,22h2l-4.5,-12zM15.88,17l1.62,-4.33L19.12,17h-3.24z"/>
|
||||||
|
</vector>
|
||||||
5
mastodon/src/main/res/drawable/ic_translate_on.xml
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<vector android:height="24dp" android:tint="#000000"
|
||||||
|
android:viewportHeight="24" android:viewportWidth="24"
|
||||||
|
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
<path android:fillColor="?colorSecondary" android:pathData="M12.87,15.07l-2.54,-2.51 0.03,-0.03c1.74,-1.94 2.98,-4.17 3.71,-6.53L17,6L17,4h-7L10,2L8,2v2L1,4v1.99h11.17C11.5,7.92 10.44,9.75 9,11.35 8.07,10.32 7.3,9.19 6.69,8h-2c0.73,1.63 1.73,3.17 2.98,4.56l-5.09,5.02L4,19l5,-5 3.11,3.11 0.76,-2.04zM18.5,10h-2L12,22h2l1.12,-3h4.75L21,22h2l-4.5,-12zM15.88,17l1.62,-4.33L19.12,17h-3.24z"/>
|
||||||
|
</vector>
|
||||||
@@ -1,34 +1,31 @@
|
|||||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:width="124.78dp"
|
android:width="109.08dp"
|
||||||
android:height="22.75dp"
|
android:height="18.02dp"
|
||||||
android:viewportWidth="124.78"
|
android:viewportWidth="109.08"
|
||||||
android:viewportHeight="22.75">
|
android:viewportHeight="18.02">
|
||||||
<path
|
<path
|
||||||
android:pathData="m26.16,17.57q-1.82,0 -3.29,-0.84 -1.46,-0.84 -2.3,-2.3 -0.82,-1.49 -0.82,-3.34 0,-1.75 0.82,-3.24 0.82,-1.51 2.26,-2.4 1.44,-0.89 3.22,-0.89 1.9,0 3.26,0.82 1.37,0.82 2.06,2.23 0.72,1.42 0.72,3.14 0,0.55 -0.07,1.06h-9.19q0.24,1.46 1.15,2.23 0.94,0.74 2.23,0.74 1.08,0 1.85,-0.46 0.79,-0.48 1.25,-1.27l2.54,1.25q-1.87,3.26 -5.69,3.26zM29.07,9.58q-0.05,-0.58 -0.43,-1.13 -0.36,-0.58 -1.03,-0.94 -0.65,-0.38 -1.54,-0.38 -1.13,0 -1.94,0.67 -0.79,0.65 -1.15,1.78z"
|
android:pathData="m26.28,18.02q-1.9,0 -3.38,-0.84 -1.49,-0.86 -2.33,-2.33 -0.82,-1.49 -0.82,-3.34 0,-1.82 0.82,-3.31 0.84,-1.49 2.33,-2.33 1.49,-0.86 3.38,-0.86 1.87,0 3.36,0.86 1.49,0.84 2.3,2.33 0.84,1.49 0.84,3.31 0,1.85 -0.84,3.34 -0.82,1.46 -2.3,2.33 -1.49,0.84 -3.36,0.84zM26.28,15.12q0.91,0 1.68,-0.43 0.77,-0.43 1.22,-1.25 0.46,-0.82 0.46,-1.92 0,-1.08 -0.46,-1.9 -0.46,-0.82 -1.22,-1.25 -0.77,-0.43 -1.68,-0.43 -0.91,0 -1.68,0.43 -0.77,0.43 -1.25,1.25 -0.46,0.82 -0.46,1.9 0,1.08 0.46,1.92 0.48,0.82 1.25,1.25 0.77,0.43 1.68,0.43z"
|
||||||
android:fillColor="#282c37"/>
|
android:fillColor="#282c37"/>
|
||||||
<path
|
<path
|
||||||
android:pathData="m40.27,22.75q-2.33,0 -3.86,-1.06 -1.54,-1.03 -2.06,-2.5l2.95,-1.2q0.38,0.91 1.18,1.44 0.79,0.53 1.8,0.53 1.49,0 2.35,-0.91 0.89,-0.91 0.89,-2.59v-0.96h-0.19q-0.58,0.82 -1.51,1.25 -0.94,0.43 -2.14,0.43 -1.51,0 -2.83,-0.77 -1.3,-0.79 -2.09,-2.21 -0.79,-1.44 -0.79,-3.34 0,-1.9 0.79,-3.31 0.79,-1.44 2.09,-2.21 1.32,-0.79 2.83,-0.79 1.2,0 2.14,0.43 0.94,0.43 1.51,1.25h0.19v-1.3h3.02L46.54,16.34q0,1.97 -0.77,3.41 -0.77,1.44 -2.18,2.21 -1.42,0.79 -3.31,0.79zM40.32,14.33q1.32,0 2.26,-0.91 0.94,-0.94 0.94,-2.54 0,-1.66 -0.94,-2.54 -0.91,-0.91 -2.26,-0.91 -1.34,0 -2.28,0.91 -0.94,0.91 -0.94,2.54 0,1.63 0.94,2.54 0.94,0.91 2.28,0.91z"
|
android:pathData="m39.72,18.02q-2.23,0 -3.62,-0.91 -1.37,-0.91 -1.92,-2.38l2.81,-1.22q0.38,0.86 1.08,1.32 0.72,0.43 1.66,0.43 0.86,0 1.44,-0.26 0.58,-0.29 0.58,-0.91 0,-0.6 -0.53,-0.89 -0.53,-0.31 -1.58,-0.55l-1.44,-0.31q-1.49,-0.36 -2.47,-1.3 -0.98,-0.96 -0.98,-2.38 0,-1.06 0.62,-1.9 0.65,-0.84 1.73,-1.3 1.1,-0.46 2.42,-0.46 3.79,0 5.06,2.66l-2.69,1.18q-0.72,-1.3 -2.3,-1.3 -0.82,0 -1.3,0.31 -0.48,0.29 -0.48,0.74 0,0.86 1.63,1.3l1.8,0.43q1.82,0.46 2.74,1.39 0.94,0.94 0.94,2.3 0,1.18 -0.7,2.09 -0.67,0.89 -1.87,1.39 -1.18,0.5 -2.62,0.5z"
|
||||||
android:fillColor="#282c37"/>
|
android:fillColor="#282c37"/>
|
||||||
<path
|
<path
|
||||||
android:pathData="m53.23,17.57q-1.94,0 -3.19,-1.13 -1.25,-1.15 -1.25,-3 0,-1.22 0.65,-2.16 0.65,-0.94 1.78,-1.44 1.13,-0.5 2.5,-0.5 1.9,0 3.24,0.55L56.95,9.36q0,-1.01 -0.77,-1.63 -0.74,-0.62 -2.02,-0.62 -0.86,0 -1.68,0.41 -0.79,0.38 -1.32,1.03l-2.02,-1.58q0.89,-1.15 2.23,-1.78 1.34,-0.62 2.93,-0.62 2.81,0 4.27,1.3 1.46,1.3 1.46,3.79v7.54h-3.1v-1.25h-0.19q-0.55,0.72 -1.46,1.18 -0.89,0.46 -2.06,0.46zM53.98,15.12q1.37,0 2.16,-0.86 0.82,-0.89 0.82,-2.06 -1.22,-0.58 -2.57,-0.58 -2.45,0 -2.45,1.82 0,0.74 0.53,1.22 0.53,0.46 1.51,0.46z"
|
android:pathData="m47.19,0.46h3.14L50.33,4.8l-0.19,2.14h0.19q0.53,-0.86 1.54,-1.39 1.01,-0.53 2.18,-0.53 2.23,0 3.41,1.34 1.2,1.32 1.2,3.67v7.61h-3.14v-7.22q0,-1.18 -0.65,-1.82 -0.62,-0.65 -1.68,-0.65 -1.25,0 -2.06,1.01 -0.79,1.01 -0.79,2.47v6.22h-3.14z"
|
||||||
android:fillColor="#282c37"/>
|
android:fillColor="#282c37"/>
|
||||||
<path
|
<path
|
||||||
android:pathData="m62.95,0h3.14L66.1,17.18h-3.14z"
|
android:pathData="m63.41,4.06q-0.84,0 -1.44,-0.6 -0.6,-0.6 -0.6,-1.44 0,-0.84 0.6,-1.42 0.6,-0.6 1.44,-0.6 0.84,0 1.42,0.6 0.6,0.58 0.6,1.42 0,0.84 -0.6,1.44 -0.58,0.6 -1.42,0.6zM61.83,5.4h3.14L64.97,17.64h-3.14z"
|
||||||
android:fillColor="#282c37"/>
|
android:fillColor="#282c37"/>
|
||||||
<path
|
<path
|
||||||
android:pathData="m74.93,17.57q-1.9,0 -3.38,-0.84 -1.49,-0.86 -2.33,-2.33 -0.82,-1.49 -0.82,-3.34 0,-1.82 0.82,-3.31 0.84,-1.49 2.33,-2.33 1.49,-0.86 3.38,-0.86 1.87,0 3.36,0.86 1.49,0.84 2.3,2.33 0.84,1.49 0.84,3.31 0,1.85 -0.84,3.34 -0.82,1.46 -2.3,2.33 -1.49,0.84 -3.36,0.84zM74.93,14.66q0.91,0 1.68,-0.43 0.77,-0.43 1.22,-1.25 0.46,-0.82 0.46,-1.92 0,-1.08 -0.46,-1.9 -0.46,-0.82 -1.22,-1.25 -0.77,-0.43 -1.68,-0.43 -0.91,0 -1.68,0.43 -0.77,0.43 -1.25,1.25 -0.46,0.82 -0.46,1.9 0,1.08 0.46,1.92 0.48,0.82 1.25,1.25 0.77,0.43 1.68,0.43z"
|
android:pathData="m73.39,18.02q-1.66,0 -3.02,-0.82 -1.34,-0.84 -2.14,-2.3 -0.77,-1.49 -0.77,-3.38 0,-1.87 0.77,-3.36 0.79,-1.49 2.14,-2.3 1.37,-0.84 3.02,-0.84 1.25,0 2.21,0.55 0.96,0.53 1.46,1.32h0.19l-0.19,-1.73L77.07,0.46h3.12L80.19,17.64h-2.93v-1.46h-0.19q-0.48,0.79 -1.46,1.32 -0.96,0.53 -2.21,0.53zM73.92,15.12q0.89,0 1.66,-0.46 0.77,-0.46 1.22,-1.27 0.46,-0.82 0.46,-1.87 0,-1.06 -0.46,-1.87 -0.46,-0.82 -1.22,-1.25 -0.77,-0.46 -1.66,-0.46 -0.86,0 -1.63,0.46 -0.77,0.43 -1.22,1.25 -0.46,0.82 -0.46,1.87 0,1.06 0.46,1.87 0.46,0.82 1.22,1.27 0.77,0.46 1.63,0.46z"
|
||||||
android:fillColor="#282c37"/>
|
android:fillColor="#282c37"/>
|
||||||
<path
|
<path
|
||||||
android:pathData="m89.09,17.57q-1.66,0 -3.02,-0.82 -1.34,-0.84 -2.14,-2.3 -0.77,-1.49 -0.77,-3.38 0,-1.87 0.77,-3.36 0.79,-1.49 2.14,-2.3 1.37,-0.84 3.02,-0.84 1.25,0 2.21,0.55 0.96,0.53 1.46,1.32h0.19l-0.19,-1.73L92.76,0h3.12L95.88,17.18h-2.93v-1.46h-0.19q-0.48,0.79 -1.46,1.32 -0.96,0.53 -2.21,0.53zM89.62,14.66q0.89,0 1.66,-0.46 0.77,-0.46 1.22,-1.27 0.46,-0.82 0.46,-1.87 0,-1.06 -0.46,-1.87 -0.46,-0.82 -1.22,-1.25 -0.77,-0.46 -1.66,-0.46 -0.86,0 -1.63,0.46 -0.77,0.43 -1.22,1.25 -0.46,0.82 -0.46,1.87 0,1.06 0.46,1.87 0.46,0.82 1.22,1.27 0.77,0.46 1.63,0.46z"
|
android:pathData="m89.02,18.02q-1.9,0 -3.38,-0.84 -1.49,-0.86 -2.33,-2.33 -0.82,-1.49 -0.82,-3.34 0,-1.82 0.82,-3.31 0.84,-1.49 2.33,-2.33 1.49,-0.86 3.38,-0.86 1.87,0 3.36,0.86 1.49,0.84 2.3,2.33 0.84,1.49 0.84,3.31 0,1.85 -0.84,3.34 -0.82,1.46 -2.3,2.33 -1.49,0.84 -3.36,0.84zM89.02,15.12q0.91,0 1.68,-0.43 0.77,-0.43 1.22,-1.25 0.46,-0.82 0.46,-1.92 0,-1.08 -0.46,-1.9 -0.46,-0.82 -1.22,-1.25 -0.77,-0.43 -1.68,-0.43 -0.91,0 -1.68,0.43 -0.77,0.43 -1.25,1.25 -0.46,0.82 -0.46,1.9 0,1.08 0.46,1.92 0.48,0.82 1.25,1.25 0.77,0.43 1.68,0.43z"
|
||||||
android:fillColor="#282c37"/>
|
android:fillColor="#282c37"/>
|
||||||
<path
|
<path
|
||||||
android:pathData="m104.72,17.57q-1.9,0 -3.38,-0.84 -1.49,-0.86 -2.33,-2.33 -0.82,-1.49 -0.82,-3.34 0,-1.82 0.82,-3.31 0.84,-1.49 2.33,-2.33 1.49,-0.86 3.38,-0.86 1.87,0 3.36,0.86 1.49,0.84 2.3,2.33 0.84,1.49 0.84,3.31 0,1.85 -0.84,3.34 -0.82,1.46 -2.3,2.33 -1.49,0.84 -3.36,0.84zM104.72,14.66q0.91,0 1.68,-0.43 0.77,-0.43 1.22,-1.25 0.46,-0.82 0.46,-1.92 0,-1.08 -0.46,-1.9 -0.46,-0.82 -1.22,-1.25 -0.77,-0.43 -1.68,-0.43 -0.91,0 -1.68,0.43 -0.77,0.43 -1.25,1.25 -0.46,0.82 -0.46,1.9 0,1.08 0.46,1.92 0.48,0.82 1.25,1.25 0.77,0.43 1.68,0.43z"
|
android:pathData="m97.68,5.4h2.95v1.54h0.19q0.55,-0.89 1.56,-1.39 1.01,-0.53 2.18,-0.53 2.21,0 3.36,1.34 1.15,1.34 1.15,3.67v7.61h-3.14v-7.22q0,-1.18 -0.6,-1.82 -0.6,-0.65 -1.68,-0.65 -1.27,0 -2.06,0.98 -0.77,0.98 -0.77,2.47v6.24h-3.14z"
|
||||||
android:fillColor="#282c37"/>
|
android:fillColor="#282c37"/>
|
||||||
<path
|
<path
|
||||||
android:pathData="m113.38,4.94h2.95v1.54h0.19q0.55,-0.89 1.56,-1.39 1.01,-0.53 2.18,-0.53 2.21,0 3.36,1.34 1.15,1.34 1.15,3.67v7.61h-3.14v-7.22q0,-1.18 -0.6,-1.82 -0.6,-0.65 -1.68,-0.65 -1.27,0 -2.06,0.98 -0.77,0.98 -0.77,2.47v6.24h-3.14z"
|
android:pathData="m4.53,5c-1.37,0 -2.47,0.48 -3.31,1.42C0.41,7.35 0,8.62 0,10.21v7.8h3.09v-7.57c0,-1.6 0.67,-2.41 2.01,-2.41 1.48,0 2.23,0.96 2.23,2.86v4.14h3.07v-4.14c0,-1.9 0.74,-2.86 2.23,-2.86 1.34,0 2.01,0.81 2.01,2.41v7.57h3.09v-7.8c0,-1.59 -0.41,-2.86 -1.22,-3.8 -0.84,-0.94 -1.94,-1.42 -3.31,-1.42 -1.58,0 -2.78,0.61 -3.57,1.82l-0.77,1.29 -0.77,-1.29C7.3,5.6 6.11,5 4.53,5Z"
|
||||||
android:fillColor="#282c37"/>
|
|
||||||
<path
|
|
||||||
android:pathData="m4.53,4.54c-1.37,0 -2.47,0.48 -3.31,1.42C0.41,6.9 0,8.16 0,9.76v7.8h3.09v-7.57c0,-1.6 0.67,-2.41 2.01,-2.41 1.48,0 2.23,0.96 2.23,2.86v4.14h3.07v-4.14c0,-1.9 0.74,-2.86 2.23,-2.86 1.34,0 2.01,0.81 2.01,2.41v7.57h3.09v-7.8c0,-1.59 -0.41,-2.86 -1.22,-3.8 -0.84,-0.94 -1.94,-1.42 -3.31,-1.42 -1.58,0 -2.78,0.61 -3.57,1.82l-0.77,1.29 -0.77,-1.29C7.3,5.15 6.11,4.54 4.53,4.54Z"
|
|
||||||
android:strokeWidth="0.990258"
|
android:strokeWidth="0.990258"
|
||||||
android:fillColor="#282c37"/>
|
android:fillColor="#282c37"/>
|
||||||
</vector>
|
</vector>
|
||||||
|
|||||||
@@ -26,8 +26,20 @@
|
|||||||
android:layout_width="36dp"
|
android:layout_width="36dp"
|
||||||
android:layout_height="36dp"
|
android:layout_height="36dp"
|
||||||
android:layout_marginTop="-6dp"
|
android:layout_marginTop="-6dp"
|
||||||
android:layout_marginRight="6dp"
|
android:layout_marginEnd="6dp"
|
||||||
android:layout_toLeftOf="@id/more"
|
android:layout_toStartOf="@id/more"
|
||||||
|
android:background="?android:selectableItemBackgroundBorderless"
|
||||||
|
android:scaleType="center"
|
||||||
|
android:src="@drawable/ic_visibility"
|
||||||
|
android:tint="?android:textColorSecondary" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/translate"
|
||||||
|
android:layout_width="36dp"
|
||||||
|
android:layout_height="36dp"
|
||||||
|
android:layout_marginTop="-6dp"
|
||||||
|
android:layout_marginEnd="6dp"
|
||||||
|
android:layout_toStartOf="@id/visibility"
|
||||||
android:background="?android:selectableItemBackgroundBorderless"
|
android:background="?android:selectableItemBackgroundBorderless"
|
||||||
android:scaleType="center"
|
android:scaleType="center"
|
||||||
android:src="@drawable/ic_visibility"
|
android:src="@drawable/ic_visibility"
|
||||||
@@ -46,7 +58,7 @@
|
|||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="24dp"
|
android:layout_height="24dp"
|
||||||
android:layout_marginEnd="8dp"
|
android:layout_marginEnd="8dp"
|
||||||
android:layout_toStartOf="@id/visibility"
|
android:layout_toStartOf="@id/translate"
|
||||||
android:layout_toEndOf="@id/avatar">
|
android:layout_toEndOf="@id/avatar">
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
@@ -78,7 +90,7 @@
|
|||||||
android:layout_height="20dp"
|
android:layout_height="20dp"
|
||||||
android:layout_below="@id/name_wrap"
|
android:layout_below="@id/name_wrap"
|
||||||
android:layout_marginEnd="8dp"
|
android:layout_marginEnd="8dp"
|
||||||
android:layout_toStartOf="@id/visibility"
|
android:layout_toStartOf="@id/translate"
|
||||||
android:layout_toEndOf="@id/avatar"
|
android:layout_toEndOf="@id/avatar"
|
||||||
android:layoutDirection="locale"
|
android:layoutDirection="locale"
|
||||||
android:orientation="horizontal">
|
android:orientation="horizontal">
|
||||||
|
|||||||
@@ -31,9 +31,10 @@
|
|||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:textAppearance="@style/m3_title_medium"
|
android:textAppearance="@style/m3_title_medium"
|
||||||
android:background="?colorBackgroundLight"
|
android:background="@color/error_900"
|
||||||
tools:text="CW title"/>
|
tools:text="CW title"/>
|
||||||
|
|
||||||
|
|
||||||
<View
|
<View
|
||||||
android:id="@+id/border_bottom"
|
android:id="@+id/border_bottom"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
@@ -49,6 +50,22 @@
|
|||||||
android:textSize="16sp"
|
android:textSize="16sp"
|
||||||
android:textAppearance="@style/m3_body_large"
|
android:textAppearance="@style/m3_body_large"
|
||||||
tools:text="setting up my mstdn"/>
|
tools:text="setting up my mstdn"/>
|
||||||
|
|
||||||
|
<!-- <Button-->
|
||||||
|
<!-- android:id="@+id/translate"-->
|
||||||
|
<!-- android:layout_width="wrap_content"-->
|
||||||
|
<!-- android:layout_height="32dp"-->
|
||||||
|
<!-- android:background="@drawable/bg_inline_button"-->
|
||||||
|
<!-- android:elevation="0dp"-->
|
||||||
|
<!-- android:ellipsize="middle"-->
|
||||||
|
<!-- android:fontFamily="sans-serif-medium"-->
|
||||||
|
<!-- android:singleLine="true"-->
|
||||||
|
<!-- android:stateListAnimator="@null"-->
|
||||||
|
<!-- android:textColor="?android:textColorPrimary"-->
|
||||||
|
<!-- android:textSize="16sp"-->
|
||||||
|
<!-- tools:text="@string/pink_color" />-->
|
||||||
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -44,18 +44,19 @@
|
|||||||
|
|
||||||
<EditText
|
<EditText
|
||||||
android:id="@+id/search_edit"
|
android:id="@+id/search_edit"
|
||||||
|
style="@android:style/Widget.EditText"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:inputType="textFilter|textNoSuggestions"
|
|
||||||
android:singleLine="true"
|
|
||||||
android:imeOptions="actionGo"
|
|
||||||
android:layout_marginLeft="16dp"
|
android:layout_marginLeft="16dp"
|
||||||
android:layout_marginRight="16dp"
|
|
||||||
android:layout_marginTop="19dp"
|
android:layout_marginTop="19dp"
|
||||||
|
android:layout_marginRight="16dp"
|
||||||
android:layout_marginBottom="3dp"
|
android:layout_marginBottom="3dp"
|
||||||
android:drawableStart="@drawable/ic_fluent_search_20_regular"
|
android:drawableStart="@drawable/ic_fluent_search_20_regular"
|
||||||
android:drawablePadding="8dp"
|
android:drawablePadding="8dp"
|
||||||
android:drawableTint="?android:textColorSecondary"
|
android:drawableTint="?android:textColorSecondary"
|
||||||
android:hint="@string/search_communities"/>
|
android:hint="@string/search_communities"
|
||||||
|
android:imeOptions="actionGo"
|
||||||
|
android:inputType="textFilter|textNoSuggestions"
|
||||||
|
android:singleLine="true" />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
@@ -1,9 +1,10 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<menu xmlns:android="http://schemas.android.com/apk/res/android">
|
<menu xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<item android:id="@+id/pink_color" android:title="@string/sk_color_theme_pink"/>
|
|
||||||
<item android:id="@+id/purple_color" android:title="@string/sk_color_theme_purple"/>
|
<item android:id="@+id/purple_color" android:title="@string/sk_color_theme_purple"/>
|
||||||
|
<item android:id="@+id/pink_color" android:title="@string/sk_color_theme_pink"/>
|
||||||
<item android:id="@+id/green_color" android:title="@string/sk_color_theme_green"/>
|
<item android:id="@+id/green_color" android:title="@string/sk_color_theme_green"/>
|
||||||
<item android:id="@+id/blue_color" android:title="@string/sk_color_theme_blue"/>
|
<item android:id="@+id/blue_color" android:title="@string/sk_color_theme_blue"/>
|
||||||
<item android:id="@+id/brown_color" android:title="@string/sk_color_theme_brown"/>
|
<item android:id="@+id/orange_color" android:title="@string/sk_color_theme_brown"/>
|
||||||
<item android:id="@+id/yellow_color" android:title="@string/sk_color_theme_yellow"/>
|
<item android:id="@+id/yellow_color" android:title="@string/sk_color_theme_yellow"/>
|
||||||
|
<item android:id="@+id/m3_color" android:title="@string/sk_color_theme_material_you"/>
|
||||||
</menu>
|
</menu>
|
||||||
@@ -1,6 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<background android:drawable="@mipmap/ic_launcher_background"/>
|
<background android:drawable="@color/shortcut_icon_background"/>
|
||||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
<foreground android:drawable="@drawable/ic_launcher_foreground"/>
|
||||||
<monochrome android:drawable="@drawable/ic_launcher_monochrome"/>
|
|
||||||
</adaptive-icon>
|
</adaptive-icon>
|
||||||
@@ -1,6 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<background android:drawable="@mipmap/ic_launcher_background"/>
|
<background android:drawable="@color/shortcut_icon_background"/>
|
||||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
<foreground android:drawable="@drawable/ic_launcher_foreground"/>
|
||||||
<monochrome android:drawable="@drawable/ic_launcher_monochrome"/>
|
|
||||||
</adaptive-icon>
|
</adaptive-icon>
|
||||||
|
Before Width: | Height: | Size: 7.5 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 7.5 KiB After Width: | Height: | Size: 3.5 KiB |
|
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 58 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 5.0 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 3.6 KiB |
|
Before Width: | Height: | Size: 147 KiB |
|
Before Width: | Height: | Size: 38 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 7.9 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 4.9 KiB |
|
Before Width: | Height: | Size: 280 KiB |
|
Before Width: | Height: | Size: 66 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 11 KiB |
@@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<resources>
|
<resources>
|
||||||
<color name="shortcut_icon_background">@color/gray_700</color>
|
<color name="shortcut_icon_background">@color/gray_700</color>
|
||||||
<color name="shortcut_icon_foreground">@color/primary_600</color>
|
<color name="shortcut_icon_foreground">@color/original_primary_600</color>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -12,9 +12,12 @@
|
|||||||
<style name="Theme.Mastodon.AutoLightDark.Blue" parent="Theme.Mastodon.Dark.Blue"/>
|
<style name="Theme.Mastodon.AutoLightDark.Blue" parent="Theme.Mastodon.Dark.Blue"/>
|
||||||
<style name="Theme.Mastodon.AutoLightDark.TrueBlack.Blue" parent="Theme.Mastodon.Dark.TrueBlack.Blue"/>
|
<style name="Theme.Mastodon.AutoLightDark.TrueBlack.Blue" parent="Theme.Mastodon.Dark.TrueBlack.Blue"/>
|
||||||
|
|
||||||
<style name="Theme.Mastodon.AutoLightDark.Brown" parent="Theme.Mastodon.Dark.Brown"/>
|
<style name="Theme.Mastodon.AutoLightDark.Orange" parent="Theme.Mastodon.Dark.Orange"/>
|
||||||
<style name="Theme.Mastodon.AutoLightDark.TrueBlack.Brown" parent="Theme.Mastodon.Dark.TrueBlack.Brown"/>
|
<style name="Theme.Mastodon.AutoLightDark.TrueBlack.Orange" parent="Theme.Mastodon.Dark.TrueBlack.Orange"/>
|
||||||
|
|
||||||
<style name="Theme.Mastodon.AutoLightDark.Yellow" parent="Theme.Mastodon.Dark.Yellow"/>
|
<style name="Theme.Mastodon.AutoLightDark.Yellow" parent="Theme.Mastodon.Dark.Yellow"/>
|
||||||
<style name="Theme.Mastodon.AutoLightDark.TrueBlack.Yellow" parent="Theme.Mastodon.Dark.TrueBlack.Yellow"/>
|
<style name="Theme.Mastodon.AutoLightDark.TrueBlack.Yellow" parent="Theme.Mastodon.Dark.TrueBlack.Yellow"/>
|
||||||
|
|
||||||
|
<style name="Theme.Mastodon.AutoLightDark.Material3" parent="Theme.Mastodon.Dark.Material3"/>
|
||||||
|
<style name="Theme.Mastodon.AutoLightDark.TrueBlack.Material3" parent="Theme.Mastodon.Dark.TrueBlack.Material3"/>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -3,6 +3,6 @@
|
|||||||
<color name="navigation_bar_bg">@color/gray_50</color>
|
<color name="navigation_bar_bg">@color/gray_50</color>
|
||||||
<color name="green_navigation_bar_bg">@color/green_gray_50</color>
|
<color name="green_navigation_bar_bg">@color/green_gray_50</color>
|
||||||
<color name="blue_navigation_bar_bg">@color/blue_gray_50</color>
|
<color name="blue_navigation_bar_bg">@color/blue_gray_50</color>
|
||||||
<color name="brown_navigation_bar_bg">@color/brown_gray_50</color>
|
<color name="orange_navigation_bar_bg">@color/orange_gray_50</color>
|
||||||
<color name="yellow_navigation_bar_bg">@color/yellow_gray_50</color>
|
<color name="yellow_navigation_bar_bg">@color/yellow_gray_50</color>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -2,6 +2,35 @@
|
|||||||
<resources>
|
<resources>
|
||||||
<!-- M3 dynamic colors -->
|
<!-- M3 dynamic colors -->
|
||||||
|
|
||||||
|
<color name="m3_navigation_bar_bg">@android:color/system_neutral1_50</color>
|
||||||
|
|
||||||
|
<color name="m3_gray_900">@android:color/system_neutral1_900</color>
|
||||||
|
<color name="m3_gray_800t">@android:color/system_neutral1_800</color>
|
||||||
|
<color name="m3_gray_800">@android:color/system_neutral1_800</color>
|
||||||
|
<color name="m3_gray_700">@android:color/system_neutral1_700</color>
|
||||||
|
<color name="m3_gray_600">@android:color/system_neutral1_600</color>
|
||||||
|
<color name="m3_gray_500">@android:color/system_neutral1_500</color>
|
||||||
|
<color name="m3_gray_400">@android:color/system_neutral1_400</color>
|
||||||
|
<color name="m3_gray_300">@android:color/system_neutral1_300</color>
|
||||||
|
<color name="m3_gray_200">@android:color/system_neutral1_200</color>
|
||||||
|
<color name="m3_gray_100">@android:color/system_neutral1_100</color>
|
||||||
|
<color name="m3_gray_50t">@android:color/system_neutral1_50</color>
|
||||||
|
<color name="m3_gray_50">@android:color/system_neutral1_50</color>
|
||||||
|
<color name="m3_gray_25">@android:color/system_neutral1_10</color>
|
||||||
|
|
||||||
|
<color name="m3_primary_25">@android:color/system_accent1_10</color>
|
||||||
|
<color name="m3_primary_50">@android:color/system_accent1_50</color>
|
||||||
|
<color name="m3_primary_100">@android:color/system_accent1_100</color>
|
||||||
|
<color name="m3_primary_200">@android:color/system_accent1_200</color>
|
||||||
|
<color name="m3_primary_300">@android:color/system_accent1_300</color>
|
||||||
|
<color name="m3_primary_400">@android:color/system_accent1_400</color>
|
||||||
|
<color name="m3_primary_500">@android:color/system_accent1_500</color>
|
||||||
|
<color name="m3_primary_600">@android:color/system_accent1_600</color>
|
||||||
|
<color name="m3_primary_700">@android:color/system_accent1_700</color>
|
||||||
|
<color name="m3_primary_800">@android:color/system_accent1_800</color>
|
||||||
|
<color name="m3_primary_900">@android:color/system_accent1_900</color>
|
||||||
|
|
||||||
|
|
||||||
<!-- light theme -->
|
<!-- light theme -->
|
||||||
<color name="m3_sys_light_primary">@android:color/system_accent1_600</color>
|
<color name="m3_sys_light_primary">@android:color/system_accent1_600</color>
|
||||||
<color name="m3_sys_light_on_primary">#FFF</color>
|
<color name="m3_sys_light_on_primary">#FFF</color>
|
||||||
|
|||||||
@@ -67,17 +67,17 @@
|
|||||||
<color name="blue_primary_800">#003354</color>
|
<color name="blue_primary_800">#003354</color>
|
||||||
<color name="blue_primary_900">#001d33</color>
|
<color name="blue_primary_900">#001d33</color>
|
||||||
|
|
||||||
<color name="brown_primary_25">#fafaff</color>
|
<color name="orange_primary_25">#fafaff</color>
|
||||||
<color name="brown_primary_50">#ffeedf</color>
|
<color name="orange_primary_50">#ffeedf</color>
|
||||||
<color name="brown_primary_100">#ffdcbb</color>
|
<color name="orange_primary_100">#ffdcbb</color>
|
||||||
<color name="brown_primary_200">#ffb869</color>
|
<color name="orange_primary_200">#ffb869</color>
|
||||||
<color name="brown_primary_300">#e89a3b</color>
|
<color name="orange_primary_300">#e89a3b</color>
|
||||||
<color name="brown_primary_400">#c98121</color>
|
<color name="orange_primary_400">#c98121</color>
|
||||||
<color name="brown_primary_500">#a96700</color>
|
<color name="orange_primary_500">#a96700</color>
|
||||||
<color name="brown_primary_600">#885200</color>
|
<color name="orange_primary_600">#885200</color>
|
||||||
<color name="brown_primary_700">#673d00</color>
|
<color name="orange_primary_700">#673d00</color>
|
||||||
<color name="brown_primary_800">#482900</color>
|
<color name="orange_primary_800">#482900</color>
|
||||||
<color name="brown_primary_900">#2b1700</color>
|
<color name="orange_primary_900">#2b1700</color>
|
||||||
|
|
||||||
<color name="yellow_primary_25">#fafaff</color>
|
<color name="yellow_primary_25">#fafaff</color>
|
||||||
<color name="yellow_primary_50">#fff0ca</color>
|
<color name="yellow_primary_50">#fff0ca</color>
|
||||||
@@ -98,6 +98,23 @@
|
|||||||
<color name="custom_gray_600">#212121</color>
|
<color name="custom_gray_600">#212121</color>
|
||||||
<color name="custom_gray_500">#242424</color>
|
<color name="custom_gray_500">#242424</color>
|
||||||
|
|
||||||
|
<!-- Old Colors:-->
|
||||||
|
<!-- <color name="green_gray_400">#8f918e</color>-->
|
||||||
|
<!-- <color name="green_gray_300">#a9aca8</color>-->
|
||||||
|
<!-- <color name="green_gray_200">#c5c7c3</color>-->
|
||||||
|
<!-- <color name="green_gray_100">#e1e3df</color>-->
|
||||||
|
<!-- <color name="green_gray_50t">#eff1ed</color>-->
|
||||||
|
<!-- <color name="green_gray_50">#eff1ed</color>-->
|
||||||
|
<!-- <color name="green_gray_25">#f7f8fa</color>-->
|
||||||
|
|
||||||
|
<!-- <color name="blue_gray_400">#919191</color>-->
|
||||||
|
<!-- <color name="blue_gray_300">#ababab</color>-->
|
||||||
|
<!-- <color name="blue_gray_200">#c6c6c6</color>-->
|
||||||
|
<!-- <color name="blue_gray_100">#e2e2e2</color>-->
|
||||||
|
<!-- <color name="blue_gray_50t">#f1f1f1</color>-->
|
||||||
|
<!-- <color name="blue_gray_50">#f1f1f1</color>-->
|
||||||
|
<!-- <color name="blue_gray_25">#f7f8fa</color>-->
|
||||||
|
|
||||||
<color name="green_gray_400">#a2b095</color>
|
<color name="green_gray_400">#a2b095</color>
|
||||||
<color name="green_gray_300">#bdcbaf</color>
|
<color name="green_gray_300">#bdcbaf</color>
|
||||||
<color name="green_gray_200">#d9e7ca</color>
|
<color name="green_gray_200">#d9e7ca</color>
|
||||||
@@ -114,13 +131,13 @@
|
|||||||
<color name="blue_gray_50">#e8f2ff</color>
|
<color name="blue_gray_50">#e8f2ff</color>
|
||||||
<color name="blue_gray_25">#f7f8fa</color>
|
<color name="blue_gray_25">#f7f8fa</color>
|
||||||
|
|
||||||
<color name="brown_gray_400">#c3a689</color>
|
<color name="orange_gray_400">#c3a689</color>
|
||||||
<color name="brown_gray_300">#e0c1a3</color>
|
<color name="orange_gray_300">#e0c1a3</color>
|
||||||
<color name="brown_gray_200">#feddbd</color>
|
<color name="orange_gray_200">#feddbd</color>
|
||||||
<color name="brown_gray_100">#ffeedf</color>
|
<color name="orange_gray_100">#ffeedf</color>
|
||||||
<color name="brown_gray_50t">#ccffeedf</color>
|
<color name="orange_gray_50t">#ccffeedf</color>
|
||||||
<color name="brown_gray_50">#ffeedf</color>
|
<color name="orange_gray_50">#ffeedf</color>
|
||||||
<color name="brown_gray_25">#f7f8fa</color>
|
<color name="orange_gray_25">#f7f8fa</color>
|
||||||
|
|
||||||
<color name="yellow_gray_400">#b8aa87</color>
|
<color name="yellow_gray_400">#b8aa87</color>
|
||||||
<color name="yellow_gray_300">#d4c5a1</color>
|
<color name="yellow_gray_300">#d4c5a1</color>
|
||||||
@@ -193,10 +210,10 @@
|
|||||||
|
|
||||||
<color name="favorite_selected">@color/warning_500</color>
|
<color name="favorite_selected">@color/warning_500</color>
|
||||||
<color name="bookmark_selected">@color/success_500</color>
|
<color name="bookmark_selected">@color/success_500</color>
|
||||||
<color name="boost_selected">@color/primary_500</color>
|
<color name="boost_selected">?android:colorPrimary</color>
|
||||||
|
|
||||||
<color name="shortcut_icon_background">@color/gray_100</color>
|
<color name="shortcut_icon_background">#282C37</color>
|
||||||
<color name="shortcut_icon_foreground">@color/primary_700</color>
|
<!-- <color name="shortcut_icon_foreground">@color/primary_700</color>-->
|
||||||
|
|
||||||
<!-- M3 dynamic colors -->
|
<!-- M3 dynamic colors -->
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<resources>
|
<resources>
|
||||||
<string name="app_name" translatable="false">Mastodon</string>
|
<string name="app_name" translatable="false">Moshidon</string>
|
||||||
|
|
||||||
<string name="get_started">Get started</string>
|
<string name="get_started">Get started</string>
|
||||||
<string name="log_in">Log in</string>
|
<string name="log_in">Log in</string>
|
||||||
@@ -394,7 +394,61 @@
|
|||||||
<string name="remove_bookmark">Remove bookmark</string>
|
<string name="remove_bookmark">Remove bookmark</string>
|
||||||
<string name="bookmarks">Bookmarks</string>
|
<string name="bookmarks">Bookmarks</string>
|
||||||
<string name="your_favorites">Your Favorites</string>
|
<string name="your_favorites">Your Favorites</string>
|
||||||
|
<string name="settings_always_reveal_content_warnings">Always reveal content warnings</string>
|
||||||
|
<string name="disable_marquee">Disable scrolling text in title bars</string>
|
||||||
|
<string name="settings_contribute_fork">Contribute to Moshidon</string>
|
||||||
|
<!-- <string name="settings_color_picker">Color theme:</string>-->
|
||||||
|
<!-- <string name="pink_color">Pink</string>-->
|
||||||
|
<!-- <string name="purple_color">Purple</string>-->
|
||||||
|
<!-- <string name="green_color">Green</string>-->
|
||||||
|
<!-- <string name="blue_color">Blue</string>-->
|
||||||
|
<!-- <string name="orange_color">Orange</string>-->
|
||||||
|
<!-- <string name="yellow_color">Yellow</string>-->
|
||||||
|
<string name="translate">Translate</string>
|
||||||
<string name="login_title">Welcome Back</string>
|
<string name="login_title">Welcome Back</string>
|
||||||
<string name="login_subtitle">Log in with the server where you created your account.</string>
|
<string name="login_subtitle">Log in with the server where you created your account.</string>
|
||||||
<string name="server_url">Server URL</string>
|
<string name="server_url">Server URL</string>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- <string name="app_name">Megalodon</string>-->
|
||||||
|
<!-- <string name="pinned_posts">Pinned</string>-->
|
||||||
|
<!-- <string name="delete_and_redraft">Delete and re-draft</string>-->
|
||||||
|
<!-- <string name="confirm_delete_and_redraft_title">Delete and re-draft Post</string>-->
|
||||||
|
<!-- <string name="confirm_delete_and_redraft">Are you sure you want to delete and re-draft this post?</string>-->
|
||||||
|
<!-- <string name="pin_post">Pin to profile</string>-->
|
||||||
|
<!-- <string name="confirm_pin_post_title">Pin post to profile</string>-->
|
||||||
|
<!-- <string name="confirm_pin_post">Do you want to pin this post to your profile?</string>-->
|
||||||
|
<!-- <string name="pinning">Pinning post…</string>-->
|
||||||
|
<!-- <string name="unpin_post">Unpin from profile</string>-->
|
||||||
|
<!-- <string name="confirm_unpin_post_title">Unpin post from profile</string>-->
|
||||||
|
<!-- <string name="confirm_unpin_post">Are you sure you want to unpin this post?</string>-->
|
||||||
|
<!-- <string name="unpinning">Unpinning post…</string>-->
|
||||||
|
<!-- <string name="image_description">Image description</string>-->
|
||||||
|
<!-- <string name="visibility_unlisted">Unlisted</string>-->
|
||||||
|
<!-- <string name="settings_show_replies">Show replies</string>-->
|
||||||
|
<!-- <string name="settings_show_boosts">Show boosts</string>-->
|
||||||
|
<!-- <string name="settings_load_new_posts">Automatically load new posts</string>-->
|
||||||
|
<!-- <string name="settings_show_interaction_counts">Show interaction counts</string>-->
|
||||||
|
<!--<!– <string name="settings_app_version">Megalodon v%1$s (%2$d)</string>–>-->
|
||||||
|
<!-- <string name="mark_media_as_sensitive">Mark media as sensitive</string>-->
|
||||||
|
<!-- <string name="user_post_notifications_on">Turned on post notifications for %s</string>-->
|
||||||
|
<!-- <string name="user_post_notifications_off">Turned off post notifications for %s</string>-->
|
||||||
|
<!-- <string name="federated_timeline">Federation</string>-->
|
||||||
|
<!-- <string name="federated_timeline_info_banner">These are the most recent posts by the people in your federation.</string>-->
|
||||||
|
<!--<!– <string name="update_available">Megalodon %s is ready to download.</string>–>-->
|
||||||
|
<!--<!– <string name="update_ready">Megalodon %s is downloaded and ready to install.</string>–>-->
|
||||||
|
<!-- <string name="check_for_update">Check for update</string>-->
|
||||||
|
<!-- <string name="no_update_available">No update available</string>-->
|
||||||
|
<!-- <string name="list_timelines">Lists</string>-->
|
||||||
|
<!-- <string name="follow_requests">Follow requests</string>-->
|
||||||
|
<!-- <string name="accept_follow_request">Accept follow request</string>-->
|
||||||
|
<!-- <string name="reject_follow_request">Reject follow request</string>-->
|
||||||
|
<!-- <string name="lists_with_user">Lists with %s</string>-->
|
||||||
|
<!--<!– <string name="settings_always_reveal_content_warnings">Always reveal content warnings</string>–>-->
|
||||||
|
<!--<!– <string name="disable_marquee">Disable scrolling text in title bars</string>–>-->
|
||||||
|
<!--<!– <string name="settings_contribute">Contribute to Megalodon</string>–>-->
|
||||||
|
<!-- <string name="settings_show_federated_timeline">Show federated timeline</string>-->
|
||||||
|
<!-- <string name="notification_type_status">Posts</string>-->
|
||||||
|
<!-- <string name="notify_posts">Post notifications</string>-->
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<resources>
|
<resources>
|
||||||
<string name="sk_app_name">Megalodon</string>
|
<string name="sk_app_name" translatable="false">Moshidon</string>
|
||||||
<string name="sk_pinned_posts">Pinned</string>
|
<string name="sk_pinned_posts">Pinned</string>
|
||||||
<string name="sk_delete_and_redraft">Delete and re-draft</string>
|
<string name="sk_delete_and_redraft">Delete and re-draft</string>
|
||||||
<string name="sk_confirm_delete_and_redraft_title">Delete and re-draft Post</string>
|
<string name="sk_confirm_delete_and_redraft_title">Delete and re-draft Post</string>
|
||||||
@@ -25,8 +25,8 @@
|
|||||||
<string name="sk_user_post_notifications_off">Turned off post notifications for %s</string>
|
<string name="sk_user_post_notifications_off">Turned off post notifications for %s</string>
|
||||||
<string name="sk_federated_timeline">Federation</string>
|
<string name="sk_federated_timeline">Federation</string>
|
||||||
<string name="sk_federated_timeline_info_banner">These are the most recent posts by the people in your federation.</string>
|
<string name="sk_federated_timeline_info_banner">These are the most recent posts by the people in your federation.</string>
|
||||||
<string name="sk_update_available">Megalodon %s is ready to download.</string>
|
<string name="sk_update_available">Moshidon %s is ready to download.</string>
|
||||||
<string name="sk_update_ready">Megalodon %s is downloaded and ready to install.</string>
|
<string name="sk_update_ready">Moshidon %s is downloaded and ready to install.</string>
|
||||||
<string name="sk_check_for_update">Check for update</string>
|
<string name="sk_check_for_update">Check for update</string>
|
||||||
<string name="sk_no_update_available">No update available</string>
|
<string name="sk_no_update_available">No update available</string>
|
||||||
<string name="sk_list_timelines">Lists</string>
|
<string name="sk_list_timelines">Lists</string>
|
||||||
@@ -45,6 +45,8 @@
|
|||||||
<string name="sk_color_theme_purple">Purple</string>
|
<string name="sk_color_theme_purple">Purple</string>
|
||||||
<string name="sk_color_theme_green">Green</string>
|
<string name="sk_color_theme_green">Green</string>
|
||||||
<string name="sk_color_theme_blue">Blue</string>
|
<string name="sk_color_theme_blue">Blue</string>
|
||||||
<string name="sk_color_theme_brown">Brown</string>
|
<string name="sk_color_theme_brown">Orange</string>
|
||||||
<string name="sk_color_theme_yellow">Yellow</string>
|
<string name="sk_color_theme_yellow">Yellow</string>
|
||||||
|
<string name="sk_color_theme_material_you">Material You</string>
|
||||||
|
<string name="sk_not_supported">Not supported on your device</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -45,7 +45,7 @@
|
|||||||
<item name="android:windowLightNavigationBar" tools:ignore="NewApi">true</item>
|
<item name="android:windowLightNavigationBar" tools:ignore="NewApi">true</item>
|
||||||
<item name="android:popupMenuStyle">@style/Widget.Mastodon.PopupMenu</item>
|
<item name="android:popupMenuStyle">@style/Widget.Mastodon.PopupMenu</item>
|
||||||
<item name="android:actionOverflowMenuStyle">@style/Widget.Mastodon.PopupMenu</item>
|
<item name="android:actionOverflowMenuStyle">@style/Widget.Mastodon.PopupMenu</item>
|
||||||
|
|
||||||
<!-- M3 colors -->
|
<!-- M3 colors -->
|
||||||
<item name="colorM3Primary">@color/m3_sys_light_primary</item>
|
<item name="colorM3Primary">@color/m3_sys_light_primary</item>
|
||||||
<item name="colorM3OnPrimary">@color/m3_sys_light_on_primary</item>
|
<item name="colorM3OnPrimary">@color/m3_sys_light_on_primary</item>
|
||||||
@@ -70,7 +70,6 @@
|
|||||||
<item name="colorM3PressedOverlay">@color/m3_sys_light_on_primary</item>
|
<item name="colorM3PressedOverlay">@color/m3_sys_light_on_primary</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
|
||||||
<style name="Theme.Mastodon.Dark" parent="Theme.AppKit">
|
<style name="Theme.Mastodon.Dark" parent="Theme.AppKit">
|
||||||
<!-- needed to disable scrim on API 29+ -->
|
<!-- needed to disable scrim on API 29+ -->
|
||||||
<item name="android:enforceNavigationBarContrast" tools:ignore="NewApi">false</item>
|
<item name="android:enforceNavigationBarContrast" tools:ignore="NewApi">false</item>
|
||||||
@@ -205,6 +204,122 @@
|
|||||||
<item name="colorBackgroundLightest">@color/black</item>
|
<item name="colorBackgroundLightest">@color/black</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
<style name="Theme.Mastodon.Light.Material3" parent="Theme.Mastodon.Light.CustomBase">
|
||||||
|
<!-- needed to disable scrim on API 29+ -->
|
||||||
|
<item name="android:colorPrimary">@color/m3_gray_800</item>
|
||||||
|
<item name="android:textColorPrimary">@color/m3_gray_800</item>
|
||||||
|
<item name="android:textColorSecondary">@color/m3_gray_500</item>
|
||||||
|
<item name="colorDarkIcon">@color/m3_gray_900</item>
|
||||||
|
<item name="colorSearchHint">@color/m3_gray_600</item>
|
||||||
|
<item name="profileHeaderBackground">@color/m3_gray_500</item>
|
||||||
|
|
||||||
|
<item name="android:colorAccent">@color/m3_primary_700</item>
|
||||||
|
<item name="android:colorBackground">@color/m3_gray_100</item>
|
||||||
|
<item name="colorButtonText">@color/m3_gray_50</item>
|
||||||
|
<item name="colorBackgroundLight">@color/m3_gray_50</item>
|
||||||
|
<item name="colorBackgroundLightest">@color/m3_gray_25</item>
|
||||||
|
<item name="android:statusBarColor">@color/m3_gray_50</item>
|
||||||
|
<item name="android:navigationBarColor">@color/m3_navigation_bar_bg</item>
|
||||||
|
<item name="android:actionBarTheme">@style/Theme.Mastodon.Toolbar.M3</item>
|
||||||
|
<item name="android:alertDialogTheme">@style/Theme.Mastodon.Dialog.Alert.M3</item>
|
||||||
|
<item name="colorPollMostVoted">@color/m3_primary_500</item>
|
||||||
|
<item name="colorPollVoted">@color/m3_gray_300</item>
|
||||||
|
<item name="colorAccentLight">@color/m3_primary_600</item>
|
||||||
|
<item name="colorSearchField">@color/m3_gray_200</item>
|
||||||
|
<item name="colorTabInactive">@color/m3_gray_400</item>
|
||||||
|
<item name="colorAccentLightest">@color/m3_primary_100</item>
|
||||||
|
<item name="colorSecondary">@color/m3_gray_50</item>
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<style name="Theme.Mastodon.Dark.Material3" parent="Theme.Mastodon.Dark.CustomBase">
|
||||||
|
<!-- needed to disable scrim on API 29+ -->
|
||||||
|
<item name="android:colorBackground">@color/m3_gray_700</item>
|
||||||
|
<item name="colorButtonText">@color/m3_gray_800</item>
|
||||||
|
<item name="colorBackgroundLight">@color/m3_gray_700</item>
|
||||||
|
<item name="colorBackgroundLightest">@color/m3_gray_900</item>
|
||||||
|
<item name="colorBackgroundPopup">@color/m3_gray_900</item>
|
||||||
|
<item name="colorDarkIcon">@color/m3_gray_25</item>
|
||||||
|
<item name="colorWindowBackground">@color/m3_gray_800</item>
|
||||||
|
<item name="android:statusBarColor">@color/m3_gray_800</item>
|
||||||
|
<item name="android:navigationBarColor">@color/m3_gray_800</item>
|
||||||
|
<item name="colorPollVoted">@color/m3_gray_600</item>
|
||||||
|
<item name="profileHeaderBackground">?colorWindowBackground</item>
|
||||||
|
<item name="android:actionBarTheme">@style/Theme.Mastodon.Toolbar.Dark.CustomBase</item>
|
||||||
|
|
||||||
|
<item name="android:colorAccent">@color/m3_primary_400</item>
|
||||||
|
<item name="android:colorPrimary">@color/m3_gray_50</item>
|
||||||
|
<item name="android:textColorPrimary">@color/m3_gray_50</item>
|
||||||
|
<item name="android:textColorSecondary">@color/m3_gray_400</item>
|
||||||
|
<item name="android:alertDialogTheme">@style/Theme.Mastodon.Dialog.Alert.Dark.M3</item>
|
||||||
|
<item name="colorPollMostVoted">@color/m3_primary_700</item>
|
||||||
|
<item name="colorAccentLight">@color/m3_primary_600</item>
|
||||||
|
<item name="colorAccentLightest">@color/m3_primary_800</item>
|
||||||
|
<item name="colorTabInactive">@color/m3_gray_400</item>
|
||||||
|
<item name="colorSearchHint">@color/m3_gray_300</item>
|
||||||
|
<item name="colorSecondary">@color/m3_gray_50</item>
|
||||||
|
|
||||||
|
<!-- TODO dark colors -->
|
||||||
|
<item name="colorSearchField">@color/m3_gray_700</item>
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<style name="Theme.Mastodon.Dark.TrueBlack.Material3" parent="Theme.Mastodon.Dark.Material3">
|
||||||
|
<item name="android:colorAccent">@color/m3_primary_400</item>
|
||||||
|
<item name="colorPollMostVoted">@color/m3_primary_700</item>
|
||||||
|
<item name="colorAccentLight">@color/m3_primary_600</item>
|
||||||
|
<item name="colorAccentLightest">@color/m3_primary_800</item>
|
||||||
|
<item name="colorSecondary">@color/m3_gray_50</item>
|
||||||
|
|
||||||
|
<item name="colorPollVoted">@color/m3_gray_800</item>
|
||||||
|
<item name="colorSearchField">@color/m3_gray_900</item>
|
||||||
|
<item name="colorBackgroundPopup">@color/m3_gray_900</item>
|
||||||
|
<item name="android:navigationBarColor">@color/black</item>
|
||||||
|
<item name="android:colorBackground">@color/black</item>
|
||||||
|
<item name="android:statusBarColor">@color/black</item>
|
||||||
|
<item name="android:actionBarTheme">@style/Theme.Mastodon.Toolbar.Dark.TrueBlack</item>
|
||||||
|
<item name="colorBackgroundLight">@color/black</item>
|
||||||
|
<item name="colorWindowBackground">@color/black</item>
|
||||||
|
<item name="colorButtonText">@color/black</item>
|
||||||
|
<item name="colorBackgroundLightest">@color/black</item>
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<style name="Theme.Mastodon.AutoLightDark.Material3" parent="Theme.Mastodon.Light.Material3"/>
|
||||||
|
<style name="Theme.Mastodon.AutoLightDark.TrueBlack.Material3" parent="Theme.Mastodon.Light.Material3"/>
|
||||||
|
|
||||||
|
<style name="Theme.Mastodon.Dialog.Alert.Dark.M3" parent="android:Theme.Material.Dialog.Alert">
|
||||||
|
<item name="android:windowTitleStyle">@style/alert_title</item>
|
||||||
|
<item name="android:dialogPreferredPadding">24dp</item>
|
||||||
|
<item name="android:windowBackground">@drawable/bg_alert</item>
|
||||||
|
<item name="android:buttonBarButtonStyle">@style/Widget.Mastodon.ButtonBarButton</item>
|
||||||
|
|
||||||
|
<!-- colors -->
|
||||||
|
<item name="android:colorAccent">@color/m3_primary_600</item>
|
||||||
|
<item name="android:colorPrimary">@color/m3_gray_50</item>
|
||||||
|
<item name="android:colorBackground">@color/m3_gray_700</item>
|
||||||
|
<item name="android:textColorPrimary">@color/m3_gray_50</item>
|
||||||
|
<item name="android:textColorSecondary">@color/m3_gray_400</item>
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<style name="Theme.Mastodon.Dialog.Alert.M3" parent="android:Theme.Material.Light.Dialog.Alert">
|
||||||
|
<item name="android:windowTitleStyle">@style/alert_title</item>
|
||||||
|
<item name="android:dialogPreferredPadding">24dp</item>
|
||||||
|
<item name="android:windowBackground">@drawable/bg_alert</item>
|
||||||
|
<item name="android:buttonBarButtonStyle">@style/Widget.Mastodon.ButtonBarButton</item>
|
||||||
|
|
||||||
|
<!-- colors -->
|
||||||
|
<item name="android:colorAccent">@color/m3_primary_700</item>
|
||||||
|
<item name="android:colorPrimary">@color/m3_gray_800</item>
|
||||||
|
<item name="android:colorBackground">@color/m3_gray_100</item>
|
||||||
|
<item name="android:textColorPrimary">@color/m3_gray_800</item>
|
||||||
|
<item name="android:textColorSecondary">@color/m3_gray_500</item>
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<style name="Theme.Mastodon.Toolbar.M3" parent="android:ThemeOverlay.Material.ActionBar">
|
||||||
|
<item name="android:colorPrimary">@color/m3_gray_50</item>
|
||||||
|
<item name="android:textColorPrimary">@color/m3_gray_800</item>
|
||||||
|
<item name="android:textColorSecondary">@color/m3_gray_800</item>
|
||||||
|
</style>
|
||||||
|
|
||||||
|
|
||||||
<style name="Theme.Mastodon.Light.Green" parent="Theme.Mastodon.Light.CustomBase">
|
<style name="Theme.Mastodon.Light.Green" parent="Theme.Mastodon.Light.CustomBase">
|
||||||
<item name="android:colorAccent">@color/green_primary_700</item>
|
<item name="android:colorAccent">@color/green_primary_700</item>
|
||||||
<item name="android:colorBackground">@color/green_gray_100</item>
|
<item name="android:colorBackground">@color/green_gray_100</item>
|
||||||
@@ -386,45 +501,45 @@
|
|||||||
<item name="android:textColorSecondary">@color/custom_gray_800</item>
|
<item name="android:textColorSecondary">@color/custom_gray_800</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.Mastodon.Light.Brown" parent="Theme.Mastodon.Light.CustomBase">
|
<style name="Theme.Mastodon.Light.Orange" parent="Theme.Mastodon.Light.CustomBase">
|
||||||
<item name="android:colorAccent">@color/brown_primary_700</item>
|
<item name="android:colorAccent">@color/orange_primary_700</item>
|
||||||
<item name="android:colorBackground">@color/brown_gray_100</item>
|
<item name="android:colorBackground">@color/orange_gray_100</item>
|
||||||
<item name="colorButtonText">@color/brown_gray_50</item>
|
<item name="colorButtonText">@color/orange_gray_50</item>
|
||||||
<item name="colorBackgroundLight">@color/brown_gray_50</item>
|
<item name="colorBackgroundLight">@color/orange_gray_50</item>
|
||||||
<item name="colorBackgroundLightest">@color/brown_gray_25</item>
|
<item name="colorBackgroundLightest">@color/orange_gray_25</item>
|
||||||
<item name="android:statusBarColor">@color/brown_gray_50</item>
|
<item name="android:statusBarColor">@color/orange_gray_50</item>
|
||||||
<item name="android:navigationBarColor">@color/brown_navigation_bar_bg</item>
|
<item name="android:navigationBarColor">@color/orange_navigation_bar_bg</item>
|
||||||
<item name="android:actionBarTheme">@style/Theme.Mastodon.Toolbar.Brown</item>
|
<item name="android:actionBarTheme">@style/Theme.Mastodon.Toolbar.Orange</item>
|
||||||
<item name="android:alertDialogTheme">@style/Theme.Mastodon.Dialog.Alert.Brown</item>
|
<item name="android:alertDialogTheme">@style/Theme.Mastodon.Dialog.Alert.Orange</item>
|
||||||
<item name="colorPollMostVoted">@color/brown_primary_500</item>
|
<item name="colorPollMostVoted">@color/orange_primary_500</item>
|
||||||
<item name="colorPollVoted">@color/brown_gray_200</item>
|
<item name="colorPollVoted">@color/orange_gray_300</item>
|
||||||
<item name="colorAccentLight">@color/brown_primary_600</item>
|
<item name="colorAccentLight">@color/orange_primary_600</item>
|
||||||
<item name="colorSearchField">@color/brown_gray_200</item>
|
<item name="colorSearchField">@color/orange_gray_200</item>
|
||||||
<item name="colorTabInactive">@color/brown_gray_400</item>
|
<item name="colorTabInactive">@color/orange_gray_400</item>
|
||||||
<item name="colorAccentLightest">@color/brown_primary_100</item>
|
<item name="colorAccentLightest">@color/orange_primary_100</item>
|
||||||
<item name="colorSecondary">@color/brown_gray_50</item>
|
<item name="colorSecondary">@color/orange_gray_50</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.Mastodon.Dark.Brown" parent="Theme.Mastodon.Dark.CustomBase">
|
<style name="Theme.Mastodon.Dark.Orange" parent="Theme.Mastodon.Dark.CustomBase">
|
||||||
<item name="android:colorAccent">@color/brown_primary_400</item>
|
<item name="android:colorAccent">@color/orange_primary_400</item>
|
||||||
<item name="android:colorPrimary">@color/brown_gray_50</item>
|
<item name="android:colorPrimary">@color/orange_gray_50</item>
|
||||||
<item name="android:textColorPrimary">@color/brown_gray_50</item>
|
<item name="android:textColorPrimary">@color/orange_gray_50</item>
|
||||||
<item name="android:textColorSecondary">@color/brown_gray_400</item>
|
<item name="android:textColorSecondary">@color/orange_gray_400</item>
|
||||||
<item name="android:alertDialogTheme">@style/Theme.Mastodon.Dialog.Alert.Dark.Brown</item>
|
<item name="android:alertDialogTheme">@style/Theme.Mastodon.Dialog.Alert.Dark.Orange</item>
|
||||||
<item name="colorPollMostVoted">@color/brown_primary_700</item>
|
<item name="colorPollMostVoted">@color/orange_primary_700</item>
|
||||||
<item name="colorAccentLight">@color/brown_primary_600</item>
|
<item name="colorAccentLight">@color/orange_primary_600</item>
|
||||||
<item name="colorAccentLightest">@color/brown_primary_800</item>
|
<item name="colorAccentLightest">@color/orange_primary_800</item>
|
||||||
<item name="colorTabInactive">@color/brown_gray_400</item>
|
<item name="colorTabInactive">@color/orange_gray_400</item>
|
||||||
<item name="colorSearchHint">@color/brown_gray_300</item>
|
<item name="colorSearchHint">@color/orange_gray_300</item>
|
||||||
<item name="colorSecondary">@color/brown_gray_50</item>
|
<item name="colorSecondary">@color/orange_gray_50</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.Mastodon.Dark.TrueBlack.Brown" parent="Theme.Mastodon.Dark.Brown">
|
<style name="Theme.Mastodon.Dark.TrueBlack.Orange" parent="Theme.Mastodon.Dark.Orange">
|
||||||
<item name="android:colorAccent">@color/brown_primary_400</item>
|
<item name="android:colorAccent">@color/orange_primary_400</item>
|
||||||
<item name="colorPollMostVoted">@color/brown_primary_700</item>
|
<item name="colorPollMostVoted">@color/orange_primary_700</item>
|
||||||
<item name="colorAccentLight">@color/brown_primary_600</item>
|
<item name="colorAccentLight">@color/orange_primary_600</item>
|
||||||
<item name="colorAccentLightest">@color/brown_primary_800</item>
|
<item name="colorAccentLightest">@color/orange_primary_800</item>
|
||||||
<item name="colorSecondary">@color/brown_gray_50</item>
|
<item name="colorSecondary">@color/orange_gray_50</item>
|
||||||
|
|
||||||
<item name="colorPollVoted">@color/custom_gray_800</item>
|
<item name="colorPollVoted">@color/custom_gray_800</item>
|
||||||
<item name="colorSearchField">@color/custom_gray_900</item>
|
<item name="colorSearchField">@color/custom_gray_900</item>
|
||||||
@@ -439,39 +554,39 @@
|
|||||||
<item name="colorBackgroundLightest">@color/black</item>
|
<item name="colorBackgroundLightest">@color/black</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.Mastodon.AutoLightDark.Brown" parent="Theme.Mastodon.Light.Brown"/>
|
<style name="Theme.Mastodon.AutoLightDark.Orange" parent="Theme.Mastodon.Light.Orange"/>
|
||||||
<style name="Theme.Mastodon.AutoLightDark.TrueBlack.Brown" parent="Theme.Mastodon.Light.Brown"/>
|
<style name="Theme.Mastodon.AutoLightDark.TrueBlack.Orange" parent="Theme.Mastodon.Light.Orange"/>
|
||||||
|
|
||||||
<style name="Theme.Mastodon.Dialog.Alert.Dark.Brown" parent="android:Theme.Material.Dialog.Alert">
|
<style name="Theme.Mastodon.Dialog.Alert.Dark.Orange" parent="android:Theme.Material.Dialog.Alert">
|
||||||
<item name="android:windowTitleStyle">@style/alert_title</item>
|
<item name="android:windowTitleStyle">@style/alert_title</item>
|
||||||
<item name="android:dialogPreferredPadding">24dp</item>
|
<item name="android:dialogPreferredPadding">24dp</item>
|
||||||
<item name="android:windowBackground">@drawable/bg_alert</item>
|
<item name="android:windowBackground">@drawable/bg_alert</item>
|
||||||
<item name="android:buttonBarButtonStyle">@style/Widget.Mastodon.ButtonBarButton</item>
|
<item name="android:buttonBarButtonStyle">@style/Widget.Mastodon.ButtonBarButton</item>
|
||||||
|
|
||||||
<!-- colors -->
|
<!-- colors -->
|
||||||
<item name="android:colorAccent">@color/brown_primary_600</item>
|
<item name="android:colorAccent">@color/orange_primary_600</item>
|
||||||
<item name="android:colorPrimary">@color/brown_gray_50</item>
|
<item name="android:colorPrimary">@color/orange_gray_50</item>
|
||||||
<item name="android:colorBackground">@color/custom_gray_700</item>
|
<item name="android:colorBackground">@color/custom_gray_700</item>
|
||||||
<item name="android:textColorPrimary">@color/brown_gray_50</item>
|
<item name="android:textColorPrimary">@color/orange_gray_50</item>
|
||||||
<item name="android:textColorSecondary">@color/brown_gray_400</item>
|
<item name="android:textColorSecondary">@color/orange_gray_400</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.Mastodon.Dialog.Alert.Brown" parent="android:Theme.Material.Light.Dialog.Alert">
|
<style name="Theme.Mastodon.Dialog.Alert.Orange" parent="android:Theme.Material.Light.Dialog.Alert">
|
||||||
<item name="android:windowTitleStyle">@style/alert_title</item>
|
<item name="android:windowTitleStyle">@style/alert_title</item>
|
||||||
<item name="android:dialogPreferredPadding">24dp</item>
|
<item name="android:dialogPreferredPadding">24dp</item>
|
||||||
<item name="android:windowBackground">@drawable/bg_alert</item>
|
<item name="android:windowBackground">@drawable/bg_alert</item>
|
||||||
<item name="android:buttonBarButtonStyle">@style/Widget.Mastodon.ButtonBarButton</item>
|
<item name="android:buttonBarButtonStyle">@style/Widget.Mastodon.ButtonBarButton</item>
|
||||||
|
|
||||||
<!-- colors -->
|
<!-- colors -->
|
||||||
<item name="android:colorAccent">@color/brown_primary_700</item>
|
<item name="android:colorAccent">@color/orange_primary_700</item>
|
||||||
<item name="android:colorPrimary">@color/custom_gray_800</item>
|
<item name="android:colorPrimary">@color/custom_gray_800</item>
|
||||||
<item name="android:colorBackground">@color/brown_gray_100</item>
|
<item name="android:colorBackground">@color/orange_gray_100</item>
|
||||||
<item name="android:textColorPrimary">@color/custom_gray_800</item>
|
<item name="android:textColorPrimary">@color/custom_gray_800</item>
|
||||||
<item name="android:textColorSecondary">@color/custom_gray_500</item>
|
<item name="android:textColorSecondary">@color/custom_gray_500</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.Mastodon.Toolbar.Brown" parent="android:ThemeOverlay.Material.ActionBar">
|
<style name="Theme.Mastodon.Toolbar.Orange" parent="android:ThemeOverlay.Material.ActionBar">
|
||||||
<item name="android:colorPrimary">@color/brown_gray_50</item>
|
<item name="android:colorPrimary">@color/orange_gray_50</item>
|
||||||
<item name="android:textColorPrimary">@color/custom_gray_800</item>
|
<item name="android:textColorPrimary">@color/custom_gray_800</item>
|
||||||
<item name="android:textColorSecondary">@color/custom_gray_800</item>
|
<item name="android:textColorSecondary">@color/custom_gray_800</item>
|
||||||
</style>
|
</style>
|
||||||
@@ -597,20 +712,12 @@
|
|||||||
<item name="android:colorPrimary">@color/gray_50</item>
|
<item name="android:colorPrimary">@color/gray_50</item>
|
||||||
<item name="android:textColorPrimary">@color/gray_800</item>
|
<item name="android:textColorPrimary">@color/gray_800</item>
|
||||||
<item name="android:textColorSecondary">@color/gray_800</item>
|
<item name="android:textColorSecondary">@color/gray_800</item>
|
||||||
<item name="android:toolbarStyle">@style/Widget.Mastodon.Toolbar</item>
|
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.Mastodon.Toolbar.Dark" parent="android:ThemeOverlay.Material.Dark.ActionBar">
|
<style name="Theme.Mastodon.Toolbar.Dark" parent="android:ThemeOverlay.Material.Dark.ActionBar">
|
||||||
<item name="android:colorPrimary">@color/gray_800</item>
|
<item name="android:colorPrimary">@color/gray_800</item>
|
||||||
<item name="android:textColorPrimary">@color/gray_50</item>
|
<item name="android:textColorPrimary">@color/gray_50</item>
|
||||||
<item name="android:textColorSecondary">@color/gray_50</item>
|
<item name="android:textColorSecondary">@color/gray_50</item>
|
||||||
<item name="android:toolbarStyle">@style/Widget.Mastodon.Toolbar</item>
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<style name="Widget.Mastodon.Toolbar" parent="android:Widget.Material.Toolbar">
|
|
||||||
<item name="android:contentInsetStartWithNavigation">0dp</item>
|
|
||||||
<item name="android:titleMarginEnd">0dp</item>
|
|
||||||
<item name="android:titleMarginStart">0dp</item>
|
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.Mastodon.Toolbar.Dark.CustomBase" parent="android:ThemeOverlay.Material.Dark.ActionBar">
|
<style name="Theme.Mastodon.Toolbar.Dark.CustomBase" parent="android:ThemeOverlay.Material.Dark.ActionBar">
|
||||||
@@ -619,6 +726,12 @@
|
|||||||
<item name="android:textColorSecondary">@color/gray_50</item>
|
<item name="android:textColorSecondary">@color/gray_50</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
<style name="Theme.Mastodon.Toolbar.Dark.Material3" parent="android:ThemeOverlay.Material.Dark.ActionBar">
|
||||||
|
<item name="android:colorPrimary">@color/m3_gray_800</item>
|
||||||
|
<item name="android:textColorPrimary">@color/m3_gray_50</item>
|
||||||
|
<item name="android:textColorSecondary">@color/m3_gray_50</item>
|
||||||
|
</style>
|
||||||
|
|
||||||
<style name="Theme.Mastodon.Toolbar.Dark.TrueBlack" parent="android:ThemeOverlay.Material.Dark.ActionBar">
|
<style name="Theme.Mastodon.Toolbar.Dark.TrueBlack" parent="android:ThemeOverlay.Material.Dark.ActionBar">
|
||||||
<item name="android:colorPrimary">@color/black</item>
|
<item name="android:colorPrimary">@color/black</item>
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -6,5 +6,5 @@ dependencyResolutionManagement {
|
|||||||
mavenLocal()
|
mavenLocal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
rootProject.name = "Megalodon"
|
rootProject.name = "Moshidon"
|
||||||
include ':mastodon'
|
include ':mastodon'
|
||||||
|
|||||||