Kaydet (Commit) 1990f88a authored tarafından Artur Dryomov's avatar Artur Dryomov Kaydeden (comit) Michael Meeks

Add action bar button for reconnection.

Change-Id: I8729dcd2b179b7301ae85528a615195e907cf443
üst c5cdd6b4
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
android:layout_height="match_parent"> android:layout_height="match_parent">
<ProgressBar <ProgressBar
android:id="@android:id/progress" android:id="@+id/progress_bar"
style="?android:progressBarStyleLarge" style="?android:progressBarStyleLarge"
android:layout_gravity="center" android:layout_gravity="center"
android:layout_width="wrap_content" android:layout_width="wrap_content"
......
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/menu_reconnect"
android:title="@string/menu_reconnect"
android:icon="@drawable/ic_action_reconnect"
android:showAsAction="always"/>
</menu>
\ No newline at end of file
...@@ -72,6 +72,7 @@ ...@@ -72,6 +72,7 @@
<string name="title_connection">Connection</string> <string name="title_connection">Connection</string>
<string name="menu_licenses">Open source licenses</string> <string name="menu_licenses">Open source licenses</string>
<string name="menu_reconnect">Reconnect</string>
<string name="message_impress_pin_validation">Go to “Slide Show → Impress Remote” in LibreOffice Impress and enter the code.</string> <string name="message_impress_pin_validation">Go to “Slide Show → Impress Remote” in LibreOffice Impress and enter the code.</string>
<string name="message_connection_failed_title">Connection failed</string> <string name="message_connection_failed_title">Connection failed</string>
......
...@@ -13,10 +13,14 @@ import android.view.LayoutInflater; ...@@ -13,10 +13,14 @@ import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.TextView; import android.widget.TextView;
import android.widget.ViewAnimator; import android.widget.ViewAnimator;
import com.actionbarsherlock.app.SherlockFragment; import com.actionbarsherlock.app.SherlockFragment;
import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuInflater;
import com.actionbarsherlock.view.MenuItem;
import org.libreoffice.impressremote.communication.CommunicationService; import org.libreoffice.impressremote.communication.CommunicationService;
import org.libreoffice.impressremote.communication.Server; import org.libreoffice.impressremote.communication.Server;
...@@ -47,6 +51,12 @@ public class ComputerConnectionFragment extends SherlockFragment implements Serv ...@@ -47,6 +51,12 @@ public class ComputerConnectionFragment extends SherlockFragment implements Serv
super.onCreate(aSavedInstance); super.onCreate(aSavedInstance);
mComputer = getArguments().getParcelable("COMPUTER"); mComputer = getArguments().getParcelable("COMPUTER");
setUpActionBarMenu();
}
private void setUpActionBarMenu() {
setHasOptionsMenu(true);
} }
@Override @Override
...@@ -73,6 +83,14 @@ public class ComputerConnectionFragment extends SherlockFragment implements Serv ...@@ -73,6 +83,14 @@ public class ComputerConnectionFragment extends SherlockFragment implements Serv
mCommunicationService = aServiceBinder.getService(); mCommunicationService = aServiceBinder.getService();
connectToComputer();
}
private void connectToComputer() {
if (!isServiceBound()) {
return;
}
mCommunicationService.connectTo(mComputer); mCommunicationService.connectTo(mComputer);
} }
...@@ -188,6 +206,31 @@ public class ComputerConnectionFragment extends SherlockFragment implements Serv ...@@ -188,6 +206,31 @@ public class ComputerConnectionFragment extends SherlockFragment implements Serv
aViewAnimator.setDisplayedChild(aViewAnimator.indexOfChild(aMessageLayout)); aViewAnimator.setDisplayedChild(aViewAnimator.indexOfChild(aMessageLayout));
} }
@Override
public void onCreateOptionsMenu(Menu aMenu, MenuInflater aMenuInflater) {
aMenuInflater.inflate(R.menu.menu_action_bar_computer_connection, aMenu);
}
@Override
public boolean onOptionsItemSelected(MenuItem aMenuItem) {
switch (aMenuItem.getItemId()) {
case R.id.menu_reconnect:
showProgressBar();
connectToComputer();
return true;
default:
return super.onOptionsItemSelected(aMenuItem);
}
}
private void showProgressBar() {
ViewAnimator aViewAnimator = (ViewAnimator) getView().findViewById(R.id.view_animator);
ProgressBar aProgressBar = (ProgressBar) getView().findViewById(R.id.progress_bar);
aViewAnimator.setDisplayedChild(aViewAnimator.indexOfChild(aProgressBar));
}
@Override @Override
public void onPause() { public void onPause() {
super.onPause(); super.onPause();
......
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