Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#2758 closed Enhancement (fixed)

Transmission web interface is missing a compact view mode

Reported by: kim Owned by: kjg
Priority: Normal Milestone: 2.10
Component: Web Client Version: 1.76
Severity: Normal Keywords: web ui
Cc: charles, yarekt@…

Description

When many torrents are loaded the default view is wasteful of space.

Attached are the patches for a new compact view. 2 files: 1 patch and 1 new icon file. Ok the icon isn't perfect but it's better than nothing.

Renders correctly on Safari 4 and Firefox 3.

Only two niggles I'm aware of a) when collapsing browser width so title overlaps with details - I don't know how best to hide/crop/obscure the details b) as a result of niggling div width problems and sub-pixel scaling some of the length bars in compact view are about 1 pixel short. Life's tough.

Would be great to get code into head revision before it drifts.

Attachments (8)

transmission_patch_3 (25.1 KB) - added by kim 11 years ago.
source patches for compact web view
chrome.png (5.6 KB) - added by kim 11 years ago.
icon files with new compact view icons (for now anyway)
transmission_compact_view_screenshot2.gif (100.5 KB) - added by kim 11 years ago.
screenshot (a slightly earlier version but it gives the idea)
add_compact_view_to_web_ui.patch (18.6 KB) - added by fx 11 years ago.
Screen shot 2010-06-07 at 18.32.07.png (160.9 KB) - added by fx 11 years ago.
adds_compact_view_to_web_ui_using_gear_menu (10.4 KB) - added by fx 11 years ago.
compact_mode_with_session.patch (1.7 KB) - added by fx 11 years ago.
compact_mode_session_saving_neater_version.patch (1.7 KB) - added by fx 11 years ago.

Download all attachments as: .zip

Change History (33)

Changed 11 years ago by kim

source patches for compact web view

Changed 11 years ago by kim

icon files with new compact view icons (for now anyway)

Changed 11 years ago by kim

screenshot (a slightly earlier version but it gives the idea)

comment:1 Changed 11 years ago by kim

  • Type changed from Bug to Enhancement
  • Version changed from 1.76 to 1.76+

comment:2 Changed 11 years ago by User294

As for me, me loves how screen shot looks like. Me sometimes seeds enough torrents to make a default appearance inconvenient enough (especially taking into account it lacks sorting of torrents).

comment:3 Changed 11 years ago by charles

  • Version changed from 1.76+ to 1.76

comment:4 Changed 11 years ago by charles

  • Resolution set to wontfix
  • Status changed from new to closed

I really like this minimal view and am still tempted to use it, despite it having a few small warts and despite the patch's author having abandoned the project -- in dramatic fashion -- without fixing the warts.

However, kettu is coming along quickly, and it already has a minimal view. If this were a simple bugfix being included for a possible 1.93 release, that would be one thing... but this is a larger new feature that hasn't seen much testing.

comment:5 Changed 11 years ago by fx

  • Cc yarekt@… added

Im wondering if anyone is putting any effort into this. Its been 2 months, kettu hasn't replaced web ui (which is a good thing looking at the project), but now that i have increasing number of torrents active, i found myself modifying the web ui manually. The patch in this ticket did not apply correctly so I reverse engineered a quick solution - Its not pretty but it will do for now.

If there is no-one working on this and this feature (compact mode) is useful enough to consider including into the web ui, I would like to continue the development of this idea - A setting that switches the render into compact view.

comment:6 Changed 11 years ago by charles

fx: there's currently no-one working on this feature and kettu's author is very busy with non-Transmission work, so it's currently in limbo as well.

Adding compact view to the web gui would be most appreciated. :)

Changed 11 years ago by fx

comment:7 Changed 11 years ago by fx

This is a patch that enabled a compact view that resembled the one from mac os X gui. Compact view is on by default for testing purposes, since i don't have the button yet. I've reused most of the switching code from the previous patch. Its rather ugly, but at least it gets the point across, the compact view is much nicer when viewing many torrents.

comment:8 Changed 11 years ago by fx

  • Resolution wontfix deleted
  • Status changed from closed to reopened

