[SailfishDevel] SearchField and focus
Benoît HERVIER
khertan at khertan.net
Fri Aug 9 10:11:35 UTC 2013
Hello,
Indeed.
Thanks a lot for the explanation.
Regards,
Le 2013-08-09 03:12, Bea Lam a écrit :
> Hello,
>
> The problem is that when the model changes, the last added delegate
> steals the focus, as ListView has a focus scope.
>
> If you set "currentIndex: -1" on the ListView, then this behaviour
> will be disabled. (This is what's done in the SearchPage.qml example
> in silicacomponentgallery.)
>
> cheers,
> Bea
>
>
> ________________________________________
> From: devel-bounces at lists.sailfishos.org
> [devel-bounces at lists.sailfishos.org] on behalf of Martin Grimme
> [martin.grimme at gmail.com]
> Sent: 09 August 2013 02:06
> To: Lucien XU
> Cc: devel at lists.sailfishos.org
> Subject: Re: [SailfishDevel] SearchField and focus
>
> Hi,
>
> I had exactly the same problem. My solution was to define the
> SearchField _outside_ the list view, like this:
>
> SilicaListView {
> id: listview
>
> ...
>
> header: Item {
> // This is just a placeholder for the header box. To avoid the
> // list view resetting the input box everytime the model
> resets,
> // the search entry is defined outside the list view.
> height: headerBox.implicitHeight
> }
>
> }
>
> ...
>
> Column {
> id: headerBox
>
> property int neutralPos: 0
>
> y: 0 - listview.contentY + neutralPos
> width: parent.width
>
> Component.onCompleted: {
> neutralPos = listview.contentY;
> }
>
> SearchField {
> ...
> }
> }
>
>
> That way, the SearchField floats on top of the list at the place
> reserved by the placeholder Item.
>
>
> Martin
>
>
> 2013/8/8, Lucien XU <sfietkonstantin at free.fr>:
>> Le jeudi 8 août 2013 17:10:26 Benoît HERVIER a écrit :
>>> Hi,
>>>
>>> I'm trying to use SearchField to have a .... suspense ... a search
>>> field for my list view.
>>> So i try to filter in realtime ... and i notice that SearchField
>>> lose
>>> focus
>>>
>>> Basically, i do a reset on the ListModel and append data
>>>
>>> This could come from the use i made from SearchField, so here a
>>> snippet
>>> of the code :
>>>
>>> SilicaListView {
>>> id: notesView
>>> model: notesModel
>>> anchors.fill: parent
>>> header: Column {
>>> width: parent.width
>>> PageHeader {
>>> title: "ownNotes"
>>> }
>>> SearchField {
>>> id: searchField
>>> placeholderText: "Search"
>>> width: parent.width
>>> onTextChanged: {
>>> searchText = searchField.text;
>>> notesModel.applyFilter(searchText)
>>> }
>>>
>>> }
>>> }
>>> section {
>>> property: 'category'
>>> delegate: SectionHeader {
>>> text: section
>>> }
>>> }
>>>
>>> Any advices ?
>>
>> I have the same issue. The searchfield got unfocused each time data
>> is added
>>
>> in a list view. That's not conveinent for an autocomplete field ...
>>
>> No advices though, I'm trying to see what's wrong.
>> _______________________________________________
>> SailfishOS.org Devel mailing list
>>
> _______________________________________________
> SailfishOS.org Devel mailing list
> _______________________________________________
> SailfishOS.org Devel mailing list
--
Benoît HERVIER - http://khertan.net/
More information about the Devel
mailing list