Ensure that activities and content providers are integrated into DI.

This commit is contained in:
Paul Hawke 2017-08-25 09:55:25 -05:00 committed by Paul Hawke
parent 8fe2816ca9
commit 7880a08c30
5 changed files with 90 additions and 100 deletions

View file

@ -19,31 +19,29 @@
android:name=".CommonsApplication" android:name=".CommonsApplication"
android:icon="@drawable/ic_launcher" android:icon="@drawable/ic_launcher"
android:label="@string/app_name" android:label="@string/app_name"
android:theme="@style/Theme.AppCompat" android:supportsRtl="true"
android:supportsRtl="true" > android:theme="@style/Theme.AppCompat">
<activity android:name="org.acra.CrashReportDialog"
android:theme="@android:style/Theme.Dialog"
android:launchMode="singleInstance"
android:excludeFromRecents="true"
android:finishOnTaskLaunch="true" />
<activity <activity
android:name=".auth.LoginActivity" android:name="org.acra.CrashReportDialog"
> android:excludeFromRecents="true"
android:finishOnTaskLaunch="true"
android:launchMode="singleInstance"
android:theme="@android:style/Theme.Dialog" />
<activity android:name=".auth.LoginActivity">
<intent-filter> <intent-filter>
<category android:name="android.intent.category.LAUNCHER" /> <category android:name="android.intent.category.LAUNCHER" />
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />
</intent-filter> </intent-filter>
</activity> </activity>
<activity
android:name=".WelcomeActivity" <activity android:name=".WelcomeActivity" />
>
</activity>
<activity <activity
android:name=".upload.ShareActivity" android:name=".upload.ShareActivity"
android:icon="@drawable/ic_launcher" android:icon="@drawable/ic_launcher"
android:label="@string/app_name" android:label="@string/app_name">
>
<intent-filter> <intent-filter>
<action android:name="android.intent.action.SEND" /> <action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.DEFAULT" />
@ -51,11 +49,11 @@
<data android:mimeType="audio/ogg" /> <data android:mimeType="audio/ogg" />
</intent-filter> </intent-filter>
</activity> </activity>
<activity <activity
android:name=".upload.MultipleShareActivity" android:name=".upload.MultipleShareActivity"
android:icon="@drawable/ic_launcher" android:icon="@drawable/ic_launcher"
android:label="@string/app_name" android:label="@string/app_name">
>
<intent-filter> <intent-filter>
<action android:name="android.intent.action.SEND_MULTIPLE" /> <action android:name="android.intent.action.SEND_MULTIPLE" />
<category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.DEFAULT" />
@ -67,27 +65,28 @@
<activity <activity
android:name=".contributions.ContributionsActivity" android:name=".contributions.ContributionsActivity"
android:icon="@drawable/ic_launcher" android:icon="@drawable/ic_launcher"
android:label="@string/app_name" android:label="@string/app_name" />
>
</activity>
<activity <activity
android:name=".settings.SettingsActivity" android:name=".settings.SettingsActivity"
android:label="@string/title_activity_settings" android:label="@string/title_activity_settings" />
/>
<activity <activity
android:name=".AboutActivity" android:name=".AboutActivity"
android:label="@string/title_activity_about" android:label="@string/title_activity_about"
android:parentActivityName=".contributions.ContributionsActivity" /> android:parentActivityName=".contributions.ContributionsActivity" />
<activity <activity
android:name=".auth.SignupActivity" android:name=".auth.SignupActivity"
android:label="@string/title_activity_signup" /> android:label="@string/title_activity_signup" />
<activity <activity
android:name=".nearby.NearbyActivity" android:name=".nearby.NearbyActivity"
android:label="@string/title_activity_nearby" android:label="@string/title_activity_nearby"
android:parentActivityName=".contributions.ContributionsActivity" /> android:parentActivityName=".contributions.ContributionsActivity" />
<service android:name=".upload.UploadService" > <service android:name=".upload.UploadService" />
</service>
<service <service
android:name=".auth.WikiAccountAuthenticatorService" android:name=".auth.WikiAccountAuthenticatorService"
android:exported="true" android:exported="true"
@ -105,8 +104,7 @@
android:name=".contributions.ContributionsSyncService" android:name=".contributions.ContributionsSyncService"
android:exported="true"> android:exported="true">
<intent-filter> <intent-filter>
<action <action android:name="android.content.SyncAdapter" />
android:name="android.content.SyncAdapter" />
</intent-filter> </intent-filter>
<meta-data <meta-data
android:name="android.content.SyncAdapter" android:name="android.content.SyncAdapter"
@ -117,8 +115,7 @@
android:name=".modifications.ModificationsSyncService" android:name=".modifications.ModificationsSyncService"
android:exported="true"> android:exported="true">
<intent-filter> <intent-filter>
<action <action android:name="android.content.SyncAdapter" />
android:name="android.content.SyncAdapter" />
</intent-filter> </intent-filter>
<meta-data <meta-data
android:name="android.content.SyncAdapter" android:name="android.content.SyncAdapter"
@ -137,26 +134,24 @@
<provider <provider
android:name=".contributions.ContributionsContentProvider" android:name=".contributions.ContributionsContentProvider"
android:label="@string/provider_contributions"
android:syncable="true"
android:authorities="fr.free.nrw.commons.contributions.contentprovider" android:authorities="fr.free.nrw.commons.contributions.contentprovider"
android:exported="false"> android:exported="false"
</provider> android:label="@string/provider_contributions"
android:syncable="true" />
<provider <provider
android:name=".modifications.ModificationsContentProvider" android:name=".modifications.ModificationsContentProvider"
android:label="@string/provider_modifications"
android:syncable="true"
android:authorities="fr.free.nrw.commons.modifications.contentprovider" android:authorities="fr.free.nrw.commons.modifications.contentprovider"
android:exported="false"> android:exported="false"
</provider> android:label="@string/provider_modifications"
android:syncable="true" />
<provider <provider
android:name=".category.CategoryContentProvider" android:name=".category.CategoryContentProvider"
android:label="@string/provider_categories"
android:syncable="false"
android:authorities="fr.free.nrw.commons.categories.contentprovider" android:authorities="fr.free.nrw.commons.categories.contentprovider"
android:exported="false"> android:exported="false"
</provider> android:label="@string/provider_categories"
android:syncable="false" />
</application> </application>

