Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Concept Listbox use for blueman device list(s) #2552

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

infirit
Copy link
Contributor

@infirit infirit commented Dec 11, 2024

This is a rough, mostly working, proof of concept to replace the TreeView in blueman-sendto we currently have with a much simpler and flexible Gtk.ListBox. Before I go further I'd like some feedback on the overall design of it. I do want to move the bluez.Manager and bluez.AnyDevice signal handling further up into apps/blueman-sendto as we already have them there anyway.

I do want to make the Gtk.ListBox and Gtk.ListBoxRow only be responsible for presenting the data. Not have it handle state on adapters/devices internally, this will be done through methods. Using properties for the row in blueman-manager may not be ideal so maybe I should use some sort of properties_update method and pass in all the changes in one go.

I like to treat this as a blueprint for when I start working on the Gtk.ListBox for blueman-manager so we can finally implement some of the designs done by users some time ago.

ps: I'm sure mypy will be unhappy with me but it's just a proof of concept for now.

@cschramm
Copy link
Member

I did not review this in detail, but it makes a lot of sense to me 👌

@infirit infirit force-pushed the sendtodevicelistbox branch from b669ef1 to a09945d Compare December 27, 2024 15:38
@infirit
Copy link
Contributor Author

infirit commented Dec 27, 2024

Decided to remove the trusted and paired icons from the list as afaics they really serve no purpose when sending files over bluetooth. I added a new icon to indicate if the device advertises obex object push. Also added a togglebutton but not sure if this is useful (not happy with how it looks regardless).

image

@infirit infirit force-pushed the sendtodevicelistbox branch 3 times, most recently from bf3d614 to d483437 Compare December 29, 2024 00:07
This drops the refcount and python destroys the DBusObjectManager
@infirit infirit force-pushed the sendtodevicelistbox branch from d483437 to 6db6849 Compare December 31, 2024 00:05
@infirit infirit force-pushed the sendtodevicelistbox branch from 6db6849 to 668042e Compare December 31, 2024 00:58
@infirit
Copy link
Contributor Author

infirit commented Dec 31, 2024

I'm mostly done with it and will undraft it soon. Here is a quick recording of the list.
Screencast_20241231_020140.webm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants