diff options
Diffstat (limited to 'MediaBrowser.Server.Mac')
| -rw-r--r-- | MediaBrowser.Server.Mac/Emby.Server.Mac.csproj | 69 | ||||
| -rw-r--r-- | MediaBrowser.Server.Mac/Main.cs | 33 | ||||
| -rw-r--r-- | MediaBrowser.Server.Mac/Native/BaseMonoApp.cs | 6 | ||||
| -rw-r--r-- | MediaBrowser.Server.Mac/Native/NativeApp.cs | 22 |
4 files changed, 114 insertions, 16 deletions
diff --git a/MediaBrowser.Server.Mac/Emby.Server.Mac.csproj b/MediaBrowser.Server.Mac/Emby.Server.Mac.csproj index d1a24ab127..b0db9fb984 100644 --- a/MediaBrowser.Server.Mac/Emby.Server.Mac.csproj +++ b/MediaBrowser.Server.Mac/Emby.Server.Mac.csproj @@ -259,9 +259,6 @@ </BundleResource>
<BundleResource Include="Resources\appicon.icns" />
<BundleResource Include="Resources\MediaBrowser.Server.Mac\Images.xcassets\AppIcon.appiconset\Contents.json" />
- <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\.DS_Store">
- <Link>Resources\dashboard-ui\.DS_Store</Link>
- </BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\about.html">
<Link>Resources\dashboard-ui\about.html</Link>
</BundleResource>
@@ -655,9 +652,6 @@ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\wizarduser.html">
<Link>Resources\dashboard-ui\wizarduser.html</Link>
</BundleResource>
- <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\css\.DS_Store">
- <Link>Resources\dashboard-ui\css\.DS_Store</Link>
- </BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\css\card.css">
<Link>Resources\dashboard-ui\css\card.css</Link>
</BundleResource>
@@ -739,6 +733,9 @@ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\css\images\checkmarkgreen.png">
<Link>Resources\dashboard-ui\css\images\checkmarkgreen.png</Link>
</BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\css\images\empty.png">
+ <Link>Resources\dashboard-ui\css\images\empty.png</Link>
+ </BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\css\images\favicon.ico">
<Link>Resources\dashboard-ui\css\images\favicon.ico</Link>
</BundleResource>
@@ -751,6 +748,9 @@ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\css\images\logindefault.png">
<Link>Resources\dashboard-ui\css\images\logindefault.png</Link>
</BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\css\images\logo536.png">
+ <Link>Resources\dashboard-ui\css\images\logo536.png</Link>
+ </BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\css\images\mblogoicon.png">
<Link>Resources\dashboard-ui\css\images\mblogoicon.png</Link>
</BundleResource>
@@ -760,9 +760,6 @@ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\css\images\rotten.png">
<Link>Resources\dashboard-ui\css\images\rotten.png</Link>
</BundleResource>
- <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\css\images\server.png">
- <Link>Resources\dashboard-ui\css\images\server.png</Link>
- </BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\css\images\splash.jpg">
<Link>Resources\dashboard-ui\css\images\splash.jpg</Link>
</BundleResource>
@@ -949,9 +946,6 @@ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\css\images\icons\volumeup.png">
<Link>Resources\dashboard-ui\css\images\icons\volumeup.png</Link>
</BundleResource>
- <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\css\images\icons\wireless.png">
- <Link>Resources\dashboard-ui\css\images\icons\wireless.png</Link>
- </BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\css\images\items\detail\audio.png">
<Link>Resources\dashboard-ui\css\images\items\detail\audio.png</Link>
</BundleResource>
@@ -1303,6 +1297,9 @@ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\scripts\livetvchannels.js">
<Link>Resources\dashboard-ui\scripts\livetvchannels.js</Link>
</BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\scripts\livetvcomponents.js">
+ <Link>Resources\dashboard-ui\scripts\livetvcomponents.js</Link>
+ </BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\scripts\livetvguide.js">
<Link>Resources\dashboard-ui\scripts\livetvguide.js</Link>
</BundleResource>
@@ -1468,9 +1465,15 @@ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\scripts\pluginspage.js">
<Link>Resources\dashboard-ui\scripts\pluginspage.js</Link>
</BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\scripts\queryfilters.js">
+ <Link>Resources\dashboard-ui\scripts\queryfilters.js</Link>
+ </BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\scripts\ratingdialog.js">
<Link>Resources\dashboard-ui\scripts\ratingdialog.js</Link>
</BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\scripts\registrationservices.js">
+ <Link>Resources\dashboard-ui\scripts\registrationservices.js</Link>
+ </BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\scripts\remotecontrol.js">
<Link>Resources\dashboard-ui\scripts\remotecontrol.js</Link>
</BundleResource>
@@ -1588,12 +1591,27 @@ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\cast_sender.js">
<Link>Resources\dashboard-ui\thirdparty\cast_sender.js</Link>
</BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\fastclick.js">
+ <Link>Resources\dashboard-ui\thirdparty\fastclick.js</Link>
+ </BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\headroom.js">
+ <Link>Resources\dashboard-ui\thirdparty\headroom.js</Link>
+ </BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\jquery-2.1.1.min.js">
<Link>Resources\dashboard-ui\thirdparty\jquery-2.1.1.min.js</Link>
</BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\jquery.unveil-custom.js">
<Link>Resources\dashboard-ui\thirdparty\jquery.unveil-custom.js</Link>
</BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\masonry.pkgd.min.js">
+ <Link>Resources\dashboard-ui\thirdparty\masonry.pkgd.min.js</Link>
+ </BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\require.js">
+ <Link>Resources\dashboard-ui\thirdparty\require.js</Link>
+ </BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\requirecss.js">
+ <Link>Resources\dashboard-ui\thirdparty\requirecss.js</Link>
+ </BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\apiclient\ajax.js">
<Link>Resources\dashboard-ui\thirdparty\apiclient\ajax.js</Link>
</BundleResource>
@@ -1648,9 +1666,33 @@ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\apiclient\alt\events.js">
<Link>Resources\dashboard-ui\thirdparty\apiclient\alt\events.js</Link>
</BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\cordova\chromecast.js">
+ <Link>Resources\dashboard-ui\thirdparty\cordova\chromecast.js</Link>
+ </BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\cordova\connectsdk.js">
+ <Link>Resources\dashboard-ui\thirdparty\cordova\connectsdk.js</Link>
+ </BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\cordova\generaldevice.js">
+ <Link>Resources\dashboard-ui\thirdparty\cordova\generaldevice.js</Link>
+ </BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\cordova\imagestore.js">
+ <Link>Resources\dashboard-ui\thirdparty\cordova\imagestore.js</Link>
+ </BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\cordova\registrationservices.js">
+ <Link>Resources\dashboard-ui\thirdparty\cordova\registrationservices.js</Link>
+ </BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\cordova\remotecontrols.js">
+ <Link>Resources\dashboard-ui\thirdparty\cordova\remotecontrols.js</Link>
+ </BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\cordova\serverdiscovery.js">
+ <Link>Resources\dashboard-ui\thirdparty\cordova\serverdiscovery.js</Link>
+ </BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\fontawesome\css\font-awesome.css">
<Link>Resources\dashboard-ui\thirdparty\fontawesome\css\font-awesome.css</Link>
</BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\fontawesome\css\font-awesome.css.map">
+ <Link>Resources\dashboard-ui\thirdparty\fontawesome\css\font-awesome.css.map</Link>
+ </BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\fontawesome\css\font-awesome.min.css">
<Link>Resources\dashboard-ui\thirdparty\fontawesome\css\font-awesome.min.css</Link>
</BundleResource>
@@ -1669,6 +1711,9 @@ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\fontawesome\fonts\fontawesome-webfont.woff">
<Link>Resources\dashboard-ui\thirdparty\fontawesome\fonts\fontawesome-webfont.woff</Link>
</BundleResource>
+ <BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\fontawesome\fonts\fontawesome-webfont.woff2">
+ <Link>Resources\dashboard-ui\thirdparty\fontawesome\fonts\fontawesome-webfont.woff2</Link>
+ </BundleResource>
<BundleResource Include="..\MediaBrowser.WebDashboard\dashboard-ui\thirdparty\jquerymobile-1.4.5\jquery.mobile-1.4.5.min.css">
<Link>Resources\dashboard-ui\thirdparty\jquerymobile-1.4.5\jquery.mobile-1.4.5.min.css</Link>
</BundleResource>
diff --git a/MediaBrowser.Server.Mac/Main.cs b/MediaBrowser.Server.Mac/Main.cs index b4184f3b19..0802b97b93 100644 --- a/MediaBrowser.Server.Mac/Main.cs +++ b/MediaBrowser.Server.Mac/Main.cs @@ -146,6 +146,39 @@ namespace MediaBrowser.Server.Mac MenuBarIcon.Instance.Terminate (); } + public static void Restart() + { + _logger.Info("Disposing app host"); + AppHost.Dispose(); + + _logger.Info("Starting new instance"); + + var args = Environment.GetCommandLineArgs() + .Skip(1) + .Select(NormalizeCommandLineArgument); + + var commandLineArgsString = string.Join(" ", args.ToArray()); + var module = Environment.GetCommandLineArgs().First(); + + _logger.Info ("Executable: {0}", module); + _logger.Info ("Arguments: {0}", commandLineArgsString); + + Process.Start(module, commandLineArgsString); + + _logger.Info("AppController.Terminate"); + MenuBarIcon.Instance.Terminate(); + } + + private static string NormalizeCommandLineArgument(string arg) + { + if (arg.IndexOf(" ", StringComparison.OrdinalIgnoreCase) == -1) + { + return arg; + } + + return "\"" + arg + "\""; + } + /// <summary> /// Handles the UnhandledException event of the CurrentDomain control. /// </summary> diff --git a/MediaBrowser.Server.Mac/Native/BaseMonoApp.cs b/MediaBrowser.Server.Mac/Native/BaseMonoApp.cs index 9821f49ddd..57610dfc2c 100644 --- a/MediaBrowser.Server.Mac/Native/BaseMonoApp.cs +++ b/MediaBrowser.Server.Mac/Native/BaseMonoApp.cs @@ -19,16 +19,16 @@ namespace MediaBrowser.Server.Mac /// <summary> /// Restarts this instance. /// </summary> - public void Restart() + public virtual void Restart() { - + throw new NotImplementedException(); } /// <summary> /// Determines whether this instance [can self restart]. /// </summary> /// <returns><c>true</c> if this instance [can self restart]; otherwise, <c>false</c>.</returns> - public bool CanSelfRestart + public virtual bool CanSelfRestart { get { diff --git a/MediaBrowser.Server.Mac/Native/NativeApp.cs b/MediaBrowser.Server.Mac/Native/NativeApp.cs index f7c2dd4c95..4515be0517 100644 --- a/MediaBrowser.Server.Mac/Native/NativeApp.cs +++ b/MediaBrowser.Server.Mac/Native/NativeApp.cs @@ -13,7 +13,27 @@ namespace MediaBrowser.Server.Mac public override void Shutdown() { MainClass.Shutdown(); - } + } + + /// <summary> + /// Determines whether this instance [can self restart]. + /// </summary> + /// <value><c>true</c> if this instance can self restart; otherwise, <c>false</c>.</value> + public override bool CanSelfRestart + { + get + { + return true; + } + } + + /// <summary> + /// Restarts this instance. + /// </summary> + public override void Restart() + { + MainClass.Restart(); + } } } |
