diff --git a/app/src/main/java/com/limelight/AppView.java b/app/src/main/java/com/limelight/AppView.java index 21ccbdf0..51a9c341 100644 --- a/app/src/main/java/com/limelight/AppView.java +++ b/app/src/main/java/com/limelight/AppView.java @@ -96,8 +96,9 @@ public class AppView extends Activity implements AdapterFragmentCallbacks { startComputerUpdates(); try { - appGridAdapter = new AppGridAdapter(AppView.this, 1.0, + appGridAdapter = new AppGridAdapter(AppView.this, PreferenceConfiguration.readPreferences(AppView.this).listMode, + PreferenceConfiguration.readPreferences(AppView.this).smallIconMode, computer, managerBinder.getUniqueId()); } catch (Exception e) { e.printStackTrace(); @@ -467,7 +468,8 @@ public class AppView extends Activity implements AdapterFragmentCallbacks { @Override public int getAdapterFragmentLayoutId() { return PreferenceConfiguration.readPreferences(this).listMode ? - R.layout.list_view : R.layout.app_grid_view; + R.layout.list_view : (PreferenceConfiguration.readPreferences(AppView.this).smallIconMode ? + R.layout.app_grid_view_small : R.layout.app_grid_view); } @Override diff --git a/app/src/main/java/com/limelight/PcView.java b/app/src/main/java/com/limelight/PcView.java index ebf64628..7466e344 100644 --- a/app/src/main/java/com/limelight/PcView.java +++ b/app/src/main/java/com/limelight/PcView.java @@ -156,8 +156,9 @@ public class PcView extends Activity implements AdapterFragmentCallbacks { bindService(new Intent(PcView.this, ComputerManagerService.class), serviceConnection, Service.BIND_AUTO_CREATE); - pcGridAdapter = new PcGridAdapter(this, 1.0, - PreferenceConfiguration.readPreferences(this).listMode); + pcGridAdapter = new PcGridAdapter(this, + PreferenceConfiguration.readPreferences(this).listMode, + PreferenceConfiguration.readPreferences(this).smallIconMode); initializeViews(); } @@ -558,7 +559,8 @@ public class PcView extends Activity implements AdapterFragmentCallbacks { @Override public int getAdapterFragmentLayoutId() { return PreferenceConfiguration.readPreferences(this).listMode ? - R.layout.list_view : R.layout.pc_grid_view; + R.layout.list_view : (PreferenceConfiguration.readPreferences(this).smallIconMode ? + R.layout.pc_grid_view_small : R.layout.pc_grid_view); } @Override diff --git a/app/src/main/java/com/limelight/grid/AppGridAdapter.java b/app/src/main/java/com/limelight/grid/AppGridAdapter.java index 481ae2be..a18076f3 100644 --- a/app/src/main/java/com/limelight/grid/AppGridAdapter.java +++ b/app/src/main/java/com/limelight/grid/AppGridAdapter.java @@ -54,8 +54,8 @@ public class AppGridAdapter extends GenericGridAdapter { private SSLContext sslContext; private final HashMap pendingRequests = new HashMap(); - public AppGridAdapter(Context context, double gridScaleFactor, boolean listMode, ComputerDetails computer, String uniqueId) throws NoSuchAlgorithmException, KeyManagementException { - super(context, listMode ? R.layout.simple_row : R.layout.app_grid_item, R.drawable.image_loading, gridScaleFactor); + public AppGridAdapter(Context context, boolean listMode, boolean small, ComputerDetails computer, String uniqueId) throws NoSuchAlgorithmException, KeyManagementException { + super(context, listMode ? R.layout.simple_row : (small ? R.layout.app_grid_item_small : R.layout.app_grid_item), R.drawable.image_loading); this.computer = computer; this.uniqueId = uniqueId; diff --git a/app/src/main/java/com/limelight/grid/GenericGridAdapter.java b/app/src/main/java/com/limelight/grid/GenericGridAdapter.java index b6a416b6..f0a17618 100644 --- a/app/src/main/java/com/limelight/grid/GenericGridAdapter.java +++ b/app/src/main/java/com/limelight/grid/GenericGridAdapter.java @@ -18,13 +18,11 @@ public abstract class GenericGridAdapter extends BaseAdapter { protected int layoutId; protected ArrayList itemList = new ArrayList(); protected LayoutInflater inflater; - protected double gridSizeFactor; - public GenericGridAdapter(Context context, int layoutId, int defaultImageRes, double gridSizeFactor) { + public GenericGridAdapter(Context context, int layoutId, int defaultImageRes) { this.context = context; this.layoutId = layoutId; this.defaultImageRes = defaultImageRes; - this.gridSizeFactor = gridSizeFactor; this.inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); } @@ -66,26 +64,11 @@ public abstract class GenericGridAdapter extends BaseAdapter { if (!populateImageView(imgView, itemList.get(i))) { imgView.setImageResource(defaultImageRes); } - - ViewGroup.LayoutParams params = imgView.getLayoutParams(); - params.width *= gridSizeFactor; - params.height *= gridSizeFactor; - imgView.setLayoutParams(params); } if (!populateTextView(txtView, itemList.get(i))) { txtView.setText(itemList.get(i).toString()); - - ViewGroup.LayoutParams params = txtView.getLayoutParams(); - params.width *= gridSizeFactor; - params.height *= gridSizeFactor; - txtView.setLayoutParams(params); } if (overlayView != null) { - ViewGroup.LayoutParams params = overlayView.getLayoutParams(); - params.width *= gridSizeFactor; - params.height *= gridSizeFactor; - overlayView.setLayoutParams(params); - if (!populateOverlayView(overlayView, itemList.get(i))) { overlayView.setVisibility(View.INVISIBLE); } diff --git a/app/src/main/java/com/limelight/grid/PcGridAdapter.java b/app/src/main/java/com/limelight/grid/PcGridAdapter.java index b2a63cf1..c6b22e41 100644 --- a/app/src/main/java/com/limelight/grid/PcGridAdapter.java +++ b/app/src/main/java/com/limelight/grid/PcGridAdapter.java @@ -13,8 +13,8 @@ import java.util.Comparator; public class PcGridAdapter extends GenericGridAdapter { - public PcGridAdapter(Context context, double gridScaleFactor, boolean listMode) { - super(context, listMode ? R.layout.simple_row : R.layout.pc_grid_item, R.drawable.computer, gridScaleFactor); + public PcGridAdapter(Context context, boolean listMode, boolean small) { + super(context, listMode ? R.layout.simple_row : (small ? R.layout.pc_grid_item_small : R.layout.pc_grid_item), R.drawable.computer); } public void addComputer(PcView.ComputerObject computer) { diff --git a/app/src/main/res/layout/app_grid_item_small.xml b/app/src/main/res/layout/app_grid_item_small.xml new file mode 100644 index 00000000..05457e66 --- /dev/null +++ b/app/src/main/res/layout/app_grid_item_small.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/app_grid_view.xml b/app/src/main/res/layout/app_grid_view.xml index 6926a933..980ef19a 100644 --- a/app/src/main/res/layout/app_grid_view.xml +++ b/app/src/main/res/layout/app_grid_view.xml @@ -5,7 +5,7 @@ + + + \ No newline at end of file diff --git a/app/src/main/res/layout/pc_grid_item_small.xml b/app/src/main/res/layout/pc_grid_item_small.xml new file mode 100644 index 00000000..490aff50 --- /dev/null +++ b/app/src/main/res/layout/pc_grid_item_small.xml @@ -0,0 +1,37 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/pc_grid_view.xml b/app/src/main/res/layout/pc_grid_view.xml index 98a0c9cd..312d840c 100644 --- a/app/src/main/res/layout/pc_grid_view.xml +++ b/app/src/main/res/layout/pc_grid_view.xml @@ -5,7 +5,7 @@ diff --git a/app/src/main/res/layout/pc_grid_view_small.xml b/app/src/main/res/layout/pc_grid_view_small.xml new file mode 100644 index 00000000..22486764 --- /dev/null +++ b/app/src/main/res/layout/pc_grid_view_small.xml @@ -0,0 +1,12 @@ + + + + \ No newline at end of file