1
0
Fork 0
mirror of https://github.com/gsantner/dandelion synced 2024-06-26 13:34:52 +02:00

Merge branch master into customTabs

This commit is contained in:
Gregor Santner 2016-09-18 20:15:59 +02:00
commit 3af1d120d7
44 changed files with 289 additions and 74 deletions

View file

@ -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" />

View file

@ -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;
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_notifications)) != null) {
LayerDrawable icon = (LayerDrawable) item.getIcon();
BadgeDrawable.setBadgeCount(this, icon, podUserProfile.getNotificationCount());
}
if ((item = menu.findItem(R.id.action_conversations)) != null) {
LayerDrawable icon = (LayerDrawable) item.getIcon();
BadgeDrawable.setBadgeCount(this, icon, podUserProfile.getUnreadMessagesCount());
}
return super.onPrepareOptionsMenu(menu);
}

View file

@ -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);
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 363 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 602 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 355 B

View 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>

View 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>

View file

@ -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>

View 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>

View 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>

View 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>

View file

@ -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>

View 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_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>

View 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>

View 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>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 656 B

View 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>

View file

@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".activity.MainActivity">
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".activity.MainActivity">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
@ -12,17 +12,17 @@
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways|snap"
app:popupTheme="@style/AppTheme.PopupOverlay" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways|snap"
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>

View file

@ -1,13 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/content_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context=".activity.MainActivity"
tools:showIn="@layout/main__app_bar">
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/content_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context=".activity.MainActivity"
tools:showIn="@layout/main__app_bar">
<FrameLayout
android:id="@+id/placeholder_webview"
@ -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>

View file

@ -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"

View file

@ -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"/>

View file

@ -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" />

View file

@ -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

View file

@ -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. &lt;br>&lt;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. &lt;br>&lt;br>
Diaspora benutzt Markdown-Formatierung für deine Beiträge. Weitere Informationen dazu findest du auf&lt;br>
https://wiki.diasporafoundation.org/Markdown_reference_guide &lt;br> &lt;br>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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">

View file

@ -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>

View file

@ -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>

View file

@ -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">

View file

@ -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>

View file

@ -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">

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>