mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-21 07:09:56 +01:00
Merged AppModule and AndroidModule.
This commit is contained in:
@@ -26,9 +26,12 @@ import javax.inject.Singleton;
|
|||||||
import dagger.Component;
|
import dagger.Component;
|
||||||
|
|
||||||
@Singleton
|
@Singleton
|
||||||
@Component(
|
@Component(modules = {
|
||||||
modules = {CoreModule.class, AppModule.class, AndroidModule.class,
|
CoreModule.class,
|
||||||
AndroidPluginsModule.class, AndroidSystemModule.class})
|
AndroidModule.class,
|
||||||
|
AndroidPluginsModule.class,
|
||||||
|
AndroidSystemModule.class
|
||||||
|
})
|
||||||
public interface AndroidComponent extends CoreEagerSingletons {
|
public interface AndroidComponent extends CoreEagerSingletons {
|
||||||
|
|
||||||
void inject(SplashScreenActivity activity);
|
void inject(SplashScreenActivity activity);
|
||||||
@@ -79,5 +82,4 @@ public interface AndroidComponent extends CoreEagerSingletons {
|
|||||||
|
|
||||||
// Eager singleton load
|
// Eager singleton load
|
||||||
void inject(AndroidModule.EagerSingletons init);
|
void inject(AndroidModule.EagerSingletons init);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
package org.briarproject.android;
|
package org.briarproject.android;
|
||||||
|
|
||||||
import android.app.Application;
|
import android.app.Application;
|
||||||
import android.content.Context;
|
|
||||||
|
|
||||||
import org.briarproject.android.api.AndroidNotificationManager;
|
import org.briarproject.android.api.AndroidNotificationManager;
|
||||||
import org.briarproject.android.api.ReferenceManager;
|
import org.briarproject.android.api.ReferenceManager;
|
||||||
@@ -19,6 +18,8 @@ import javax.inject.Singleton;
|
|||||||
import dagger.Module;
|
import dagger.Module;
|
||||||
import dagger.Provides;
|
import dagger.Provides;
|
||||||
|
|
||||||
|
import static android.content.Context.MODE_PRIVATE;
|
||||||
|
|
||||||
@Module
|
@Module
|
||||||
public class AndroidModule {
|
public class AndroidModule {
|
||||||
|
|
||||||
@@ -27,10 +28,11 @@ public class AndroidModule {
|
|||||||
AndroidNotificationManager androidNotificationManager;
|
AndroidNotificationManager androidNotificationManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private final Application application;
|
||||||
private final UiCallback uiCallback;
|
private final UiCallback uiCallback;
|
||||||
|
|
||||||
public AndroidModule() {
|
public AndroidModule(Application application) {
|
||||||
// Use a dummy UI callback
|
this.application = application;
|
||||||
uiCallback = new UiCallback() {
|
uiCallback = new UiCallback() {
|
||||||
|
|
||||||
public int showChoice(String[] options, String... message) {
|
public int showChoice(String[] options, String... message) {
|
||||||
@@ -47,6 +49,12 @@ public class AndroidModule {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Provides
|
||||||
|
@Singleton
|
||||||
|
Application providesApplication() {
|
||||||
|
return application;
|
||||||
|
}
|
||||||
|
|
||||||
@Provides
|
@Provides
|
||||||
public UiCallback provideUICallback() {
|
public UiCallback provideUICallback() {
|
||||||
return uiCallback;
|
return uiCallback;
|
||||||
@@ -55,7 +63,7 @@ public class AndroidModule {
|
|||||||
@Provides
|
@Provides
|
||||||
@Singleton
|
@Singleton
|
||||||
public DatabaseConfig provideDatabaseConfig(Application app) {
|
public DatabaseConfig provideDatabaseConfig(Application app) {
|
||||||
final File dir = app.getApplicationContext().getDir("db", Context.MODE_PRIVATE);
|
final File dir = app.getApplicationContext().getDir("db", MODE_PRIVATE);
|
||||||
return new DatabaseConfig() {
|
return new DatabaseConfig() {
|
||||||
|
|
||||||
private volatile SecretKey key = null;
|
private volatile SecretKey key = null;
|
||||||
|
|||||||
@@ -1,24 +0,0 @@
|
|||||||
package org.briarproject.android;
|
|
||||||
|
|
||||||
import android.app.Application;
|
|
||||||
|
|
||||||
import javax.inject.Singleton;
|
|
||||||
|
|
||||||
import dagger.Module;
|
|
||||||
import dagger.Provides;
|
|
||||||
|
|
||||||
@Module
|
|
||||||
public class AppModule {
|
|
||||||
|
|
||||||
Application application;
|
|
||||||
|
|
||||||
public AppModule(Application application) {
|
|
||||||
this.application = application;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Provides
|
|
||||||
@Singleton
|
|
||||||
Application providesApplication() {
|
|
||||||
return application;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,17 +1,12 @@
|
|||||||
package org.briarproject.android;
|
package org.briarproject.android;
|
||||||
|
|
||||||
import android.content.Intent;
|
|
||||||
import android.content.SharedPreferences;
|
import android.content.SharedPreferences;
|
||||||
import android.content.res.Configuration;
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.os.IBinder;
|
import android.os.IBinder;
|
||||||
import android.support.v7.app.AppCompatActivity;
|
import android.support.v7.app.AppCompatActivity;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.inputmethod.InputMethodManager;
|
import android.view.inputmethod.InputMethodManager;
|
||||||
|
|
||||||
|
|
||||||
import javax.inject.Inject;
|
|
||||||
|
|
||||||
import static android.view.WindowManager.LayoutParams.FLAG_SECURE;
|
import static android.view.WindowManager.LayoutParams.FLAG_SECURE;
|
||||||
import static android.view.inputmethod.InputMethodManager.SHOW_IMPLICIT;
|
import static android.view.inputmethod.InputMethodManager.SHOW_IMPLICIT;
|
||||||
import static org.briarproject.android.TestingConstants.PREVENT_SCREENSHOTS;
|
import static org.briarproject.android.TestingConstants.PREVENT_SCREENSHOTS;
|
||||||
@@ -28,9 +23,8 @@ public abstract class BaseActivity extends AppCompatActivity {
|
|||||||
|
|
||||||
if (PREVENT_SCREENSHOTS) getWindow().addFlags(FLAG_SECURE);
|
if (PREVENT_SCREENSHOTS) getWindow().addFlags(FLAG_SECURE);
|
||||||
|
|
||||||
AndroidComponent component =
|
BriarApplication application = (BriarApplication) getApplication();
|
||||||
((BriarApplication) getApplication()).getApplicationComponent();
|
injectActivity(application.getApplicationComponent());
|
||||||
injectActivity(component);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public abstract void injectActivity(AndroidComponent component);
|
public abstract void injectActivity(AndroidComponent component);
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
package org.briarproject.android;
|
package org.briarproject.android;
|
||||||
|
|
||||||
import java.lang.Thread.UncaughtExceptionHandler;
|
|
||||||
import java.util.logging.Logger;
|
|
||||||
|
|
||||||
import android.app.Application;
|
import android.app.Application;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
|
||||||
import org.briarproject.CoreModule;
|
import org.briarproject.CoreModule;
|
||||||
|
|
||||||
|
import java.lang.Thread.UncaughtExceptionHandler;
|
||||||
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
public class BriarApplication extends Application {
|
public class BriarApplication extends Application {
|
||||||
|
|
||||||
private static final Logger LOG =
|
private static final Logger LOG =
|
||||||
@@ -18,7 +18,7 @@ public class BriarApplication extends Application {
|
|||||||
@Override
|
@Override
|
||||||
public void onCreate() {
|
public void onCreate() {
|
||||||
super.onCreate();
|
super.onCreate();
|
||||||
LOG.info("Application Created");
|
LOG.info("Created");
|
||||||
UncaughtExceptionHandler oldHandler =
|
UncaughtExceptionHandler oldHandler =
|
||||||
Thread.getDefaultUncaughtExceptionHandler();
|
Thread.getDefaultUncaughtExceptionHandler();
|
||||||
Context ctx = getApplicationContext();
|
Context ctx = getApplicationContext();
|
||||||
@@ -26,8 +26,7 @@ public class BriarApplication extends Application {
|
|||||||
Thread.setDefaultUncaughtExceptionHandler(newHandler);
|
Thread.setDefaultUncaughtExceptionHandler(newHandler);
|
||||||
|
|
||||||
applicationComponent = DaggerAndroidComponent.builder()
|
applicationComponent = DaggerAndroidComponent.builder()
|
||||||
.appModule(new AppModule(this))
|
.androidModule(new AndroidModule(this))
|
||||||
.androidModule(new AndroidModule())
|
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
// We need to load the eager singletons directly after making the
|
// We need to load the eager singletons directly after making the
|
||||||
|
|||||||
@@ -55,8 +55,8 @@ public class BriarService extends Service {
|
|||||||
public void onCreate() {
|
public void onCreate() {
|
||||||
super.onCreate();
|
super.onCreate();
|
||||||
|
|
||||||
((BriarApplication) this.getApplication())
|
BriarApplication application = (BriarApplication) getApplication();
|
||||||
.getApplicationComponent().inject(this);
|
application.getApplicationComponent().inject(this);
|
||||||
|
|
||||||
LOG.info("Created");
|
LOG.info("Created");
|
||||||
if (created.getAndSet(true)) {
|
if (created.getAndSet(true)) {
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ import android.os.Bundle;
|
|||||||
import android.support.v4.app.Fragment;
|
import android.support.v4.app.Fragment;
|
||||||
|
|
||||||
import org.briarproject.android.AndroidComponent;
|
import org.briarproject.android.AndroidComponent;
|
||||||
import org.briarproject.android.BriarActivity;
|
|
||||||
import org.briarproject.android.BriarApplication;
|
import org.briarproject.android.BriarApplication;
|
||||||
|
|
||||||
public abstract class BaseFragment extends Fragment {
|
public abstract class BaseFragment extends Fragment {
|
||||||
@@ -14,8 +13,6 @@ public abstract class BaseFragment extends Fragment {
|
|||||||
|
|
||||||
protected BaseFragmentListener listener;
|
protected BaseFragmentListener listener;
|
||||||
|
|
||||||
protected BriarActivity briarActivity;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onAttach(Context context) {
|
public void onAttach(Context context) {
|
||||||
super.onAttach(context);
|
super.onAttach(context);
|
||||||
@@ -31,15 +28,15 @@ public abstract class BaseFragment extends Fragment {
|
|||||||
public void onCreate(Bundle savedInstanceState) {
|
public void onCreate(Bundle savedInstanceState) {
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
|
|
||||||
AndroidComponent component =
|
BriarApplication application =
|
||||||
((BriarApplication) getActivity().getApplication())
|
(BriarApplication) getActivity().getApplication();
|
||||||
.getApplicationComponent();
|
injectActivity(application.getApplicationComponent());
|
||||||
injectActivity(component);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public abstract void injectActivity(AndroidComponent component);
|
public abstract void injectActivity(AndroidComponent component);
|
||||||
|
|
||||||
public interface BaseFragmentListener {
|
public interface BaseFragmentListener {
|
||||||
|
|
||||||
void showLoadingScreen(boolean isBlocking, int stringId);
|
void showLoadingScreen(boolean isBlocking, int stringId);
|
||||||
|
|
||||||
void hideLoadingScreen();
|
void hideLoadingScreen();
|
||||||
@@ -48,5 +45,4 @@ public abstract class BaseFragment extends Fragment {
|
|||||||
|
|
||||||
void runOnDbThread(Runnable runnable);
|
void runOnDbThread(Runnable runnable);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user