Right, I've attached a screenshot of the compact view and a cleaner version of the patch. Please disregard the earlier version. This patch should apply with the current SVN source. Im also reopening the ticket, if that is ok.

comment:9 Changed 11 years ago by charles

  • Milestone changed from None Set to 2.10

As with some of the other large-patch tickets, this is a tentative milestone...

comment:10 Changed 11 years ago by fx

Hi Charles I understand the difficulty with large patches, the changes might backfire. How can i speed up the acceptance time? Can I create a separate ticket for the cleanup of the Web UI code and then when that gets accepted rebase this patch on top ? I could use some guidance from the devs as I don't want to be doing tug of war, pulling in the wrong direction.

As I see it, Web UI should attempt to mirror the functionality of the GUI clients, but doing it in a browser compatible, simple fashion. So no fancy shadows, complex UI elements, etc.

comment:11 Changed 11 years ago by charles

fx, sorry for not replying sooner -- I didn't see the reply.

Trunk is unfrozen now for 2.10 changes, so what we're waiting on now is for me to make time to review the patch -- or better yet, get someone better than me at web apps to review it.

Yes, please do open a separate ticket for cleanup.

Actually my ideal would be to replace the GUI parts of the Web UI with something more robust like ExtJS. Having the GUI widget code actively maintained by an outside project seems better to me than Transmission rolling its own widgets. However I don't know how much work it would take to make that change...

comment:12 Changed 11 years ago by charles

added to trunk: r10802

comment:13 Changed 11 years ago by charles

  • Resolution set to fixed
  • Status changed from reopened to closed

comment:14 Changed 11 years ago by Longinus00

  • Resolution fixed deleted
  • Status changed from closed to reopened

This patch isn't ready yet. Selecting compact mode doesn't cause any immediate change because it doesn't force a redraw of the torrent list. The patch attemps to call setListDisplayElements which is what kim used to force a refresh right away but wasn't copy pasted over so just causes errors to pile up in the javascript console.

comment:15 Changed 11 years ago by fx

Thanks for looking into the patch I couldn't find a good way to refresh the list so I left it to it's natural refresh period. There must be a better way to do it though. Kims method stripped all the torrents and then readds them, if I did leave the call to the method that was unintentional. I'm on holiday at the moment, I will only be able to have a look at this when I get back. If you have any more advice or issues please comment. Thankyou

comment:16 Changed 11 years ago by Longinus00

		var torrents = this.getVisibleTorrents();

		for( var i=0; torrents[i]; ++i )
			torrents[i].refreshHTML();

You should really make it remember compact view across sessions via a cookie.

comment:17 Changed 11 years ago by charles

fx, has there been any progress on this? If you're not available to fix this, I'm going to revert r10802

comment:18 Changed 11 years ago by fx

Hi Charles Sorry for not replying, I was away in turkey =) Baking in the sun. Anyway, im back on the job. this is the latest patch against the latest tree. Fixed the refresh problem and added the compact mode saving into a cookie, just like other settings. (It was half in there already)

EDIT: I edited the patch slightly, there was a typo in torrent.js which caused the compact display to say 'null'

Last edited 11 years ago by fx (previous) (diff)

Changed 11 years ago by fx

comment:19 Changed 11 years ago by Longinus00

setDisplayMode has an argument that is ignored. It would be best if you renamed the function to better reflect what it actually does. There also appears to be some tabbing problems.

comment:20 Changed 11 years ago by fx

better?

comment:21 Changed 11 years ago by Longinus00

Looks good to me. :)

comment:22 Changed 11 years ago by charles

  • Resolution set to fixed
  • Status changed from reopened to closed

compact_mode_session_saving_neater_version.patch committed to trunk in r10942

comment:23 Changed 11 years ago by charles

r11000: fix a regression introduced by r10802

comment:24 Changed 11 years ago by Robby

Shouldn't "owner" be someone else (fx)?

comment:25 Changed 11 years ago by fx

If I knew how to do it

Note: See TracTickets for help on using tickets.