チャットリンクの挙動を改善
This commit is contained in:
		
							parent
							
								
									1852d1cc6f
								
							
						
					
					
						commit
						582768a5e4
					
				
					 3 changed files with 20 additions and 24 deletions
				
			
		|  | @ -11,6 +11,7 @@ import * as os from '@/os'; | |||
| import copyToClipboard from '@/scripts/copy-to-clipboard'; | ||||
| import { router } from '@/router'; | ||||
| import { deckmode, url } from '@/config'; | ||||
| import { popout } from '@/scripts/popout'; | ||||
| 
 | ||||
| export default defineComponent({ | ||||
| 	inject: { | ||||
|  | @ -87,11 +88,23 @@ export default defineComponent({ | |||
| 			}], e); | ||||
| 		}, | ||||
| 
 | ||||
| 		window() { | ||||
| 			os.pageWindow(this.to); | ||||
| 		}, | ||||
| 
 | ||||
| 		popout() { | ||||
| 			popout(this.to); | ||||
| 		}, | ||||
| 
 | ||||
| 		nav() { | ||||
| 			if (this.to.startsWith('/my/messaging')) { | ||||
| 				if (this.$store.state.device.chatOpenBehavior === 'window') return this.window(); | ||||
| 				if (this.$store.state.device.chatOpenBehavior === 'popout') return this.popout(); | ||||
| 			} | ||||
| 
 | ||||
| 			if (this.behavior) { | ||||
| 				if (this.behavior === 'window') { | ||||
| 					os.pageWindow(this.to); | ||||
| 					return; | ||||
| 					return this.window(); | ||||
| 				} | ||||
| 			} | ||||
| 
 | ||||
|  | @ -99,12 +112,10 @@ export default defineComponent({ | |||
| 				this.navHook(this.to); | ||||
| 			} else { | ||||
| 				if (this.$store.state.device.defaultSideView && this.sideViewHook && this.to !== '/') { | ||||
| 					this.sideViewHook(this.to); | ||||
| 					return; | ||||
| 					return this.sideViewHook(this.to); | ||||
| 				} | ||||
| 				if (this.$store.state.device.deckNavWindow && deckmode && this.to !== '/') { | ||||
| 					os.pageWindow(this.to); | ||||
| 					return; | ||||
| 					return this.window(); | ||||
| 				} | ||||
| 
 | ||||
| 				this.$router.push(this.to); | ||||
|  |  | |||
|  | @ -131,16 +131,10 @@ export function getUserMenu(user) { | |||
| 			os.post({ specified: user }); | ||||
| 		} | ||||
| 	}, store.state.i.id != user.id ? { | ||||
| 		type: 'link', | ||||
| 		icon: faComments, | ||||
| 		text: i18n.global.t('startMessaging'), | ||||
| 		action: () => { | ||||
| 			const acct = getAcct(user); | ||||
| 			switch (store.state.device.chatOpenBehavior) { | ||||
| 				case 'window': { os.pageWindow('/my/messaging/' + acct); break; } | ||||
| 				case 'popout': { popout('/my/messaging'); break; } | ||||
| 				default: { router.push('/my/messaging'); break; } | ||||
| 			} | ||||
| 		} | ||||
| 		to: '/my/messaging/' + getAcct(user), | ||||
| 	} : undefined, null, { | ||||
| 		icon: faListUl, | ||||
| 		text: i18n.global.t('addToList'), | ||||
|  |  | |||
|  | @ -4,9 +4,6 @@ import { computed } from 'vue'; | |||
| import { store } from '@/store'; | ||||
| import { deckmode } from '@/config'; | ||||
| import { search } from '@/scripts/search'; | ||||
| import { popout } from '@/scripts/popout'; | ||||
| import { router } from '@/router'; | ||||
| import * as os from '@/os'; | ||||
| 
 | ||||
| export const sidebarDef = { | ||||
| 	notifications: { | ||||
|  | @ -21,13 +18,7 @@ export const sidebarDef = { | |||
| 		icon: faComments, | ||||
| 		show: computed(() => store.getters.isSignedIn), | ||||
| 		indicated: computed(() => store.getters.isSignedIn && store.state.i.hasUnreadMessagingMessage), | ||||
| 		action: () => { | ||||
| 			switch (store.state.device.chatOpenBehavior) { | ||||
| 				case 'window': { os.pageWindow('/my/messaging'); break; } | ||||
| 				case 'popout': { popout('/my/messaging'); break; } | ||||
| 				default: { router.push('/my/messaging'); break; } | ||||
| 			} | ||||
| 		} | ||||
| 		to: '/my/messaging', | ||||
| 	}, | ||||
| 	drive: { | ||||
| 		title: 'drive', | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue