Commit 799dc91c by Lee Munkyeong

文書協業実装

parent f1b9f46c
...@@ -150,6 +150,7 @@ public class ChatWebviewActivity extends CommunicationWebViewActivity { ...@@ -150,6 +150,7 @@ public class ChatWebviewActivity extends CommunicationWebViewActivity {
// 0:協業生成, 1:協業参加 // 0:協業生成, 1:協業参加
private Integer collaborationJoinFlg = 0; private Integer collaborationJoinFlg = 0;
private MeetingManager meetingManager = MeetingManager.getInstance(); private MeetingManager meetingManager = MeetingManager.getInstance();
private ActivityHandlingHelper handlingHelper = ActivityHandlingHelper.getInstance();
public AlertDialog myAlertDialog; public AlertDialog myAlertDialog;
private ImageButton mOperationHomeButton; // ホームボタン private ImageButton mOperationHomeButton; // ホームボタン
...@@ -1366,6 +1367,8 @@ public class ChatWebviewActivity extends CommunicationWebViewActivity { ...@@ -1366,6 +1367,8 @@ public class ChatWebviewActivity extends CommunicationWebViewActivity {
@JavascriptInterface @JavascriptInterface
public String createContentView() { public String createContentView() {
Integer meetingId = null; Integer meetingId = null;
meetingManager.close();
activityHandlingHelper.removeContentViewActivity(activityHandlingHelper.getContentViewActivity());
try { try {
connectMeetingServer(); connectMeetingServer();
List<MeetingDto> meetingList= meetingManager.getMeetingList(mSkey); List<MeetingDto> meetingList= meetingManager.getMeetingList(mSkey);
...@@ -1379,14 +1382,18 @@ public class ChatWebviewActivity extends CommunicationWebViewActivity { ...@@ -1379,14 +1382,18 @@ public class ChatWebviewActivity extends CommunicationWebViewActivity {
} catch (Exception e) { } catch (Exception e) {
mChatWebView.loadUrl("javascript:alert('" + "会議室サーバに接続できませんでした。" + "');"); mChatWebView.loadUrl("javascript:alert('" + "会議室サーバに接続できませんでした。" + "');");
} }
finishBeforeCOntentListActiviry();
PictureInPictureParams.Builder mPipBuilder = new PictureInPictureParams.Builder(); PictureInPictureParams.Builder mPipBuilder = new PictureInPictureParams.Builder();
enterPictureInPictureMode(mPipBuilder.build()); enterPictureInPictureMode(mPipBuilder.build());
startContentListActivity(true);
return meetingId.toString(); return meetingId.toString();
} }
@JavascriptInterface @JavascriptInterface
public void startContentView() { public void startContentView() {
Integer meetingId; Integer meetingId;
meetingManager.close();
activityHandlingHelper.removeContentViewActivity(activityHandlingHelper.getContentViewActivity());
try { try {
connectMeetingServer(); connectMeetingServer();
List<MeetingDto> meetingList= meetingManager.getMeetingList(mSkey); List<MeetingDto> meetingList= meetingManager.getMeetingList(mSkey);
...@@ -1394,19 +1401,22 @@ public class ChatWebviewActivity extends CommunicationWebViewActivity { ...@@ -1394,19 +1401,22 @@ public class ChatWebviewActivity extends CommunicationWebViewActivity {
} catch (Exception e) { } catch (Exception e) {
mChatWebView.loadUrl("javascript:alert('" + "会議室サーバに接続できませんでした。" + "');"); mChatWebView.loadUrl("javascript:alert('" + "会議室サーバに接続できませんでした。" + "');");
} }
finishBeforeCOntentListActiviry();
PictureInPictureParams.Builder mPipBuilder = new PictureInPictureParams.Builder(); PictureInPictureParams.Builder mPipBuilder = new PictureInPictureParams.Builder();
enterPictureInPictureMode(mPipBuilder.build()); enterPictureInPictureMode(mPipBuilder.build());
startContentListActivity(false);
} }
@JavascriptInterface @JavascriptInterface
public void startPipMode() { public void startPipMode() {
PictureInPictureParams.Builder mPipBuilder = new PictureInPictureParams.Builder(); PictureInPictureParams.Builder mPipBuilder = new PictureInPictureParams.Builder();
enterPictureInPictureMode(mPipBuilder.build()); enterPictureInPictureMode(mPipBuilder.build());
} }
@JavascriptInterface @JavascriptInterface
public void exitMeetingRoom() { public void exitMeetingRoom() {
if (meetingManager.isOwner()) { if (meetingManager.isConnected() && meetingManager.isOwner()) {
try { try {
meetingManager.deleteMeeting(); meetingManager.deleteMeeting();
} catch (Exception e) { } catch (Exception e) {
...@@ -1414,7 +1424,6 @@ public class ChatWebviewActivity extends CommunicationWebViewActivity { ...@@ -1414,7 +1424,6 @@ public class ChatWebviewActivity extends CommunicationWebViewActivity {
} }
} }
meetingManager.close(); meetingManager.close();
ActivityHandlingHelper handlingHelper = ActivityHandlingHelper.getInstance();
handlingHelper.saveMeetingInfo(null, null, null, false); handlingHelper.saveMeetingInfo(null, null, null, false);
} }
} }
...@@ -1430,7 +1439,29 @@ public class ChatWebviewActivity extends CommunicationWebViewActivity { ...@@ -1430,7 +1439,29 @@ public class ChatWebviewActivity extends CommunicationWebViewActivity {
intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(intent, NaviConsts.Left); startActivity(intent, NaviConsts.Left);
} }
private void finishBeforeCOntentListActiviry() {
OperationRelatedContentActivity beforeActiryty = activityHandlingHelper.getActivity(OperationRelatedContentActivity.class);
if (beforeActiryty != null) {
beforeActiryty.finish();
}
}
private void startContentListActivity(boolean isOwner) {
Activity targetActivity = activityHandlingHelper.getCurrentActivity();
if (targetActivity instanceof ChatWebviewActivity) {
Stack<ABVAuthenticatedActivity> stack = activityHandlingHelper.getCurrentActivityStack();
if (stack.size() > 1){
targetActivity = stack.get(stack.size()-2);
}
}
Intent intent = new Intent();
intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
intent.setClass(targetActivity, OperationRelatedContentActivity.class);
intent.putExtra("isCollaboration", true);
intent.putExtra("isCollaborationOwner", isOwner);
targetActivity.startActivity(intent);
}
public void connectMeetingServer() throws Exception { public void connectMeetingServer() throws Exception {
meetingManager = MeetingManager.getInstance(); meetingManager = MeetingManager.getInstance();
mSkey = meetingManager.getSessionKey(true); mSkey = meetingManager.getSessionKey(true);
...@@ -1474,7 +1505,12 @@ public class ChatWebviewActivity extends CommunicationWebViewActivity { ...@@ -1474,7 +1505,12 @@ public class ChatWebviewActivity extends CommunicationWebViewActivity {
.insertFavoriteGroup(sid, Integer.parseInt(groupId)); .insertFavoriteGroup(sid, Integer.parseInt(groupId));
return result; return result;
} }
@Override
public void onBackPressed() {
super.onBackPressed();
}
private void moveCollaborationScreen(Integer collaborationType) { private void moveCollaborationScreen(Integer collaborationType) {
switch (collaborationType) { switch (collaborationType) {
case 0: case 0:
......
...@@ -8,6 +8,7 @@ import android.view.KeyEvent; ...@@ -8,6 +8,7 @@ import android.view.KeyEvent;
import android.view.View; import android.view.View;
import android.widget.Button; import android.widget.Button;
import android.widget.ImageButton; import android.widget.ImageButton;
import android.widget.LinearLayout;
import android.widget.ListView; import android.widget.ListView;
import android.widget.TextView; import android.widget.TextView;
import android.widget.Toast; import android.widget.Toast;
...@@ -57,15 +58,18 @@ public class OperationRelatedContentActivity extends ABVUIActivity { ...@@ -57,15 +58,18 @@ public class OperationRelatedContentActivity extends ABVUIActivity {
private TextView mTxtOperationRelatedContent; private TextView mTxtOperationRelatedContent;
private Button mAllSaveButton; private Button mAllSaveButton;
private boolean isCollaboration;
private boolean isCollaborationOwner;
private ListView mContentListView; private ListView mContentListView;
private List<CategoryContentDto> mOperationContentList; private List<CategoryContentDto> mOperationContentList;
private LinearLayout mToolbar;
private OperationLogic mOperationLogic = AbstractLogic.getLogic(OperationLogic.class); private OperationLogic mOperationLogic = AbstractLogic.getLogic(OperationLogic.class);
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
isCollaboration = getIntent().getBooleanExtra("isCollaboration", false);
isCollaborationOwner = getIntent().getBooleanExtra("isCollaborationOwner", false);
setContentView(R.layout.ac_operation_related_content); setContentView(R.layout.ac_operation_related_content);
// ホームボタン(作業一覧へ遷移ボタン) // ホームボタン(作業一覧へ遷移ボタン)
...@@ -78,7 +82,7 @@ public class OperationRelatedContentActivity extends ABVUIActivity { ...@@ -78,7 +82,7 @@ public class OperationRelatedContentActivity extends ABVUIActivity {
mAllSaveButton = (Button) findViewById(R.id.btn_all_save); mAllSaveButton = (Button) findViewById(R.id.btn_all_save);
mContentListView = (ListView) findViewById(R.id.lv_content_list); mContentListView = (ListView) findViewById(R.id.lv_content_list);
showContentList();
mTxtOperationRelatedContent = (TextView) findViewById(R.id.txt_operation_related_content); mTxtOperationRelatedContent = (TextView) findViewById(R.id.txt_operation_related_content);
mQuickReportPrintButton = (ImageButton) findViewById(R.id.btn_operation_print); mQuickReportPrintButton = (ImageButton) findViewById(R.id.btn_operation_print);
...@@ -86,12 +90,11 @@ public class OperationRelatedContentActivity extends ABVUIActivity { ...@@ -86,12 +90,11 @@ public class OperationRelatedContentActivity extends ABVUIActivity {
mTxtOperationRelatedContent.setText("" + PatternStringUtil.patternToString(getApplicationContext(), mTxtOperationRelatedContent.setText("" + PatternStringUtil.patternToString(getApplicationContext(),
R.string.title_common_content, R.string.title_common_content,
getUserPref(AppDefType.UserPrefKey.RESOURCE_PATTERN_TYPE, 0))); getUserPref(AppDefType.UserPrefKey.RESOURCE_PATTERN_TYPE, 0)));
mToolbar = (LinearLayout)findViewById(R.id.toolbar2);
mAllSaveButton.setVisibility(View.GONE); mAllSaveButton.setVisibility(View.GONE);
settingBottomToolbar();
setOnButtonEvent(); setOnButtonEvent();
settingBottomToolbar();
} }
// 下辺のツールバー設定 // 下辺のツールバー設定
...@@ -117,6 +120,22 @@ public class OperationRelatedContentActivity extends ABVUIActivity { ...@@ -117,6 +120,22 @@ public class OperationRelatedContentActivity extends ABVUIActivity {
} }
} }
private void hideBottomToolbar() {
mToolbar.setVisibility(View.GONE);
}
private void showBottomToolbar() {
mToolbar.setVisibility(View.VISIBLE);
}
private void hideContentList() {
mContentListView.setVisibility(View.GONE);
}
private void showContentList() {
mContentListView.setVisibility(View.VISIBLE);
}
@Override @Override
public void onDownloadingContentZip(final ContentZipDownloadNotification notification) { public void onDownloadingContentZip(final ContentZipDownloadNotification notification) {
super.onDownloadingContentZip(notification); super.onDownloadingContentZip(notification);
...@@ -445,8 +464,11 @@ public class OperationRelatedContentActivity extends ABVUIActivity { ...@@ -445,8 +464,11 @@ public class OperationRelatedContentActivity extends ABVUIActivity {
@Override @Override
public boolean onKeyUp(int keyCode, KeyEvent event) { public boolean onKeyUp(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) { if (keyCode == KeyEvent.KEYCODE_BACK) {
// 端末の戻るボタン処理
Logger.d(TAG, "onKeyUp.Back"); Logger.d(TAG, "onKeyUp.Back");
// 端末の戻るボタン処理
if (isCollaboration) {
return true;
}
backToHome(); backToHome();
return true; return true;
} }
...@@ -482,11 +504,21 @@ public class OperationRelatedContentActivity extends ABVUIActivity { ...@@ -482,11 +504,21 @@ public class OperationRelatedContentActivity extends ABVUIActivity {
}); });
} }
@Override @Override
public void onResume() { public void onResume() {
Logger.i(TAG, "onResume:start"); Logger.i(TAG, "onResume:start");
super.onResume(); super.onResume();
if (isCollaboration) {
hideBottomToolbar();
if (!isCollaborationOwner) {
hideContentList();
}
} else {
showBottomToolbar();
showContentList();
}
showOperationRelatedContentList(); showOperationRelatedContentList();
} }
......
...@@ -246,7 +246,7 @@ public class ActivityHandlingHelper extends ABookHelper implements RemoteObserve ...@@ -246,7 +246,7 @@ public class ActivityHandlingHelper extends ABookHelper implements RemoteObserve
// ページの場合、0から始まるのでシーン設定は+1する // ページの場合、0から始まるのでシーン設定は+1する
path += "&startscene=scene" + (intent.getIntExtra(ABVActivity.PAGE, 1) + 1); path += "&startscene=scene" + (intent.getIntExtra(ABVActivity.PAGE, 1) + 1);
} }
// 管理者モードで開く場合、パラメータ追加 // 管理者モードで開く場合、パラメータ追加cr
path += "&isManagementMode=true"; path += "&isManagementMode=true";
} }
...@@ -706,6 +706,7 @@ public class ActivityHandlingHelper extends ABookHelper implements RemoteObserve ...@@ -706,6 +706,7 @@ public class ActivityHandlingHelper extends ABookHelper implements RemoteObserve
public synchronized void removeContentViewActivity(ABVContentViewActivity contentViewActivity) { public synchronized void removeContentViewActivity(ABVContentViewActivity contentViewActivity) {
sendToBookShelf(); sendToBookShelf();
if (this.contentViewActivity != null && this.contentViewActivity.equals(contentViewActivity)) { if (this.contentViewActivity != null && this.contentViewActivity.equals(contentViewActivity)) {
contentViewActivity.finish();
setContentViewActivity(null); setContentViewActivity(null);
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment