summaryrefslogtreecommitdiff
path: root/src/web
diff options
context:
space:
mode:
authorこぴなたみぽ <syuilotan@yahoo.co.jp>2018-02-16 05:24:23 +0900
committerこぴなたみぽ <syuilotan@yahoo.co.jp>2018-02-16 05:24:23 +0900
commit5f5d7b893578224bb4a9077c9bb474d47f6768d1 (patch)
treeb60ff74963d313ae596cac24cc809355176d50ea /src/web
parentwip (diff)
downloadmisskey-5f5d7b893578224bb4a9077c9bb474d47f6768d1.tar.gz
misskey-5f5d7b893578224bb4a9077c9bb474d47f6768d1.tar.bz2
misskey-5f5d7b893578224bb4a9077c9bb474d47f6768d1.zip
wip
Diffstat (limited to 'src/web')
-rw-r--r--src/web/app/desktop/-tags/pages/home.tag54
-rw-r--r--src/web/app/desktop/views/pages/home.vue41
2 files changed, 41 insertions, 54 deletions
diff --git a/src/web/app/desktop/-tags/pages/home.tag b/src/web/app/desktop/-tags/pages/home.tag
deleted file mode 100644
index 83ceb38463..0000000000
--- a/src/web/app/desktop/-tags/pages/home.tag
+++ /dev/null
@@ -1,54 +0,0 @@
-<mk-home-page>
- <mk-ui ref="ui" page={ page }>
- <mk-home ref="home" mode={ parent.opts.mode }/>
- </mk-ui>
- <style lang="stylus" scoped>
- :scope
- display block
- </style>
- <script lang="typescript">
- import Progress from '../../../common/scripts/loading';
- import getPostSummary from '../../../../../common/get-post-summary.ts';
-
- this.mixin('i');
- this.mixin('api');
-
- this.mixin('stream');
- this.connection = this.stream.getConnection();
- this.connectionId = this.stream.use();
-
- this.unreadCount = 0;
- this.page = this.opts.mode || 'timeline';
-
- this.on('mount', () => {
- this.$refs.ui.refs.home.on('loaded', () => {
- Progress.done();
- });
- document.title = 'Misskey';
- Progress.start();
-
- this.connection.on('post', this.onStreamPost);
- document.addEventListener('visibilitychange', this.windowOnVisibilitychange, false);
- });
-
- this.on('unmount', () => {
- this.connection.off('post', this.onStreamPost);
- this.stream.dispose(this.connectionId);
- document.removeEventListener('visibilitychange', this.windowOnVisibilitychange);
- });
-
- this.onStreamPost = post => {
- if (document.hidden && post.user_id != this.$root.$data.os.i.id) {
- this.unreadCount++;
- document.title = `(${this.unreadCount}) ${getPostSummary(post)}`;
- }
- };
-
- this.windowOnVisibilitychange = () => {
- if (!document.hidden) {
- this.unreadCount = 0;
- document.title = 'Misskey';
- }
- };
- </script>
-</mk-home-page>
diff --git a/src/web/app/desktop/views/pages/home.vue b/src/web/app/desktop/views/pages/home.vue
index 2dd7f47a46..7dc234ac03 100644
--- a/src/web/app/desktop/views/pages/home.vue
+++ b/src/web/app/desktop/views/pages/home.vue
@@ -6,6 +6,9 @@
<script lang="ts">
import Vue from 'vue';
+import Progress from '../../../common/scripts/loading';
+import getPostSummary from '../../../../../common/get-post-summary';
+
export default Vue.extend({
props: {
mode: {
@@ -13,5 +16,43 @@ export default Vue.extend({
default: 'timeline'
}
},
+ data() {
+ return {
+ connection: null,
+ connectionId: null,
+ unreadCount: 0
+ };
+ },
+ mounted() {
+ document.title = 'Misskey';
+
+ this.connection = this.$root.$data.os.stream.getConnection();
+ this.connectionId = this.$root.$data.os.stream.use();
+
+ this.connection.on('post', this.onStreamPost);
+ document.addEventListener('visibilitychange', this.onVisibilitychange, false);
+
+ Progress.start();
+ },
+ beforeDestroy() {
+ this.connection.off('post', this.onStreamPost);
+ this.$root.$data.os.stream.dispose(this.connectionId);
+ document.removeEventListener('visibilitychange', this.onVisibilitychange);
+ },
+ methods: {
+ onStreamPost(post) {
+ if (document.hidden && post.user_id != this.$root.$data.os.i.id) {
+ this.unreadCount++;
+ document.title = `(${this.unreadCount}) ${getPostSummary(post)}`;
+ }
+ },
+
+ onVisibilitychange() {
+ if (!document.hidden) {
+ this.unreadCount = 0;
+ document.title = 'Misskey';
+ }
+ }
+ }
});
</script>