summaryrefslogtreecommitdiff
path: root/src/web/app/common/define-widget.ts
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2018-02-24 02:46:09 +0900
committersyuilo <syuilotan@yahoo.co.jp>2018-02-24 02:46:09 +0900
commitdf8a2aea358ca3bcec60c878a6399df46390e3e1 (patch)
tree2e187e34a53d9372a797fb9d5882069545f1f03f /src/web/app/common/define-widget.ts
parentv3840 (diff)
downloadmisskey-df8a2aea358ca3bcec60c878a6399df46390e3e1.tar.gz
misskey-df8a2aea358ca3bcec60c878a6399df46390e3e1.tar.bz2
misskey-df8a2aea358ca3bcec60c878a6399df46390e3e1.zip
Implement #1098
Diffstat (limited to 'src/web/app/common/define-widget.ts')
-rw-r--r--src/web/app/common/define-widget.ts26
1 files changed, 20 insertions, 6 deletions
diff --git a/src/web/app/common/define-widget.ts b/src/web/app/common/define-widget.ts
index fd13a3395b..60cd1969c0 100644
--- a/src/web/app/common/define-widget.ts
+++ b/src/web/app/common/define-widget.ts
@@ -8,6 +8,10 @@ export default function<T extends object>(data: {
props: {
widget: {
type: Object
+ },
+ isMobile: {
+ type: Boolean,
+ default: false
}
},
computed: {
@@ -21,6 +25,7 @@ export default function<T extends object>(data: {
};
},
created() {
+ if (this.widget.data == null) this.widget.data = {};
if (this.props) {
Object.keys(this.props).forEach(prop => {
if (this.widget.data.hasOwnProperty(prop)) {
@@ -30,12 +35,21 @@ export default function<T extends object>(data: {
}
this.$watch('props', newProps => {
- (this as any).api('i/update_home', {
- id: this.id,
- data: newProps
- }).then(() => {
- (this as any).os.i.client_settings.home.find(w => w.id == this.id).data = newProps;
- });
+ if (this.isMobile) {
+ (this as any).api('i/update_mobile_home', {
+ id: this.id,
+ data: newProps
+ }).then(() => {
+ (this as any).os.i.client_settings.mobile_home.find(w => w.id == this.id).data = newProps;
+ });
+ } else {
+ (this as any).api('i/update_home', {
+ id: this.id,
+ data: newProps
+ }).then(() => {
+ (this as any).os.i.client_settings.home.find(w => w.id == this.id).data = newProps;
+ });
+ }
}, {
deep: true
});