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

Make selection work in list views #28

Closed
inexorabletash opened this issue Sep 12, 2017 · 4 comments
Closed

Make selection work in list views #28

inexorabletash opened this issue Sep 12, 2017 · 4 comments
Labels
DeskTop DeskTop bugs or feature requests feature request User-facing feature additions/enhancements
Milestone

Comments

@inexorabletash
Copy link
Collaborator

No description provided.

@inexorabletash inexorabletash added the DeskTop DeskTop bugs or feature requests label Dec 23, 2017
@inexorabletash inexorabletash added feature request User-facing feature additions/enhancements and removed bug labels Apr 13, 2018
@inexorabletash
Copy link
Collaborator Author

Might be doable by treating the list items as a special form of icon, but not trivial.

@ZoriaRPG
Copy link

Ah, sorry. Why is this categorised 'unrealistic'?

@inexorabletash
Copy link
Collaborator Author

I'm using that tag to set expectations for anything that would require substantial rewrite/rearchitecture, i.e. many tens of hours. Which is unlikely to get done without other contributors taking the lead.

@inexorabletash
Copy link
Collaborator Author

Removing BCR-low just because this is one of the top requests. It's a huge amount of work and I'm unlikely to tackle it, but it might be worth it for someone to take it on.

inexorabletash added a commit that referenced this issue Feb 19, 2022
It's not icons for all the types, and they're still not selectable
(see #28), but this updated treatment seems okay.
@inexorabletash inexorabletash added this to the 1.3 milestone Aug 27, 2022
inexorabletash added a commit that referenced this issue Oct 10, 2022
In preparation for tackling #28 (selection in list views), this commit
reworks a bunch of plumbing in DeskTop to break assumptions and set
the groundwork for bigger things to come.

* IconTK::GetIconBounds is used when measuring icons and computing
  icon bounding rects, instead of custom logic.

* Icon bounding rects no longer include the window header.

* Icon layout is done using runtime adjustable parameters instead of
  constants.

* Windows are populated with icons using an indirection allowing the
  order to be modified. This makes the initialization of icon and list
  views much more similar.

* Initial window sizing is factored out of the window creation steps.

No intentional big behavior changes, although window/icon layouts are
very subtly tweaked, and scrolling icons into view (e.g. after
creating a folder or arrowing through icons) uses a slightly different
bounding box.

Some minor IconTK simplification too, which saves some bytes.
inexorabletash added a commit that referenced this issue Oct 22, 2022
As mentioned in 988b88f, now that list views are not useless it makes
sense to save and restore the view type in addition to window bounds
across restarts.

The LOCAL/DESKTOP.FILE file format version is incremented, so you'll
lose window state when updating to this version (or downgrading, if
you're playing git shennanigans).

Fit and finish following #28
inexorabletash added a commit that referenced this issue Oct 23, 2022
Previously, what was stored was the window position and dimensions.
Now the window position (viewloc) and viewport (maprect) are
persisted. This simplifies the code, too.

So this doesn't actually store the scroll position, just the
*viewport*, or the view into the window's coordinate space. The scroll
position is derived from this but since icon positions are not
persisted (please don't ask for that) if you move the icons the actual
scrollbar positions might not be restored.

The LOCAL/DESKTOP.FILE file format version is incremented, so you'll
lose window state when updating to this version (or downgrading, if
you're playing git shennanigans).

Fit and finish following #28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DeskTop DeskTop bugs or feature requests feature request User-facing feature additions/enhancements
Projects
None yet
Development

No branches or pull requests

2 participants