diff --git a/.idea/misc.xml b/.idea/misc.xml index 7158618..cc72de3 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,8 +1,5 @@ - - - - - - - - - - - - - - + diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 37f35ff..bf0896b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -2,7 +2,7 @@ apply plugin: 'com.android.application' android { compileSdkVersion 25 - buildToolsVersion "25.0.3" + buildToolsVersion '26.0.2' defaultConfig { applicationId "org.invotek.apps.easyvsd_shell" minSdkVersion 15 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 18977d2..99ad35f 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -11,6 +11,7 @@ android:theme="@style/AppTheme"> 0 && reqHeight > 0) + ret = Bitmap.createScaledBitmap(ret, reqWidth, reqHeight, true); + }catch(Exception e){ ret = null; }finally{ diff --git a/app/src/main/java/org/invotek/apps/easyvsd_shell/MainActivity.java b/app/src/main/java/org/invotek/apps/easyvsd_shell/MainActivity.java index 0182ac9..66d5e41 100644 --- a/app/src/main/java/org/invotek/apps/easyvsd_shell/MainActivity.java +++ b/app/src/main/java/org/invotek/apps/easyvsd_shell/MainActivity.java @@ -136,17 +136,18 @@ public static String toString(Mode current){ ScrollView vActivities, vPages; LinearLayout activityLayout, pageLayout; NewDrawingView dvDrawing; - LinearLayout adminPanel; + GridLayout adminPanel; GridLayout navLayout; + //HorizontalScrollView MainScrollView; BackgroundHighlightButton btnCreateActivity, btnCreatePage, btnEditHotspot, btnCancelHotspot, btnDrawingMode, - btnNavMode, btnStartRecording, btnEndRecording, btnDeleteHotspot, btnUndo, btnRedo, btnVideoRestart, + btnNavMode, btnStartRecording, btnEndRecording, btnDeleteHotspot, /*btnUndo, btnRedo,*/ btnVideoRestart, btnVideoStepBack, btnVideoPlay, btnVideoStepForward, btnVideoPause; Drawing currentDrawing; int[][] userData = {{R.drawable.car_exterior, R.drawable.car_interior}, {R.drawable.lake_house}, - {R.drawable.dog_group, R.drawable.standing_aussie, R.drawable.running_aussie}}; + {R.drawable.dog_group, R.drawable.standing_aussie}}; int currentPage = -1; int currentActivity = -1; private int minimumPageId = 200; @@ -182,10 +183,10 @@ protected void onResume() { loadUser(); vPages = (ScrollView)findViewById(R.id.ActivityPages_vertical); - if(vPages != null){ vPages.removeAllViews(); } + //if(vPages != null){ vPages.removeAllViews(); } hPages = (HorizontalScrollView)findViewById(R.id.ActivityPages_horizontal); - if(hPages != null){ hPages.removeAllViews(); } + //if(hPages != null){ hPages.removeAllViews(); } destinationView = (ImageView)findViewById(R.id.ActivityImage); videoSurface = (SurfaceView)findViewById(R.id.ActivityVideo); @@ -414,7 +415,7 @@ public void onLayoutChange(View v, int left, int top, left + "," + top + "," + right + "," + bottom + "] old=[" + oldLeft + "," + oldTop + "," + oldRight + "," + oldBottom + "]"); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(MainActivity.this); - if((prefs.getBoolean("allow_hotspot_text", false)) && (bottom > oldBottom)) + if(bottom > oldBottom) setUpAdminPanel(false, false, false); }}); @@ -439,9 +440,9 @@ public void onConfigurationChanged(Configuration newConfig) { loadUser(); vPages = (ScrollView)findViewById(R.id.ActivityPages_vertical); - if(vPages != null){vPages.removeAllViews();} + //if(vPages != null){vPages.removeAllViews();} hPages = (HorizontalScrollView)findViewById(R.id.ActivityPages_horizontal); - if(hPages != null){ hPages.removeAllViews(); } + //if(hPages != null){ hPages.removeAllViews(); } setUpAdminPanel(false, false, false); } @@ -640,9 +641,11 @@ public void onClick(DialogInterface dialog, int which) { break; case R.id.btn_drawingMode: setDrawingOptions(true, false); + ((LockableHorizontalScrollView)findViewById(R.id.MainScrollView)).setScrollingEnabled(false); break; case R.id.btn_navMode: setDrawingOptions(false, false); + ((LockableHorizontalScrollView)findViewById(R.id.MainScrollView)).setScrollingEnabled(true); loadUser(); loadGroup(); break; @@ -655,6 +658,7 @@ public void onClick(DialogInterface dialog, int which) { case R.id.btn_deleteHotspot: // delete currently selected hotspot break; + /* case R.id.btn_undo: dvDrawing.undo(); setUpAdminPanel(false, false, false); @@ -663,6 +667,7 @@ public void onClick(DialogInterface dialog, int which) { dvDrawing.redo(); setUpAdminPanel(false, false, false); break; + */ case R.id.btn_video_restart: // restart video break; @@ -820,7 +825,7 @@ private BackgroundHighlightButton getButton(int activityIndex, int pageIndex, bo button.setId((isActivity ? minimumActivityId + activityIndex : minimumPageId + pageIndex)); DisplayMetrics metrics = MainActivity.this.getResources().getDisplayMetrics(); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(MainActivity.this); - int buttonSize = Integer.parseInt(prefs.getString("nav_button_size", "250")); + int buttonSize = Integer.parseInt(prefs.getString("nav_button_size", "250"));//Button on left size buttonSize = (int)Math.round(buttonSize * Math.max(metrics.widthPixels, metrics.heightPixels) / 2560f); Log.d("ActivityPage", "buttonSize=[" + String.valueOf(buttonSize) + "]"); int margin = (int)Math.round(buttonSize / 25f); @@ -907,9 +912,9 @@ private void showImageView(View clickedView){ Rect visibleDestRect = new Rect(); clickedView.getGlobalVisibleRect(visibleSourceRect); destinationView.getGlobalVisibleRect(visibleDestRect); - //Log.i("PlayTalk", "Main.showImageView entry" + - // ", SourceRect=" + visibleSourceRect.toShortString() + - // ", DestRect=" + visibleDestRect.toShortString() ); + Log.i("PlayTalk", "Main.showImageView entry" + + ", SourceRect=" + visibleSourceRect.toShortString() + + ", DestRect=" + visibleDestRect.toShortString() ); float visibleSourceWidth = visibleSourceRect.width() > 0 ? (float)visibleSourceRect.width() : (float)1; float visibleSourceHeight = visibleSourceRect.height() > 0 ? (float)visibleSourceRect.height() : (float)1; heightDividedWidth = visibleSourceHeight/ visibleSourceWidth; @@ -924,9 +929,9 @@ private void showImageView(View clickedView){ visibleDestRect.left += change/2; visibleDestRect.right -= change/2; } - //Log.i("PlayTalk", "Main.showImageView exit" + - // ", SourceRect=" + visibleSourceRect.toShortString() + - // ", DestRect=" + visibleDestRect.toShortString() ); + Log.i("PlayTalk", "Main.showImageView exit" + + ", SourceRect=" + visibleSourceRect.toShortString() + + ", DestRect=" + visibleDestRect.toShortString() ); Bitmap toShow = ((BackgroundHighlightButton)clickedView).getButtonBitmap(); @@ -943,6 +948,11 @@ public void setActiveImage(){ } else{ int[] dimens = getImageSize(); + // int[] dimens; + //dimens = new int[2]; + // dimens[0] = 45; + //[0] = 45; + // Load the still image for this page into destinationView (ImageView) ImageDecoder decoder = new ImageDecoder(); destinationView.setImageBitmap(decoder.getImage(this, @@ -1045,13 +1055,15 @@ private void initAdminPanel(){ int buttonSize = Integer.parseInt(prefs.getString("nav_button_size", "250")); buttonSize = (int)Math.round(buttonSize * Math.max(metrics.widthPixels, metrics.heightPixels) / 2560f); int margin = (int)Math.round(buttonSize / 25f); - adminPanel = (LinearLayout)findViewById(R.id.adminPanel); - RelativeLayout.LayoutParams pnlLayoutParamsAdmin = (RelativeLayout.LayoutParams) adminPanel.getLayoutParams(); - RelativeLayout.LayoutParams pnlLayoutParamsDestination = (RelativeLayout.LayoutParams)destinationView.getLayoutParams(); - RelativeLayout.LayoutParams pnlLayoutParamsVideoSurface = (RelativeLayout.LayoutParams)videoSurface.getLayoutParams(); - RelativeLayout.LayoutParams pnlLayoutParamsDrawings = (RelativeLayout.LayoutParams)dvDrawing.getLayoutParams(); - if(getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE){ - if(onTopOfVSD){ + adminPanel = (GridLayout)findViewById(R.id.adminPanel); + LinearLayout.LayoutParams pnlLayoutParamsAdmin = (LinearLayout.LayoutParams) adminPanel.getLayoutParams(); + LinearLayout.LayoutParams pnlLayoutParamsDestination = (LinearLayout.LayoutParams)destinationView.getLayoutParams(); + LinearLayout.LayoutParams pnlLayoutParamsVideoSurface = (LinearLayout.LayoutParams)videoSurface.getLayoutParams(); + LinearLayout.LayoutParams pnlLayoutParamsDrawings = (LinearLayout.LayoutParams)dvDrawing.getLayoutParams(); + + + if(getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE){ + /*if(onTopOfVSD){ pnlLayoutParamsDestination.addRule(RelativeLayout.LEFT_OF, 0); pnlLayoutParamsVideoSurface.addRule(RelativeLayout.LEFT_OF, 0); pnlLayoutParamsDrawings.addRule(RelativeLayout.LEFT_OF, 0); @@ -1059,9 +1071,10 @@ private void initAdminPanel(){ pnlLayoutParamsDestination.addRule(RelativeLayout.LEFT_OF, R.id.adminPanel); pnlLayoutParamsVideoSurface.addRule(RelativeLayout.LEFT_OF, R.id.adminPanel); pnlLayoutParamsDrawings.addRule(RelativeLayout.LEFT_OF, R.id.adminPanel); - } + }*/ pnlLayoutParamsAdmin.width = (buttonSize + (margin * 4)); }else{ + /* if(onTopOfVSD){ pnlLayoutParamsDestination.addRule(RelativeLayout.ABOVE, 0); pnlLayoutParamsVideoSurface.addRule(RelativeLayout.ABOVE, 0); @@ -1071,13 +1084,16 @@ private void initAdminPanel(){ pnlLayoutParamsVideoSurface.addRule(RelativeLayout.ABOVE, R.id.adminPanel); pnlLayoutParamsDrawings.addRule(RelativeLayout.ABOVE, R.id.adminPanel); } + */ pnlLayoutParamsAdmin.height = (buttonSize + (margin * 4)); } + adminPanel.setLayoutParams(pnlLayoutParamsAdmin); destinationView.setLayoutParams(pnlLayoutParamsDestination); videoSurface.setLayoutParams(pnlLayoutParamsVideoSurface); dvDrawing.setLayoutParams(pnlLayoutParamsDrawings); + btnCreateActivity = (BackgroundHighlightButton)findViewById(R.id.btn_newActivity); btnCreateActivity.setForegroundImageResource(this, R.drawable.new_activity_circle, true); //realImages ? R.drawable.camera_me2 : R.drawable.take_picture, true); btnCreateActivity.setOnClickListener(this); @@ -1115,6 +1131,7 @@ private void initAdminPanel(){ btnDeleteHotspot.setForegroundImageResource(this, R.drawable.delete_circle, true); // realImages ? R.drawable.trash_icon : R.drawable.delete_hotspot, true); btnDeleteHotspot.setOnClickListener(this); setUpAdminButton(btnDeleteHotspot, buttonSize, margin); + /* btnUndo = (BackgroundHighlightButton)findViewById(R.id.btn_undo); btnUndo.setForegroundImageResource(this, R.drawable.undo_circle, true); btnUndo.setOnClickListener(this); @@ -1123,6 +1140,7 @@ private void initAdminPanel(){ btnRedo.setForegroundImageResource(this, R.drawable.redo_circle, true); btnRedo.setOnClickListener(this); setUpAdminButton(btnRedo, buttonSize, margin); + */ btnVideoRestart = (BackgroundHighlightButton)findViewById(R.id.btn_video_restart); btnVideoRestart.setForegroundImageResource(this, R.drawable.restart_button, true); btnVideoRestart.setOnClickListener(this); @@ -1162,7 +1180,7 @@ private void setUpAdminButton(Button toSet, int size, int margin){ private boolean videoPaused; private void setUpAdminPanel(boolean hotspotCreated, boolean hotspotSelected, boolean recording){ SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(MainActivity.this); - boolean adminInNav = true; //prefs.getBoolean("admin_in_nav", true); + boolean adminInNav = false; //prefs.getBoolean("admin_in_nav", true); DisplayMetrics metrics = MainActivity.this.getResources().getDisplayMetrics(); boolean portrait = (MainActivity.this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) || (metrics.heightPixels > metrics.widthPixels); @@ -1185,8 +1203,8 @@ private void setUpAdminPanel(boolean hotspotCreated, boolean hotspotSelected, bo setUpAdminButton(btnEndRecording, buttonSize, margin); setUpAdminButton(btnDrawingMode, buttonSize, margin); setUpAdminButton(btnNavMode, buttonSize, margin); - setUpAdminButton(btnUndo, buttonSize, margin); - setUpAdminButton(btnRedo, buttonSize, margin); + //setUpAdminButton(btnUndo, buttonSize, margin); + //setUpAdminButton(btnRedo, buttonSize, margin); setUpAdminButton(btnVideoRestart, buttonSize, margin); setUpAdminButton(btnVideoStepBack, buttonSize, margin); setUpAdminButton(btnVideoPlay, buttonSize, margin); @@ -1203,8 +1221,8 @@ private void setUpAdminPanel(boolean hotspotCreated, boolean hotspotSelected, bo navLayout.removeView(btnEndRecording); navLayout.removeView(btnDrawingMode); navLayout.removeView(btnNavMode); - navLayout.removeView(btnUndo); - navLayout.removeView(btnRedo); + //navLayout.removeView(btnUndo); + //navLayout.removeView(btnRedo); navLayout.removeView(btnVideoRestart); navLayout.removeView(btnVideoStepBack); navLayout.removeView(btnVideoPlay); @@ -1214,6 +1232,7 @@ private void setUpAdminPanel(boolean hotspotCreated, boolean hotspotSelected, bo int newDimen = portrait ? navLayout.getWidth() : navLayout.getHeight(); GridLayout.LayoutParams params; if(adminInNav && ((currentMode == Mode.Create) || (currentMode == Mode.AdvancedCreate) || (currentMode == Mode.iSnap))){ + //MainScrollView.onTouchEvent(false); if(adminPanel.getChildCount() > 0){ adminPanel.removeView(btnCreateActivity); adminPanel.removeView(btnCreatePage); @@ -1224,8 +1243,8 @@ private void setUpAdminPanel(boolean hotspotCreated, boolean hotspotSelected, bo adminPanel.removeView(btnEndRecording); adminPanel.removeView(btnDrawingMode); adminPanel.removeView(btnNavMode); - adminPanel.removeView(btnUndo); - adminPanel.removeView(btnRedo); + //adminPanel.removeView(btnUndo); + //adminPanel.removeView(btnRedo); adminPanel.removeView(btnVideoRestart); adminPanel.removeView(btnVideoStepBack); adminPanel.removeView(btnVideoPlay); @@ -1468,6 +1487,7 @@ private void setUpAdminPanel(boolean hotspotCreated, boolean hotspotSelected, bo params.height = buttonSize; } navLayout.addView(btnNavMode, params); + /* boolean undoRedoAllowed = prefs.getBoolean("undo_redo_enabled", false); if(dvDrawing != null){ if(undoRedoAllowed && dvDrawing.canRedo() && dvDrawing.canUndo()){ @@ -1523,7 +1543,7 @@ private void setUpAdminPanel(boolean hotspotCreated, boolean hotspotSelected, bo } }else{ newDimen -= (buttonSize + (2*margin)); - } + }*/ } } }else if(adminInNav && currentPage >= 0 && isVideo && @@ -1538,8 +1558,8 @@ private void setUpAdminPanel(boolean hotspotCreated, boolean hotspotSelected, bo adminPanel.removeView(btnEndRecording); adminPanel.removeView(btnDrawingMode); adminPanel.removeView(btnNavMode); - adminPanel.removeView(btnUndo); - adminPanel.removeView(btnRedo); + //adminPanel.removeView(btnUndo); + //adminPanel.removeView(btnRedo); adminPanel.removeView(btnVideoRestart); adminPanel.removeView(btnVideoStepBack); adminPanel.removeView(btnVideoPlay); @@ -1658,7 +1678,8 @@ private void setUpAdminPanel(boolean hotspotCreated, boolean hotspotSelected, bo currentState == State.Navigate); Log.i("setUpAdminPanel", "showVideoButtons=[" + String.valueOf(showVideoButtons) + "] enableVideoControlHotspots=[" + String.valueOf(!prefs.getBoolean("enableVideoControlHotspots", false)) + "]"); - adminPanel.setVisibility((((currentMode == Mode.Create) || (currentMode == Mode.AdvancedCreate)) && !adminInNav) ? View.VISIBLE : View.GONE); + ////////////////////////////////////////////////////////////////////////////////////////////////////////// + adminPanel.setVisibility((((currentMode == Mode.Create) || (currentMode == Mode.AdvancedCreate)) && !adminInNav) ? View.VISIBLE : View.INVISIBLE); if(currentMode == Mode.iSnap){ btnCreateActivity.setVisibility(View.GONE); btnCreatePage.setVisibility(View.VISIBLE); @@ -1669,8 +1690,8 @@ private void setUpAdminPanel(boolean hotspotCreated, boolean hotspotSelected, bo btnStartRecording.setVisibility(View.GONE); btnEndRecording.setVisibility(View.GONE); btnDeleteHotspot.setVisibility(View.GONE); - btnUndo.setVisibility(View.GONE); - btnRedo.setVisibility(View.GONE); + //btnUndo.setVisibility(View.GONE); + //btnRedo.setVisibility(View.GONE); btnVideoRestart.setVisibility(View.GONE); btnVideoStepBack.setVisibility(View.GONE); btnVideoPlay.setVisibility(View.GONE); @@ -1694,10 +1715,10 @@ private void setUpAdminPanel(boolean hotspotCreated, boolean hotspotSelected, bo btnDeleteHotspot.setVisibility(((currentState == State.HotspotEdit) && hotspotSelected && !recording) ? View.VISIBLE : View.GONE); //btnUndo.setVisibility(View.VISIBLE); - btnUndo.setVisibility(((currentState == State.Drawing) || (currentState == State.Erasing)) && - (dvDrawing != null) && dvDrawing.canUndo() ? View.VISIBLE : View.GONE); - btnRedo.setVisibility(((currentState == State.Drawing) || (currentState == State.Erasing)) && - (dvDrawing != null) && dvDrawing.canRedo() ? View.VISIBLE : View.GONE); + //btnUndo.setVisibility(((currentState == State.Drawing) || (currentState == State.Erasing)) && + // (dvDrawing != null) && dvDrawing.canUndo() ? View.VISIBLE : View.GONE); + //btnRedo.setVisibility(((currentState == State.Drawing) || (currentState == State.Erasing)) && + // (dvDrawing != null) && dvDrawing.canRedo() ? View.VISIBLE : View.GONE); btnVideoRestart.setVisibility(showVideoButtons && videoPaused && pauseLocation > 0 ? View.VISIBLE : View.GONE); btnVideoStepBack.setVisibility(showVideoButtons && videoPaused && pauseLocation > 0 ? View.VISIBLE : View.GONE); btnVideoPlay.setVisibility(showVideoButtons && videoPaused && pauseLocation < 2 ? View.VISIBLE : View.GONE); @@ -1863,7 +1884,7 @@ else if(currentState != State.HotspotEdit) //Log.i("PlayTalk", "setDrawingOptions: State=[" + String.valueOf(State.getValue(currentState)) + "]"); invalidateOptionsMenu(); if(drawing || erasing){ - if(hActivities != null) + /*if(hActivities != null) hActivities.setVisibility(View.GONE); if(vActivities != null){ vActivities.setVisibility(View.GONE); @@ -1874,7 +1895,7 @@ else if(currentState != State.HotspotEdit) if(vPages != null){ vPages.setVisibility(View.GONE); Log.d("vPages", "1045 vPages Gone"); - } + }*/ GridLayout drawingOptions = (GridLayout)findViewById(R.id.DrawingOptions); if(drawingOptions != null) drawingOptions.setVisibility(View.VISIBLE); @@ -1888,7 +1909,7 @@ else if(currentState != State.HotspotEdit) GridLayout drawingOptions = (GridLayout)findViewById(R.id.DrawingOptions); if(drawingOptions != null) drawingOptions.setVisibility(View.GONE); - if(hActivities != null) + /*if(hActivities != null) hActivities.setVisibility(View.VISIBLE); if(vActivities != null){ vActivities.setVisibility(View.VISIBLE); @@ -1899,7 +1920,7 @@ else if(currentState != State.HotspotEdit) if(vPages != null){ vPages.setVisibility(View.VISIBLE); Log.d("vPages", "1070 vPages Visible"); - } + }*/ } //Log.i("PlayTalk", "Main.setDrawingOptions: exit, State=[" + String.valueOf(State.getValue(currentState)) + "]" + // ", dvDrawing.Enabled=" + Boolean.toString(dvDrawing.isEnabled() )+ diff --git a/app/src/main/res/layout-land/activity_main.xml b/app/src/main/res/layout-land/activity_main.xml index b98af28..8589102 100644 --- a/app/src/main/res/layout-land/activity_main.xml +++ b/app/src/main/res/layout-land/activity_main.xml @@ -10,280 +10,359 @@ android:background="@color/black" android:id="@+id/MainLayout" tools:context=".MainActivity" > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout-large-land/activity_main.xml b/app/src/main/res/layout-large-land/activity_main.xml deleted file mode 100644 index b98af28..0000000 --- a/app/src/main/res/layout-large-land/activity_main.xml +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/app/src/main/res/layout-large/activity_main.xml b/app/src/main/res/layout-large/activity_main.xml deleted file mode 100644 index 6000b86..0000000 --- a/app/src/main/res/layout-large/activity_main.xml +++ /dev/null @@ -1,299 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 6000b86..25b8222 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -12,288 +12,353 @@ android:id="@+id/MainLayout" tools:context="org.invotek.apps.easyvsd_shell.MainActivity"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + android:layout_height="match_parent"> - - - + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + android:layout_height="fill_parent" /> + android:layout_height="fill_parent" /> diff --git a/build.gradle b/build.gradle index c2eea8e..c33a638 100644 --- a/build.gradle +++ b/build.gradle @@ -5,7 +5,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:2.3.3' + classpath 'com.android.tools.build:gradle:3.0.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index cbbecb0..acc8e23 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Wed Sep 20 08:18:13 CDT 2017 +#Thu Nov 16 11:25:06 EST 2017 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip