|  |  | @ -39,8 +39,7 @@ import android.view.Window; | 
			
		
	
		
		
			
				
					
					|  |  |  | import android.widget.FrameLayout; |  |  |  | import android.widget.FrameLayout; | 
			
		
	
		
		
			
				
					
					|  |  |  | import android.widget.TextView; |  |  |  | import android.widget.TextView; | 
			
		
	
		
		
			
				
					
					|  |  |  | import android.widget.Toast; |  |  |  | import android.widget.Toast; | 
			
		
	
		
		
			
				
					
					|  |  |  | import org.session.libsession.messaging.messages.control.DataExtractionNotification; |  |  |  | 
 | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  | import org.session.libsession.messaging.sending_receiving.MessageSender; |  |  |  |  | 
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | import androidx.annotation.NonNull; |  |  |  | import androidx.annotation.NonNull; | 
			
		
	
		
		
			
				
					
					|  |  |  | import androidx.annotation.Nullable; |  |  |  | import androidx.annotation.Nullable; | 
			
		
	
		
		
			
				
					
					|  |  |  | import androidx.appcompat.app.ActionBar; |  |  |  | import androidx.appcompat.app.ActionBar; | 
			
		
	
	
		
		
			
				
					|  |  | @ -53,11 +52,14 @@ import androidx.recyclerview.widget.LinearLayoutManager; | 
			
		
	
		
		
			
				
					
					|  |  |  | import androidx.recyclerview.widget.RecyclerView; |  |  |  | import androidx.recyclerview.widget.RecyclerView; | 
			
		
	
		
		
			
				
					
					|  |  |  | import androidx.viewpager.widget.PagerAdapter; |  |  |  | import androidx.viewpager.widget.PagerAdapter; | 
			
		
	
		
		
			
				
					
					|  |  |  | import androidx.viewpager.widget.ViewPager; |  |  |  | import androidx.viewpager.widget.ViewPager; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import org.session.libsession.messaging.messages.control.DataExtractionNotification; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import org.session.libsession.messaging.sending_receiving.MessageSender; | 
			
		
	
		
		
			
				
					
					|  |  |  | import org.session.libsession.messaging.sending_receiving.attachments.DatabaseAttachment; |  |  |  | import org.session.libsession.messaging.sending_receiving.attachments.DatabaseAttachment; | 
			
		
	
		
		
			
				
					
					|  |  |  | import org.session.libsession.utilities.Address; |  |  |  | import org.session.libsession.utilities.Address; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import org.session.libsession.utilities.Util; | 
			
		
	
		
		
			
				
					
					|  |  |  | import org.session.libsession.utilities.recipients.Recipient; |  |  |  | import org.session.libsession.utilities.recipients.Recipient; | 
			
		
	
		
		
			
				
					
					|  |  |  | import org.session.libsession.utilities.recipients.RecipientModifiedListener; |  |  |  | import org.session.libsession.utilities.recipients.RecipientModifiedListener; | 
			
		
	
		
		
			
				
					
					|  |  |  | import org.session.libsession.utilities.Util; |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | import org.session.libsignal.utilities.Log; |  |  |  | import org.session.libsignal.utilities.Log; | 
			
		
	
		
		
			
				
					
					|  |  |  | import org.thoughtcrime.securesms.components.MediaView; |  |  |  | import org.thoughtcrime.securesms.components.MediaView; | 
			
		
	
		
		
			
				
					
					|  |  |  | import org.thoughtcrime.securesms.database.MediaDatabase.MediaRecord; |  |  |  | import org.thoughtcrime.securesms.database.MediaDatabase.MediaRecord; | 
			
		
	
	
		
		
			
				
					|  |  | @ -352,21 +354,15 @@ public class MediaPreviewActivity extends PassphraseRequiredActionBarActivity im | 
			
		
	
		
		
			
				
					
					|  |  |  |                 saveTask.executeOnExecutor( |  |  |  |                 saveTask.executeOnExecutor( | 
			
		
	
		
		
			
				
					
					|  |  |  |                         AsyncTask.THREAD_POOL_EXECUTOR, |  |  |  |                         AsyncTask.THREAD_POOL_EXECUTOR, | 
			
		
	
		
		
			
				
					
					|  |  |  |                         new Attachment(mediaItem.uri, mediaItem.type, saveDate, null)); |  |  |  |                         new Attachment(mediaItem.uri, mediaItem.type, saveDate, null)); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 // Sending a Data extraction notification (for incoming attachments only)
 |  |  |  |                 if (!mediaItem.outgoing) { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |                 if(!mediaItem.outgoing) { |  |  |  |                   sendMediaSavedNotificationIfNeeded(); | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |                   //TODO uncomment line below when Data extraction will be activated
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |                   //sendMediaSavedNotificationIfNeeded();
 |  |  |  |  | 
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                 } |  |  |  |                 } | 
			
		
	
		
		
			
				
					
					|  |  |  |               }) |  |  |  |               }) | 
			
		
	
		
		
			
				
					
					|  |  |  |               .execute(); |  |  |  |               .execute(); | 
			
		
	
		
		
			
				
					
					|  |  |  |     }); |  |  |  |     }); | 
			
		
	
		
		
			
				
					
					|  |  |  |   } |  |  |  |   } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |   /** |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |    * Send a MediaSaved notification to the recipient |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |    */ |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |   private void sendMediaSavedNotificationIfNeeded() { |  |  |  |   private void sendMediaSavedNotificationIfNeeded() { | 
			
		
	
		
		
			
				
					
					|  |  |  |     // we don't send media saved notification for groups
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |     if (conversationRecipient.isGroupRecipient()) return; |  |  |  |     if (conversationRecipient.isGroupRecipient()) return; | 
			
		
	
		
		
			
				
					
					|  |  |  |     DataExtractionNotification message = new DataExtractionNotification(new DataExtractionNotification.Kind.MediaSaved(System.currentTimeMillis())); |  |  |  |     DataExtractionNotification message = new DataExtractionNotification(new DataExtractionNotification.Kind.MediaSaved(System.currentTimeMillis())); | 
			
		
	
		
		
			
				
					
					|  |  |  |     MessageSender.send(message, conversationRecipient.getAddress()); |  |  |  |     MessageSender.send(message, conversationRecipient.getAddress()); | 
			
		
	
	
		
		
			
				
					|  |  | 
 |