Tizen.Uix.InputMethod
Tizen.Uix.InputMethodManager
Tizen.Uix.Stt
+Tizen.Uix.SttEngine
Tizen.Uix.Tts
+Tizen.Uix.TtsEngine
Tizen.Uix.VoiceControl
Tizen.WebView
Interop.Evas.evas_object_image_memfile_set(RealHandle, data, dataArr.Length, IntPtr.Zero, IntPtr.Zero);
}
}
+ memstream.Dispose();
}
/// <summary>
}
}
+ memstream.Dispose();
+
return await tcs.Task;
}
{
set
{
- if (value.IsDefault)
+ if (value.IsDefault && ClassName != null)
{
string part = ClassName.ToLower().Replace("elm_", "") + "/" + "bg";
EdjeObject.DeleteColorClass(part);
--- /dev/null
+using System;
+
+namespace Tizen.Applications.Exceptions
+{
+ /// <summary>
+ /// The class that represents the exception which will be thrown when the application to run is not found
+ /// </summary>
+ public class AppNotFoundException : InvalidOperationException
+ {
+ /// <summary>
+ /// Constructor
+ /// </summary>
+ /// <param name="message">The localized error message string</param>
+ public AppNotFoundException(string message) : base(message)
+ {
+ }
+ }
+}
--- /dev/null
+using System;
+
+namespace Tizen.Applications.Exceptions
+{
+ /// <summary>
+ /// The class that represents the exception which will be thrown when the request failed to launch the application
+ /// </summary>
+ public class LaunchFailedException : InvalidOperationException
+ {
+ /// <summary>
+ /// Constructor
+ /// </summary>
+ /// <param name="message">The localized error message string</param>
+ public LaunchFailedException(string message) : base(message)
+ {
+ }
+ }
+}
--- /dev/null
+using System;
+
+namespace Tizen.Applications.Exceptions
+{
+ /// <summary>
+ /// The class that represents the exception which will be thrown when the launch request is rejected
+ /// </summary>
+ public class LaunchRejectedException : InvalidOperationException
+ {
+ /// <summary>
+ /// Constructor
+ /// </summary>
+ /// <param name="message">The localized error message string</param>
+ public LaunchRejectedException(string message) : base(message)
+ {
+ }
+ }
+}
--- /dev/null
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Tizen.Applications.Exceptions
+{
+ /// <summary>
+ /// The class that represents the exception which will be thrown when the memory is insufficient
+ /// </summary>
+ public class OutOfMemoryException : InvalidOperationException
+ {
+ /// <summary>
+ /// Constructor
+ /// </summary>
+ /// <param name="message">The localized error message string</param>
+ public OutOfMemoryException(string message) : base(message)
+ {
+ }
+ }
+}
--- /dev/null
+using System;
+
+namespace Tizen.Applications.Exceptions
+{
+ /// <summary>
+ /// The class that represents the exception which will be thrown when the permission is denied
+ /// </summary>
+ public class PermissionDeniedException : InvalidOperationException
+ {
+ /// <summary>
+ /// Constructor
+ /// </summary>
+ /// <param name="message">The localized error message string</param>
+ public PermissionDeniedException(string message) : base(message)
+ {
+ }
+ }
+}
/// <param name="launchRequest">The AppControl.</param>
/// <param name="replyAfterLaunching">The callback function to be called when the reply is delivered.</param>
/// <exception cref="ArgumentException">Thrown when failed because of the argument is invalid.</exception>
- /// <exception cref="InvalidOperationException">Thrown when failed because of an invalid operation.</exception>
+ /// <exception cref="Exceptions.AppNotFoundException">Thrown when the application to run is not found.</exception>
+ /// <exception cref="Exceptions.LaunchFailedException">Thrown when the request failed to launch the application.</exception>
+ /// <exception cref="Exceptions.LaunchRejectedException">Thrown when the launch request is rejected.</exception>
+ /// <exception cref="Exceptions.OutOfMemoryException">Thrown when the memory is insufficient.</exception>
+ /// <exception cref="Exceptions.PermissionDeniedException">Thrown when the permission is denied.</exception>
/// <exception cref="TimeoutException">Thrown when failed because of timeout.</exception>
/// <privilege>http://tizen.org/privilege/appmanager.launch</privilege>
/// <example>
throw new ArgumentException("Invalid Arguments");
case Interop.AppControl.ErrorCode.TimedOut:
throw new TimeoutException("Timed out");
+ case Interop.AppControl.ErrorCode.OutOfMemory:
+ throw new Exceptions.OutOfMemoryException("Out-of-memory");
+ case Interop.AppControl.ErrorCode.AppNotFound:
+ throw new Exceptions.AppNotFoundException("App not found");
+ case Interop.AppControl.ErrorCode.LaunchRejected:
+ throw new Exceptions.LaunchRejectedException("Launch rejected");
+ case Interop.AppControl.ErrorCode.LaunchFailed:
+ throw new Exceptions.LaunchFailedException("Launch failed");
+ case Interop.AppControl.ErrorCode.PermissionDenied:
+ throw new Exceptions.PermissionDeniedException("Permission denied");
+
default:
- throw new InvalidOperationException("Error = " + err);
+ throw new Exceptions.LaunchRejectedException("Launch rejected");
}
}
}
*/
using System;
+using System.IO;
using Tizen.Internals.Errors;
namespace Tizen.Applications
public static string TryGetPath(Category category, string id)
{
string path;
- ErrorCode err = AppResourceManagerGet(category, id, out path);
+ ErrorCode err;
+ string res;
+
+ if (Application.Current != null)
+ {
+ res = Application.Current.DirectoryInfo.Resource + "res.xml";
+ }
+ else
+ {
+ res = Interop.AppCommon.AppGetResourcePath() + "res.xml";
+ }
+
+ if (!File.Exists(res))
+ return null;
+ err = AppResourceManagerGet(category, id, out path);
switch (err)
{
case ErrorCode.InvalidParameter:
Interop.MessagePort.CheckTrustedRemotePort(_appId, _portName, out _isRunning) :
Interop.MessagePort.CheckRemotePort(_appId, _portName, out _isRunning);
- if (ret != (int)MessagePortError.None)
+ if (ret == (int)MessagePortError.CertificateNotMatch)
+ {
+ /* Although Remote port is NotMatch, it is running */
+ _isRunning = true;
+ }
+ else if (ret != (int)MessagePortError.None)
{
MessagePortErrorFactory.ThrowException(ret);
}
/// <code>
/// Remote remotePort = new RemotePort("org.tizen.example", "SenderPort", true);
/// remotePort.RemotePortStateChanged += RemotePortStateChangedCallback;
- /// static void RemotePortStateChangedCallback(object sender, MessageReceivedEventArgs e)
+ /// static void RemotePortStateChangedCallback(object sender, RemotePortStateChangedEventArgs e)
/// {
/// switch (e.Status)
/// {
internal const string AppStatsEndTime = "EndTime";
internal const string AppStatsResultSize = "ResultSize";
internal const string AppStatsAppId = "AppId";
- internal const int DefaultResultSize = 5;
+ internal const int DefaultResultSize = 10;
internal string Uri;
return _frontResolutions ?? (_frontResolutions = LoadVideoResolutions(CameraDevice.Front));
}
- if (device == CameraDevice.Front)
+ if (device == CameraDevice.Rear)
{
return _rearResolutions ?? (_rearResolutions = LoadVideoResolutions(CameraDevice.Rear));
}
/// <exception cref="ArgumentException">
/// <paramref name="videoCodec"/> is not valid.\n
/// -or-\n
- /// <paramref name="fileFormat"/> is not valid.
+ /// <paramref name="fileFormat"/> is not valid.\n
+ /// -or-\n
+ /// <paramref name="camera"/> is being used by another object.
/// </exception>
/// <exception cref="ObjectDisposedException"><paramref name="camera"/> has been disposed of.</exception>
/// <exception cref="ArgumentNullException"><paramref name="camera"/> is null.</exception>
/// </summary>
public class ScreenMirroring : IDisposable, IDisplayable<ScreenMirroringErrorCode>
{
+ private const string Feature = "http://tizen.org/feature/network.wifi.direct.display";
private const int Port = 2022;
private IntPtr _handle;
}
}
+ private static bool IsSupported()
+ {
+ return System.Information.TryGetValue(Feature, out bool isSupported) ? isSupported : false;
+ }
+
/// <summary>
/// Initializes a new instance of the ScreenMirroring class.
/// </summary>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
public ScreenMirroring()
{
+ if (IsSupported() == false)
+ {
+ throw new PlatformNotSupportedException($"The feature({Feature}) is not supported on the current device");
+ }
+
Native.Create(out _handle).ThrowIfError("Failed to create ScreenMirroring.");
_state = new AtomicState();
byte[] tmpBuf = new byte[dataSize];
Marshal.Copy(thumbData, tmpBuf, 0, dataSize);
- tcs.SetResult(new ThumbnailExtractionResult(tmpBuf, thumbWidth, thumbHeight));
+ tcs.TrySetResult(new ThumbnailExtractionResult(tmpBuf, thumbWidth, thumbHeight));
}
catch (Exception e)
{
- tcs.SetException(new InvalidOperationException("[" + error + "] Failed to copy data.", e));
+ tcs.TrySetException(new InvalidOperationException("[" + error + "] Failed to copy data.", e));
}
finally
{
}
else
{
- tcs.SetException(error.ToException("Failed to extract."));
+ tcs.TrySetException(error.ToException("Failed to extract."));
}
};
}