-
+
+
-
-
GitHub
-
Check out my projects and contributions
-
@SticksDev
+
+
GitHub
+
Check out my projects and contributions
+
@SticksDev
diff --git a/app/pages/desktop.vue b/app/pages/desktop.vue
index c849ce6..48c0d25 100644
--- a/app/pages/desktop.vue
+++ b/app/pages/desktop.vue
@@ -172,7 +172,27 @@
@activate="activeWindow = 'blog'"
@minimize="minimizeWindow('blog')"
>
-
+
+
+
+
+
+
@@ -303,6 +323,13 @@
:isActive="activeWindow === 'blog' && !minimizedWindows.blog"
@click="toggleMinimize('blog')"
/>
+
@@ -323,7 +350,9 @@ import Projects from '~/components/Projects.vue'
import Experience from '~/components/Experience.vue'
import Contact from '~/components/Contact.vue'
import Blog from '~/components/Blog.vue'
+import BlogArticle from '~/components/BlogArticle.vue'
import AboutShrimpOS from '~/components/AboutShrimpOS.vue'
+import type { BlogCollectionItem } from '@nuxt/content'
const windows = reactive({
about: false,
@@ -331,6 +360,7 @@ const windows = reactive({
experience: false,
contact: false,
blog: false,
+ article: false,
})
const minimizedWindows = reactive({
@@ -339,10 +369,13 @@ const minimizedWindows = reactive({
experience: false,
contact: false,
blog: false,
+ article: false,
})
const activeWindow = ref
(null)
const selectedIcon = ref(null)
+const openArticleTitle = ref(null)
+const openArticleContent = ref(null)
const isLoading = ref(false)
const currentTime = ref('')
const isDesktopLoading = ref(true)
@@ -425,6 +458,23 @@ const toggleMinimize = (windowName: keyof typeof windows) => {
}
}
+const handleArticleOpened = (title: string, content: BlogCollectionItem) => {
+ openArticleTitle.value = title
+ openArticleContent.value = content
+ windows.article = true
+ activeWindow.value = 'article'
+}
+
+const handleArticleClosed = () => {
+ openArticleTitle.value = null
+ openArticleContent.value = null
+ windows.article = false
+ minimizedWindows.article = false
+ if (activeWindow.value === 'article') {
+ activeWindow.value = null
+ }
+}
+
const startShutdown = async () => {
showStartMenu.value = false
isShuttingDown.value = true