marxjohnson / btsyncindicator

Bittorrent Sync indicator for linux desktops
GNU Lesser General Public License v3.0
41 stars 5 forks source link

Improvements to the menu structure: make it as similar as possible to Mac OSX and Windows Version #6

Closed tuxpoldo closed 11 years ago

tuxpoldo commented 11 years ago

BitTorrent Sync on Mac OSX and Windows has a very similar interface: there is an indicator on the menu bar / task bar that opens a menu if clicked:

screen shot 2013-09-17 at 9 57 36 pm

In order to make btsyncindicator.py act as similar as possible to the original BitTorrent software, the following changes should be implemented:

  1. Keep the same order and label for menu entries and seprators when possible.
  2. The "Quit" command should be named "Quit BitTorrent Sync" if there is a file /usr/lib/btsync-user/btsync-stopper installed on the system and in that case it should not only quit the indicator but also execute /usr/lib/btsync-user/btsync-stopper
  3. "Send Feedback" is not really needed, but perhaps it would be nice to invoke the browser with http://forum.bittorrent.com/forum/56-bittorrent-sync/
  4. If you want it really identically "Open Web Interface" could be also named "Open BitTorrent Sync..."
  5. ...and if you want to make it really perfect, you will implement also "About BitTorrent Sync" ;-)

screen shot 2013-09-17 at 10 46 34 pm

marxjohnson commented 11 years ago

Thanks, I'll look at implementing these bits and #5

tuxpoldo commented 11 years ago

Great! I will create a new package when you are ready. Great work!

marxjohnson commented 11 years ago

Now that I've worked a bit more on #6 I'm not sure about some of these suggestions. The main difference here is that we dont currently have GUI separate to the indicator for viewing and managing folders. This means that, unless we make that GUI, the menu is always going to be different to that on Windows/OSX as it will contain the folder submenus. Adding things like "Send Feedback" and "About Bittorrent" for the sake of aping a fundamentally different application seems redundant to me. Changing "Open Web Interface" to "Open Bittorrent Sync..." may be confusing as it does something substantially different here to on Windows/OSX.

That said, making "Quit" quit Bittorrent Sync by calling btsync-stopper if it's there does seem useful. My only concern is that there's currently no way of re-launching either the btsync or the indicator. Would you be able to add something to btsync-starter to launch the indicator as well if it's not already running, and a menu entry that runs btsync-starter? This could replace the current menu entry as the web interface can be accessed from the indicator?

tuxpoldo commented 11 years ago

Sorry for my late reply... Obviously you are right. It is not really the same as in Windows/MacOSX. But I think that as soon as the btsync API will be released, it will be possible to integrate your GUI part more and more. In any case it was only an idea probably driven by my autistic nerd-style wish for symmetry ;-) and it is not really important - so please gnore it, if you like.

But let's talk about "Quit". Currently /usr/lib/btsync-user/btsync-starter does also start the indicator. The only problem is, that there is no "icon" (.desktop) file visible in the menu/starter - but I will provide one in the next version and I will probably remove the icon launching the web interface....

marxjohnson commented 11 years ago

That makes sense, especially since you can now launch the web interface from the indicator. I'll add the code that checks for btsync-[stopper|starter] and lets you quit altogether, and mark this issue closed when it's done. Thanks!

tuxpoldo commented 11 years ago

OK - I'm about to prepare a new version for today. Do you think you can commit the changes in the next few hours? In that case I will wait for you to complete...

marxjohnson commented 11 years ago

On 2013-09-30 13:21, Leo Moll wrote:

OK - I'm about to prepare a new version for today. Do you think you can commit the changes in the next few hours? In that case I will wait for you to complete...

No I'm afraid I wont get around to it until this evening at the earliest. If you go ahead and make today's release the change should be ready for the next one.

tuxpoldo commented 11 years ago

No problem. I will wait for you prior to releasing. In the meantime I can make some additional tests...

marxjohnson commented 11 years ago

Done, the script now uses dpkg -S to determine whether it's from the btsync-user package and if it is calls btsync-stopper before quitting. The v0.9 tag will give you the latest version, you'll probably want to give it a thorough test before you release it as I had to test it by manually coping the script to /usr/lib/btsync-user