Ability to change brightness of laptop screen
This commit is contained in:
parent
58f04e9a0a
commit
b0d48bef52
@ -49,6 +49,10 @@
|
||||
android:name="com.annimon.socketfiletransfer.CursorActivity"
|
||||
android:label="@string/title_activity_cursor" >
|
||||
</activity>
|
||||
<activity
|
||||
android:name="com.annimon.socketfiletransfer.BrightnessActivity"
|
||||
android:label="@string/title_activity_brightness" >
|
||||
</activity>
|
||||
</application>
|
||||
|
||||
</manifest>
|
||||
|
@ -0,0 +1,34 @@
|
||||
package com.annimon.socketfiletransfer;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.app.Activity;
|
||||
import android.widget.SeekBar;
|
||||
|
||||
public class BrightnessActivity extends Activity {
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_brightness);
|
||||
|
||||
SeekBar brightnessBar = (SeekBar) findViewById(R.id.brightness_bar);
|
||||
brightnessBar.setOnSeekBarChangeListener( new SeekBar.OnSeekBarChangeListener() {
|
||||
@Override
|
||||
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
|
||||
String value = String.valueOf(progress * 10);
|
||||
new SocketTransferTask(OperationListener.MODE_BRIGHTNESS_CHANGE).execute(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onStartTrackingTouch(SeekBar seekBar) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onStopTrackingTouch(SeekBar seekBar) {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
@ -78,6 +78,11 @@ public class MainActivity extends Activity implements View.OnClickListener {
|
||||
Intent curIntent = new Intent(this, CursorActivity.class);
|
||||
startActivity(curIntent);
|
||||
break;
|
||||
|
||||
case OperationListener.MODE_BRIGHTNESS_CHANGE:
|
||||
Intent brIntent = new Intent(this, BrightnessActivity.class);
|
||||
startActivity(brIntent);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
package com.annimon.socketfiletransfer;
|
||||
|
||||
import com.annimon.socketfiletransfer.operations.BrightnessOperation;
|
||||
import com.annimon.socketfiletransfer.operations.MessageOperation;
|
||||
import com.annimon.socketfiletransfer.operations.FileOperation;
|
||||
import com.annimon.socketfiletransfer.operations.Operation;
|
||||
@ -19,7 +20,8 @@ public class OperationListener {
|
||||
MODE_SERVER = 0,
|
||||
MODE_FILE_TRANSFER = 1,
|
||||
MODE_MESSAGE_TRANSFER = 2,
|
||||
MODE_CURSOR_CONTROL = 3;
|
||||
MODE_CURSOR_CONTROL = 3,
|
||||
MODE_BRIGHTNESS_CHANGE = 4;
|
||||
|
||||
protected DataInputStream dis;
|
||||
protected DataOutputStream dos;
|
||||
@ -46,6 +48,9 @@ public class OperationListener {
|
||||
// case MODE_CURSOR_CONTROL:
|
||||
// operation = new CursorOperation(dis);
|
||||
// break;
|
||||
case MODE_BRIGHTNESS_CHANGE:
|
||||
operation = new BrightnessOperation(dis);
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
|
@ -1,5 +1,6 @@
|
||||
package com.annimon.socketfiletransfer;
|
||||
|
||||
import com.annimon.socketfiletransfer.operations.BrightnessOperation;
|
||||
import com.annimon.socketfiletransfer.operations.CursorOperation;
|
||||
import com.annimon.socketfiletransfer.operations.FileOperation;
|
||||
import com.annimon.socketfiletransfer.operations.MessageOperation;
|
||||
@ -23,6 +24,9 @@ public class OperationManager extends OperationListener {
|
||||
case MODE_CURSOR_CONTROL:
|
||||
operation = new CursorOperation(dos);
|
||||
break;
|
||||
case MODE_BRIGHTNESS_CHANGE:
|
||||
operation = new BrightnessOperation(dos);
|
||||
break;
|
||||
}
|
||||
if (operation != null) {
|
||||
operation.startClientSide(params);
|
||||
|
@ -0,0 +1,33 @@
|
||||
package com.annimon.socketfiletransfer.operations;
|
||||
|
||||
import com.annimon.socketfiletransfer.OperationListener;
|
||||
|
||||
import java.io.DataInputStream;
|
||||
import java.io.DataOutputStream;
|
||||
|
||||
/**
|
||||
* @author aNNiMON
|
||||
*/
|
||||
public class BrightnessOperation extends Operation {
|
||||
|
||||
public BrightnessOperation(DataInputStream dis) {
|
||||
this.dis = dis;
|
||||
}
|
||||
|
||||
public BrightnessOperation(DataOutputStream dos) {
|
||||
this.dos = dos;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void startServerSide() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void startClientSide(Object... params) throws Exception {
|
||||
String value = (String) params[0];
|
||||
|
||||
dos.writeInt(OperationListener.MODE_BRIGHTNESS_CHANGE);
|
||||
dos.writeUTF(value);
|
||||
}
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:paddingLeft="@dimen/activity_horizontal_margin"
|
||||
android:paddingRight="@dimen/activity_horizontal_margin"
|
||||
android:paddingTop="@dimen/activity_vertical_margin"
|
||||
android:paddingBottom="@dimen/activity_vertical_margin"
|
||||
android:orientation="vertical"
|
||||
tools:context=".BrightnessActivity">
|
||||
|
||||
|
||||
<SeekBar android:id="@+id/brightness_bar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:max="10"
|
||||
android:progress="2" />
|
||||
</LinearLayout>
|
@ -7,13 +7,15 @@
|
||||
<string name="app_not_found">Application not found</string>
|
||||
<string name="title_activity_messages">Messages</string>
|
||||
<string name="title_activity_cursor">Cursor control</string>
|
||||
<string name="title_activity_brightness">Brightness control</string>
|
||||
<string name="send">Send</string>
|
||||
|
||||
<string-array name="main_menu">
|
||||
<item>Start server</item>
|
||||
<item>File transfer</item>
|
||||
<item>Send message</item>
|
||||
<item>Cursor control</item>
|
||||
<item>@string/title_activity_cursor</item>
|
||||
<item>@string/title_activity_brightness</item>
|
||||
</string-array>
|
||||
|
||||
</resources>
|
||||
|
Loading…
Reference in New Issue
Block a user