Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,6 @@
<uses-permission android:name="android.permission.READ_SYNC_STATS" />
<uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
Expand Down
6 changes: 6 additions & 0 deletions src/main/java/com/nextcloud/client/di/AppModule.java
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@
import javax.inject.Named;
import javax.inject.Singleton;

import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import dagger.Module;
import dagger.Provides;

Expand Down Expand Up @@ -217,4 +218,9 @@ MigrationsManager migrationsManager(MigrationsDb migrationsDb,
AppNotificationManager notificationsManager(Context context, NotificationManager platformNotificationsManager) {
return new AppNotificationManagerImpl(context, context.getResources(), platformNotificationsManager);
}

@Provides
LocalBroadcastManager localBroadcastManager(Context context) {
return LocalBroadcastManager.getInstance(context);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@
import javax.inject.Inject;

import androidx.core.app.NotificationCompat;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import dagger.android.AndroidInjection;

public class FileDownloader extends Service
Expand Down Expand Up @@ -117,6 +118,7 @@ public class FileDownloader extends Service

@Inject UserAccountManager accountManager;
@Inject UploadsStorageManager uploadsStorageManager;
@Inject LocalBroadcastManager localBroadcastManager;

public static String getDownloadAddedMessage() {
return FileDownloader.class.getName() + DOWNLOAD_ADDED_MESSAGE;
Expand Down Expand Up @@ -691,7 +693,7 @@ private void sendBroadcastDownloadFinished(
end.putExtra(EXTRA_LINKED_TO_PATH, unlinkedFromRemotePath);
}
end.setPackage(getPackageName());
sendStickyBroadcast(end);
localBroadcastManager.sendBroadcast(end);
}


Expand All @@ -708,7 +710,7 @@ private void sendBroadcastNewDownload(DownloadFileOperation download,
added.putExtra(EXTRA_REMOTE_PATH, download.getRemotePath());
added.putExtra(EXTRA_LINKED_TO_PATH, linkedToRemotePath);
added.setPackage(getPackageName());
sendStickyBroadcast(added);
localBroadcastManager.sendBroadcast(added);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@

import androidx.annotation.NonNull;
import androidx.core.app.NotificationCompat;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import dagger.android.AndroidInjection;

/**
Expand Down Expand Up @@ -184,6 +185,7 @@ public class FileUploader extends Service
@Inject UploadsStorageManager mUploadsStorageManager;
@Inject ConnectivityService connectivityService;
@Inject PowerManagementService powerManagementService;
@Inject LocalBroadcastManager localBroadcastManager;

private IndexedForest<UploadFileOperation> mPendingUploads = new IndexedForest<>();

Expand Down Expand Up @@ -823,7 +825,7 @@ private void sendBroadcastUploadsAdded() {
Intent start = new Intent(getUploadsAddedMessage());
// nothing else needed right now
start.setPackage(getPackageName());
sendStickyBroadcast(start);
localBroadcastManager.sendBroadcast(start);
}

/**
Expand All @@ -840,7 +842,7 @@ private void sendBroadcastUploadStarted(UploadFileOperation upload) {
start.putExtra(ACCOUNT_NAME, upload.getAccount().name);

start.setPackage(getPackageName());
sendStickyBroadcast(start);
localBroadcastManager.sendBroadcast(start);
}

/**
Expand Down Expand Up @@ -873,7 +875,7 @@ private void sendBroadcastUploadFinished(
end.putExtra(EXTRA_LINKED_TO_PATH, unlinkedFromRemotePath);
}
end.setPackage(getPackageName());
sendStickyBroadcast(end);
localBroadcastManager.sendBroadcast(end);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;

import static com.owncloud.android.datamodel.OCFile.PATH_SEPARATOR;

Expand Down Expand Up @@ -691,6 +692,6 @@ private void sendLocalBroadcast(String event, String dirRemotePath, RemoteOperat
intent.putExtra(FileSyncAdapter.EXTRA_RESULT, dataHolderItemId);

intent.setPackage(mContext.getPackageName());
mContext.sendStickyBroadcast(intent);
LocalBroadcastManager.getInstance(mContext.getApplicationContext()).sendBroadcast(intent);
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ezaquarii how could I use Dagger here?
Only via constructor, or?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, dagger works only in main components. Everything else is constructor based injection or setter if 2 stage init is required (I think we have 1 case of the latter).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you think it is worth the effort, or can we keep it this way?
After all it is a singleton, so use of Dagger is not that much needed, but mainly only for centralizing the initiation?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let us keep it now this way to get it in faster.
If we need DI for testing, we can change it anyways.

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@

import java.io.IOException;

import androidx.localbroadcastmanager.content.LocalBroadcastManager;

/**
* SyncFolder worker. Performs the pending operations in the order they were requested.
*
Expand Down Expand Up @@ -177,7 +179,7 @@ private void sendBroadcastNewSyncFolder(Account account, String remotePath) {
added.putExtra(FileDownloader.ACCOUNT_NAME, account.name);
added.putExtra(FileDownloader.EXTRA_REMOTE_PATH, remotePath);
added.setPackage(mService.getPackageName());
mService.sendStickyBroadcast(added);
LocalBroadcastManager.getInstance(mService.getApplicationContext()).sendBroadcast(added);
}

/**
Expand All @@ -191,6 +193,6 @@ private void sendBroadcastFinishedSyncFolder(Account account, String remotePath,
finished.putExtra(FileDownloader.EXTRA_REMOTE_PATH, remotePath);
finished.putExtra(FileDownloader.EXTRA_DOWNLOAD_RESULT, success);
finished.setPackage(mService.getPackageName());
mService.sendStickyBroadcast(finished);
LocalBroadcastManager.getInstance(mService.getApplicationContext()).sendBroadcast(finished);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@

import androidx.annotation.PluralsRes;
import androidx.core.app.NotificationCompat;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;

/**
* Implementation of {@link AbstractThreadedSyncAdapter} responsible for synchronizing
Expand Down Expand Up @@ -379,8 +380,7 @@ private void sendLocalBroadcast(String event, String dirRemotePath,
}

intent.setPackage(getContext().getPackageName());
getContext().sendStickyBroadcast(intent);
//LocalBroadcastManager.getInstance(getContext()).sendBroadcast(intent);
LocalBroadcastManager.getInstance(getContext()).sendBroadcast(intent);
}


Expand Down
Loading