diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/activities/MediaActivity.java b/app/src/main/java/fr/gouv/etalab/mastodon/activities/MediaActivity.java
index 4ac4ac061..7fa0d9368 100644
--- a/app/src/main/java/fr/gouv/etalab/mastodon/activities/MediaActivity.java
+++ b/app/src/main/java/fr/gouv/etalab/mastodon/activities/MediaActivity.java
@@ -30,11 +30,11 @@ import android.support.v4.app.ActivityCompat;
import android.support.v4.content.ContextCompat;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;
+import android.support.v7.widget.Toolbar;
import android.view.LayoutInflater;
-import android.view.Menu;
-import android.view.MenuItem;
import android.view.MotionEvent;
import android.view.View;
+import android.view.ViewGroup;
import android.webkit.URLUtil;
import android.widget.ImageView;
import android.widget.MediaController;
@@ -102,7 +102,6 @@ public class MediaActivity extends AppCompatActivity {
private boolean canSwipe;
-
private enum actionSwipe{
RIGHT_TO_LEFT,
LEFT_TO_RIGHT,
@@ -117,9 +116,9 @@ public class MediaActivity extends AppCompatActivity {
SharedPreferences sharedpreferences = getSharedPreferences(Helper.APP_PREFS, android.content.Context.MODE_PRIVATE);
int theme = sharedpreferences.getInt(Helper.SET_THEME, Helper.THEME_DARK);
if( theme == Helper.THEME_LIGHT){
- setTheme(R.style.AppTheme);
+ setTheme(R.style.AppTheme_NoActionBar);
}else {
- setTheme(R.style.AppThemeDark);
+ setTheme(R.style.AppThemeDark_NoActionBar);
}
setContentView(R.layout.activity_media);
attachments = getIntent().getParcelableArrayListExtra("mediaArray");
@@ -128,7 +127,6 @@ public class MediaActivity extends AppCompatActivity {
if( attachments == null || attachments.size() == 0)
finish();
-
RelativeLayout main_container_media = findViewById(R.id.main_container_media);
if( theme == Helper.THEME_LIGHT){
main_container_media.setBackgroundResource(R.color.mastodonC2);
@@ -136,8 +134,41 @@ public class MediaActivity extends AppCompatActivity {
main_container_media.setBackgroundResource(R.color.mastodonC1);
}
+ Toolbar toolbar = findViewById(R.id.toolbar);
+ setSupportActionBar(toolbar);
if( getSupportActionBar() != null) {
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
+ LayoutInflater inflater = (LayoutInflater) this.getSystemService(android.content.Context.LAYOUT_INFLATER_SERVICE);
+ assert inflater != null;
+ @SuppressLint("InflateParams") View view = inflater.inflate(R.layout.picture_actionbar, null);
+ getSupportActionBar().setCustomView(view, new ActionBar.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
+ getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
+
+
+ ImageView action_save = getSupportActionBar().getCustomView().findViewById(R.id.action_save);
+ ImageView close = getSupportActionBar().getCustomView().findViewById(R.id.close);
+ if( close != null){
+ close.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ finish();
+ }
+ });
+ }
+ action_save.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ if(Build.VERSION.SDK_INT >= 23 ){
+ if (ContextCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED ) {
+ ActivityCompat.requestPermissions(MediaActivity.this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, EXTERNAL_STORAGE_REQUEST_CODE);
+ } else {
+ Helper.manageMoveFileDownload(MediaActivity.this, preview_url, finalUrlDownload, downloadedImage, fileVideo);
+ }
+ }else{
+ Helper.manageMoveFileDownload(MediaActivity.this, preview_url, finalUrlDownload, downloadedImage, fileVideo);
+ }
+ }
+ });
Handler h = new Handler();
h.postDelayed(new Runnable() {
@@ -204,34 +235,6 @@ public class MediaActivity extends AppCompatActivity {
displayMediaAtPosition(actionSwipe.POP);
}
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- switch (item.getItemId()) {
- case android.R.id.home:
- finish();
- return true;
- case R.id.action_download:
- if(Build.VERSION.SDK_INT >= 23 ){
- if (ContextCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED ) {
- ActivityCompat.requestPermissions(MediaActivity.this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, EXTERNAL_STORAGE_REQUEST_CODE);
- } else {
- Helper.manageMoveFileDownload(MediaActivity.this, preview_url, finalUrlDownload, downloadedImage, fileVideo);
- }
- }else{
- Helper.manageMoveFileDownload(MediaActivity.this, preview_url, finalUrlDownload, downloadedImage, fileVideo);
- }
- return true;
- default:
- return super.onOptionsItemSelected(item);
- }
- }
-
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- // Inflate the menu; this adds items to the action bar if it is present.
- getMenuInflater().inflate(R.menu.main_media, menu);
- return true;
- }
/**
* Manage touch event
@@ -252,7 +255,6 @@ public class MediaActivity extends AppCompatActivity {
getSupportActionBar().hide();
}
}, 2000);
- return super.dispatchTouchEvent(event);
}
}
if( !canSwipe || mediaPosition > attachments.size() || mediaPosition < 1 || attachments.size() <= 1)
@@ -429,15 +431,10 @@ public class MediaActivity extends AppCompatActivity {
filename = url;
if( attachments.size() > 1 )
filename = String.format("%s (%s/%s)",filename, mediaPosition, attachments.size());
-
- LayoutInflater mInflater = LayoutInflater.from(MediaActivity.this);
ActionBar actionBar = getSupportActionBar();
if( actionBar != null){
- @SuppressLint("InflateParams") View picture_actionbar = mInflater.inflate(R.layout.picture_actionbar, null);
- TextView picture_actionbar_title = picture_actionbar.findViewById(R.id.picture_actionbar);
+ TextView picture_actionbar_title = actionBar.getCustomView().findViewById(R.id.toolbar_title);
picture_actionbar_title.setText(filename);
- actionBar.setCustomView(picture_actionbar);
- actionBar.setDisplayShowCustomEnabled(true);
}else {
setTitle(url);
}
diff --git a/app/src/main/res/layout/activity_media.xml b/app/src/main/res/layout/activity_media.xml
index 93b06ec06..227a23d0c 100644
--- a/app/src/main/res/layout/activity_media.xml
+++ b/app/src/main/res/layout/activity_media.xml
@@ -19,8 +19,22 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:id="@+id/main_container_media"
- >
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:id="@+id/main_container_media">
+
+
+
.
-->
-
+ android:background="?attr/colorPrimary"
+ app:popupTheme="?attr/popupOverlay"
+ tools:ignore="UnusedAttribute">
+
+
-
\ No newline at end of file
+
+
+
\ No newline at end of file