Changed Logo and cleaned up code a bit
|
@ -0,0 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="WizardSettings">
|
||||
<option name="children">
|
||||
<map>
|
||||
<entry key="vectorWizard">
|
||||
<value>
|
||||
<PersistentState>
|
||||
<option name="children">
|
||||
<map>
|
||||
<entry key="vectorAssetStep">
|
||||
<value>
|
||||
<PersistentState>
|
||||
<option name="values">
|
||||
<map>
|
||||
<entry key="assetSourceType" value="FILE" />
|
||||
<entry key="outputName" value="ic_launcher" />
|
||||
<entry key="sourceFile" value="$PROJECT_DIR$/../DisIcons/Nomad.svg" />
|
||||
</map>
|
||||
</option>
|
||||
</PersistentState>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
</PersistentState>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
|
@ -18,7 +18,7 @@ We are basing our work on the dandelion* app
|
|||
The app is developed as a WebApp
|
||||
|
||||
Why is a WebApp better than using the mobile site on a browser?
|
||||
Basically it provides better integration with the system (events coming into and going out of the app), notifications, customized interface and functions and a nice little icon that takes you directly to your favorite social network :)
|
||||
Basically it provides better integration with the system (events coming into and going out of the app), customized interface and functions and a nice little icon that takes you directly to your favorite social network :)
|
||||
|
||||
#### Device Requirements
|
||||
The minimum Android version supported is Jelly Bean, Android v4.2.0 / API 17
|
||||
|
|
28
app/app.iml
|
@ -126,6 +126,34 @@
|
|||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/build-info" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/builds" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/check-manifest" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-classes" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-runtime-classes" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-verifier" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-apk" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-resources" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/javaPrecompile" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/lint" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifest-checker" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/prebuild" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/processing-tools" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/reload-dex" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/resources" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/shaders" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/split-apk" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/splits-support" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/outputs" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/tmp" />
|
||||
</content>
|
||||
|
|
|
@ -19,8 +19,8 @@ android {
|
|||
resValue "string", "manifest_package_id", "com.dfa.hubzilla_android"
|
||||
|
||||
applicationId "com.dfa.hubzilla_android"
|
||||
versionName "0.0.6"
|
||||
versionCode 37
|
||||
versionName "0.8.8"
|
||||
versionCode 38
|
||||
|
||||
|
||||
vectorDrawables.useSupportLibrary = true
|
||||
|
|
|
@ -1,211 +0,0 @@
|
|||
/*
|
||||
This file is part of the dandelion*.
|
||||
|
||||
dandelion* is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
dandelion* is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with the dandelion*.
|
||||
|
||||
If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
package com.dfa.hubzilla_android.activity;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.PorterDuff;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.v7.widget.AppCompatImageView;
|
||||
import android.support.v7.widget.LinearLayoutManager;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.dfa.hubzilla_android.App;
|
||||
import com.dfa.hubzilla_android.R;
|
||||
import com.dfa.hubzilla_android.data.DiasporaAspect;
|
||||
import com.dfa.hubzilla_android.listener.OnSomethingClickListener;
|
||||
import com.dfa.hubzilla_android.ui.theme.ThemedFragment;
|
||||
import com.dfa.hubzilla_android.util.AppSettings;
|
||||
import com.dfa.hubzilla_android.util.ContextUtils;
|
||||
import com.dfa.hubzilla_android.util.DiasporaUrlHelper;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
|
||||
/**
|
||||
* Fragment that shows a list of the Aspects
|
||||
*/
|
||||
/**
|
||||
public class AspectListFragment extends ThemedFragment implements OnSomethingClickListener<Object> {
|
||||
|
||||
public static final String TAG = "com.dfa.hubzilla_android.AspectListFragment";
|
||||
|
||||
@BindView(R.id.fragment_list__recycler_view)
|
||||
public RecyclerView aspectsRecyclerView;
|
||||
|
||||
@BindView(R.id.fragment_list__spacer)
|
||||
public View space;
|
||||
|
||||
@BindView(R.id.fragment_list__root)
|
||||
public RelativeLayout rootView;
|
||||
|
||||
protected App app;
|
||||
protected DiasporaUrlHelper urls;
|
||||
|
||||
@Override
|
||||
protected int getLayoutResId() {
|
||||
return R.layout.recycler_list__fragment;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
ButterKnife.bind(this, view);
|
||||
app = (App) getActivity().getApplication();
|
||||
AppSettings appSettings = app.getSettings();
|
||||
urls = new DiasporaUrlHelper(appSettings);
|
||||
|
||||
aspectsRecyclerView.setHasFixedSize(true);
|
||||
aspectsRecyclerView.setNestedScrollingEnabled(false);
|
||||
|
||||
RecyclerView.LayoutManager layoutManager = new LinearLayoutManager(getContext());
|
||||
aspectsRecyclerView.setLayoutManager(layoutManager);
|
||||
|
||||
final AspectAdapter adapter = new AspectAdapter(appSettings, this);
|
||||
aspectsRecyclerView.setAdapter(adapter);
|
||||
|
||||
//Set window title
|
||||
getActivity().setTitle(R.string.nav_aspects);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getFragmentTag() {
|
||||
return TAG;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onBackPressed() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSomethingClicked(Object null1, Integer null2, String aspectId) {
|
||||
((MainActivity) getActivity()).openDiasporaUrl(urls.getAspectUrl(aspectId));
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void applyColorToViews() {
|
||||
aspectsRecyclerView.invalidate();
|
||||
if (getAppSettings().isAmoledColorMode()) {
|
||||
rootView.setBackgroundColor(Color.BLACK);
|
||||
space.setBackgroundColor(Color.BLACK);
|
||||
}
|
||||
}
|
||||
|
||||
public static class AspectAdapter extends RecyclerView.Adapter<AspectAdapter.ViewHolder> {
|
||||
private boolean isAmoledColorMode;
|
||||
private final AppSettings appSettings;
|
||||
private final DiasporaAspect[] aspectList;
|
||||
private final List<String> aspectFavsList;
|
||||
private final OnSomethingClickListener<Object> aspectClickedListener;
|
||||
|
||||
static class ViewHolder extends RecyclerView.ViewHolder {
|
||||
@BindView(R.id.recycler_view__list_item__text)
|
||||
public TextView title;
|
||||
@BindView(R.id.recycler_view__list_item__favourite)
|
||||
AppCompatImageView favouriteImage;
|
||||
@BindView(R.id.recycler_view__list_item__root)
|
||||
RelativeLayout root;
|
||||
|
||||
ViewHolder(View v) {
|
||||
super(v);
|
||||
ButterKnife.bind(this, v);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
AspectAdapter(AppSettings appSettings, OnSomethingClickListener<Object> aspectClickedListener) {
|
||||
this.appSettings = appSettings;
|
||||
this.aspectList = appSettings.getAspects();
|
||||
this.aspectFavsList = new ArrayList<>(Arrays.asList(appSettings.getAspectFavs()));
|
||||
this.aspectClickedListener = aspectClickedListener;
|
||||
this.isAmoledColorMode = appSettings.isAmoledColorMode();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return aspectList.length;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AspectAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
|
||||
View v = LayoutInflater.from(parent.getContext())
|
||||
.inflate(R.layout.recycler_list__list_item_with_fav, parent, false);
|
||||
return new ViewHolder(v);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(final ViewHolder holder, int position) {
|
||||
// Alternating colors
|
||||
final Context c = holder.root.getContext();
|
||||
final DiasporaAspect aspect = aspectList[position];
|
||||
holder.title.setText(aspect.name);
|
||||
if (position % 2 == 1) {
|
||||
holder.root.setBackgroundColor(isAmoledColorMode ? Color.BLACK : ContextUtils.get().rcolor(R.color.alternate_row_color));
|
||||
holder.title.setTextColor(isAmoledColorMode ? Color.GRAY : Color.BLACK);
|
||||
} else {
|
||||
holder.root.setBackgroundColor(isAmoledColorMode ? Color.BLACK : Color.WHITE);
|
||||
holder.title.setTextColor(isAmoledColorMode ? Color.GRAY : Color.BLACK);
|
||||
}
|
||||
|
||||
// Favourite (Star) Image
|
||||
applyFavouriteImage(holder.favouriteImage, isAspectFaved(aspect.name));
|
||||
|
||||
// Click on fav button
|
||||
holder.favouriteImage.setOnClickListener(new View.OnClickListener() {
|
||||
public void onClick(View v) {
|
||||
if (isAspectFaved(aspect.name)) {
|
||||
aspectFavsList.remove(aspectFavsList.indexOf(aspect.name));
|
||||
} else {
|
||||
aspectFavsList.add(aspect.name);
|
||||
}
|
||||
appSettings.setAspectFavs(aspectFavsList);
|
||||
applyFavouriteImage(holder.favouriteImage, isAspectFaved(aspect.name));
|
||||
}
|
||||
});
|
||||
|
||||
holder.root.setOnClickListener(new View.OnClickListener() {
|
||||
public void onClick(View v) {
|
||||
aspectClickedListener.onSomethingClicked(null, null, aspect.id + "");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private boolean isAspectFaved(String tag) {
|
||||
return aspectFavsList.contains(tag);
|
||||
}
|
||||
|
||||
private void applyFavouriteImage(AppCompatImageView imageView, boolean isFaved) {
|
||||
imageView.setImageResource(isFaved ? R.drawable.ic_star_filled_48px : R.drawable.ic_star_border_black_48px);
|
||||
imageView.setColorFilter(isFaved ? appSettings.getAccentColor() : (isAmoledColorMode ? Color.GRAY : 0), PorterDuff.Mode.SRC_ATOP);
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
|
@ -27,7 +27,6 @@ import android.content.IntentFilter;
|
|||
import android.content.pm.PackageManager;
|
||||
import android.content.res.ColorStateList;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.drawable.LayerDrawable;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
|
@ -45,7 +44,6 @@ import android.support.v7.app.ActionBar;
|
|||
import android.support.v7.app.ActionBarDrawerToggle;
|
||||
import android.support.v7.app.AlertDialog;
|
||||
import android.support.v7.widget.Toolbar;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
|
@ -69,7 +67,6 @@ import com.dfa.hubzilla_android.listener.DiasporaUserProfileChangedListener;
|
|||
import com.dfa.hubzilla_android.listener.IntellihideToolbarActivityListener;
|
||||
import com.dfa.hubzilla_android.receiver.OpenExternalLinkReceiver;
|
||||
import com.dfa.hubzilla_android.receiver.UpdateTitleReceiver;
|
||||
import com.dfa.hubzilla_android.ui.BadgeDrawable;
|
||||
import com.dfa.hubzilla_android.ui.PodSelectionDialog;
|
||||
import com.dfa.hubzilla_android.ui.theme.ThemeHelper;
|
||||
import com.dfa.hubzilla_android.ui.theme.ThemedActivity;
|
||||
|
@ -90,6 +87,7 @@ import com.dfa.hubzilla_android.web.custom_tab.CustomTabActivityHelper;
|
|||
import net.opoc.format.markdown.SimpleMarkdownParser;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Objects;
|
||||
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
|
@ -262,20 +260,14 @@ public class MainActivity extends ThemedActivity
|
|||
//Setup snackbar
|
||||
snackbarExitApp = Snackbar
|
||||
.make(fragmentContainer, R.string.confirm_exit, Snackbar.LENGTH_LONG)
|
||||
.setAction(android.R.string.yes, new View.OnClickListener() {
|
||||
public void onClick(View view) {
|
||||
finish();
|
||||
moveTaskToBack(true);
|
||||
}
|
||||
.setAction(android.R.string.yes, view -> {
|
||||
finish();
|
||||
moveTaskToBack(true);
|
||||
});
|
||||
snackbarLastVisitedTimestampInStream =
|
||||
Snackbar.make(fragmentContainer,
|
||||
R.string.jump_to_last_visited_timestamp_in_stream, Snackbar.LENGTH_LONG)
|
||||
.setAction(android.R.string.yes, new View.OnClickListener() {
|
||||
public void onClick(View view) {
|
||||
openDiasporaUrl(urls.getStreamWithTimestampUrl(diasporaUserProfile.getLastVisitedPositionInStream()));
|
||||
}
|
||||
});
|
||||
.setAction(android.R.string.yes, view -> openDiasporaUrl(urls.getStreamWithTimestampUrl(diasporaUserProfile.getLastVisitedPositionInStream())));
|
||||
snackbarNoInternet = Snackbar.make(fragmentContainer, R.string.no_internet, Snackbar.LENGTH_LONG);
|
||||
|
||||
// Load app settings
|
||||
|
@ -305,16 +297,6 @@ public class MainActivity extends ThemedActivity
|
|||
BrowserFragment bf = new BrowserFragment();
|
||||
fm.beginTransaction().add(bf, fragmentTag).commit();
|
||||
return bf;
|
||||
/** case TagListFragment.TAG:
|
||||
* TagListFragment hlf = new TagListFragment();
|
||||
* fm.beginTransaction().add(hlf, fragmentTag).commit();
|
||||
* return hlf;
|
||||
|
||||
case AspectListFragment.TAG:
|
||||
AspectListFragment alf = new AspectListFragment();
|
||||
fm.beginTransaction().add(alf, fragmentTag).commit();
|
||||
return alf;
|
||||
**/
|
||||
case PodSelectionFragment.TAG:
|
||||
PodSelectionFragment psf = new PodSelectionFragment();
|
||||
fm.beginTransaction().add(psf, fragmentTag).commit();
|
||||
|
@ -343,8 +325,9 @@ public class MainActivity extends ThemedActivity
|
|||
}, 1000);
|
||||
return;
|
||||
}
|
||||
if (_appSettings.getPod() != null && _appSettings.getPod().getPodUrl() != null && _appSettings.getPod().getPodUrl().getBaseUrl() != null
|
||||
&& url.startsWith(_appSettings.getPod().getPodUrl().getBaseUrl()) && !url.startsWith("https://dia.so/")) {
|
||||
assert url != null;
|
||||
if ((_appSettings.getPod() != null) && (_appSettings.getPod().getPodUrl() != null) && (_appSettings.getPod().getPodUrl().getBaseUrl() != null)
|
||||
&& url.startsWith(_appSettings.getPod().getPodUrl().getBaseUrl())) {
|
||||
DiasporaStreamFragment streamFragment = (DiasporaStreamFragment) getFragment(DiasporaStreamFragment.TAG);
|
||||
showFragment(streamFragment);
|
||||
showLastVisitedTimestampMessageIfNeeded(url);
|
||||
|
@ -399,12 +382,10 @@ public class MainActivity extends ThemedActivity
|
|||
navProfilePictureArea = ButterKnife.findById(navHeader, R.id.nav_profile_picture);
|
||||
navDrawerLayout = ButterKnife.findById(navHeader, R.id.nav_drawer);
|
||||
//Handle clicks on profile picture
|
||||
navProfilePictureArea.setOnClickListener(new View.OnClickListener() {
|
||||
public void onClick(View view) {
|
||||
navDrawer.closeDrawer(GravityCompat.START);
|
||||
if (!_appSettings.getProfileId().equals("")) {
|
||||
openDiasporaUrl(urls.getProfileUrl());
|
||||
}
|
||||
navProfilePictureArea.setOnClickListener(view -> {
|
||||
navDrawer.closeDrawer(GravityCompat.START);
|
||||
if (!_appSettings.getProfileId().equals("")) {
|
||||
openDiasporaUrl(urls.getProfileUrl());
|
||||
}
|
||||
});
|
||||
navheaderTitle = ButterKnife.findById(navHeader, R.id.navheader_title);
|
||||
|
@ -447,22 +428,12 @@ public class MainActivity extends ThemedActivity
|
|||
// Hide by app settings
|
||||
navMenu.findItem(R.id.nav_exit).setVisible(_appSettings.isVisibleInNavExit());
|
||||
navMenu.findItem(R.id.nav_activities).setVisible(_appSettings.isVisibleInNavActivities());
|
||||
// navMenu.findItem(R.id.nav_aspects).setVisible(_appSettings.isVisibleInNavAspects());
|
||||
navMenu.findItem(R.id.nav_contacts).setVisible(_appSettings.isVisibleInNavContacts());
|
||||
//navMenu.findItem(R.id.nav_commented).setVisible(_appSettings.isVisibleInNavCommented());
|
||||
//navMenu.findItem(R.id.nav_followed_tags).setVisible(_appSettings.isVisibleInNavFollowed_tags());
|
||||
navMenu.findItem(R.id.nav_about).setVisible(_appSettings.isVisibleInNavHelp_license());
|
||||
//navMenu.findItem(R.id.nav_liked).setVisible(_appSettings.isVisibleInNavLiked());
|
||||
//navMenu.findItem(R.id.nav_mentions).setVisible(_appSettings.isVisibleInNavMentions());
|
||||
navMenu.findItem(R.id.nav_profile).setVisible(_appSettings.isVisibleInNavProfile());
|
||||
navMenu.findItem(R.id.nav_public).setVisible(_appSettings.isVisibleInNavPublic_activities());
|
||||
navMenu.findItem(R.id.nav_stream).setVisible(true);
|
||||
//navMenu.findItem(R.id.nav_statistics).setVisible(_appSettings.isVisibleInNavStatistics());
|
||||
//navMenu.findItem(R.id.nav_reports).setVisible(_appSettings.isVisibleInNavReports());
|
||||
//navMenu.findItem(R.id.nav_toggle_desktop_page).setVisible(_appSettings.isVisibleInNavToggleMobileDesktop());
|
||||
navMenu.findItem(R.id.nav_events).setVisible(_appSettings.isVisibleInNavEvents());
|
||||
// navMenu.findItem(R.id.nav_dandelion).setVisible(_appSettings.isVisibleInNavDandelionAccount());
|
||||
|
||||
|
||||
// Hide whole group (for logged in use) if no pod was selected
|
||||
if (!_appSettings.hasPod()) {
|
||||
|
@ -526,23 +497,19 @@ public class MainActivity extends ThemedActivity
|
|||
} else if (ACTION_CHANGE_ACCOUNT.equals(action)) {
|
||||
AppLog.v(this, "Reset pod data and show PodSelectionFragment");
|
||||
_appSettings.setPod(null);
|
||||
runOnUiThread(new Runnable() {
|
||||
public void run() {
|
||||
navheaderTitle.setText(R.string.app_name);
|
||||
navheaderDescription.setText(R.string.app_subtitle);
|
||||
navheaderImage.setImageResource(R.drawable.ic_launcher);
|
||||
app.resetPodData(((DiasporaStreamFragment) getFragment(DiasporaStreamFragment.TAG)).getWebView());
|
||||
}
|
||||
runOnUiThread(() -> {
|
||||
navheaderTitle.setText(R.string.app_name);
|
||||
navheaderDescription.setText(R.string.app_subtitle);
|
||||
navheaderImage.setImageResource(R.drawable.ic_launcher);
|
||||
app.resetPodData(((DiasporaStreamFragment) getFragment(DiasporaStreamFragment.TAG)).getWebView());
|
||||
});
|
||||
showFragment(getFragment(PodSelectionFragment.TAG));
|
||||
} else if (ACTION_CLEAR_CACHE.equals(action)) {
|
||||
AppLog.v(this, "Clear WebView cache");
|
||||
runOnUiThread(new Runnable() {
|
||||
public void run() {
|
||||
ContextMenuWebView wv = ((DiasporaStreamFragment) getFragment(DiasporaStreamFragment.TAG)).getWebView();
|
||||
if (wv != null) {
|
||||
wv.clearCache(true);
|
||||
}
|
||||
runOnUiThread(() -> {
|
||||
ContextMenuWebView wv = ((DiasporaStreamFragment) getFragment(DiasporaStreamFragment.TAG)).getWebView();
|
||||
if (wv != null) {
|
||||
wv.clearCache(true);
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -565,12 +532,6 @@ public class MainActivity extends ThemedActivity
|
|||
} else if ("sc_new_post".equals(action)) {
|
||||
openDiasporaUrl(urls.getNewPostUrl());
|
||||
return;
|
||||
//} else if ("sc_nav_followed_tags".equals(action)) {
|
||||
// showFragment(getFragment(TagListFragment.TAG));
|
||||
// return;
|
||||
//} else if ("sc_aspects".equals(action)) {
|
||||
// showFragment(getFragment(AspectListFragment.TAG));
|
||||
// return;
|
||||
} else if ("sc_activities".equals(action)) {
|
||||
openDiasporaUrl(urls.getActivityUrl());
|
||||
return;
|
||||
|
@ -691,7 +652,6 @@ public class MainActivity extends ThemedActivity
|
|||
@Override
|
||||
public boolean onCreateOptionsMenu(Menu menu) {
|
||||
AppLog.v(this, "onCreateOptionsMenu()");
|
||||
boolean cache;
|
||||
|
||||
//Clear the menus
|
||||
menu.clear();
|
||||
|
@ -700,7 +660,6 @@ public class MainActivity extends ThemedActivity
|
|||
if (top != null) {
|
||||
|
||||
if (!top.getFragmentTag().equals(PodSelectionFragment.TAG)) {
|
||||
//cache = _appSettings.isExtendedNotificationsActivated();
|
||||
getMenuInflater().inflate(R.menu.main__menu_top, menu);
|
||||
menu.findItem(R.id.action_home).setVisible(_appSettings.isVisibleInHome());
|
||||
menu.findItem(R.id.action_activities).setVisible(_appSettings.isVisibleInActivities());
|
||||
|
@ -716,7 +675,7 @@ public class MainActivity extends ThemedActivity
|
|||
}
|
||||
|
||||
ContextUtils cu = ContextUtils.get();
|
||||
final boolean darkBg = cu.get().shouldColorOnTopBeLight(AppSettings.get().getPrimaryColor());
|
||||
final boolean darkBg = ContextUtils.get().shouldColorOnTopBeLight(AppSettings.get().getPrimaryColor());
|
||||
cu.tintMenuItems(menu, true, ContextCompat.getColor(this, darkBg ? R.color.white : R.color.black));
|
||||
cu.setSubMenuIconsVisiblity(menu, true);
|
||||
|
||||
|
@ -724,30 +683,6 @@ public class MainActivity extends ThemedActivity
|
|||
}
|
||||
|
||||
/**
|
||||
* Set the notification and messages counter in the top _toolbar
|
||||
*
|
||||
* @param menu menu
|
||||
* @return boolean
|
||||
*
|
||||
* @Override
|
||||
* public boolean onPrepareOptionsMenu(Menu menu) {
|
||||
* MenuItem item;
|
||||
* updateNavigationViewEntryVisibilities();
|
||||
*
|
||||
* if ((item = menu.findItem(R.id.action_notifications)) != null) {
|
||||
* LayerDrawable icon = (LayerDrawable) item.getIcon();
|
||||
* BadgeDrawable.setBadgeCount(this, icon, diasporaUserProfile.getNotificationCount());
|
||||
* }
|
||||
*
|
||||
* if ((item = menu.findItem(R.id.action_conversations)) != null) {
|
||||
* LayerDrawable icon = (LayerDrawable) item.getIcon();
|
||||
* BadgeDrawable.setBadgeCount(this, icon, diasporaUserProfile.getUnreadMessagesCount());
|
||||
* }
|
||||
* return super.onPrepareOptionsMenu(menu);
|
||||
* }
|
||||
*
|
||||
* Handle clicks on the optionsmenu
|
||||
*
|
||||
* @param item item
|
||||
* @return boolean
|
||||
*
|
||||
|
@ -756,84 +691,6 @@ public class MainActivity extends ThemedActivity
|
|||
public boolean onOptionsItemSelected(MenuItem item) {
|
||||
AppLog.i(this, "onOptionsItemSelected()");
|
||||
switch (item.getItemId()) {
|
||||
/**
|
||||
* case R.id.action_notifications: {
|
||||
* if (_appSettings.isExtendedNotificationsActivated()) {
|
||||
* return true;
|
||||
* }
|
||||
* //Otherwise we execute the action of action_notifications_all
|
||||
* }
|
||||
* case R.id.action_notifications_all: {
|
||||
* if (WebHelper.isOnline(MainActivity.this)) {
|
||||
* openDiasporaUrl(urls.getNotificationsUrl());
|
||||
* return true;
|
||||
* } else {
|
||||
* snackbarNoInternet.show();
|
||||
* return false;
|
||||
* }
|
||||
* }
|
||||
*
|
||||
*
|
||||
* case R.id.action_notifications_also_commented: {
|
||||
* if (WebHelper.isOnline(MainActivity.this)) {
|
||||
* openDiasporaUrl(urls.getSuburlNotificationsAlsoCommentedUrl());
|
||||
* return true;
|
||||
* } else {
|
||||
* snackbarNoInternet.show();
|
||||
* return false;
|
||||
* }
|
||||
* }
|
||||
*
|
||||
* case R.id.action_notifications_comment_on_post: {
|
||||
* if (WebHelper.isOnline(MainActivity.this)) {
|
||||
* openDiasporaUrl(urls.getSuburlNotificationsCommentOnPostUrl());
|
||||
* return true;
|
||||
* } else {
|
||||
* snackbarNoInternet.show();
|
||||
* return false;
|
||||
* }
|
||||
* }
|
||||
*
|
||||
* case R.id.action_notifications_liked: {
|
||||
* if (WebHelper.isOnline(MainActivity.this)) {
|
||||
* openDiasporaUrl(urls.getSuburlNotificationsLikedUrl());
|
||||
* return true;
|
||||
* } else {
|
||||
* snackbarNoInternet.show();
|
||||
* return false;
|
||||
* }
|
||||
* }
|
||||
*
|
||||
* case R.id.action_notifications_mentioned: {
|
||||
* if (WebHelper.isOnline(MainActivity.this)) {
|
||||
* openDiasporaUrl(urls.getSuburlNotificationsMentionedUrl());
|
||||
* return true;
|
||||
* } else {
|
||||
* snackbarNoInternet.show();
|
||||
* return false;
|
||||
* }
|
||||
* }
|
||||
*
|
||||
* case R.id.action_notifications_reshared: {
|
||||
* if (WebHelper.isOnline(MainActivity.this)) {
|
||||
* openDiasporaUrl(urls.getSuburlNotificationsResharedUrl());
|
||||
* return true;
|
||||
* } else {
|
||||
* snackbarNoInternet.show();
|
||||
* return false;
|
||||
* }
|
||||
* }
|
||||
*
|
||||
* case R.id.action_notifications_started_sharing: {
|
||||
* if (WebHelper.isOnline(MainActivity.this)) {
|
||||
* openDiasporaUrl(urls.getSuburlNotificationsStartedSharingUrl());
|
||||
* return true;
|
||||
* } else {
|
||||
* snackbarNoInternet.show();
|
||||
* return false;
|
||||
* }
|
||||
* }
|
||||
*/
|
||||
case R.id.action_conversations: {
|
||||
if (WebHelper.isOnline(MainActivity.this)) {
|
||||
openDiasporaUrl(urls.getConversationsUrl());
|
||||
|
@ -919,17 +776,6 @@ public class MainActivity extends ThemedActivity
|
|||
return false;
|
||||
}
|
||||
|
||||
/** commented beacouse pointless ???
|
||||
* case R.id.action_compose: {
|
||||
* if (WebHelper.isOnline(MainActivity.this)) {
|
||||
* openDiasporaUrl(urls.getNewPostUrl());
|
||||
* } else {
|
||||
* snackbarNoInternet.show();
|
||||
* }
|
||||
* return true;
|
||||
* }
|
||||
*/
|
||||
|
||||
case R.id.action_search: {
|
||||
if (WebHelper.isOnline(MainActivity.this)) {
|
||||
final InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
|
||||
|
@ -939,23 +785,22 @@ final EditText input = layout.findViewById(R.id.dialog_search__input);
|
|||
input.setMaxLines(1);
|
||||
input.setSingleLine(true);
|
||||
ThemeHelper.updateEditTextColor(input);
|
||||
final DialogInterface.OnClickListener clickListener = new DialogInterface.OnClickListener() {
|
||||
@Override //Changed to work for search by content for Nomad
|
||||
public void onClick(DialogInterface dialogInterface, int which) {
|
||||
String query = input.getText().toString().trim().replaceAll((which == DialogInterface.BUTTON_NEGATIVE ? "\\*" : "\\#"), "");
|
||||
if (query.equals("")) {
|
||||
Snackbar.make(fragmentContainer, R.string.search_alert_bypeople_validate_needsomedata, Snackbar.LENGTH_LONG).show();
|
||||
} else if (which == DialogInterface.BUTTON_POSITIVE){
|
||||
openDiasporaUrl(urls.getSearchTagsUrl(query));
|
||||
} else if (which == DialogInterface.BUTTON_NEGATIVE){
|
||||
openDiasporaUrl(urls.getSearchPeopleUrl(query));
|
||||
} else {
|
||||
openDiasporaUrl(urls.getSearchContentUrl(query));
|
||||
}
|
||||
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
|
||||
imm.hideSoftInputFromWindow(input.getWindowToken(), 0);
|
||||
}
|
||||
};
|
||||
//Changed to work for search by content for Nomad
|
||||
final DialogInterface.OnClickListener clickListener = (dialogInterface, which) -> {
|
||||
String query = input.getText().toString().trim().replaceAll((which == DialogInterface.BUTTON_NEGATIVE ? "\\*" : "\\#"), "");
|
||||
if (query.equals("")) {
|
||||
Snackbar.make(fragmentContainer, R.string.search_alert_bypeople_validate_needsomedata, Snackbar.LENGTH_LONG).show();
|
||||
} else if (which == DialogInterface.BUTTON_POSITIVE){
|
||||
openDiasporaUrl(urls.getSearchTagsUrl(query));
|
||||
} else if (which == DialogInterface.BUTTON_NEGATIVE){
|
||||
openDiasporaUrl(urls.getSearchPeopleUrl(query));
|
||||
} else {
|
||||
openDiasporaUrl(urls.getSearchContentUrl(query));
|
||||
}
|
||||
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
|
||||
assert imm != null;
|
||||
imm.hideSoftInputFromWindow(input.getWindowToken(), 0);
|
||||
};
|
||||
|
||||
final AlertDialog dialog = new ThemedAlertDialogBuilder(this, _appSettings)
|
||||
.setView(layout).setTitle(R.string.search_alert_title)
|
||||
|
@ -965,15 +810,13 @@ final AlertDialog dialog = new ThemedAlertDialogBuilder(this, _appSettings)
|
|||
.setNeutralButton(R.string.search_alert_content, clickListener)
|
||||
.create();
|
||||
|
||||
input.setOnEditorActionListener(new TextView.OnEditorActionListener() {
|
||||
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
|
||||
if (actionId == EditorInfo.IME_ACTION_DONE) {
|
||||
dialog.hide();
|
||||
clickListener.onClick(null, 0);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
input.setOnEditorActionListener((v, actionId, event) -> {
|
||||
if (actionId == EditorInfo.IME_ACTION_DONE) {
|
||||
dialog.hide();
|
||||
clickListener.onClick(null, 0);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
});
|
||||
|
||||
// Popup keyboard
|
||||
|
@ -1014,7 +857,7 @@ return super.onOptionsItemSelected(item);
|
|||
private void handleHashtag(Intent intent) {
|
||||
AppLog.v(this, "handleHashtag()");
|
||||
try {
|
||||
setSharedTexts(null, intent.getData().toString().split("/")[3]);
|
||||
setSharedTexts(null, Objects.requireNonNull(intent.getData()).toString().split("/")[3]);
|
||||
} catch (Exception e) {
|
||||
AppLog.e(this, e.toString());
|
||||
}
|
||||
|
@ -1097,22 +940,6 @@ return super.onOptionsItemSelected(item);
|
|||
Toast.makeText(this, "Not yet implemented.", Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNotificationCountChanged(DiasporaUserProfile diasporaUserProfile, int notificationCount) {
|
||||
AppLog.i(this, "onNotificationCountChanged()");
|
||||
// Count saved in DiasporaUserProfile
|
||||
// Invalidate the top _toolbar to update the unread messages counter
|
||||
invalidateOptionsMenu();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void onUnreadMessageCountChanged(DiasporaUserProfile diasporaUserProfile, int unreadMessageCount) {
|
||||
AppLog.i(this, "onUnreadMessageCountChanged()");
|
||||
// Count saved in DiasporaUserProfile
|
||||
// Invalidate the top _toolbar to update the unread messages counter
|
||||
invalidateOptionsMenu();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCustomTabsConnected() {
|
||||
|
@ -1137,7 +964,7 @@ return super.onOptionsItemSelected(item);
|
|||
|
||||
@SuppressWarnings("StatementWithEmptyBody")
|
||||
@Override
|
||||
public boolean onNavigationItemSelected(MenuItem item) {
|
||||
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
|
||||
AppLog.v(this, "onNavigationItemsSelected()");
|
||||
// Handle navigation view item clicks here.
|
||||
switch (item.getItemId()) {
|
||||
|
@ -1168,18 +995,6 @@ return super.onOptionsItemSelected(item);
|
|||
}
|
||||
}
|
||||
break;
|
||||
/**
|
||||
* case R.id.nav_followed_tags: {
|
||||
* showFragment(getFragment(TagListFragment.TAG));
|
||||
* }
|
||||
* break;
|
||||
**/
|
||||
/**
|
||||
case R.id.nav_aspects: {
|
||||
showFragment(getFragment(AspectListFragment.TAG));
|
||||
}
|
||||
break;
|
||||
**/
|
||||
case R.id.nav_contacts: {
|
||||
if (WebHelper.isOnline(MainActivity.this)) {
|
||||
openDiasporaUrl(urls.getContactsUrl());
|
||||
|
@ -1197,34 +1012,6 @@ return super.onOptionsItemSelected(item);
|
|||
}
|
||||
}
|
||||
break;
|
||||
/**
|
||||
* case R.id.nav_liked: {
|
||||
* if (WebHelper.isOnline(MainActivity.this)) {
|
||||
* openDiasporaUrl(urls.getLikedPostsUrl());
|
||||
* } else {
|
||||
* snackbarNoInternet.show();
|
||||
* }
|
||||
* }
|
||||
* break;
|
||||
*
|
||||
* case R.id.nav_commented: {
|
||||
* if (WebHelper.isOnline(MainActivity.this)) {
|
||||
* openDiasporaUrl(urls.getCommentedUrl());
|
||||
* } else {
|
||||
* snackbarNoInternet.show();
|
||||
* }
|
||||
* }
|
||||
* break;
|
||||
*
|
||||
* case R.id.nav_mentions: {
|
||||
* if (WebHelper.isOnline(MainActivity.this)) {
|
||||
* openDiasporaUrl(urls.getMentionsUrl());
|
||||
* } else {
|
||||
* snackbarNoInternet.show();
|
||||
* }
|
||||
* }
|
||||
* break;
|
||||
**/
|
||||
case R.id.nav_public: {
|
||||
if (WebHelper.isOnline(MainActivity.this)) {
|
||||
openDiasporaUrl(urls.getPubstreamUrl());
|
||||
|
@ -1233,35 +1020,6 @@ return super.onOptionsItemSelected(item);
|
|||
}
|
||||
}
|
||||
break;
|
||||
/**
|
||||
* case R.id.nav_reports: {
|
||||
* if (WebHelper.isOnline(MainActivity.this)) {
|
||||
* openDiasporaUrl(urls.getReportsUrl());
|
||||
* } else {
|
||||
* snackbarNoInternet.show();
|
||||
* }
|
||||
* }
|
||||
* break;
|
||||
*
|
||||
* case R.id.nav_statistics: {
|
||||
* if (WebHelper.isOnline(MainActivity.this)) {
|
||||
* openDiasporaUrl(urls.getStatisticsUrl());
|
||||
* } else {
|
||||
* snackbarNoInternet.show();
|
||||
* }
|
||||
* }
|
||||
* break;
|
||||
*
|
||||
* case R.id.nav_toggle_desktop_page: {
|
||||
* openDiasporaUrl(urls.getToggleMobileUrl());
|
||||
* }
|
||||
* break;
|
||||
*
|
||||
* case R.id.nav_dandelion: {
|
||||
* openDiasporaUrl(urls.getProfileUrl("48b78420923501341ef3782bcb452bd5"));
|
||||
* }
|
||||
* break;
|
||||
**/
|
||||
case R.id.nav_exit: {
|
||||
moveTaskToBack(true);
|
||||
finish();
|
||||
|
|
|
@ -26,7 +26,7 @@ import com.dfa.hubzilla_android.util.AppLog;
|
|||
import com.dfa.hubzilla_android.util.AppSettings;
|
||||
import com.dfa.hubzilla_android.util.DiasporaUrlHelper;
|
||||
|
||||
import org.json.JSONArray;
|
||||
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
|
@ -49,9 +49,6 @@ public class DiasporaUserProfile {
|
|||
private String avatarUrl;
|
||||
private String guid;
|
||||
private String name;
|
||||
// private DiasporaAspect[] aspects;
|
||||
//private String[] followedTags;
|
||||
private int notificationCount;
|
||||
private int unreadMessagesCount;
|
||||
private long lastVisitedPositionInStream = -1;
|
||||
|
||||
|
@ -67,10 +64,6 @@ public class DiasporaUserProfile {
|
|||
avatarUrl = appSettings.getAvatarUrl();
|
||||
guid = appSettings.getProfileId();
|
||||
name = appSettings.getName();
|
||||
// aspects = appSettings.getAspects();
|
||||
// followedTags = appSettings.getFollowedTags();
|
||||
// notificationCount = appSettings.getNotificationCount();
|
||||
// unreadMessagesCount = appSettings.getUnreadMessageCount();
|
||||
lastVisitedPositionInStream = appSettings.getLastVisitedPositionInStream();
|
||||
}
|
||||
|
||||
|
@ -112,27 +105,6 @@ public class DiasporaUserProfile {
|
|||
appSettings.setName(name);
|
||||
}
|
||||
|
||||
// Unread message count
|
||||
// if (json.has("notifications_count") && loadNotificationCount(json.getInt("notifications_count"))) {
|
||||
// appSettings.setNotificationCount(notificationCount);
|
||||
//}
|
||||
|
||||
// Unread message count
|
||||
// if (json.has("unread_messages_count") && loadUnreadMessagesCount(json.getInt("unread_messages_count"))) {
|
||||
// appSettings.setUnreadMessageCount(unreadMessagesCount);
|
||||
//}
|
||||
|
||||
// Aspect
|
||||
// if (json.has("aspects") && loadAspects(json.getJSONArray("aspects"))) {
|
||||
// appSettings.setPodAspects(aspects);
|
||||
// }
|
||||
|
||||
// Followed tags
|
||||
// if (json.has("android_app.followed_tags")
|
||||
// && loadFollowedTags(json.getJSONArray("android_app.followed_tags"))) {
|
||||
// appSettings.setFollowedTags(followedTags);
|
||||
// }
|
||||
|
||||
isWebUserProfileLoaded = true;
|
||||
} catch (JSONException e) {
|
||||
AppLog.d(this, e.getMessage());
|
||||
|
@ -168,22 +140,6 @@ public class DiasporaUserProfile {
|
|||
return name;
|
||||
}
|
||||
|
||||
public int getNotificationCount() {
|
||||
return notificationCount;
|
||||
}
|
||||
|
||||
public int getUnreadMessagesCount() {
|
||||
return unreadMessagesCount;
|
||||
}
|
||||
|
||||
// public DiasporaAspect[] getAspects() {
|
||||
// return aspects;
|
||||
// }
|
||||
|
||||
// public String[] getFollowedTags() {
|
||||
// return followedTags;
|
||||
// }
|
||||
|
||||
public long getLastVisitedPositionInStream() {
|
||||
return lastVisitedPositionInStream;
|
||||
}
|
||||
|
@ -249,52 +205,6 @@ public class DiasporaUserProfile {
|
|||
return false;
|
||||
}
|
||||
|
||||
private boolean loadNotificationCount(final int notificationCount) {
|
||||
if (this.notificationCount != notificationCount) {
|
||||
this.notificationCount = notificationCount;
|
||||
if (listener != null && callbackHandler != null) {
|
||||
callbackHandler.post(new Runnable() {
|
||||
public void run() {
|
||||
listener.onNotificationCountChanged(DiasporaUserProfile.this, notificationCount);
|
||||
}
|
||||
});
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// private boolean loadAspects(final JSONArray jsonAspects) throws JSONException {
|
||||
// aspects = new DiasporaAspect[jsonAspects.length()];
|
||||
// for (int i = 0; i < jsonAspects.length(); i++) {
|
||||
// aspects[i] = new DiasporaAspect(jsonAspects.getJSONObject(i));
|
||||
// }
|
||||
// return true;
|
||||
// }
|
||||
|
||||
// private boolean loadFollowedTags(final JSONArray jsonTags) throws JSONException {
|
||||
// followedTags = new String[jsonTags.length()];
|
||||
// for (int i = 0; i < jsonTags.length(); i++) {
|
||||
// followedTags[i] = jsonTags.getString(i);
|
||||
// }
|
||||
// return true;
|
||||
// }
|
||||
|
||||
private boolean loadUnreadMessagesCount(final int unreadMessagesCount) {
|
||||
if (this.unreadMessagesCount != unreadMessagesCount) {
|
||||
this.unreadMessagesCount = unreadMessagesCount;
|
||||
if (listener != null && callbackHandler != null) {
|
||||
callbackHandler.post(new Runnable() {
|
||||
public void run() {
|
||||
listener.onUnreadMessageCountChanged(DiasporaUserProfile.this, unreadMessagesCount);
|
||||
}
|
||||
});
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public Handler getCallbackHandler() {
|
||||
return callbackHandler;
|
||||
}
|
||||
|
@ -311,17 +221,4 @@ public class DiasporaUserProfile {
|
|||
this.listener = listener;
|
||||
}
|
||||
|
||||
/*
|
||||
* Not implemented / not needed yet:
|
||||
* string "diasporaAddress"
|
||||
* int "id"
|
||||
* boolean "admin"
|
||||
* int "following_count"
|
||||
* boolean "moderator"
|
||||
*
|
||||
* array "services"
|
||||
* ? ?
|
||||
* array "configured_services"
|
||||
* ? ?
|
||||
*/
|
||||
}
|
||||
|
|
|
@ -41,19 +41,4 @@ public interface DiasporaUserProfileChangedListener {
|
|||
*/
|
||||
void onUserProfileAvatarChanged(DiasporaUserProfile diasporaUserProfile, String avatarUrl);
|
||||
|
||||
/**
|
||||
* Called when the DiasporaUserProfile notificationCount changed
|
||||
*
|
||||
* @param diasporaUserProfile The profile
|
||||
* @param notificationCount The new notificationCount
|
||||
*/
|
||||
void onNotificationCountChanged(DiasporaUserProfile diasporaUserProfile, int notificationCount);
|
||||
|
||||
/**
|
||||
* Called when the DiasporaUserProfile unreadMessageCount changed
|
||||
*
|
||||
* @param diasporaUserProfile The profile
|
||||
* @param unreadMessageCount The new unreadMessageCount
|
||||
*/
|
||||
void onUnreadMessageCountChanged(DiasporaUserProfile diasporaUserProfile, int unreadMessageCount);
|
||||
}
|
||||
|
|
|
@ -57,8 +57,6 @@ public class UpdateTitleReceiver extends BroadcastReceiver {
|
|||
setTitle(R.string.nav_stream);
|
||||
} else if (subUrl.startsWith(DiasporaUrlHelper.SUBURL_POSTS)) {
|
||||
setTitle(R.string.app_name);
|
||||
} else if (subUrl.startsWith(DiasporaUrlHelper.SUBURL_NOTIFICATIONS)) {
|
||||
setTitle(R.string.notifications);
|
||||
} else if (subUrl.startsWith(DiasporaUrlHelper.SUBURL_CONVERSATIONS)) {
|
||||
setTitle(R.string.conversations);
|
||||
} else if (subUrl.startsWith(DiasporaUrlHelper.SUBURL_NEW_POST)) {
|
||||
|
|
|
@ -97,13 +97,6 @@ public class ProfileFetchTask extends AsyncTask<Void, Void, Void> {
|
|||
e.printStackTrace();
|
||||
}
|
||||
|
||||
|
||||
if (extractedProfileData != null) {
|
||||
DiasporaUserProfile profile = new DiasporaUserProfile(app);
|
||||
profile.parseJson(extractedProfileData);
|
||||
AppLog.d(this, "Extracted new_messages (service):" + profile.getUnreadMessagesCount());
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -145,64 +145,7 @@ public class AppSettings extends SharedPreferencesPropertyBackend {
|
|||
public boolean hasPod() {
|
||||
return !getString(R.string.pref_key__current_pod_0, "", _prefPod).equals("");
|
||||
}
|
||||
/**
|
||||
public void setPodAspects(DiasporaAspect[] aspects) {
|
||||
String[] strs = new String[aspects.length];
|
||||
for (int i = 0; i < strs.length; i++) {
|
||||
strs[i] = aspects[i].toShareAbleText();
|
||||
}
|
||||
setStringArray(R.string.pref_key__podprofile_aspects, strs, _prefPod);
|
||||
}
|
||||
|
||||
public DiasporaAspect[] getAspects() {
|
||||
String[] s = getStringArray(R.string.pref_key__podprofile_aspects, _prefPod);
|
||||
DiasporaAspect[] aspects = new DiasporaAspect[s.length];
|
||||
for (int i = 0; i < aspects.length; i++) {
|
||||
aspects[i] = new DiasporaAspect(s[i]);
|
||||
}
|
||||
return aspects;
|
||||
}
|
||||
**/
|
||||
/** public String[] getFollowedTags() {
|
||||
* return getStringArray(R.string.pref_key__podprofile_followed_tags, _prefPod);
|
||||
* }
|
||||
*
|
||||
* public void setFollowedTags(String[] values) {
|
||||
* setStringArray(R.string.pref_key__podprofile_followed_tags, values, _prefPod);
|
||||
* }
|
||||
*
|
||||
* public String[] getFollowedTagsFavs() {
|
||||
* return getStringArray(R.string.pref_key__podprofile_followed_tags_favs, _prefPod);
|
||||
* }
|
||||
*
|
||||
* public void setFollowedTagsFavs(List<String> values) {
|
||||
* setStringList(R.string.pref_key__podprofile_followed_tags_favs, values, _prefPod);
|
||||
* }
|
||||
*
|
||||
* public String[] getAspectFavs() {
|
||||
* return getStringArray(R.string.pref_key__podprofile_aspects_favs, _prefPod);
|
||||
* }
|
||||
*
|
||||
* public void setAspectFavs(List<String> values) {
|
||||
* setStringList(R.string.pref_key__podprofile_aspects_favs, values, _prefPod);
|
||||
* }
|
||||
*
|
||||
* public int getUnreadMessageCount() {
|
||||
* return getInt(R.string.pref_key__podprofile_unread_message_count, 0, _prefPod);
|
||||
* }
|
||||
*
|
||||
* public void setUnreadMessageCount(int unreadMessageCount) {
|
||||
* setInt(R.string.pref_key__podprofile_unread_message_count, unreadMessageCount, _prefPod);
|
||||
* }
|
||||
*
|
||||
* public int getNotificationCount() {
|
||||
* return getInt(R.string.pref_key__podprofile_notification_count, 0, _prefPod);
|
||||
* }
|
||||
*
|
||||
* public void setNotificationCount(int notificationCount) {
|
||||
* setInt(R.string.pref_key__podprofile_notification_count, notificationCount, _prefPod);
|
||||
* }
|
||||
**/
|
||||
public boolean isAppendSharedViaApp() {
|
||||
return getBool(R.string.pref_key__append_shared_via_app, true);
|
||||
}
|
||||
|
@ -473,10 +416,6 @@ public class AppSettings extends SharedPreferencesPropertyBackend {
|
|||
return getInt(R.string.pref_key__accent_color_shade, rcolor(R.color.accent));
|
||||
}
|
||||
|
||||
// public boolean isExtendedNotificationsActivated() {
|
||||
// return getBool(R.string.pref_key__extended_notifications, false);
|
||||
//}
|
||||
|
||||
public boolean isAmoledColorMode() {
|
||||
return getBool(R.string.pref_key__primary_color__amoled_mode, false);
|
||||
}
|
||||
|
|
|
@ -32,7 +32,6 @@ public class DiasporaUrlHelper {
|
|||
private final AppSettings settings;
|
||||
|
||||
public static final String URL_BLANK = "about:blank";
|
||||
public static final String SUBURL_NOTIFICATIONS = "/notifications"; //works on hub
|
||||
public static final String SUBURL_POSTS = "/channel"; //edited for hub
|
||||
public static final String SUBURL_STREAM = "/network"; //edited for hub
|
||||
public static final String SUBURL_DIRECTORY = "/directory"; //edited for hub
|
||||
|
@ -41,29 +40,14 @@ public class DiasporaUrlHelper {
|
|||
public static final String SUBURL_NEW_POST = "/rpost?f=&body="; //edited for hub
|
||||
public static final String SUBURL_PEOPLE = "/connections"; //edited for hub
|
||||
public static final String SUBURL_ACTIVITY = "/network"; //edited for hub
|
||||
// public static final String SUBURL_LIKED = "/liked";
|
||||
// public static final String SUBURL_COMMENTED = "/commented";
|
||||
// public static final String SUBURL_MENTIONS = "/mentions";
|
||||
public static final String SUBURL_PUBSTREAM = "/pubstream"; //edited for hub
|
||||
// public static final String SUBURL_ASPECT = "/aspects?a_ids[]=";
|
||||
public static final String SUBURL_TOGGLE_MOBILE = "/mobile/toggle";
|
||||
public static final String SUBURL_SEARCH_TAGS = "/search?search=%23"; //edited for hub
|
||||
public static final String SUBURL_SEARCH_PEOPLE = "/directory?f=1&navsearch=1&search="; //edited for hub must be better
|
||||
public static final String SUBURL_SEARCH_CONTENT = "/search?search="; //added for Nomad
|
||||
// public static final String SUBURL_FOLOWED_TAGS = "/followed_tags";
|
||||
// public static final String SUBURL_ASPECTS = "/connections"; //edited for hub must be better
|
||||
//public static final String SUBURL_STATISTICS = "/statistics";
|
||||
public static final String SUBURL_PERSONAL_SETTINGS = "/settings"; //edited for hub
|
||||
// public static final String SUBURL_MANAGE_TAGS = "/tag_followings/manage";
|
||||
public static final String SUBURL_SIGN_IN = "#"; //edited for hub
|
||||
public static final String SUBURL_CONTACTS = "/connections"; //edited for hub
|
||||
// public static final String SUBURL_REPORTS = "/reports";
|
||||
// public static final String SUBURL_NOTIFICATIONS_ALSO_COMMENTED = "/notifications?type=also_commented";
|
||||
//public static final String SUBURL_NOTIFICATIONS_COMMENT_ON_POST = "/notifications?type=comment_on_post";
|
||||
//public static final String SUBURL_NOTIFICATIONS_LIKED = "/notifications?type=liked";
|
||||
// public static final String SUBURL_NOTIFICATIONS_MENTIONED = "/notifications?type=mentioned";
|
||||
public static final String SUBURL_NOTIFICATIONS_RESHARED = "/notifications?type=reshared";
|
||||
public static final String SUBURL_NOTIFICATIONS_STARTED_SHARING = "/notifications?type=started_sharing";
|
||||
public static final String SUBURL_HOME = "/channel"; //added for hub
|
||||
public static final String SUBURL_PROFILE = "/profiles"; //added for hub
|
||||
public static final String SUBURL_EVENTS = "/events"; //added for hub
|
||||
|
@ -106,15 +90,6 @@ public class DiasporaUrlHelper {
|
|||
return getPodUrl() + SUBURL_STREAM_WITH_TIMESTAMP + timestamp;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a url that points to the notifications feed of the configured diaspora account
|
||||
*
|
||||
* @return https://(pod-domain.tld)/notifications
|
||||
*/
|
||||
public String getNotificationsUrl() {
|
||||
return getPodUrl() + SUBURL_NOTIFICATIONS;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a url that points to the post with the id postId
|
||||
*
|
||||
|
@ -170,16 +145,6 @@ public class DiasporaUrlHelper {
|
|||
return getPodUrl() + SUBURL_PEOPLE + profileId;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a url that queries posts from the given aspect
|
||||
*
|
||||
* @param aspectId ID of the aspect
|
||||
* @return https://(pod-domain.tld)//aspects?a_ids[]=aspectId
|
||||
*/
|
||||
/** public String getAspectUrl(String aspectId) {
|
||||
return getPodUrl() + SUBURL_ASPECT + aspectId;
|
||||
}
|
||||
**/
|
||||
/**
|
||||
* Return a url that points to the activities feed of the currently registered diaspora account
|
||||
*
|
||||
|
@ -189,34 +154,8 @@ public class DiasporaUrlHelper {
|
|||
return getPodUrl() + SUBURL_ACTIVITY;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a url that points to the feed of posts that were liked by the currently registered diaspora account
|
||||
*
|
||||
* @return https://(pod-domain.tld)/liked
|
||||
*
|
||||
* public String getLikedPostsUrl() {
|
||||
* return getPodUrl() + SUBURL_LIKED;
|
||||
* }
|
||||
*
|
||||
* /**
|
||||
* Return a url that points to the stream of posts that were commented by the currently registered diaspora account
|
||||
*
|
||||
* @return https://(pod-domain.tld)/commented
|
||||
*
|
||||
* public String getCommentedUrl() {
|
||||
* return getPodUrl() + SUBURL_COMMENTED;
|
||||
* }
|
||||
*
|
||||
* /**
|
||||
* Return a url that points to the stream of posts in which the currently registered diaspora account has been mentioned in
|
||||
*
|
||||
* @return https://(pod-domain.tld)/mentions
|
||||
*
|
||||
* public String getMentionsUrl() {
|
||||
* return getPodUrl() + SUBURL_MENTIONS;
|
||||
* }
|
||||
*
|
||||
* /**
|
||||
|
||||
/**
|
||||
* Return a url that points to the stream of public posts
|
||||
*
|
||||
* @return https://(pod-domain.tld)/public
|
||||
|
@ -226,15 +165,6 @@ public class DiasporaUrlHelper {
|
|||
}
|
||||
|
||||
/**
|
||||
* Return a url that toggles between mobile and desktop view when opened
|
||||
*
|
||||
* @return https://(pod-domain.tld)/mobile/toggle
|
||||
*
|
||||
*public String getToggleMobileUrl() {
|
||||
* return getPodUrl() + SUBURL_TOGGLE_MOBILE;
|
||||
*}
|
||||
*
|
||||
*
|
||||
* Return a url that queries posts for the given hashtag query
|
||||
*
|
||||
* @param query hashtag to be searched
|
||||
|
@ -264,26 +194,8 @@ public class DiasporaUrlHelper {
|
|||
return getPodUrl() + SUBURL_SEARCH_CONTENT + query;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Return a url that points to the statistics page of the pod.
|
||||
*
|
||||
* @return https://(pod-domain.tld)/statistics
|
||||
*
|
||||
* public String getStatisticsUrl() {
|
||||
* return getPodUrl() + SUBURL_STATISTICS;
|
||||
* }
|
||||
*
|
||||
* /**
|
||||
* Return an Url that points to the reports page of a the configured pod.
|
||||
* Note: This url is only useful/visible for podmins and moderators.
|
||||
*
|
||||
* @return https://(pod-domain.tld)/reports
|
||||
*
|
||||
* public String getReportsUrl() {
|
||||
* return getPodUrl() + SUBURL_REPORTS;
|
||||
* }
|
||||
*
|
||||
* /**
|
||||
* Return a url that points to the sign in page of the pod.
|
||||
*
|
||||
* @return https://(pod-domain.tld)/users/sign_in
|
||||
|
@ -320,15 +232,6 @@ public class DiasporaUrlHelper {
|
|||
}
|
||||
|
||||
/**
|
||||
* Return a url that points to the manage tags page of the pod.
|
||||
*
|
||||
* @return https://(pod-domain.tld)/tag_followings/manage
|
||||
*
|
||||
* public String getManageTagsUrl() {
|
||||
* return getPodUrl() + SUBURL_MANAGE_TAGS;
|
||||
* }
|
||||
*
|
||||
* /**
|
||||
* Return a url that points to the Directory overview of the registered Hubzilla account
|
||||
*
|
||||
* @return https://(hub-domain.tld)/directory
|
||||
|
@ -356,32 +259,7 @@ public class DiasporaUrlHelper {
|
|||
public String getContactsUrl() {
|
||||
return getPodUrl() + SUBURL_CONTACTS;
|
||||
}
|
||||
/**
|
||||
* public String getSuburlNotificationsAlsoCommentedUrl() {
|
||||
* return getPodUrl() + SUBURL_NOTIFICATIONS_ALSO_COMMENTED;
|
||||
* }
|
||||
*
|
||||
* public String getSuburlNotificationsCommentOnPostUrl() {
|
||||
* return getPodUrl() + SUBURL_NOTIFICATIONS_COMMENT_ON_POST;
|
||||
* }
|
||||
*
|
||||
* public String getSuburlNotificationsLikedUrl() {
|
||||
* return getPodUrl() + SUBURL_NOTIFICATIONS_LIKED;
|
||||
* }
|
||||
*
|
||||
* public String getSuburlNotificationsMentionedUrl() {
|
||||
* return getPodUrl() + SUBURL_NOTIFICATIONS_MENTIONED;
|
||||
* }
|
||||
*
|
||||
* public String getSuburlNotificationsResharedUrl() {
|
||||
* return getPodUrl() + SUBURL_NOTIFICATIONS_RESHARED;
|
||||
* }
|
||||
*
|
||||
* public String getSuburlNotificationsStartedSharingUrl() {
|
||||
* return getPodUrl() + SUBURL_NOTIFICATIONS_STARTED_SHARING;
|
||||
* }
|
||||
*
|
||||
* /**
|
||||
/**
|
||||
* Returns the url of the blank WebView
|
||||
*
|
||||
* @return about:blank
|
||||
|
@ -389,23 +267,5 @@ public class DiasporaUrlHelper {
|
|||
public String getBlankUrl() {
|
||||
return URL_BLANK;
|
||||
}
|
||||
/**
|
||||
public boolean isAspectUrl(String url) {
|
||||
return url.startsWith(getPodUrl() + "/aspects?a_ids[]=");
|
||||
}
|
||||
*
|
||||
public String getAspectNameFromUrl(String url, App app) {
|
||||
url = url.replace(getPodUrl() + "/aspects?a_ids[]=", "").split(",")[0];
|
||||
try {
|
||||
int id = Integer.parseInt(url);
|
||||
for (DiasporaAspect aspect : app.getDiasporaUserProfile().getAspects()) {
|
||||
if (aspect.id == id) {
|
||||
return aspect.name;
|
||||
}
|
||||
}
|
||||
} catch (Exception ignored) {
|
||||
}
|
||||
return app.getString(R.string.aspects);
|
||||
}
|
||||
**/
|
||||
|
||||
}
|
||||
|
|
|
@ -1,5 +1,11 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<background android:drawable="@drawable/ic_launcher_background"/>
|
||||
<foreground android:drawable="@drawable/ic_launcher_foreground"/>
|
||||
</adaptive-icon>
|
||||
<vector android:height="24dp" android:viewportHeight="48"
|
||||
android:viewportWidth="48" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillAlpha="1" android:fillColor="#438a6b"
|
||||
android:pathData="m25.5147,9.4763 l-1.3204,1.0745c-1.7404,1.4175 -3.3526,2.8307 -7.628,6.686 -1.9498,1.7582 -4.1281,3.6596 -4.8405,4.2253 -1.2032,0.9555 -1.6649,1.5571 -6.51,8.4617l-5.2159,7.4317 1.4833,0.7457c1.4807,0.7441 1.485,0.7453 2.1592,0.4755 0.9058,-0.3624 0.9659,-0.3478 0.8833,0.2145 -0.0407,0.2771 0.0271,0.561 0.1589,0.6637 0.2311,0.1801 3.0873,1.1037 3.3642,1.0877 0.0811,-0.004 -0.3966,-0.2914 -1.0614,-0.6374 -0.7825,-0.4073 -1.1027,-0.6527 -0.9076,-0.6951 0.4656,-0.1012 2.9036,0.5664 4.4884,1.2293 1.2167,0.5089 2.7228,0.8141 2.7228,0.5514 0,-0.0433 -0.7576,-0.7139 -1.6836,-1.4904 -1.7868,-1.4983 -2.0705,-1.8266 -1.4024,-1.625 0.7224,0.2181 3.2079,1.4166 4.8071,2.318 1.0995,0.6199 1.742,0.8752 2.1997,0.8752l0.6465,0l-1.373,-1.3811c-0.5278,-0.531 -0.9157,-0.9802 -1.0624,-1.2111l0.4088,0c0.5322,0.2244 1.4518,0.6536 2.4708,1.1615 1.4696,0.7325 2.7439,1.3649 2.831,1.4054 0.0871,0.0406 -0.0098,-0.1633 -0.2165,-0.4523 -0.5069,-0.7118 -0.4789,-1.314 0.0809,-1.7545 0.6072,-0.4776 1.0991,-0.478 0.9744,-0.0006 -0.0705,0.2695 0.1425,0.5855 0.8752,1.2951l0.9693,0.9379l1.2809,0 1.2799,0l-0.1771,-0.6961c-0.0973,-0.3833 -0.1315,-0.7427 -0.0759,-0.7983 0.1343,-0.1343 1.4984,0.6716 1.9144,1.1312 0.1807,0.1998 0.5295,0.3601 0.776,0.3561 0.4382,-0.0079 0.4337,-0.0204 -0.2418,-0.6182 -0.9228,-0.817 -2.4685,-1.6574 -4.1059,-2.232 -0.7386,-0.2592 -1.3094,-0.5058 -1.2678,-0.5474 0.1308,-0.1308 3.024,0.4693 4.4884,0.9309 1.6368,0.5159 2.8052,1.0751 3.9501,1.89 0.7978,0.5679 2.0287,0.8207 2.0287,0.4169 0,-0.3084 -1.2202,-1.3899 -2.1764,-1.9295 -0.5213,-0.2942 -0.9089,-0.5735 -0.8621,-0.6202 0.1425,-0.1425 2.5624,0.6466 3.2975,1.0755 0.3799,0.2217 0.9587,0.6824 1.2861,1.0229 0.5474,0.5695 0.6746,0.6182 1.5875,0.6182 0.9827,0 1.0019,-0.0098 1.9093,-0.9744 0.5039,-0.5361 1.3715,-1.3562 1.9285,-1.8223 0.9442,-0.7901 1.0336,-0.8282 1.3204,-0.5686 0.4182,0.3785 0.5074,1.1769 0.2641,2.3575l-0.2034,0.9875 0.6162,-0.4857c0.8542,-0.6725 2.1119,-1.2785 3.6384,-1.7535 0.7123,-0.2216 1.3205,-0.4178 1.3518,-0.4371 0.0916,-0.0567 -2.1515,-7.4841 -3.2712,-10.8304 -1.7321,-5.1769 -3.1485,-8.4402 -4.0057,-9.2297 -0.2076,-0.1913 -3.6306,-2.2571 -7.6057,-4.5916zM47.9009,39.3428c-0.2331,0 -1.597,0.894 -1.971,1.2921 -0.6301,0.6707 -0.0211,0.5655 1.1231,-0.1943 0.5209,-0.3459 0.947,-0.735 0.947,-0.8641 0,-0.129 -0.0439,-0.2337 -0.0982,-0.2337z"
|
||||
android:strokeAlpha="0.94527366" android:strokeColor="#00000000"
|
||||
android:strokeLineCap="butt" android:strokeLineJoin="round" android:strokeWidth="0.46576706"/>
|
||||
<path android:fillAlpha="1" android:fillColor="#ffffff"
|
||||
android:pathData="m29.6916,16.1868c-0.7308,-0.009 -1.4893,0.1094 -2.2463,0.37 -1.0758,0.3703 -2.6339,1.9681 -3.079,3.1576 -0.3402,0.9094 -0.4457,2.3351 -0.2554,3.4572l0.1023,0.6029 -1.2813,0.673 -1.2813,0.673 -0.4928,-0.4678c-0.8745,-0.83 -1.415,-1.0263 -2.8283,-1.0269 -1.472,-0.0006 -2.0918,0.2327 -2.9415,1.1069 -0.8298,0.8538 -1.1693,1.6923 -1.162,2.8694 0.0033,0.5551 0.1054,1.243 0.2264,1.5289 0.3189,0.7533 1.2791,1.7327 2.1294,2.1721 1.3935,0.7202 3.3458,0.4253 4.546,-0.687 0.31,-0.2873 0.3213,-0.283 1.7327,0.6702l1.4209,0.9595 -0.0517,0.9182c-0.0284,0.505 0.0234,1.145 0.1149,1.4225 0.2038,0.6177 1.3086,1.7308 1.9074,1.9218 0.7664,0.2444 1.9908,0.0606 2.6526,-0.398 1.0256,-0.7108 1.5163,-2.1134 1.1784,-3.3683 -0.173,-0.6423 -0.7464,-1.345 -1.48,-1.8137l-0.3491,-0.2233 0.3608,-1.5819 0.3608,-1.5819 1.1185,-0.0934c1.3538,-0.113 1.9519,-0.3186 2.8827,-0.992 1.9086,-1.3807 2.6988,-3.5645 2.1626,-5.975 -0.5796,-2.6051 -2.8372,-4.2618 -5.4474,-4.294zM24.7729,24.9043c0.0981,0 0.2769,0.1905 0.3974,0.4233 0.2679,0.5181 1.458,1.4659 2.1591,1.7194 0.5078,0.1836 0.5147,0.1979 0.4158,0.8573 -0.1768,1.1787 -0.6772,2.5861 -0.9489,2.6686 -0.1999,0.0607 -1.0627,0.4526 -1.6865,0.766 -0.0414,0.0208 -0.7417,-0.4092 -1.5563,-0.9554 -1.4013,-0.9397 -1.4745,-1.0146 -1.3562,-1.3904 0.0688,-0.2185 0.1189,-0.9736 0.1115,-1.678l-0.0133,-1.2806 1.1497,-0.5649c0.6323,-0.3108 1.2297,-0.5653 1.3278,-0.5653z"
|
||||
android:strokeAlpha="0.94527366" android:strokeColor="#00000000"
|
||||
android:strokeLineCap="butt" android:strokeLineJoin="round" android:strokeWidth="0.46576706"/>
|
||||
</vector>
|
||||
|
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 728 B After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 939 B After Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 3.9 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.9 KiB |
Before Width: | Height: | Size: 4.0 KiB After Width: | Height: | Size: 7.9 KiB |
|
@ -0,0 +1,11 @@
|
|||
<vector android:height="24dp" android:viewportHeight="48"
|
||||
android:viewportWidth="48" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillAlpha="1" android:fillColor="#438a6b"
|
||||
android:pathData="m25.5147,9.4763 l-1.3204,1.0745c-1.7404,1.4175 -3.3526,2.8307 -7.628,6.686 -1.9498,1.7582 -4.1281,3.6596 -4.8405,4.2253 -1.2032,0.9555 -1.6649,1.5571 -6.51,8.4617l-5.2159,7.4317 1.4833,0.7457c1.4807,0.7441 1.485,0.7453 2.1592,0.4755 0.9058,-0.3624 0.9659,-0.3478 0.8833,0.2145 -0.0407,0.2771 0.0271,0.561 0.1589,0.6637 0.2311,0.1801 3.0873,1.1037 3.3642,1.0877 0.0811,-0.004 -0.3966,-0.2914 -1.0614,-0.6374 -0.7825,-0.4073 -1.1027,-0.6527 -0.9076,-0.6951 0.4656,-0.1012 2.9036,0.5664 4.4884,1.2293 1.2167,0.5089 2.7228,0.8141 2.7228,0.5514 0,-0.0433 -0.7576,-0.7139 -1.6836,-1.4904 -1.7868,-1.4983 -2.0705,-1.8266 -1.4024,-1.625 0.7224,0.2181 3.2079,1.4166 4.8071,2.318 1.0995,0.6199 1.742,0.8752 2.1997,0.8752l0.6465,0l-1.373,-1.3811c-0.5278,-0.531 -0.9157,-0.9802 -1.0624,-1.2111l0.4088,0c0.5322,0.2244 1.4518,0.6536 2.4708,1.1615 1.4696,0.7325 2.7439,1.3649 2.831,1.4054 0.0871,0.0406 -0.0098,-0.1633 -0.2165,-0.4523 -0.5069,-0.7118 -0.4789,-1.314 0.0809,-1.7545 0.6072,-0.4776 1.0991,-0.478 0.9744,-0.0006 -0.0705,0.2695 0.1425,0.5855 0.8752,1.2951l0.9693,0.9379l1.2809,0 1.2799,0l-0.1771,-0.6961c-0.0973,-0.3833 -0.1315,-0.7427 -0.0759,-0.7983 0.1343,-0.1343 1.4984,0.6716 1.9144,1.1312 0.1807,0.1998 0.5295,0.3601 0.776,0.3561 0.4382,-0.0079 0.4337,-0.0204 -0.2418,-0.6182 -0.9228,-0.817 -2.4685,-1.6574 -4.1059,-2.232 -0.7386,-0.2592 -1.3094,-0.5058 -1.2678,-0.5474 0.1308,-0.1308 3.024,0.4693 4.4884,0.9309 1.6368,0.5159 2.8052,1.0751 3.9501,1.89 0.7978,0.5679 2.0287,0.8207 2.0287,0.4169 0,-0.3084 -1.2202,-1.3899 -2.1764,-1.9295 -0.5213,-0.2942 -0.9089,-0.5735 -0.8621,-0.6202 0.1425,-0.1425 2.5624,0.6466 3.2975,1.0755 0.3799,0.2217 0.9587,0.6824 1.2861,1.0229 0.5474,0.5695 0.6746,0.6182 1.5875,0.6182 0.9827,0 1.0019,-0.0098 1.9093,-0.9744 0.5039,-0.5361 1.3715,-1.3562 1.9285,-1.8223 0.9442,-0.7901 1.0336,-0.8282 1.3204,-0.5686 0.4182,0.3785 0.5074,1.1769 0.2641,2.3575l-0.2034,0.9875 0.6162,-0.4857c0.8542,-0.6725 2.1119,-1.2785 3.6384,-1.7535 0.7123,-0.2216 1.3205,-0.4178 1.3518,-0.4371 0.0916,-0.0567 -2.1515,-7.4841 -3.2712,-10.8304 -1.7321,-5.1769 -3.1485,-8.4402 -4.0057,-9.2297 -0.2076,-0.1913 -3.6306,-2.2571 -7.6057,-4.5916zM47.9009,39.3428c-0.2331,0 -1.597,0.894 -1.971,1.2921 -0.6301,0.6707 -0.0211,0.5655 1.1231,-0.1943 0.5209,-0.3459 0.947,-0.735 0.947,-0.8641 0,-0.129 -0.0439,-0.2337 -0.0982,-0.2337z"
|
||||
android:strokeAlpha="0.94527366" android:strokeColor="#00000000"
|
||||
android:strokeLineCap="butt" android:strokeLineJoin="round" android:strokeWidth="0.46576706"/>
|
||||
<path android:fillAlpha="1" android:fillColor="#ffffff"
|
||||
android:pathData="m29.6916,16.1868c-0.7308,-0.009 -1.4893,0.1094 -2.2463,0.37 -1.0758,0.3703 -2.6339,1.9681 -3.079,3.1576 -0.3402,0.9094 -0.4457,2.3351 -0.2554,3.4572l0.1023,0.6029 -1.2813,0.673 -1.2813,0.673 -0.4928,-0.4678c-0.8745,-0.83 -1.415,-1.0263 -2.8283,-1.0269 -1.472,-0.0006 -2.0918,0.2327 -2.9415,1.1069 -0.8298,0.8538 -1.1693,1.6923 -1.162,2.8694 0.0033,0.5551 0.1054,1.243 0.2264,1.5289 0.3189,0.7533 1.2791,1.7327 2.1294,2.1721 1.3935,0.7202 3.3458,0.4253 4.546,-0.687 0.31,-0.2873 0.3213,-0.283 1.7327,0.6702l1.4209,0.9595 -0.0517,0.9182c-0.0284,0.505 0.0234,1.145 0.1149,1.4225 0.2038,0.6177 1.3086,1.7308 1.9074,1.9218 0.7664,0.2444 1.9908,0.0606 2.6526,-0.398 1.0256,-0.7108 1.5163,-2.1134 1.1784,-3.3683 -0.173,-0.6423 -0.7464,-1.345 -1.48,-1.8137l-0.3491,-0.2233 0.3608,-1.5819 0.3608,-1.5819 1.1185,-0.0934c1.3538,-0.113 1.9519,-0.3186 2.8827,-0.992 1.9086,-1.3807 2.6988,-3.5645 2.1626,-5.975 -0.5796,-2.6051 -2.8372,-4.2618 -5.4474,-4.294zM24.7729,24.9043c0.0981,0 0.2769,0.1905 0.3974,0.4233 0.2679,0.5181 1.458,1.4659 2.1591,1.7194 0.5078,0.1836 0.5147,0.1979 0.4158,0.8573 -0.1768,1.1787 -0.6772,2.5861 -0.9489,2.6686 -0.1999,0.0607 -1.0627,0.4526 -1.6865,0.766 -0.0414,0.0208 -0.7417,-0.4092 -1.5563,-0.9554 -1.4013,-0.9397 -1.4745,-1.0146 -1.3562,-1.3904 0.0688,-0.2185 0.1189,-0.9736 0.1115,-1.678l-0.0133,-1.2806 1.1497,-0.5649c0.6323,-0.3108 1.2297,-0.5653 1.3278,-0.5653z"
|
||||
android:strokeAlpha="0.94527366" android:strokeColor="#00000000"
|
||||
android:strokeLineCap="butt" android:strokeLineJoin="round" android:strokeWidth="0.46576706"/>
|
||||
</vector>
|
|
@ -33,75 +33,8 @@
|
|||
android:icon="@drawable/ic_directory_white_48px"
|
||||
android:title="@string/directory"
|
||||
app:showAsAction="always" />
|
||||
<!-- not enagh place on top bar menu. Change top bar menu height size???
|
||||
<item
|
||||
android:id="@+id/action_conversations"
|
||||
android:icon="@drawable/ic_mail_white_48px__layer"
|
||||
android:title="@string/conversations"
|
||||
app:showAsAction="always" />
|
||||
<!-- not enagh place on top bar menu. Change top bar menu height size???-->
|
||||
|
||||
<item
|
||||
android:id="@+id/action_search"
|
||||
android:icon="@drawable/ic_search_white_48px"
|
||||
android:title="@string/action_search_by_tags_or_persons"
|
||||
app:showAsAction="always" />
|
||||
-->
|
||||
<!-- seems pointless ???? The same icons are right beneath
|
||||
<item
|
||||
android:id="@+id/action_notifications"
|
||||
android:icon="@drawable/ic_notifications_white_48px__layer"
|
||||
android:title="@string/notifications"
|
||||
app:showAsAction="always" />
|
||||
|
||||
<item
|
||||
android:visible="false"
|
||||
android:id="@+id/action_notifications_extended"
|
||||
android:icon="@drawable/ic_notifications_white_48px__layer"
|
||||
android:title="@string/notifications"
|
||||
app:showAsAction="always">
|
||||
<menu>
|
||||
<item
|
||||
android:id="@+id/action_notifications_all"
|
||||
android:icon="@drawable/ic_dashboard_black_48px"
|
||||
android:title="@string/notifications__all" />
|
||||
|
||||
<item
|
||||
android:id="@+id/action_notifications_also_commented"
|
||||
android:icon="@drawable/ic_question_answer_black_48px"
|
||||
android:title="@string/notifications__also_commented" />
|
||||
|
||||
<item
|
||||
android:id="@+id/action_notifications_comment_on_post"
|
||||
android:icon="@drawable/ic_comment_black_48px"
|
||||
android:title="@string/notifications__comment_on_post" />
|
||||
|
||||
<item
|
||||
android:id="@+id/action_notifications_liked"
|
||||
android:icon="@drawable/ic_thumb_up_black_48px"
|
||||
android:title="@string/notifications__liked" />
|
||||
|
||||
<item
|
||||
android:id="@+id/action_notifications_mentioned"
|
||||
android:icon="@drawable/ic_person_pin_black_48px"
|
||||
android:title="@string/notifications__mentioned" />
|
||||
|
||||
<item
|
||||
android:id="@+id/action_notifications_reshared"
|
||||
android:icon="@drawable/ic_repeat_black_48px"
|
||||
android:title="@string/notifications__reshared" />
|
||||
<item
|
||||
android:id="@+id/action_notifications_started_sharing"
|
||||
android:icon="@drawable/ic_person_add_black_48px"
|
||||
android:title="@string/notifications__started_sharing" />
|
||||
</menu>
|
||||
</item>
|
||||
|
||||
<item
|
||||
android:id="@+id/action_compose"
|
||||
android:icon="@drawable/ic_mode_edit_white_48px"
|
||||
android:title="@string/action_compose_new_post"
|
||||
app:showAsAction="always" />
|
||||
-->
|
||||
<item
|
||||
android:icon="@drawable/ic_share_white_48px"
|
||||
android:orderInCategory="1"
|
||||
|
@ -131,7 +64,7 @@
|
|||
</item>
|
||||
<group
|
||||
android:orderInCategory="101"
|
||||
android:showAsAction="always">
|
||||
app:showAsAction="always">
|
||||
|
||||
<item
|
||||
android:id="@+id/action_reload"
|
||||
|
|
|
@ -15,4 +15,3 @@ Where:
|
|||
-->
|
||||
**[Massimiliano](https://hub.disroot.org/channel/massimiliano)**<br/>~° Current developer of Nomad<br/>
|
||||
**[gia vec](https://framagit.org/elvecio)**<br/>~° Italian Translator<br/>
|
||||
**[f***OffGoogle](https://framagit.org/ajeremias)**<br/>~° Logo designer<br/>
|
||||
|
|
|
@ -18,7 +18,7 @@ We are basing our work on the dandelion* app
|
|||
The app is developed as a WebApp
|
||||
|
||||
Why is a WebApp better than using the mobile site on a browser?
|
||||
Basically it provides better integration with the system (events coming into and going out of the app), notifications, customized interface and functions and a nice little icon that takes you directly to your favorite social network :)
|
||||
Basically it provides better integration with the system (events coming into and going out of the app), customized interface and functions and a nice little icon that takes you directly to your favorite social network :)
|
||||
|
||||
#### Device Requirements
|
||||
The minimum Android version supported is Jelly Bean, Android v4.2.0 / API 17
|
||||
|
|
|
@ -146,8 +146,6 @@ nachträglich erteilen. Öffne dafür: Systemeinstellungen - Apps - dandelion*.
|
|||
<string name="pref_title__primary_color__amoled_mode">AMOLED Modus</string>
|
||||
<string name="pref_desc__primary_color__amoled_mode">Farben mit AMOLED-Display freundlichen Farben an vielen Orten der App überschreiben. Ein Neustart ist erforderlich um diese Einstellung zu ändern. Du kannst in deinen persönlichen diaspora* Einstellungen das dunkle Thema aktivieren, damit wird auch der Inhalt dunkler.</string>
|
||||
<!-- Notifications dropdown -->
|
||||
<string name="pref_title__extended_notifications">Erweiterte Benachrichtigungen</string>
|
||||
<string name="pref_desc__extended_notifications">Erweitere die Benachrichtigungsglocke um ein Ausklappmenü mit verschiedenen Benachrichtigungskategorien</string>
|
||||
<string name="pref_desc__language">Sprache der App ändern. Ein Neustart der App ist erforderlich um die Einstellung zu übernehmen</string>
|
||||
<string name="pref_title__language">Sprache</string>
|
||||
<string name="language_system">Systemsprache</string>
|
||||
|
|
|
@ -142,8 +142,6 @@
|
|||
<string name="pref_title__primary_color__amoled_mode">Modo AMOLED</string>
|
||||
<string name="pref_desc__primary_color__amoled_mode">Substituir el color negro en varias partes de la app con uno compatible con pantallas AMOLED. Necesitarás reiniciar la app para alternar ésta opcion. Para navegar hubzilla con un tema oscuro, lo necesitarás habilitar en tu panel de configuraciones personales de cuenta hubzilla.</string>
|
||||
<!-- Notifications dropdown -->
|
||||
<string name="pref_title__extended_notifications">Notificaciones extendidas</string>
|
||||
<string name="pref_desc__extended_notifications">Extender la campana de notificaciones con un menú desplegable que muestra categorías de notificación</string>
|
||||
<string name="pref_desc__language">Cambiar el idioma de esta aplicación. Reinicie la aplicación para que los cambios surtan efecto</string>
|
||||
<string name="pref_title__language">Idioma</string>
|
||||
<string name="language_system">Idioma del sistema</string>
|
||||
|
|
|
@ -145,8 +145,6 @@
|
|||
<string name="pref_title__primary_color__amoled_mode">Mode AMOLED</string>
|
||||
<string name="pref_desc__primary_color__amoled_mode">Remplacez les couleurs avec du noir compatible avec les affichages AMOLED, sur plusieurs parties de l\'application. Pour naviguer dans diaspora* avec un affichage sombre, vous pouvez aussi utiliser le thème Dark, que vous trouverez dans vos paramètres personnels de votre compte diaspora*.</string>
|
||||
<!-- Notifications dropdown -->
|
||||
<string name="pref_title__extended_notifications">Notifications étendues</string>
|
||||
<string name="pref_desc__extended_notifications">Étendre la cloche de notifications avec un menu déroulant qui affiche les catégories de notification</string>
|
||||
<string name="pref_desc__language">Change la langue de l\'application. Redémarrez l\'application pour que les changements prennent effet</string>
|
||||
<string name="pref_title__language">Langue</string>
|
||||
<string name="language_system">Langue du système</string>
|
||||
|
|
|
@ -146,8 +146,6 @@
|
|||
<string name="pref_title__primary_color__amoled_mode">Modo AMOLED</string>
|
||||
<string name="pref_desc__primary_color__amoled_mode">Sobreescribir as cores co negro dos dispositivos AMOLED en varios lugares do aplicativo. Precisa reiniciar para habilitar esta preferencia. Para navegar diaspora* en modo oscuro tamén precisa activar o Decorado Oscuro, que pode atopar nos axustes personais na súa conta de diaspora*.</string>
|
||||
<!-- Notifications dropdown -->
|
||||
<string name="pref_title__extended_notifications">Notificacións extendidas</string>
|
||||
<string name="pref_desc__extended_notifications">Extender a icona da campá de notificación con un menú desplegable que mostre a categoría das notificacións</string>
|
||||
<string name="pref_desc__language">Mudar o idioma de este aplicativo. Reinicie para que se aplique o troco</string>
|
||||
<string name="pref_title__language">Idioma</string>
|
||||
<string name="language_system">Idioma do sistema</string>
|
||||
|
|
|
@ -139,8 +139,6 @@
|
|||
<string name="pref_title__primary_color__amoled_mode">AMOLED mód</string>
|
||||
<string name="pref_desc__primary_color__amoled_mode">A színek felülbírálása feketével az alkalmazás sok részén, mely hasznos lehet AMOLED kijelzők esetében. Újra kell indítanod az alkalmazást ehhez a változtatáshoz. Hogy sötétben böngészd a diaspora*-ot, engedélyezned kell a Sötét téma beállítást, amely megtalálható a személyes diaspora* fiókbeállításaidnál.</string>
|
||||
<!-- Notifications dropdown -->
|
||||
<string name="pref_title__extended_notifications">Kiterjesztett értesítések</string>
|
||||
<string name="pref_desc__extended_notifications">Az értesítések gombra kattintva megjelenik egy gyorsmenü, amely értesítéskategóriákat mutat</string>
|
||||
<string name="pref_desc__language">Az alkalmazás nyelvének megváltoztatása. Indítsd újra az alkalmazást, hogy a módosítások érvénybe lépjenek!</string>
|
||||
<string name="pref_title__language">Nyelv</string>
|
||||
<string name="language_system">Rendszernyelv</string>
|
||||
|
|
|
@ -148,8 +148,6 @@
|
|||
<string name="pref_title__primary_color__amoled_mode">Modalità AMOLED</string>
|
||||
<string name="pref_desc__primary_color__amoled_mode">Sostituzione dei colori con display AMOLED scuro in molte parti dell\'app. È necessario riavviare per attivare o disattivare questa impostazione. Per utilizzare Hubzilla in scuro è inoltre necessario attivare il tema scuro, che può essere trovato nelle impostazioni dell\'account personale di Hubzilla.</string>
|
||||
<!-- Notifications dropdown -->
|
||||
<string name="pref_title__extended_notifications">Notifiche estese</string>
|
||||
<string name="pref_desc__extended_notifications">Estendi il bottone delle notifiche con un menù che mostra le categorie di notifiche</string>
|
||||
<string name="pref_desc__language">Cambia la lingua di questa app. Riavvia l\'app per rendere effettive le modifiche</string>
|
||||
<string name="pref_title__language">Lingua</string>
|
||||
<string name="language_system">Lingua di sistema</string>
|
||||
|
|
|
@ -142,8 +142,6 @@
|
|||
<string name="pref_title__primary_color__amoled_mode">AMOLED モード</string>
|
||||
<string name="pref_desc__primary_color__amoled_mode">アプリの多くの部分を AMOLED フレンドリーな黒色の表示で上書きします。この設定を切り替えるには再起動する必要があります。ダイアスポラ* を暗く参照するには、ダイアスポラ* の個人アカウント設定にある、ダークテーマをアクティブにする必要があります。</string>
|
||||
<!-- Notifications dropdown -->
|
||||
<string name="pref_title__extended_notifications">拡張通知</string>
|
||||
<string name="pref_desc__extended_notifications">通知のカテゴリーを示すドロップダウン・メニューで通知ベルを拡張します</string>
|
||||
<string name="pref_desc__language">このアプリの言語を変更します。アプリを再起動すると変更を反映します</string>
|
||||
<string name="pref_title__language">言語</string>
|
||||
<string name="language_system">システム言語</string>
|
||||
|
|
|
@ -115,8 +115,6 @@
|
|||
<string name="pref_title__primary_color__amoled_mode">അമോൾഡ് മോഡ്</string>
|
||||
<string name="pref_desc__primary_color__amoled_mode">അമോലെഡ് ഡിസ്പ്ലേ സൗഹൃദമായ കറുപ്പ് നിറം ആപ്പിന്റെ പല ഭാഗങ്ങളിലും മറ്റു നിറങ്ങളെ മറികടക്കും. ഈ ക്രമീകരണം മാറ്റുവാൻ ആപ്പ് വീണ്ടും തുറക്കേണ്ടി വരും. നിങ്ങളുടെ സ്വകാര്യ ഡയസ്പോറ* അകൗണ്ട് ക്രമീകരണങ്ങളിലെ ഇരുണ്ട തീം പ്രയോഗിച്ചാൽ ഡയസ്പോറ* നിങ്ങൾക്ക് ഇരുണ്ട പശ്ചാത്തലത്തിൽ ഉപയോഗിക്കാം.</string>
|
||||
<!-- Notifications dropdown -->
|
||||
<string name="pref_title__extended_notifications">വ്യാപിപ്പിച്ച വിജ്ഞാപനങ്ങൾ</string>
|
||||
<string name="pref_desc__extended_notifications">വിജ്ഞാപന വിഭാഗങ്ങൾ കാണിക്കുന്ന താഴേക്ക് വലിക്കാവുന്ന മെനുവിൽ വിജ്ഞാപന മണി വലുതാക്കുക</string>
|
||||
<string name="pref_desc__language">ആപ്പിന്റെ ഭാഷ മാറ്റുക. മാറ്റം ഫലപ്രദമാകുവാൻ ആപ്പ് വീണ്ടും തുറക്കുക</string>
|
||||
<string name="pref_title__language">ഭാഷ</string>
|
||||
<string name="language_system">സിസ്റ്റത്തിലെ ഭാഷ</string>
|
||||
|
|
|
@ -138,8 +138,6 @@
|
|||
<string name="pref_title__primary_color__amoled_mode">AMOLED modus</string>
|
||||
<string name="pref_desc__primary_color__amoled_mode">Overschrijd kleuren met AMOLED display vriendelijk zwart op veel plekken in de app. Je moet de app restarten om deze verandering te zien. Om Hubzilla in het donker te zien moet je de Dark thema activeren, dat gevonden kan worden in je eigen Hubzilla account instellingen.</string>
|
||||
<!-- Notifications dropdown -->
|
||||
<string name="pref_title__extended_notifications">Uitgebreide meldingen</string>
|
||||
<string name="pref_desc__extended_notifications">Breidt de notificatie bel uit met een dropdown menu dat de notificatie categorieën laat zien</string>
|
||||
<string name="pref_desc__language">Taal wijzigen van deze app. Opnieuw opstarten om wijzigingen te activeren</string>
|
||||
<string name="pref_title__language">Taal</string>
|
||||
<string name="language_system">Systeemtaal</string>
|
||||
|
|
|
@ -80,7 +80,6 @@
|
|||
<string name="pref_key__language" translatable="false">pref_key__language</string>
|
||||
<string name="pref_key__intellihide_toolbars" translatable="false">pref_key_intellihide_toolbars</string>
|
||||
<string name="pref_key__personal_settings" translatable="false">pref_key_personal_settings</string>
|
||||
<!-- <string name="pref_key__manage_tags" translatable="false">pref_key_manage_tags</string> -->
|
||||
<string name="pref_key__manage_addon" translatable="false">pref_key_manage_addon</string>
|
||||
<string name="pref_key__manage_contacts" translatable="false">pref_key_manage_contacts</string>
|
||||
<string name="pref_key__change_account" translatable="false">pref_key_change_account</string>
|
||||
|
@ -88,7 +87,6 @@
|
|||
<string name="pref_key__clear_cache" translatable="false">pref_key_clear_cache</string>
|
||||
<string name="pref_key__chrome_custom_tabs_enabled" translatable="false">pref_key__chrome_custom_tabs_enabled</string>
|
||||
<string name="pref_key__http_proxy_load_tor_preset" translatable="false">pref_key__http_proxy_load_tor_preset</string>
|
||||
<string name="pref_key__extended_notifications" translatable="false">pref_key__extended_notifications</string>
|
||||
<string name="pref_key__topbar_stream_shortcut" translatable="false">pref_key__topbar_stream_shortcut</string>
|
||||
<string name="pref_key__app_first_start" translatable="false">pref_key__app_first_start</string>
|
||||
<string name="pref_key__app_first_start_current_version" translatable="false">pref_key__app_first_start_current_version</string>
|
||||
|
@ -107,17 +105,10 @@
|
|||
<string name="pref_key__visibility_nav__exit" translatable="false">pref_key__visibility_navslider__exit</string>
|
||||
<string name="pref_key__visibility_nav__help_license" translatable="false">pref_key__visibility_nav__help_license</string>
|
||||
<string name="pref_key__visibility_nav__public_activities" translatable="false">pref_key__visibility_nav__public_activities</string>
|
||||
<!-- <string name="pref_key__visibility_nav__mentions" translatable="false">pref_key__visibility_nav__mentions</string>
|
||||
<string name="pref_key__visibility_nav__commented" translatable="false">pref_key__visibility_nav__commented</string>
|
||||
<string name="pref_key__visibility_nav__liked" translatable="false">pref_key__visibility_nav__liked</string> -->
|
||||
<string name="pref_key__visibility_nav__activities" translatable="false">pref_key__visibility_nav__activities</string>
|
||||
<string name="pref_key__visibility_nav__aspects" translatable="false">pref_key__visibility_nav__aspects</string>
|
||||
<!-- <string name="pref_key__visibility_nav__followed_tags" translatable="false">pref_key__visibility_nav__followed_tags</string> -->
|
||||
<string name="pref_key__visibility_nav__profile" translatable="false">pref_key__visibility_nav__profile</string>
|
||||
<string name="pref_key__visibility_nav__contacts" translatable="false">pref_key__visibility_nav__contacts</string>
|
||||
<!-- <string name="pref_key__visibility_nav__reports" translatable="false">pref_key__visibility_nav__reports</string>
|
||||
<string name="pref_key__visibility_nav__statistics" translatable="false">pref_key__visibility_nav__statistics</string>
|
||||
<string name="pref_key__visibility_nav__toggle_mobile_desktop" translatable="false">pref_key__visibility_nav__toggle_mobile_desktop</string> -->
|
||||
<string name="pref_key__visibility_nav__dandelion_account" translatable="false">pref_key__visibility_nav__nomad_account</string>
|
||||
<string name="pref_key__visibility_nav__events" translatable="false">pref_key__visibility_nav__events</string><!-- added for Nomad -->
|
||||
<string name="pref_key__podprofile_avatar_url" translatable="false">pref_key__phubprofile_avatar_url</string>
|
||||
|
@ -125,8 +116,6 @@
|
|||
<string name="pref_key__podprofile_id" translatable="false">pref_key__hubprofile_id</string>
|
||||
<string name="pref_key__podprofile_aspects" translatable="false">pref_key__hubprofile_aspects</string>
|
||||
<string name="pref_key__podprofile_aspects_favs" translatable="false">pref_key__hubprofile_aspects_favs</string>
|
||||
<!-- <string name="pref_key__podprofile_followed_tags" translatable="false">pref_key__hubprofile_followed_tags</string>
|
||||
<string name="pref_key__podprofile_followed_tags_favs" translatable="false">pref_key__hubprofile_followed_tags_favs</string> -->
|
||||
<string name="pref_key__podprofile_unread_message_count" translatable="false">pref_key__hubprofile_unread_message_count</string>
|
||||
<string name="pref_key__podprofile_notification_count" translatable="false">pref_key__hubprofile_notification_count</string>
|
||||
<string name="pref_key__podprofile_last_stream_position" translatable="false">pref_key__hubprofile_last_stream_position</string> <!-- More -->
|
||||
|
|
|
@ -139,10 +139,6 @@
|
|||
<string name="pref_title__primary_color__amoled_mode">AMOLED Mode</string>
|
||||
<string name="pref_desc__primary_color__amoled_mode">Override colors with AMOLED display friendly black at many parts of the app. You need to restart to toggle this setting. To browse Hubzilla in dark you also need to activate the Dark theme, which can be found in your personal Hubzilla account settings.</string><!-- edited for Nomad -->
|
||||
|
||||
<!-- Notifications dropdown -->
|
||||
<string name="pref_title__extended_notifications">Extended Notifications</string>
|
||||
<string name="pref_desc__extended_notifications">Extend the notifications bell with a dropdown menu that shows notification categories</string>
|
||||
|
||||
<string name="pref_desc__language">Change language of this app. Restart app for changes to take effect</string>
|
||||
<string name="pref_title__language">Language</string>
|
||||
<string name="language_system">System language</string>
|
||||
|
|
|
@ -58,13 +58,6 @@
|
|||
android:summary="@string/pref_summary__is_statusbar_hidden"
|
||||
android:title="@string/pref_title__is_statusbar_hidden"/>
|
||||
|
||||
<com.dfa.hubzilla_android.ui.theme.ThemedCheckBoxPreference
|
||||
android:defaultValue="false"
|
||||
android:icon="@drawable/ic_notifications_black_24px"
|
||||
android:key="@string/pref_key__extended_notifications"
|
||||
android:summary="@string/pref_desc__extended_notifications"
|
||||
android:title="@string/pref_title__extended_notifications"/>
|
||||
|
||||
<com.dfa.hubzilla_android.ui.theme.ThemedCheckBoxPreference
|
||||
android:defaultValue="true"
|
||||
android:icon="@drawable/ic_thumb_up_black_24px"
|
||||
|
|
|
@ -25,7 +25,7 @@ buildscript {
|
|||
google()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.1.3'
|
||||
classpath 'com.android.tools.build:gradle:3.1.4'
|
||||
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'
|
||||
if (project.enable_plugin_kotlin) {
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$version_plugin_kotlin"
|
||||
|
|
|
@ -25,4 +25,4 @@ org.gradle.parallel=true
|
|||
# Enables new incubating mode that makes Gradle selective when configuring projects.
|
||||
# Only relevant projects are configured which results in faster builds for large multi-projects.
|
||||
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:configuration_on_demand
|
||||
org.gradle.configureondemand=true
|
||||
org.gradle.configureondemand=false
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
#Fri Sep 21 21:08:45 CEST 2018
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-4.8-bin.zip
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-4.8-all.zip
|
||||
|
|