Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2ba3c0e477 | ||
|
|
fe27957000 |
No files matched your search
@@ -101,12 +101,14 @@
|
|||||||
</content>
|
</content>
|
||||||
<orderEntry type="jdk" jdkName="Android API 21 Platform" jdkType="Android SDK" />
|
<orderEntry type="jdk" jdkName="Android API 21 Platform" jdkType="Android SDK" />
|
||||||
<orderEntry type="sourceFolder" forTests="false" />
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
|
<orderEntry type="library" exported="" name="okhttp-2.1.0-RC1" level="project" />
|
||||||
<orderEntry type="library" exported="" name="bcprov-jdk15on-1.51" level="project" />
|
<orderEntry type="library" exported="" name="bcprov-jdk15on-1.51" level="project" />
|
||||||
<orderEntry type="library" exported="" name="jmdns-fixed" level="project" />
|
<orderEntry type="library" exported="" name="jmdns-fixed" level="project" />
|
||||||
<orderEntry type="library" exported="" name="jcodec-0.1.6-3" level="project" />
|
<orderEntry type="library" exported="" name="jcodec-0.1.6-3" level="project" />
|
||||||
<orderEntry type="library" exported="" name="bcpkix-jdk15on-1.51" level="project" />
|
<orderEntry type="library" exported="" name="bcpkix-jdk15on-1.51" level="project" />
|
||||||
<orderEntry type="library" exported="" name="tinyrtsp" level="project" />
|
<orderEntry type="library" exported="" name="tinyrtsp" level="project" />
|
||||||
<orderEntry type="library" exported="" name="limelight-common" level="project" />
|
<orderEntry type="library" exported="" name="limelight-common" level="project" />
|
||||||
|
<orderEntry type="library" exported="" name="okio-1.0.1" level="project" />
|
||||||
</component>
|
</component>
|
||||||
</module>
|
</module>
|
||||||
|
|
||||||
@@ -11,8 +11,8 @@ android {
|
|||||||
minSdkVersion 16
|
minSdkVersion 16
|
||||||
targetSdkVersion 21
|
targetSdkVersion 21
|
||||||
|
|
||||||
versionName "2.9"
|
versionName "2.9.0.1"
|
||||||
versionCode = 38
|
versionCode = 40
|
||||||
}
|
}
|
||||||
|
|
||||||
productFlavors {
|
productFlavors {
|
||||||
@@ -65,6 +65,8 @@ dependencies {
|
|||||||
compile group: 'org.jcodec', name: 'jcodec', version: '0.1.6-3'
|
compile group: 'org.jcodec', name: 'jcodec', version: '0.1.6-3'
|
||||||
compile group: 'org.bouncycastle', name: 'bcprov-jdk15on', version: '1.51'
|
compile group: 'org.bouncycastle', name: 'bcprov-jdk15on', version: '1.51'
|
||||||
compile group: 'org.bouncycastle', name: 'bcpkix-jdk15on', version: '1.51'
|
compile group: 'org.bouncycastle', name: 'bcpkix-jdk15on', version: '1.51'
|
||||||
|
compile group: 'com.squareup.okhttp', name: 'okhttp', version:'2.1.0-RC1'
|
||||||
|
compile group: 'com.squareup.okio', name:'okio', version:'1.0.1'
|
||||||
compile files('libs/jmdns-fixed.jar')
|
compile files('libs/jmdns-fixed.jar')
|
||||||
compile files('libs/limelight-common.jar')
|
compile files('libs/limelight-common.jar')
|
||||||
compile files('libs/tinyrtsp.jar')
|
compile files('libs/tinyrtsp.jar')
|
||||||
|
|||||||
@@ -15,7 +15,6 @@ import com.limelight.nvstream.http.NvHTTP;
|
|||||||
import com.limelight.R;
|
import com.limelight.R;
|
||||||
import com.limelight.utils.Dialog;
|
import com.limelight.utils.Dialog;
|
||||||
import com.limelight.utils.SpinnerDialog;
|
import com.limelight.utils.SpinnerDialog;
|
||||||
import com.limelight.utils.UiHelper;
|
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
@@ -53,8 +52,6 @@ public class AppView extends Activity {
|
|||||||
protected void onCreate(Bundle savedInstanceState) {
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
setContentView(R.layout.activity_app_view);
|
setContentView(R.layout.activity_app_view);
|
||||||
|
|
||||||
UiHelper.notifyNewRootView(this);
|
|
||||||
|
|
||||||
byte[] address = getIntent().getByteArrayExtra(ADDRESS_EXTRA);
|
byte[] address = getIntent().getByteArrayExtra(ADDRESS_EXTRA);
|
||||||
uniqueId = getIntent().getStringExtra(UNIQUEID_EXTRA);
|
uniqueId = getIntent().getStringExtra(UNIQUEID_EXTRA);
|
||||||
|
|||||||
@@ -517,12 +517,7 @@ public class Game extends Activity implements SurfaceHolder.Callback,
|
|||||||
// ACTION_MOVE is special because it always has actionIndex == 0
|
// ACTION_MOVE is special because it always has actionIndex == 0
|
||||||
// We'll call the move handlers for all indexes manually
|
// We'll call the move handlers for all indexes manually
|
||||||
for (TouchContext aTouchContextMap : touchContextMap) {
|
for (TouchContext aTouchContextMap : touchContextMap) {
|
||||||
if (aTouchContextMap.getActionIndex() < event.getPointerCount())
|
aTouchContextMap.touchMoveEvent(eventX, eventY);
|
||||||
{
|
|
||||||
aTouchContextMap.touchMoveEvent(
|
|
||||||
(int)event.getX(aTouchContextMap.getActionIndex()),
|
|
||||||
(int)event.getY(aTouchContextMap.getActionIndex()));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -17,7 +17,6 @@ import com.limelight.nvstream.wol.WakeOnLanSender;
|
|||||||
import com.limelight.preferences.AddComputerManually;
|
import com.limelight.preferences.AddComputerManually;
|
||||||
import com.limelight.preferences.StreamSettings;
|
import com.limelight.preferences.StreamSettings;
|
||||||
import com.limelight.utils.Dialog;
|
import com.limelight.utils.Dialog;
|
||||||
import com.limelight.utils.UiHelper;
|
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.app.Service;
|
import android.app.Service;
|
||||||
@@ -93,8 +92,6 @@ public class PcView extends Activity {
|
|||||||
private void initializeViews() {
|
private void initializeViews() {
|
||||||
setContentView(R.layout.activity_pc_view);
|
setContentView(R.layout.activity_pc_view);
|
||||||
|
|
||||||
UiHelper.notifyNewRootView(this);
|
|
||||||
|
|
||||||
// Set default preferences if we've never been run
|
// Set default preferences if we've never been run
|
||||||
PreferenceManager.setDefaultValues(this, R.xml.preferences, false);
|
PreferenceManager.setDefaultValues(this, R.xml.preferences, false);
|
||||||
|
|
||||||
@@ -340,6 +337,7 @@ public class PcView extends Activity {
|
|||||||
message = "GFE returned an HTTP 404 error. Make sure your PC is running a supported GPU. Using remote desktop software can also cause this error. "
|
message = "GFE returned an HTTP 404 error. Make sure your PC is running a supported GPU. Using remote desktop software can also cause this error. "
|
||||||
+ "Try rebooting your machine or reinstalling GFE.";
|
+ "Try rebooting your machine or reinstalling GFE.";
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
message = e.getMessage();
|
message = e.getMessage();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -21,11 +21,6 @@ public class TouchContext {
|
|||||||
this.conn = conn;
|
this.conn = conn;
|
||||||
this.actionIndex = actionIndex;
|
this.actionIndex = actionIndex;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getActionIndex()
|
|
||||||
{
|
|
||||||
return actionIndex;
|
|
||||||
}
|
|
||||||
|
|
||||||
private boolean isTap()
|
private boolean isTap()
|
||||||
{
|
{
|
||||||
@@ -89,8 +84,10 @@ public class TouchContext {
|
|||||||
|
|
||||||
lastTouchX = eventX;
|
lastTouchX = eventX;
|
||||||
lastTouchY = eventY;
|
lastTouchY = eventY;
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -7,7 +7,6 @@ import java.util.concurrent.LinkedBlockingQueue;
|
|||||||
import com.limelight.computers.ComputerManagerService;
|
import com.limelight.computers.ComputerManagerService;
|
||||||
import com.limelight.R;
|
import com.limelight.R;
|
||||||
import com.limelight.utils.Dialog;
|
import com.limelight.utils.Dialog;
|
||||||
import com.limelight.utils.UiHelper;
|
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.app.Service;
|
import android.app.Service;
|
||||||
@@ -127,10 +126,8 @@ public class AddComputerManually extends Activity {
|
|||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
|
|
||||||
setContentView(R.layout.activity_add_computer_manually);
|
setContentView(R.layout.activity_add_computer_manually);
|
||||||
|
|
||||||
UiHelper.notifyNewRootView(this);
|
this.addPcButton = (Button) findViewById(R.id.addPc);
|
||||||
|
|
||||||
this.addPcButton = (Button) findViewById(R.id.addPc);
|
|
||||||
this.hostText = (TextView) findViewById(R.id.hostTextView);
|
this.hostText = (TextView) findViewById(R.id.hostTextView);
|
||||||
|
|
||||||
// Bind to the ComputerManager service
|
// Bind to the ComputerManager service
|
||||||
|
|||||||
@@ -8,7 +8,6 @@ import android.preference.PreferenceFragment;
|
|||||||
import android.preference.PreferenceManager;
|
import android.preference.PreferenceManager;
|
||||||
|
|
||||||
import com.limelight.R;
|
import com.limelight.R;
|
||||||
import com.limelight.utils.UiHelper;
|
|
||||||
|
|
||||||
public class StreamSettings extends Activity {
|
public class StreamSettings extends Activity {
|
||||||
@Override
|
@Override
|
||||||
@@ -19,8 +18,6 @@ public class StreamSettings extends Activity {
|
|||||||
getFragmentManager().beginTransaction().replace(
|
getFragmentManager().beginTransaction().replace(
|
||||||
R.id.stream_settings, new SettingsFragment()
|
R.id.stream_settings, new SettingsFragment()
|
||||||
).commit();
|
).commit();
|
||||||
|
|
||||||
UiHelper.notifyNewRootView(this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class SettingsFragment extends PreferenceFragment {
|
public static class SettingsFragment extends PreferenceFragment {
|
||||||
|
|||||||
@@ -1,31 +0,0 @@
|
|||||||
package com.limelight.utils;
|
|
||||||
|
|
||||||
import android.app.Activity;
|
|
||||||
import android.app.UiModeManager;
|
|
||||||
import android.content.Context;
|
|
||||||
import android.content.res.Configuration;
|
|
||||||
import android.view.View;
|
|
||||||
|
|
||||||
public class UiHelper {
|
|
||||||
|
|
||||||
// Values from https://developer.android.com/training/tv/start/layouts.html
|
|
||||||
private static final int TV_VERTICAL_PADDING_DP = 27;
|
|
||||||
private static final int TV_HORIZONTAL_PADDING_DP = 48;
|
|
||||||
|
|
||||||
public static void notifyNewRootView(Activity activity)
|
|
||||||
{
|
|
||||||
View rootView = (View) activity.findViewById(android.R.id.content);
|
|
||||||
UiModeManager modeMgr = (UiModeManager) activity.getSystemService(Context.UI_MODE_SERVICE);
|
|
||||||
|
|
||||||
if (modeMgr.getCurrentModeType() == Configuration.UI_MODE_TYPE_TELEVISION)
|
|
||||||
{
|
|
||||||
// Increase view padding on TVs
|
|
||||||
float scale = activity.getResources().getDisplayMetrics().density;
|
|
||||||
int verticalPaddingPixels = (int) (TV_VERTICAL_PADDING_DP*scale + 0.5f);
|
|
||||||
int horizontalPaddingPixels = (int) (TV_HORIZONTAL_PADDING_DP*scale + 0.5f);
|
|
||||||
|
|
||||||
rootView.setPadding(horizontalPaddingPixels, verticalPaddingPixels,
|
|
||||||
horizontalPaddingPixels, verticalPaddingPixels);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 9.2 KiB |
|
Before Width: | Height: | Size: 7.6 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 1.2 MiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 64 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 7.6 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 62 KiB |
@@ -0,0 +1,8 @@
|
|||||||
|
<resources>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Customize dimensions originally defined in res/values/dimens.xml (such as
|
||||||
|
screen margins) for sw600dp devices (e.g. 7" tablets) here.
|
||||||
|
-->
|
||||||
|
|
||||||
|
</resources>
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
<resources>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Customize dimensions originally defined in res/values/dimens.xml (such as
|
||||||
|
screen margins) for sw720dp devices (e.g. 10" tablets) in landscape here.
|
||||||
|
-->
|
||||||
|
<dimen name="activity_horizontal_margin">128dp</dimen>
|
||||||
|
|
||||||
|
</resources>
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
<resources>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Declare custom theme attributes that allow changing which styles are
|
||||||
|
used for button bars depending on the API level.
|
||||||
|
?android:attr/buttonBarStyle is new as of API 11 so this is
|
||||||
|
necessary to support previous API levels.
|
||||||
|
-->
|
||||||
|
<declare-styleable name="ButtonBarContainerTheme">
|
||||||
|
<attr name="buttonBarStyle" format="reference" />
|
||||||
|
<attr name="buttonBarButtonStyle" format="reference" />
|
||||||
|
</declare-styleable>
|
||||||
|
|
||||||
|
</resources>
|
||||||
@@ -1,25 +1,40 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<resources>
|
<resources>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
Base application theme, dependent on API level. This theme is replaced
|
Base application theme, dependent on API level. This theme is replaced
|
||||||
by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
|
by AppBaseTheme from res/values-vXX/styles.xml on newer devices.␍
|
||||||
|
|
||||||
-->
|
-->
|
||||||
<style name="AppBaseTheme" parent="android:Theme">
|
<style name="AppBaseTheme" parent="android:Theme">
|
||||||
<!--
|
<!--
|
||||||
Theme customizations available in newer API levels can go in
|
Theme customizations available in newer API levels can go in
|
||||||
res/values-vXX/styles.xml, while customizations related to
|
res/values-vXX/styles.xml, while customizations related to
|
||||||
backward-compatibility can go here.
|
backward-compatibility can go here.␍
|
||||||
|
|
||||||
-->
|
-->
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<!-- Application theme. -->
|
<!-- Application theme. -->
|
||||||
<style name="AppTheme" parent="AppBaseTheme">
|
<style name="AppTheme" parent="AppBaseTheme">
|
||||||
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
|
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
|
||||||
<item name="android:windowActionBar">false</item>
|
<item name="android:windowActionBar">false</item>
|
||||||
<item name="android:windowNoTitle">true</item>
|
<item name="android:windowNoTitle">true</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
<style name="FullscreenTheme" parent="android:Theme.NoTitleBar">
|
||||||
|
<item name="android:windowContentOverlay">@null</item>
|
||||||
|
<item name="android:windowBackground">@null</item>
|
||||||
|
<item name="buttonBarStyle">@style/ButtonBar</item>
|
||||||
|
<item name="buttonBarButtonStyle">@style/ButtonBarButton</item>
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<style name="ButtonBar">
|
||||||
|
<item name="android:paddingLeft">2dp</item>
|
||||||
|
<item name="android:paddingTop">5dp</item>
|
||||||
|
<item name="android:paddingRight">2dp</item>
|
||||||
|
<item name="android:paddingBottom">0dp</item>
|
||||||
|
<item name="android:background">@android:drawable/bottom_bar</item>
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<style name="ButtonBarButton" />
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||