Merge branch master into customTabs
|
@ -135,6 +135,7 @@
|
|||
<data android:host="diaspora.soh.re" android:scheme="https" />
|
||||
<data android:host="diaspora.subsignal.org" android:scheme="https" />
|
||||
<data android:host="diaspora.trash-talk.de" android:scheme="https" />
|
||||
<data android:host="diaspora.u4u.org" android:scheme="https" />
|
||||
<data android:host="diaspora.undernet.uy" android:scheme="https" />
|
||||
<data android:host="diaspora.unixcorn.org" android:scheme="https" />
|
||||
<data android:host="diasporausa.com" android:scheme="https" />
|
||||
|
@ -143,6 +144,7 @@
|
|||
<data android:host="dissociateduse.rs" android:scheme="https" />
|
||||
<data android:host="distributed.chat" android:scheme="https" />
|
||||
<data android:host="eat.egregious.ly" android:scheme="https" />
|
||||
<data android:host="ege.land" android:scheme="https" />
|
||||
<data android:host="espora.com.es" android:scheme="https" />
|
||||
<data android:host="espora.social" android:scheme="https" />
|
||||
<data android:host="failure.net" android:scheme="https" />
|
||||
|
@ -186,6 +188,7 @@
|
|||
<data android:host="pod.diaspora.software" android:scheme="https" />
|
||||
<data android:host="pod.dirkomatik.de" android:scheme="https" />
|
||||
<data android:host="pod.disroot.org" android:scheme="https" />
|
||||
<data android:host="pod.dobs.at" android:scheme="https" />
|
||||
<data android:host="pod.dragondreaming.de" android:scheme="https" />
|
||||
<data android:host="pod.gedankenausbruch.com" android:scheme="https" />
|
||||
<data android:host="pod.geraspora.de" android:scheme="https" />
|
||||
|
@ -206,6 +209,7 @@
|
|||
<data android:host="pod.promedol.com" android:scheme="https" />
|
||||
<data android:host="pod.psynet.su" android:scheme="https" />
|
||||
<data android:host="pod.readme.is" android:scheme="https" />
|
||||
<data android:host="pod.richtig.koeln" android:scheme="https" />
|
||||
<data android:host="podricing.pw" android:scheme="https" />
|
||||
<data android:host="pod.ros-it.ch" android:scheme="https" />
|
||||
<data android:host="pod.sccn.club" android:scheme="https" />
|
||||
|
@ -230,6 +234,7 @@
|
|||
<data android:host="socializer.cc" android:scheme="https" />
|
||||
<data android:host="social.mbuto.me" android:scheme="https" />
|
||||
<data android:host="social.sum7.de" android:scheme="https" />
|
||||
<data android:host="spora.com.ua" android:scheme="https" />
|
||||
<data android:host="spora.zone" android:scheme="https" />
|
||||
<data android:host="subvillage.de" android:scheme="https" />
|
||||
<data android:host="sysad.org" android:scheme="https" />
|
||||
|
|
|
@ -26,6 +26,8 @@ import android.app.AlarmManager;
|
|||
import android.app.AlertDialog;
|
||||
import android.app.PendingIntent;
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.graphics.drawable.LayerDrawable;
|
||||
import android.support.v4.view.MenuItemCompat;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.content.Intent;
|
||||
|
@ -81,6 +83,7 @@ import com.github.dfa.diaspora_android.data.PodUserProfile;
|
|||
import com.github.dfa.diaspora_android.listener.WebUserProfileChangedListener;
|
||||
import com.github.dfa.diaspora_android.receivers.OpenExternalLinkReceiver;
|
||||
import com.github.dfa.diaspora_android.receivers.UpdateTitleReceiver;
|
||||
import com.github.dfa.diaspora_android.ui.BadgeDrawable;
|
||||
import com.github.dfa.diaspora_android.ui.ContextMenuWebView;
|
||||
import com.github.dfa.diaspora_android.ui.CustomWebViewClient;
|
||||
import com.github.dfa.diaspora_android.util.CustomTabHelpers.BrowserFallback;
|
||||
|
@ -754,21 +757,16 @@ public class MainActivity extends AppCompatActivity
|
|||
|
||||
@Override
|
||||
public boolean onPrepareOptionsMenu(Menu menu) {
|
||||
Log.i(App.TAG, "MainActivity.onPrepareOptionsMenu()");
|
||||
MenuItem itemNotification = menu.findItem(R.id.action_notifications);
|
||||
if (itemNotification != null) {
|
||||
if (podUserProfile.getNotificationCount() > 0) {
|
||||
itemNotification.setIcon(R.drawable.ic_notifications_colored_48px);
|
||||
} else {
|
||||
itemNotification.setIcon(R.drawable.ic_notifications_white_48px);
|
||||
MenuItem item;
|
||||
|
||||
if ((item = menu.findItem(R.id.action_notifications)) != null) {
|
||||
LayerDrawable icon = (LayerDrawable) item.getIcon();
|
||||
BadgeDrawable.setBadgeCount(this, icon, podUserProfile.getNotificationCount());
|
||||
}
|
||||
|
||||
MenuItem itemConversation = menu.findItem(R.id.action_conversations);
|
||||
if (podUserProfile.getUnreadMessagesCount() > 0) {
|
||||
itemConversation.setIcon(R.drawable.ic_email_colored_48px);
|
||||
} else {
|
||||
itemConversation.setIcon(R.drawable.ic_mail_white_48px);
|
||||
}
|
||||
if ((item = menu.findItem(R.id.action_conversations)) != null) {
|
||||
LayerDrawable icon = (LayerDrawable) item.getIcon();
|
||||
BadgeDrawable.setBadgeCount(this, icon, podUserProfile.getUnreadMessagesCount());
|
||||
}
|
||||
return super.onPrepareOptionsMenu(menu);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,127 @@
|
|||
package com.github.dfa.diaspora_android.ui;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Canvas;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.ColorFilter;
|
||||
import android.graphics.Paint;
|
||||
import android.graphics.PixelFormat;
|
||||
import android.graphics.Rect;
|
||||
import android.graphics.Typeface;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.graphics.drawable.LayerDrawable;
|
||||
import android.support.v4.content.ContextCompat;
|
||||
|
||||
import com.github.dfa.diaspora_android.R;
|
||||
|
||||
public class BadgeDrawable extends Drawable {
|
||||
// Source: http://mobikul.com/adding-badge-count-on-menu-items-like-cart-notification-etc/
|
||||
private static final String BADGE_VALUE_OVERFLOW = "*";
|
||||
|
||||
private Paint badgeBackground;
|
||||
private Paint badgeStroke;
|
||||
private Paint badgeText;
|
||||
private Rect textRect = new Rect();
|
||||
|
||||
private String badgeValue = "";
|
||||
private boolean shouldDraw;
|
||||
|
||||
public BadgeDrawable(Context context) {
|
||||
float textSize = context.getResources().getDimension(R.dimen.textsize_badge_count);
|
||||
|
||||
badgeBackground = new Paint();
|
||||
badgeBackground.setColor(ContextCompat.getColor(context.getApplicationContext(), R.color.accent));
|
||||
badgeBackground.setAntiAlias(true);
|
||||
badgeBackground.setStyle(Paint.Style.FILL);
|
||||
badgeStroke = new Paint();
|
||||
badgeStroke.setColor(ContextCompat.getColor(context.getApplicationContext(), R.color.colorPrimaryDark));
|
||||
badgeStroke.setAntiAlias(true);
|
||||
badgeStroke.setStyle(Paint.Style.FILL);
|
||||
|
||||
badgeText = new Paint();
|
||||
badgeText.setColor(Color.WHITE);
|
||||
badgeText.setTypeface(Typeface.DEFAULT);
|
||||
badgeText.setTextSize(textSize);
|
||||
badgeText.setAntiAlias(true);
|
||||
badgeText.setTextAlign(Paint.Align.CENTER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void draw(Canvas canvas) {
|
||||
if (!shouldDraw) {
|
||||
return;
|
||||
}
|
||||
Rect bounds = getBounds();
|
||||
float width = bounds.right - bounds.left;
|
||||
float height = bounds.bottom - bounds.top;
|
||||
|
||||
// Position the badge in the top-right quadrant of the icon.
|
||||
float radius = ((Math.max(width, height) / 2)) / 2;
|
||||
float centerX = (width - radius - 1) + 5;
|
||||
float centerY = radius - 5;
|
||||
if (badgeValue.length() <= 2) {
|
||||
// Draw badge circle.
|
||||
canvas.drawCircle(centerX, centerY, (int) (radius + 7.5), badgeStroke);
|
||||
canvas.drawCircle(centerX, centerY, (int) (radius + 5.5), badgeBackground);
|
||||
} else {
|
||||
canvas.drawCircle(centerX, centerY, (int) (radius + 8.5), badgeStroke);
|
||||
canvas.drawCircle(centerX, centerY, (int) (radius + 6.5), badgeBackground);
|
||||
//canvas.drawRoundRect(radius, radius, radius, radius, 10, 10, badgeBackground);
|
||||
}
|
||||
// Draw badge count text inside the circle.
|
||||
badgeText.getTextBounds(badgeValue, 0, badgeValue.length(), textRect);
|
||||
float textHeight = textRect.bottom - textRect.top;
|
||||
float textY = centerY + (textHeight / 2f);
|
||||
if (badgeValue.length() > 2)
|
||||
canvas.drawText(BADGE_VALUE_OVERFLOW, centerX, textY, badgeText);
|
||||
else
|
||||
canvas.drawText(badgeValue, centerX, textY, badgeText);
|
||||
}
|
||||
|
||||
/*
|
||||
Sets the count (i.e notifications) to display.
|
||||
*/
|
||||
public void setCount(String count) {
|
||||
badgeValue = count;
|
||||
|
||||
// Only draw a badge if there are notifications.
|
||||
shouldDraw = !count.equalsIgnoreCase("0");
|
||||
invalidateSelf();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setAlpha(int alpha) {
|
||||
// do nothing
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setColorFilter(ColorFilter cf) {
|
||||
// do nothing
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getOpacity() {
|
||||
return PixelFormat.UNKNOWN;
|
||||
}
|
||||
|
||||
public static void setBadgeCount(Context context, LayerDrawable icon, Integer count) {
|
||||
setBadgeCount(context, icon, count.toString());
|
||||
}
|
||||
|
||||
public static void setBadgeCount(Context context, LayerDrawable icon, String count) {
|
||||
|
||||
BadgeDrawable badge;
|
||||
|
||||
// Reuse drawable if possible
|
||||
Drawable reuse = icon.findDrawableByLayerId(R.id.ic_badge);
|
||||
if (reuse != null && reuse instanceof BadgeDrawable) {
|
||||
badge = (BadgeDrawable) reuse;
|
||||
} else {
|
||||
badge = new BadgeDrawable(context);
|
||||
}
|
||||
|
||||
badge.setCount(count);
|
||||
icon.mutate();
|
||||
icon.setDrawableByLayerId(R.id.ic_badge, badge);
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 4.1 KiB |
Before Width: | Height: | Size: 4.1 KiB |
Before Width: | Height: | Size: 4.1 KiB |
Before Width: | Height: | Size: 4.1 KiB |
Before Width: | Height: | Size: 4.1 KiB |
Before Width: | Height: | Size: 363 B |
Before Width: | Height: | Size: 602 B |
Before Width: | Height: | Size: 355 B |
4
app/src/main/res/drawable/ic_arrow_upward_white_48px.xml
Normal file
|
@ -0,0 +1,4 @@
|
|||
<vector android:height="24dp" android:viewportHeight="21.0"
|
||||
android:viewportWidth="21.0" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="#FFFFFF" android:pathData="m2.5,10.5 l1.41,1.41 5.59,-5.58 0,12.17 2,0 0,-12.17 5.58,5.59 1.42,-1.42 -8,-8 -8,8z"/>
|
||||
</vector>
|
7
app/src/main/res/drawable/ic_atsign.xml
Normal file
|
@ -0,0 +1,7 @@
|
|||
<vector android:height="24dp" android:viewportHeight="21.0"
|
||||
android:viewportWidth="21.0" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillAlpha="1" android:fillColor="#ffffff"
|
||||
android:pathData="m20.057,10.205q-0.139,2.406 -1.429,3.801 -1.29,1.386 -3.497,1.386 -2.103,0 -2.812,-1.482 -0.593,0.731 -1.383,1.097 -0.778,0.366 -1.638,0.366 -1.696,0 -2.579,-1.155Q5.847,13.064 6.056,11.129 6.242,9.561 6.974,8.3 7.717,7.039 8.845,6.356 9.983,5.663 11.261,5.663q0.976,0 1.72,0.202 0.755,0.202 1.766,0.837l-0.604,5.418q-0.221,1.905 1.325,1.905 1.185,0 1.94,-1.049 0.767,-1.059 0.837,-2.733 0.198,-3.551 -1.661,-5.437 -1.847,-1.886 -5.565,-1.886 -2.277,0 -4.043,0.943Q5.219,4.806 4.185,6.596 3.151,8.377 3.047,10.658q-0.139,2.319 0.662,4.003 0.813,1.675 2.475,2.55 1.673,0.876 4.078,0.876 0.976,0 2.033,-0.192 1.069,-0.192 1.813,-0.52l0.442,1.318q-0.709,0.385 -1.917,0.616 -1.197,0.241 -2.417,0.241 -2.951,0 -5.066,-1.039Q3.035,17.481 1.978,15.518 0.886,13.487 1.013,10.658 1.153,8.021 2.443,5.923 3.732,3.815 5.963,2.651 8.205,1.486 11.064,1.486q2.893,0 4.973,1.059 2.091,1.049 3.125,3.031 1.034,1.973 0.895,4.629zM8.333,11.129q-0.151,1.309 0.279,1.992 0.43,0.674 1.371,0.674 0.627,0 1.185,-0.452 0.558,-0.462 0.906,-1.261l0.523,-4.744q-0.581,-0.183 -1.127,-0.183 -1.29,0 -2.103,1.01 -0.813,1.001 -1.034,2.964z"
|
||||
android:strokeAlpha="1" android:strokeColor="#00000000"
|
||||
android:strokeLineCap="butt" android:strokeLineJoin="miter" android:strokeWidth="1"/>
|
||||
</vector>
|
|
@ -1,4 +1,4 @@
|
|||
<vector android:height="24dp" android:viewportHeight="24.0"
|
||||
android:viewportWidth="24.0" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="#4CAF50" android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM20,8l-8,5 -8,-5L4,6l8,5 8,-5v2z"/>
|
||||
<path android:fillColor="#FF5300" android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM20,8l-8,5 -8,-5L4,6l8,5 8,-5v2z"/>
|
||||
</vector>
|
||||
|
|
6
app/src/main/res/drawable/ic_launcher.xml
Normal file
|
@ -0,0 +1,6 @@
|
|||
<vector android:height="24dp" android:viewportHeight="20.0"
|
||||
android:viewportWidth="20.0" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillAlpha="1" android:fillColor="#207be6"
|
||||
android:pathData="M10,10m-10,0a10,10 0,1 1,20 0a10,10 0,1 1,-20 0" android:strokeColor="#00000000"/>
|
||||
<path android:fillColor="#fafafa" android:pathData="M11.337,14.123C11.06,13.736 10.626,13.13 10.374,12.778 10.117,12.418 9.908,12.138 9.897,12.138c-0.011,-0 -0.416,0.544 -0.958,1.287 -0.516,0.708 -0.942,1.288 -0.948,1.288 -0.015,0 -1.86,-1.3 -1.865,-1.313 -0.002,-0.007 0.415,-0.619 0.927,-1.361 0.512,-0.742 0.931,-1.36 0.931,-1.375 0,-0.023 -0.166,-0.081 -1.468,-0.515C5.71,9.879 5.042,9.656 5.032,9.652 5.019,9.647 5.095,9.389 5.359,8.558 5.549,7.959 5.708,7.465 5.713,7.459c0.005,-0.006 0.707,0.219 1.559,0.499 0.852,0.28 1.557,0.51 1.565,0.51 0.009,-0 0.019,-0.013 0.022,-0.029 0.003,-0.016 0.011,-0.742 0.016,-1.613 0.006,-0.871 0.015,-1.591 0.021,-1.6 0.008,-0.013 0.248,-0.016 1.127,-0.016 0.614,0 1.123,0.004 1.13,0.01 0.01,0.007 0.027,0.485 0.055,1.561 0.046,1.766 0.047,1.79 0.075,1.79 0.011,0 0.686,-0.226 1.501,-0.502 0.815,-0.276 1.485,-0.498 1.49,-0.492 0.016,0.019 0.685,2.194 0.676,2.202 -0.004,0.004 -0.684,0.237 -1.511,0.517 -1.137,0.385 -1.504,0.514 -1.507,0.531 -0.002,0.012 0.389,0.596 0.886,1.324 0.489,0.716 0.888,1.308 0.886,1.314 -0.005,0.015 -1.836,1.364 -1.852,1.364 -0.006,0 -0.239,-0.317 -0.516,-0.705z"/>
|
||||
</vector>
|
11
app/src/main/res/drawable/ic_mail_white_48px__layer.xml
Normal file
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item
|
||||
android:drawable="@drawable/ic_mail_white_48px"
|
||||
android:gravity="center" />
|
||||
|
||||
<!-- set a place holder Drawable so android:drawable isn't null -->
|
||||
<item
|
||||
android:id="@+id/ic_badge"
|
||||
android:drawable="@drawable/ic_mail_white_48px" />
|
||||
</layer-list>
|
4
app/src/main/res/drawable/ic_mode_edit_white_48px.xml
Normal file
|
@ -0,0 +1,4 @@
|
|||
<vector android:height="24dp" android:viewportHeight="24.0"
|
||||
android:viewportWidth="24.0" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="#FFFFFF" android:pathData="M3,17.25V21h3.75L17.81,9.94l-3.75,-3.75L3,17.25zM20.71,7.04c0.39,-0.39 0.39,-1.02 0,-1.41l-2.34,-2.34c-0.39,-0.39 -1.02,-0.39 -1.41,0l-1.83,1.83 3.75,3.75 1.83,-1.83z"/>
|
||||
</vector>
|
|
@ -1,4 +0,0 @@
|
|||
<vector android:height="24dp" android:viewportHeight="24.0"
|
||||
android:viewportWidth="24.0" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="#4CAF50" android:pathData="M12,22c1.1,0 2,-0.9 2,-2h-4c0,1.1 0.89,2 2,2zM18,16v-5c0,-3.07 -1.64,-5.64 -4.5,-6.32L13.5,4c0,-0.83 -0.67,-1.5 -1.5,-1.5s-1.5,0.67 -1.5,1.5v0.68C7.63,5.36 6,7.92 6,11v5l-2,2v1h16v-1l-2,-2z"/>
|
||||
</vector>
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item
|
||||
android:drawable="@drawable/ic_notifications_white_48px"
|
||||
android:gravity="center" />
|
||||
|
||||
<!-- set a place holder Drawable so android:drawable isn't null -->
|
||||
<item
|
||||
android:id="@+id/ic_badge"
|
||||
android:drawable="@drawable/ic_notifications_white_48px" />
|
||||
</layer-list>
|
4
app/src/main/res/drawable/ic_search_white_48px.xml
Normal file
|
@ -0,0 +1,4 @@
|
|||
<vector android:height="24dp" android:viewportHeight="21.0"
|
||||
android:viewportWidth="21.0" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="#FFFFFF" android:pathData="m14,12.755 l-0.79,0 -0.28,-0.27c0.98,-1.14 1.57,-2.62 1.57,-4.23 0,-3.59 -2.91,-6.5 -6.5,-6.5 -3.59,0 -6.5,2.91 -6.5,6.5 0,3.59 2.91,6.5 6.5,6.5 1.61,0 3.09,-0.59 4.23,-1.57l0.27,0.28 0,0.79 5,4.99 1.49,-1.49 -4.99,-5zM8,12.755c-2.49,0 -4.5,-2.01 -4.5,-4.5 0,-2.49 2.01,-4.5 4.5,-4.5 2.49,0 4.5,2.01 4.5,4.5 0,2.49 -2.01,4.5 -4.5,4.5z"/>
|
||||
</vector>
|
4
app/src/main/res/drawable/ic_stream.xml
Normal file
|
@ -0,0 +1,4 @@
|
|||
<vector android:height="24dp" android:viewportHeight="14.0"
|
||||
android:viewportWidth="14.0" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="#fafafa" android:pathData="m8.307,11.295c-0.278,-0.388 -0.711,-0.993 -0.963,-1.345 -0.257,-0.36 -0.467,-0.64 -0.478,-0.641 -0.011,-0 -0.416,0.544 -0.958,1.287 -0.516,0.708 -0.942,1.288 -0.948,1.288 -0.015,0 -1.86,-1.3 -1.865,-1.313 -0.002,-0.007 0.415,-0.619 0.927,-1.361 0.512,-0.742 0.931,-1.36 0.931,-1.375 0,-0.023 -0.166,-0.081 -1.468,-0.515 -0.807,-0.269 -1.476,-0.492 -1.485,-0.496 -0.013,-0.005 0.063,-0.262 0.327,-1.094 0.19,-0.598 0.349,-1.092 0.354,-1.098 0.005,-0.006 0.707,0.219 1.559,0.499 0.852,0.28 1.557,0.51 1.565,0.51 0.009,-0 0.019,-0.013 0.022,-0.029 0.003,-0.016 0.011,-0.742 0.016,-1.613 0.006,-0.871 0.015,-1.591 0.021,-1.6 0.008,-0.013 0.248,-0.016 1.127,-0.016 0.614,0 1.123,0.004 1.13,0.01 0.01,0.007 0.027,0.485 0.055,1.561 0.046,1.766 0.047,1.79 0.075,1.79 0.011,0 0.686,-0.226 1.501,-0.502 0.815,-0.276 1.485,-0.498 1.49,-0.492 0.016,0.019 0.685,2.194 0.676,2.202 -0.004,0.004 -0.684,0.237 -1.511,0.517 -1.137,0.385 -1.504,0.514 -1.507,0.531 -0.002,0.012 0.389,0.596 0.886,1.324 0.489,0.716 0.888,1.308 0.886,1.314C10.67,10.651 8.839,12 8.823,12c-0.006,0 -0.239,-0.317 -0.516,-0.705z"/>
|
||||
</vector>
|
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 656 B |
15
app/src/main/res/drawable/progressbar.xml
Normal file
|
@ -0,0 +1,15 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:id="@android:id/background">
|
||||
<shape>
|
||||
<solid android:color="@color/colorPrimaryDark"/>
|
||||
</shape>
|
||||
</item>
|
||||
<item android:id="@android:id/progress">
|
||||
<clip>
|
||||
<shape>
|
||||
<solid android:color="@color/colorAccent"/>
|
||||
</shape>
|
||||
</clip>
|
||||
</item>
|
||||
</layer-list>
|
|
@ -18,11 +18,11 @@
|
|||
android:layout_height="?attr/actionBarSize"
|
||||
android:background="?attr/colorPrimary"
|
||||
app:layout_scrollFlags="scroll|enterAlways|snap"
|
||||
app:popupTheme="@style/AppTheme.PopupOverlay" />
|
||||
app:popupTheme="@style/AppTheme.PopupOverlay"/>
|
||||
|
||||
</android.support.design.widget.AppBarLayout>
|
||||
|
||||
<include layout="@layout/main__content" />
|
||||
<include layout="@layout/main__content"/>
|
||||
|
||||
<android.support.design.widget.AppBarLayout
|
||||
android:layout_width="match_parent"
|
||||
|
@ -35,9 +35,10 @@
|
|||
android:id="@+id/toolbar2"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="45dp"
|
||||
android:background="?attr/colorPrimary"
|
||||
android:background="@color/colorPrimary"
|
||||
android:theme="@style/BottomToolbarMenuOverflowStyle"
|
||||
app:layout_scrollFlags="scroll|enterAlways|snap"
|
||||
app:popupTheme="@style/AppTheme.PopupOverlay" />
|
||||
app:popupTheme="@style/Theme.AppCompat.NoActionBar"/>
|
||||
|
||||
</android.support.design.widget.AppBarLayout>
|
||||
|
||||
|
|
|
@ -19,11 +19,11 @@
|
|||
|
||||
<ProgressBar
|
||||
android:id="@+id/progressBar"
|
||||
app:layout_behavior="@string/appbar_scrolling_view_behavior"
|
||||
style="@style/Widget.AppCompat.ProgressBar.Horizontal"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="7dp"
|
||||
android:indeterminate="false"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="-7dp" />
|
||||
android:progressDrawable="@drawable/progressbar"
|
||||
app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
|
||||
|
||||
</RelativeLayout>
|
|
@ -26,11 +26,7 @@
|
|||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentBottom="true"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_marginBottom="15dp"
|
||||
android:shadowColor="@color/black"
|
||||
android:shadowDx="-4"
|
||||
android:shadowDy="4"
|
||||
android:shadowRadius="6"
|
||||
android:layout_marginBottom="30dp"
|
||||
android:text="@string/app_name"
|
||||
android:textAppearance="?android:attr/textAppearanceLarge"
|
||||
android:textColor="@color/white"
|
||||
|
|
|
@ -6,14 +6,14 @@
|
|||
|
||||
<item
|
||||
android:id="@+id/action_search"
|
||||
android:icon="@drawable/fab_search"
|
||||
android:icon="@drawable/ic_search_white_48px"
|
||||
app:showAsAction="always"
|
||||
android:title="@string/action_search_by_tags_or_persons" />
|
||||
|
||||
|
||||
<item
|
||||
android:id="@+id/action_compose"
|
||||
android:icon="@drawable/fab_compose"
|
||||
android:icon="@drawable/ic_mode_edit_white_48px"
|
||||
app:showAsAction="always"
|
||||
android:title="@string/action_compose_new_post" />
|
||||
|
||||
|
@ -31,7 +31,7 @@
|
|||
<!-- Keep right most -->
|
||||
<item
|
||||
android:id="@+id/action_go_to_top"
|
||||
android:icon="@drawable/fab_top"
|
||||
android:icon="@drawable/ic_arrow_upward_white_48px"
|
||||
android:title="@string/action_go_to_top"
|
||||
app:showAsAction="always"/>
|
||||
|
||||
|
|
|
@ -5,13 +5,13 @@
|
|||
|
||||
<item
|
||||
android:id="@+id/action_notifications"
|
||||
android:icon="@drawable/ic_notifications_white_48px"
|
||||
android:icon="@drawable/ic_notifications_white_48px__layer"
|
||||
android:title="@string/notifications"
|
||||
app:showAsAction="always" />
|
||||
|
||||
<item
|
||||
android:id="@+id/action_conversations"
|
||||
android:icon="@drawable/ic_mail_white_48px"
|
||||
android:icon="@drawable/ic_mail_white_48px__layer"
|
||||
android:title="@string/conversations"
|
||||
app:showAsAction="always" />
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
<group android:checkableBehavior="none">
|
||||
<item
|
||||
android:id="@+id/nav_stream"
|
||||
android:icon="@drawable/jb_stream"
|
||||
android:icon="@drawable/ic_stream"
|
||||
android:title="@string/nav_stream" />
|
||||
|
||||
<item
|
||||
|
@ -38,7 +38,7 @@
|
|||
|
||||
<item
|
||||
android:id="@+id/nav_mentions"
|
||||
android:icon="@drawable/jb_mentions"
|
||||
android:icon="@drawable/ic_atsign"
|
||||
android:title="@string/nav_mentions" />
|
||||
|
||||
<item
|
||||
|
|
|
@ -8,15 +8,17 @@
|
|||
<string name="fragment_debug__section_app">Anwendung</string>
|
||||
<string name="fragment_debug__section_device">Gerät</string>
|
||||
<string name="fragment_debug__section_pod">Diaspora Pod</string>
|
||||
<string name="fragment_debug__section_log">Debug-Protokoll</string>
|
||||
<string name="fragment_debug__app_version">App Version: %1$s</string>
|
||||
<string name="fragment_debug__package_name">Paketname: %1$s</string>
|
||||
<string name="fragment_debug__android_version">Android Version: %1$s</string>
|
||||
<string name="fragment_debug__device_name">Gerätename: %1$s</string>
|
||||
<string name="fragment_debug__pod_domain">Pod-Adresse: %1$s</string>
|
||||
<string name="fragment_debug__toast_log_copied">Debug-Protokoll in Zwischenablage kopiert</string>
|
||||
<string name="fragment_license__3rd_party_libs_title">Verwendete Drittanbieter-Bibliotheken</string>
|
||||
<!-- About (large amount of text) -->
|
||||
<string name="fragment_about__about_content">
|
||||
DiasporaForAndroid ist dein Begleiter auf deinen Streifzügen durch das soziale Netzwerk Diaspora. Es bietet dir zusätzliche Features wie nützliche Toolbars und Unterstützung für Proxyserver wie etwa das Tornetzwerk. <br><br>
|
||||
DiasporaForAndroid ist dein Begleiter auf deinen Streifzügen durch das soziale Netzwerk Diaspora. Er bietet dir zusätzliche Features wie nützliche Toolbars und Unterstützung für Proxyserver wie etwa das Tornetzwerk. <br><br>
|
||||
|
||||
Diaspora benutzt Markdown-Formatierung für deine Beiträge. Weitere Informationen dazu findest du auf<br>
|
||||
https://wiki.diasporafoundation.org/Markdown_reference_guide <br> <br>
|
||||
|
|
|
@ -26,6 +26,7 @@
|
|||
<string name="pref_title__proxy_port">Port</string>
|
||||
<!-- Diaspora Settings -->
|
||||
<string name="pref_title__personal_settings">Persönliche Einstellungen</string>
|
||||
<string name="pref_desc__personal_settings">Öffne die Einstellungen deines Diaspora Accounts</string>
|
||||
<string name="pref_title__manage_contacts">Kontakte</string>
|
||||
<string name="pref_desc__manage_contacts">Bearbeite deine Kontaktliste</string>
|
||||
<string name="pref_title__manage_tags">Tags verwalten</string>
|
||||
|
|
|
@ -65,11 +65,8 @@
|
|||
Wenn du den Zugriff verweigerst und die Funktion später doch nutzen willst, kannst du die Berechtigung
|
||||
nachträglich erteilen. Öffne dafür: Systemeinstellungen - Apps - Diaspora. Im Bereich Berechtigungen kannst
|
||||
dann die entsprechende Einstellung vornehmen.</string>
|
||||
<string name="permissions_image">Du musst der App Zugriff auf den Gerätespeicher gewähren, damit das Bild
|
||||
gespeichert werden kann. Danach solltest du die Anwendung komplett schließen oder das Gerät neu starten.
|
||||
Wenn du den Zugriff verweigerst und die Funktion später doch nutzen willst, kannst du die Berechtigung
|
||||
nachträglich erteilen. Öffne dafür: Systemeinstellungen - Apps - Diaspora. Im Bereich Berechtigungen kannst
|
||||
dann die entsprechende Einstellung vornehmen.</string>
|
||||
<string name="permissions_image">Du musst der App Zugriff auf den Gerätespeicher gewähren, damit Bilder gespeichert oder hochgeladen werden können. Danach solltest du die Anwendung komplett schließen oder das Telefon neu starten. Wenn du den Zugriff verweigerst und die Funktion später doch nutzen willst, kannst du die Berechtigung
|
||||
nachträglich erteilen. Öffne dafür: Systemeinstellungen - Apps - Diaspora. Im Bereich Berechtigungen kannst dann die entsprechende Einstellung vornehmen.</string>
|
||||
<string name="permission_denied">Berechtigung verweigert.</string>
|
||||
<string name="permission_granted_try_again">Berechtigung erteilt. Bitte versuche es erneut.</string>
|
||||
</resources>
|
||||
|
|
|
@ -59,7 +59,6 @@
|
|||
<string name="all_tags">Todas las etiquetas</string>
|
||||
<!-- Permissions -->
|
||||
<string name="permissions_screenshot">Debe conceder \"Permiso de Almacenamiento de Información\" para guardar capturas de pantalla. Después debe cerrar completamente la aplicación o reiniciar el teléfono. Si usted no permite el acceso al almacenamiento pero desea utilizar la función de captura de pantalla en un momento posterior, puede conceder el permiso más adelante. Por favor vaya a: ajustes del sistema - aplicaciones - Diaspora. En la sección de permisos puede conceder el \"permiso de almacenamiento de escritura\".</string>
|
||||
<string name="permissions_image">Debe conceder \"Permiso de Almacenamiento de Información\" para guardar imagenes. Después, debe cerrar completamete la aplicación o reiniciar el teléfono. Si usted no permite el acceso de almacenamiento pero quiere guardar imagenes en otro momento, puede conceder el permiso más adelante. Por favor abrir: ajustes del sistema - aplicaciones - Diaspora. En la sección de permisos puede conceder el \"permiso de almacenamiento de escritura\".</string>
|
||||
<string name="permission_denied">Permiso denegado.</string>
|
||||
<string name="permission_granted_try_again">Permiso concedido. Por favor, inténtelo de nuevo.</string>
|
||||
</resources>
|
||||
|
|
|
@ -6,10 +6,15 @@
|
|||
<string name="about_activity__title_about_license">Licence</string>
|
||||
<string name="about_activity__title_debug_info">Déboguer</string>
|
||||
<string name="fragment_debug__section_app">Application</string>
|
||||
<string name="fragment_debug__section_device">Appareil</string>
|
||||
<string name="fragment_debug__section_pod">Pod diaspora</string>
|
||||
<string name="fragment_debug__section_log">Journal de débogage</string>
|
||||
<string name="fragment_debug__app_version">Version app : %1$s</string>
|
||||
<string name="fragment_debug__package_name">Nom du paquet : %1$s</string>
|
||||
<string name="fragment_debug__android_version">Version Android : %1$s</string>
|
||||
<string name="fragment_debug__device_name">Nom de l\'appareil : %1$s</string>
|
||||
<string name="fragment_debug__pod_domain">Adresse du pod : %1$s</string>
|
||||
<string name="fragment_debug__toast_log_copied">Journal de débogage copié dans le presse-papiers</string>
|
||||
<string name="fragment_license__3rd_party_libs_title">Bibliothèques tierces utilisées</string>
|
||||
<!-- About (large amount of text) -->
|
||||
<string name="fragment_about__about_content">
|
||||
|
|
|
@ -26,6 +26,7 @@
|
|||
<string name="pref_title__proxy_port">Port</string>
|
||||
<!-- Diaspora Settings -->
|
||||
<string name="pref_title__personal_settings">Paramètres personnels</string>
|
||||
<string name="pref_desc__personal_settings">Ouvrir vos paramètres de compte diaspora</string>
|
||||
<string name="pref_title__manage_contacts">Contacts</string>
|
||||
<string name="pref_desc__manage_contacts">Gérer votre liste de contacts</string>
|
||||
<string name="pref_title__manage_tags">Gérer les Hashtags</string>
|
||||
|
|
|
@ -61,7 +61,7 @@
|
|||
<string name="all_tags">Tout Tags</string>
|
||||
<!-- Permissions -->
|
||||
<string name="permissions_screenshot">Vous devez autoriser \"Modifier ou supprimer le contenu de la carte Sd \" pour sauvegarder les captures d\'écrans. Ensuite, vous devriez fermer l\'application ou redémarrer votre téléphone. Si vous n\'avez pas autorisé l\'accès à l\'espace de stockage mais que vous souhaitez utiliser la fonctionnalité de prise de capture d\'écran plus tard, vous pouvez donner la permission plus tard. Veuillez ouvrir : Paramètres - applications - Diaspora. Dans la section Autorisations, vous pouvez autoriser \"Modifier ou supprimer le contenu de la carte Sd \".</string>
|
||||
<string name="permissions_image">Vous devez autoriser \"Modifier ou supprimer le contenu de la carte Sd \" pour sauvegarder les images. Ensuite, vous devriez fermer l\'application ou redémarrer votre téléphone. Si vous n\'avez pas autorisé l\'accès à l\'espace de stockage mais que vous souhaitez sauvegarder des images ultérieurement, vous pouvez donner la permission plus tard. Veuillez ouvrir : Paramètres - applications - Diaspora. Dans la section Autorisations, vous pouvez autoriser \"Modifier ou supprimer le contenu de la carte Sd \".</string>
|
||||
<string name="permissions_image">Vous devez autoriser \"Modifier ou supprimer le contenu de la carte Sd \" pour sauvegarder/téléverser les images. Ensuite, vous devriez fermer l\'application ou redémarrer votre téléphone. Si vous n\'avez pas autorisé l\'accès à l\'espace de stockage mais que vous souhaitez sauvegarder des images ultérieurement, vous pouvez donner la permission plus tard. Veuillez ouvrir : Paramètres - applications - Diaspora. Dans la section Autorisations, vous pouvez autoriser \"Modifier ou supprimer le contenu de la carte Sd \".</string>
|
||||
<string name="permission_denied">Permission refusée.</string>
|
||||
<string name="permission_granted_try_again">Permission accordée. Veuillez réessayer.</string>
|
||||
</resources>
|
||||
|
|
|
@ -8,11 +8,13 @@
|
|||
<string name="fragment_debug__section_app">Applicazione</string>
|
||||
<string name="fragment_debug__section_device">Dispositivo</string>
|
||||
<string name="fragment_debug__section_pod">Pod Diaspora</string>
|
||||
<string name="fragment_debug__section_log">Log di debug</string>
|
||||
<string name="fragment_debug__app_version">Versione app: %1$s</string>
|
||||
<string name="fragment_debug__package_name">Nome pacchetto: %1$s</string>
|
||||
<string name="fragment_debug__android_version">Versione Android: %1$s</string>
|
||||
<string name="fragment_debug__device_name">Nome dispositivo: %1$s</string>
|
||||
<string name="fragment_debug__pod_domain">Dominio pod: %1$s</string>
|
||||
<string name="fragment_debug__toast_log_copied">Log di debug copiato negli appunti</string>
|
||||
<string name="fragment_license__3rd_party_libs_title">Librerie di terze parti usate</string>
|
||||
<!-- About (large amount of text) -->
|
||||
<string name="fragment_about__about_content">
|
||||
|
|
|
@ -64,8 +64,9 @@
|
|||
chiudere completamente l\'app o riavviare il dispositivo. Se non permetti l\'accesso alla memoria ma vuoi usare la
|
||||
funzione degli screenshot più avanti, puoi garantire il permesso successivamente. Vai su: Impostazioni - App -
|
||||
Diaspora. Nella sezione dei permessi puoi garantire il permesso per la scrittura sul dispositivo.</string>
|
||||
<string name="permissions_image">Devi garantire il permesso di accesso alla memoria per poter salvare le immagini. Dopodiché devi
|
||||
chiudere completamente l\'app o riavviare il dispositivo. Se non permetti l\'accesso alla memoria ma vuoi salvare le immagini più avanti, puoi garantire il permesso successivamente. Vai su: Impostazioni - App -
|
||||
<string name="permissions_image">Devi garantire il permesso di accesso alla memoria per poter salvare e caricare le immagini. Dopodiché devi
|
||||
chiudere completamente l\'app o riavviare il dispositivo. Se non permetti l\'accesso alla memoria ma vuoi
|
||||
salvare le immagini più avanti, puoi garantire il permesso successivamente. Vai su: Impostazioni - App -
|
||||
Diaspora. Nella sezione dei permessi puoi garantire il permesso per la scrittura sul dispositivo.</string>
|
||||
<string name="permission_denied">Permesso negato.</string>
|
||||
<string name="permission_granted_try_again">Permesso garantito. Si prega di riprovare.</string>
|
||||
|
|
|
@ -6,10 +6,15 @@
|
|||
<string name="about_activity__title_about_license">ライセンス</string>
|
||||
<string name="about_activity__title_debug_info">デバッグ</string>
|
||||
<string name="fragment_debug__section_app">アプリケーション</string>
|
||||
<string name="fragment_debug__section_device">デバイス</string>
|
||||
<string name="fragment_debug__section_pod">ダイアスポラ ポッド</string>
|
||||
<string name="fragment_debug__section_log">デバッグログ</string>
|
||||
<string name="fragment_debug__app_version">アプリバージョン: %1$s</string>
|
||||
<string name="fragment_debug__package_name">パッケージ名: %1$s</string>
|
||||
<string name="fragment_debug__android_version">Android バージョン: %1$s</string>
|
||||
<string name="fragment_debug__device_name">デバイス名: %1$s</string>
|
||||
<string name="fragment_debug__pod_domain">ポッドドメイン: %1$s</string>
|
||||
<string name="fragment_debug__toast_log_copied">デバッグログをクリップボードにコピーしました</string>
|
||||
<string name="fragment_license__3rd_party_libs_title">使用したサードパーティ ライブラリー</string>
|
||||
<!-- About (large amount of text) -->
|
||||
<string name="fragment_about__about_content">
|
||||
|
|
|
@ -61,7 +61,7 @@
|
|||
<string name="all_tags">すべてのタグ</string>
|
||||
<!-- Permissions -->
|
||||
<string name="permissions_screenshot">スクリーン ショットを保存するために、\"ストレージのアクセス許可\" を付与する必要があります。その後、完全にアプリを閉じるか、携帯電話を再起動する必要があります。ストレージへのアクセスを許可しないで、後でスクリーン ショット機能を使用する場合は、後でアクセス許可を付与することができます。その場合: システム設定 - アプリ - Diaspora を開いて、アクセス許可のセクションで、\"ストレージの書き込みアクセス許可\" を付与することができます。</string>
|
||||
<string name="permissions_image">画像を保存するために、\"ストレージのアクセス許可\" を付与する必要があります。その後、完全にアプリを閉じるか、携帯電話を再起動する必要があります。ストレージへのアクセスを許可しないで、後で画像を保存したい場合は、後でアクセス許可を付与することができます。その場合: システム設定 - アプリ - Diaspora を開いて、アクセス許可のセクションで、\"ストレージの書き込みアクセス許可\" を付与することができます。</string>
|
||||
<string name="permissions_image">画像を保存/アップロードするために、\"ストレージのアクセス許可\" を付与する必要があります。その後、完全にアプリを閉じるか、携帯電話を再起動する必要があります。ストレージへのアクセスを許可しないで、後で画像を保存したい場合は、後でアクセス許可を付与することができます。その場合: システム設定 - アプリ - Diaspora を開いて、アクセス許可のセクションで、\"ストレージの書き込みアクセス許可\" を付与することができます。</string>
|
||||
<string name="permission_denied">アクセスが拒否されました。</string>
|
||||
<string name="permission_granted_try_again">アクセスを許可しました。もう一度やり直してください。</string>
|
||||
</resources>
|
||||
|
|
|
@ -5,14 +5,14 @@
|
|||
<color name="colorAccent">@color/accent</color>
|
||||
|
||||
<!-- Colors from Palette -->
|
||||
<color name="primary">#3F51B5</color>
|
||||
<color name="primary_dark">#303F9F</color>
|
||||
<color name="primary_light">#C5CAE9</color>
|
||||
<color name="accent">#4CAF50</color>
|
||||
<color name="primary">#207be6</color>
|
||||
<color name="primary_dark">#195ed2</color>
|
||||
<color name="primary_light">#BBDEFB</color>
|
||||
<color name="accent">#FF5300</color>
|
||||
<color name="primary_text">#212121</color>
|
||||
<color name="secondary_text">#757575</color>
|
||||
<color name="secondary_text">#727272</color>
|
||||
<color name="icons">#FFFFFF</color>
|
||||
<color name="divider">#BDBDBD</color>
|
||||
<color name="divider">#B6B6B6</color>
|
||||
<!-- End colors from Palette -->
|
||||
|
||||
<color name="white">#ffffff</color>
|
||||
|
|
|
@ -11,4 +11,7 @@
|
|||
<!-- Per the design guidelines, navigation drawers should be between 240dp and 320dp:
|
||||
https://developer.android.com/design/patterns/navigation-drawer.html -->
|
||||
<dimen name="navigation_drawer_width">250dp</dimen>
|
||||
|
||||
|
||||
<dimen name="textsize_badge_count">11sp</dimen>
|
||||
</resources>
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
<item name="colorPrimary">@color/colorPrimary</item>
|
||||
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
|
||||
<item name="colorAccent">@color/colorAccent</item>
|
||||
<item name="actionMenuTextColor">@color/colorAccent</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.NoActionBar">
|
||||
|
@ -17,4 +18,13 @@
|
|||
|
||||
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
|
||||
|
||||
<style name="BottomToolbarMenuOverflowStyle" parent="Theme.AppCompat.NoActionBar">
|
||||
<!-- Text in overflow -->
|
||||
<item name="android:textColorPrimary">@color/primary_text</item>
|
||||
<!-- overflow icon (three vertical dots) -->
|
||||
<item name="android:textColorSecondary">@color/white</item>
|
||||
<!-- popup background color -->
|
||||
<item name="android:background">@color/white</item>
|
||||
</style>
|
||||
|
||||
</resources>
|
||||
|
|