diff --git a/ApplicationView/ApplicationController.cs b/ApplicationView/ApplicationController.cs index 7cf17f69e..d32573afd 100644 --- a/ApplicationView/ApplicationController.cs +++ b/ApplicationView/ApplicationController.cs @@ -737,7 +737,12 @@ namespace MatterHackers.MatterControl // Accessing any property on ProfileManager will run the static constructor and spin up the ProfileManager instance bool na = ProfileManager.Instance.IsGuestProfile; + // TODO: Short-term workaround to force DesktopView on Android +#if __ANDROID__ + if (false) +#else if (UserSettings.Instance.IsTouchScreen) +#endif { // and make sure we have the check for print recovery wired up needed for lazy tabs. var temp2 = PrintHistoryData.Instance; diff --git a/Library/Providers/FileSystem/FileSystemContainer.cs b/Library/Providers/FileSystem/FileSystemContainer.cs index d59f116fa..8281f6445 100644 --- a/Library/Providers/FileSystem/FileSystemContainer.cs +++ b/Library/Providers/FileSystem/FileSystemContainer.cs @@ -59,7 +59,7 @@ namespace MatterHackers.MatterControl.Library this.ChildContainers = new List(); this.Items = new List(); - +#if !__ANDROID__ if (OsInformation.OperatingSystem == OSType.Windows) { directoryWatcher = new FileSystemWatcher(path); @@ -77,7 +77,7 @@ namespace MatterHackers.MatterControl.Library // Begin watching. directoryWatcher.EnableRaisingEvents = true; } - +#endif GetFilesAndCollectionsInCurrentDirectory(); } diff --git a/PartPreviewWindow/View3D/UndoCommands/CopyUndoCommand.cs b/PartPreviewWindow/View3D/UndoCommands/CopyUndoCommand.cs index 6ac9d87a3..88d767fef 100644 --- a/PartPreviewWindow/View3D/UndoCommands/CopyUndoCommand.cs +++ b/PartPreviewWindow/View3D/UndoCommands/CopyUndoCommand.cs @@ -2,6 +2,7 @@ using MatterHackers.PolygonMesh; using MatterHackers.VectorMath; using System.Linq; +using MatterHackers.DataConverters3D; namespace MatterHackers.MatterControl.PartPreviewWindow { diff --git a/PartPreviewWindow/View3D/View3DCreateSelectionData.cs b/PartPreviewWindow/View3D/View3DCreateSelectionData.cs deleted file mode 100644 index e8f27e743..000000000 --- a/PartPreviewWindow/View3D/View3DCreateSelectionData.cs +++ /dev/null @@ -1,139 +0,0 @@ -/* -Copyright (c) 2014, Lars Brubaker -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR -ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -The views and conclusions contained in the software and documentation are those -of the authors and should not be interpreted as representing official policies, -either expressed or implied, of the FreeBSD Project. -*/ - -using MatterHackers.Agg.UI; -using MatterHackers.Localizations; -using MatterHackers.PolygonMesh; -using System.ComponentModel; -using System.Globalization; -using System.Threading; -using System.Threading.Tasks; -using System; - -namespace MatterHackers.MatterControl.PartPreviewWindow -{ - public partial class View3DWidget - { - private string PartsNotPrintableMessage = "Parts are not on the bed or outside the print area.\n\nWould you like to center them on the bed?".Localize(); - private string PartsNotPrintableTitle = "Parts not in print area".Localize(); - - private void CreateSelectionData() - { - processingProgressControl.ProcessType = "Preparing Meshes".Localize() + ":"; - - Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; - - PushMeshGroupDataToAsynchLists(TraceInfoOpperation.DONT_COPY); - - asyncPlatingDatas.Clear(); - double ratioPerMeshGroup = 1.0 / asyncMeshGroups.Count; - double currentRatioDone = 0; - for (int i = 0; i < asyncMeshGroups.Count; i++) - { - asyncPlatingDatas.Add(new PlatingMeshGroupData()); - - // create the selection info - PlatingHelper.CreateITraceableForMeshGroup(asyncPlatingDatas, asyncMeshGroups, i, (double progress0To1, string processingState, out bool continueProcessing) => - { - ReportProgressChanged(progress0To1, processingState, out continueProcessing); - }); - - currentRatioDone += ratioPerMeshGroup; - } - - bool continueProcessing2; - ReportProgressChanged(1, "Creating GL Data", out continueProcessing2); - meshViewerWidget.CreateGlDataForMeshes(asyncMeshGroups); - } - - private async void EnterEditAndCreateSelectionData() - { - if (enterEditButtonsContainer.Visible == true) - { - enterEditButtonsContainer.Visible = false; - } - - viewControls3D.ActiveButton = ViewControls3DButtons.PartSelect; - if (MeshGroups.Count > 0) - { - processingProgressControl.Visible = true; - LockEditControls(); - viewIsInEditModePreLock = true; - - await Task.Run((System.Action)CreateSelectionData); - - if (HasBeenClosed) - { - return; - } - // remove the original mesh and replace it with these new meshes - PullMeshGroupDataFromAsynchLists(); - - SelectedMeshGroupIndex = 0; - buttonRightPanel.Visible = true; - UnlockEditControls(); - viewControls3D.ActiveButton = ViewControls3DButtons.PartSelect; - - Invalidate(); - - if (DoAddFileAfterCreatingEditData) - { - FileDialog.OpenFileDialog( - new OpenFileDialogParams(ApplicationSettings.OpenDesignFileParams, multiSelect: true), - (openParams) => - { - LoadAndAddPartsToPlate(openParams.FileNames); - }); - DoAddFileAfterCreatingEditData = false; - } - else if (pendingPartsToLoad.Count > 0) - { - LoadAndAddPartsToPlate(pendingPartsToLoad.ToArray()); - pendingPartsToLoad.Clear(); - } - else - { - if (!PartsAreInPrintVolume()) - { - UiThread.RunOnIdle(() => - { - StyledMessageBox.ShowMessageBox((doCentering) => - { - if (doCentering) - { - AutoArrangePartsInBackground(); - } - }, PartsNotPrintableMessage, PartsNotPrintableTitle, StyledMessageBox.MessageType.YES_NO, "Center on Bed".Localize(), "Cancel".Localize()); - }); - } - } - } - } - } -} \ No newline at end of file diff --git a/PartPreviewWindow/View3D/View3DWidget.cs b/PartPreviewWindow/View3D/View3DWidget.cs index d66a20225..6166920c9 100644 --- a/PartPreviewWindow/View3D/View3DWidget.cs +++ b/PartPreviewWindow/View3D/View3DWidget.cs @@ -179,9 +179,6 @@ namespace MatterHackers.MatterControl.PartPreviewWindow public UndoBuffer UndoBuffer { get; private set; } = new UndoBuffer(); public readonly int EditButtonHeight = 44; - private static string PartsNotPrintableMessage = "Parts are not on the bed or outside the print area.\n\nWould you like to center them on the bed?".Localize(); - private static string PartsNotPrintableTitle = "Parts not in print area".Localize(); - private bool editorThatRequestedSave = false; private ExportPrintItemWindow exportingWindow = null; private ObservableCollection extruderButtons = new ObservableCollection(); diff --git a/SlicerConfiguration/SliceSettingsWidget.cs b/SlicerConfiguration/SliceSettingsWidget.cs index 667a0bcd5..0af5bf153 100644 --- a/SlicerConfiguration/SliceSettingsWidget.cs +++ b/SlicerConfiguration/SliceSettingsWidget.cs @@ -1280,9 +1280,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration case SliceSettingData.DataEditTypes.COM_PORT: { -#if __ANDROID__ - addControl = false; -#endif + // TODO: Conditionally opt out on Android EventHandler localUnregisterEvents = null; diff --git a/Submodules/agg-sharp b/Submodules/agg-sharp index ea2da9ad6..9fed1dfbc 160000 --- a/Submodules/agg-sharp +++ b/Submodules/agg-sharp @@ -1 +1 @@ -Subproject commit ea2da9ad610b757d64499686f617c5d1bb1555da +Subproject commit 9fed1dfbc62ed687a752c665a34e887fc9b2e7a2 diff --git a/Utilities/FieldValidation.cs b/Utilities/FieldValidation.cs index 243dd3156..86cc91e47 100644 --- a/Utilities/FieldValidation.cs +++ b/Utilities/FieldValidation.cs @@ -122,7 +122,7 @@ namespace MatterHackers.MatterControl.FieldValidation { public delegate ValidationStatus ValidationHandler(string valueToValidate); - private MHTextEditWidget FieldEditWidget { get; set; } + public MHTextEditWidget FieldEditWidget { get; set; } public TextWidget FieldErrorMessageWidget { get; set; }