Commit d70fb7b
committed
feat: support search in network locations via GIO
Searching (including type-to-search) previously did nothing when
browsing a network location without a gvfs-fuse path, such as shares
opened through the Networks page or a URI typed into the location bar,
because no SearchLocation could be derived for them.
Add SearchLocation::Network and a gvfs mounter backend that searches
recursively over the location URI with GIO enumerate_children, the
same approach scan_path already uses for listing gvfs mounts. This
works without gvfs-fuse, is faster than walking the fuse path since
entries arrive in batches without per-file stat round trips, and
returns to the network view when the search is cleared.
The network:/// browse tree is excluded since its entries are servers
that may not be mounted.
This change was developed with AI assistance. I have reviewed and
tested the changes and understand them in full.1 parent 089ad2b commit d70fb7b
6 files changed
Lines changed: 452 additions & 120 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1617 | 1617 | | |
1618 | 1618 | | |
1619 | 1619 | | |
1620 | | - | |
1621 | | - | |
1622 | | - | |
1623 | | - | |
1624 | | - | |
1625 | | - | |
1626 | | - | |
1627 | | - | |
| 1620 | + | |
| 1621 | + | |
| 1622 | + | |
| 1623 | + | |
| 1624 | + | |
| 1625 | + | |
| 1626 | + | |
| 1627 | + | |
| 1628 | + | |
| 1629 | + | |
| 1630 | + | |
| 1631 | + | |
| 1632 | + | |
| 1633 | + | |
| 1634 | + | |
| 1635 | + | |
| 1636 | + | |
| 1637 | + | |
| 1638 | + | |
| 1639 | + | |
| 1640 | + | |
| 1641 | + | |
| 1642 | + | |
| 1643 | + | |
| 1644 | + | |
| 1645 | + | |
| 1646 | + | |
1628 | 1647 | | |
1629 | 1648 | | |
1630 | 1649 | | |
| |||
1642 | 1661 | | |
1643 | 1662 | | |
1644 | 1663 | | |
| 1664 | + | |
| 1665 | + | |
| 1666 | + | |
| 1667 | + | |
1645 | 1668 | | |
1646 | 1669 | | |
1647 | 1670 | | |
| |||
4948 | 4971 | | |
4949 | 4972 | | |
4950 | 4973 | | |
4951 | | - | |
| 4974 | + | |
| 4975 | + | |
| 4976 | + | |
| 4977 | + | |
4952 | 4978 | | |
4953 | 4979 | | |
4954 | 4980 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
774 | 774 | | |
775 | 775 | | |
776 | 776 | | |
777 | | - | |
778 | | - | |
779 | | - | |
780 | | - | |
781 | | - | |
782 | | - | |
783 | | - | |
784 | | - | |
| 777 | + | |
| 778 | + | |
| 779 | + | |
| 780 | + | |
| 781 | + | |
| 782 | + | |
| 783 | + | |
| 784 | + | |
| 785 | + | |
| 786 | + | |
| 787 | + | |
| 788 | + | |
| 789 | + | |
| 790 | + | |
| 791 | + | |
| 792 | + | |
| 793 | + | |
| 794 | + | |
| 795 | + | |
| 796 | + | |
| 797 | + | |
| 798 | + | |
| 799 | + | |
| 800 | + | |
| 801 | + | |
| 802 | + | |
| 803 | + | |
785 | 804 | | |
786 | 805 | | |
787 | 806 | | |
| |||
799 | 818 | | |
800 | 819 | | |
801 | 820 | | |
| 821 | + | |
| 822 | + | |
| 823 | + | |
| 824 | + | |
802 | 825 | | |
803 | 826 | | |
804 | 827 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
396 | 396 | | |
397 | 397 | | |
398 | 398 | | |
399 | | - | |
| 399 | + | |
400 | 400 | | |
401 | 401 | | |
402 | 402 | | |
| |||
0 commit comments