mirror of
https://github.com/Lissy93/dashy.git
synced 2025-12-06 00:26:20 +01:00
Add opening method option for custom search widget.
This commit is contained in:
parent
667feb4d10
commit
1b77917335
1 changed files with 22 additions and 3 deletions
|
|
@ -7,7 +7,7 @@
|
|||
<div class="buttons">
|
||||
<button
|
||||
v-for="(engine, key) in engines" :key="key"
|
||||
v-on:click="search(engine)">
|
||||
v-on:click="search(engine, openingMethod)">
|
||||
{{ engine.title }}
|
||||
</button>
|
||||
</div>
|
||||
|
|
@ -15,7 +15,9 @@
|
|||
</template>
|
||||
|
||||
<script>
|
||||
import router from '@/router';
|
||||
import WidgetMixin from '@/mixins/WidgetMixin';
|
||||
import ErrorHandler from '@/utils/ErrorHandler';
|
||||
|
||||
export default {
|
||||
mixins: [WidgetMixin],
|
||||
|
|
@ -35,11 +37,28 @@ export default {
|
|||
defaultEngine() {
|
||||
return this.engines[0];
|
||||
},
|
||||
openingMethod() {
|
||||
return this.options.openingMethod || '';
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
search(engine) {
|
||||
search(engine, openingMethod) {
|
||||
if (engine !== undefined && this.query !== '') {
|
||||
window.open(engine.url + this.query, '_blank');
|
||||
const url = engine.url + this.query;
|
||||
switch (openingMethod) {
|
||||
case 'newtab':
|
||||
window.open(url, '_blank');
|
||||
break;
|
||||
case 'sametab':
|
||||
window.open(url, '_self');
|
||||
break;
|
||||
case 'workspace':
|
||||
router.push({ name: 'workspace', query: { url } });
|
||||
break;
|
||||
default:
|
||||
ErrorHandler(`Unknown opening method: ${openingMethod}`);
|
||||
window.open(url, '_blank');
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
|
|
|
|||
Loading…
Reference in a new issue