View file

@ -276,7 +276,4 @@ public class Utils {
return value == null || value.trim().isEmpty(); return value == null || value.trim().isEmpty();
} }
public static boolean isDarkTheme(Context context) {
return PreferenceManager.getDefaultSharedPreferences(context).getBoolean("theme",false);
}
} }

View file

@ -16,16 +16,25 @@ import fr.free.nrw.commons.upload.ShareActivity;
public abstract class ActivityBuilderModule { public abstract class ActivityBuilderModule {
@ContributesAndroidInjector @ContributesAndroidInjector
abstract ContributionsActivity bindContributionsActivity(); abstract LoginActivity bindLoginActivity();
@ContributesAndroidInjector @ContributesAndroidInjector
abstract MultipleShareActivity bindMultipleShareActivity(); abstract WelcomeActivity bindWelcomeActivity();
@ContributesAndroidInjector @ContributesAndroidInjector
abstract ShareActivity bindShareActivity(); abstract ShareActivity bindShareActivity();
@ContributesAndroidInjector @ContributesAndroidInjector
abstract LoginActivity bindLoginActivity(); abstract MultipleShareActivity bindMultipleShareActivity();
@ContributesAndroidInjector
abstract ContributionsActivity bindContributionsActivity();
@ContributesAndroidInjector
abstract SettingsActivity bindSettingsActivity();
@ContributesAndroidInjector
abstract AboutActivity bindAboutActivity();
@ContributesAndroidInjector @ContributesAndroidInjector
abstract SignupActivity bindSignupActivity(); abstract SignupActivity bindSignupActivity();
@ -33,13 +42,4 @@ public abstract class ActivityBuilderModule {
@ContributesAndroidInjector @ContributesAndroidInjector
abstract NearbyActivity bindNearbyActivity(); abstract NearbyActivity bindNearbyActivity();
@ContributesAndroidInjector
abstract AboutActivity bindAboutActivity();
@ContributesAndroidInjector
abstract SettingsActivity bindSettingsActivity();
@ContributesAndroidInjector
abstract WelcomeActivity bindWelcomeActivity();
} }

View file

@ -12,13 +12,13 @@ import fr.free.nrw.commons.modifications.ModificationsContentProvider;
@Module @Module
public abstract class ContentProviderBuilderModule { public abstract class ContentProviderBuilderModule {
@ContributesAndroidInjector
abstract CategoryContentProvider bindCategoryContentProvider();
@ContributesAndroidInjector @ContributesAndroidInjector
abstract ContributionsContentProvider bindContributionsContentProvider(); abstract ContributionsContentProvider bindContributionsContentProvider();
@ContributesAndroidInjector @ContributesAndroidInjector
abstract ModificationsContentProvider bindModificationsContentProvider(); abstract ModificationsContentProvider bindModificationsContentProvider();
@ContributesAndroidInjector
abstract CategoryContentProvider bindCategoryContentProvider();
} }

View file

@ -3,19 +3,17 @@ package fr.free.nrw.commons.theme;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.preference.PreferenceManager; import android.preference.PreferenceManager;
import android.support.v7.app.AppCompatActivity;
import dagger.android.AndroidInjection; import dagger.android.DaggerActivity;
import fr.free.nrw.commons.R; import fr.free.nrw.commons.R;
import fr.free.nrw.commons.Utils;
public class BaseActivity extends AppCompatActivity { public class BaseActivity extends DaggerActivity {
boolean currentTheme; boolean currentTheme;
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
AndroidInjection.inject(this); boolean currentThemeIsDark = PreferenceManager.getDefaultSharedPreferences(this).getBoolean("theme", false);
if(Utils.isDarkTheme(this)){ if (currentThemeIsDark) {
currentTheme = true; currentTheme = true;
setTheme(R.style.DarkAppTheme); setTheme(R.style.DarkAppTheme);
} else { } else {