equal
deleted
inserted
replaced
19 * You should have received a copy of the GNU General Public License |
19 * You should have received a copy of the GNU General Public License |
20 * along with AboutOss. If not, see <http://www.gnu.org/licenses/>. |
20 * along with AboutOss. If not, see <http://www.gnu.org/licenses/>. |
21 */ |
21 */ |
22 package com.geekorum.aboutoss.ui.common |
22 package com.geekorum.aboutoss.ui.common |
23 |
23 |
|
24 import androidx.compose.runtime.Composable |
|
25 import androidx.compose.runtime.remember |
24 import java.awt.Desktop |
26 import java.awt.Desktop |
25 import java.net.URI |
27 import java.net.URI |
26 import java.util.Locale |
28 import java.util.Locale |
27 |
29 |
28 class DesktopBrowserLauncher : BrowserLauncher { |
30 class DesktopBrowserLauncher : BrowserLauncher { |
36 } |
38 } |
37 null |
39 null |
38 } |
40 } |
39 |
41 |
40 private val openCommandLauncher = OpenCommandLauncher() |
42 private val openCommandLauncher = OpenCommandLauncher() |
41 |
|
42 override fun warmUp() { |
|
43 } |
|
44 |
43 |
45 override fun launchUrl(link: String) { |
44 override fun launchUrl(link: String) { |
46 try { |
45 try { |
47 desktopLauncher?.launchUrl(link) |
46 desktopLauncher?.launchUrl(link) |
48 return |
47 return |
61 } |
60 } |
62 |
61 |
63 override fun mayLaunchUrl(vararg uris: String) { |
62 override fun mayLaunchUrl(vararg uris: String) { |
64 } |
63 } |
65 |
64 |
66 override fun shutdown() { |
65 } |
67 } |
66 |
|
67 @Composable |
|
68 actual fun rememberBrowserLauncher(): BrowserLauncher { |
|
69 return remember { DesktopBrowserLauncher() } |
68 } |
70 } |
69 |
71 |
70 private interface Launcher { |
72 private interface Launcher { |
71 fun launchUrl(link: String) |
73 fun launchUrl(link: String) |
72 } |
74 } |