Check Vuetify Guide: Combobox API, there is one prop=type, which Sets input type (if you open the browser inspector, you will see how Vuetify constructs the combobox), and its default value is 'text'. That is why the softkey board auto-pops up when tap it.
One quick solution, set it to button. (But the potential risk is the user can't change the value manually anymore. Especially you'd like implement one searchable combobox)
Check below demo (or open the codepen in your mobile):
Edit: align input text to left by CSS Specificity (please look into the CSS part in below demo).
new Vue({
el: '#app',
data() {
return {
select: 'Programming',
items: [
'Programming',
'Design',
'Vue',
'Vuetify'
]
}
}
})
.v-menu input[type=button][role=combobox] {
text-align: left;
}
.v-select__slot > input[type=button][role=combobox] {
/*text-align: left; this one works also, you can open browser inspector, then build your own */
}
<link href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900|Material+Icons" rel="stylesheet" />
<link href="https://cdn.jsdelivr.net/npm/vuetify@1.1.14/dist/vuetify.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/babel-polyfill/dist/polyfill.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script src="https://cdn.jsdelivr.net/npm/vuetify@1.1.14/dist/vuetify.min.js"></script>
<div id="app">
<v-app id="inspire">
<v-container fluid>
<v-layout wrap>
<v-flex xs12>
<v-combobox v-model="select" :items="items" label="Select a favorite activity or create a new one" type="button"></v-combobox>
</v-flex>
<v-flex xs12>
<v-combobox v-model="select" :items="items" chips label="I use chips" type="button"></v-combobox>
</v-flex>
<v-flex xs12>
<v-combobox v-model="select" :items="items" chips label="I use a scoped slot" type="button">
<template slot="selection" slot-scope="data">
<v-chip
:selected="data.selected"
:disabled="data.disabled"
:key="JSON.stringify(data.item)"
class="v-chip--select-multi "
@input="data.parent.selectItem(data.item)"
type="button"
>
<v-avatar class="accent white--text">
{{ data.item.slice(0, 1).toUpperCase() }}
</v-avatar>
{{ data.item }}
</v-chip>
</template>
</v-combobox>
</v-flex>
<v-flex xs12>
<v-combobox v-model="select" chips label="I'm readonly" readonly></v-combobox>
</v-flex>
</v-layout>
</v-container>
</v-app>
</div>