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

Windowing/Tray UX #8

Closed
4 of 5 tasks
bcomnes opened this issue Jun 5, 2015 · 15 comments
Closed
4 of 5 tasks

Windowing/Tray UX #8

bcomnes opened this issue Jun 5, 2015 · 15 comments

Comments

@bcomnes
Copy link
Contributor

bcomnes commented Jun 5, 2015

Thinking this would best work as primarily a Tray app (e.g. Menu bar for OS X, Notification Tray Windows/Linux).

  • App permanently lives in the tray at all times
  • When the app window is open, a dock/task bar icon will open.
  • When the app window is closed, the dock/task bar icon is hidden, and the app lives in the tray.
  • Enable silent launching to the tray so that people can add the app to their startup apps
  • Indicate running/stopped status of the ipfs daemon via the tray (and dock?) icon.

I think this flow would help increase people running as peers in the background without having to think about it too much.

@jbenet
Copy link
Member

jbenet commented Jun 6, 2015

  • App permanently lives in the tray at all times

SGTM

  • When the app window is open, a dock/task bar icon will open.

SGTM

  • When the app window is closed, the dock/task bar icon is hidden, and the app lives in the tray.

SGTM

  • Enable silent launching to the tray so that people can add the app to their startup apps

SGTM

I think that the menubar item should stay there and let you turn IPFS daemon on and off. menubar/tray item stays (unless you ask it to not show)). the logo can change to reflect whether ipfs is running or not, more grayed out when it's off, or whatever.

@bcomnes
Copy link
Contributor Author

bcomnes commented Jun 6, 2015

Ohh good point. Offline access to files is important as is quick access to starting/stopping the daemon when peering is inappropriate.

@jbenet
Copy link
Member

jbenet commented Jun 6, 2015

oh we could also have a "daemon online but disconnected" mode.

@krl
Copy link
Contributor

krl commented Jun 12, 2015

Most of these things were already addressed, but only seems to work properly when the app is run as a package. This should be ok imo.

open:
open

minimized:
minimized

closed:
closed

@jbenet
Copy link
Member

jbenet commented Jun 13, 2015

seems to work on osx, too. \o/ gj

  • considering whether it should use a repo in the app bundle? (so when people trash ipfs, it deletes everything? but then again maybe not. not sure, maybe best to keep it in default location) cc @bcomnes thoughts?
  • it's using my $HOME repo (~/.ipfs), but not clashing with a daemon i have running... (maybe the electron-app daemon is failing to bind ports and it just "happens" to work cause the ports are the same?)
  • also, if i move my repo away (i.e. no ~/.ipfs), launching the electron-ipfs.app doesnt do anything. maybe stuck somewhere? (is wizard supposed to appear here?)

@bcomnes
Copy link
Contributor Author

bcomnes commented Jun 13, 2015

¯\_(ツ)_/¯ I think keeping node data in the app bundle is the wrong place to keep it. I like using ~/.ipfs. What use case would there be for running a daemon AND a the electron daemon at the same time?

We may also consider using system sanctioned locations for data like ~/Library/Application Support

@jbenet
Copy link
Member

jbenet commented Jun 13, 2015

We could let the user choose when it launches, maybe between:

  • IPFS Default: /Users/<user>/.ipfs
  • System Default: /Users/<user>/Library/Application Support
  • Custom: [________________________________________]

@dignifiedquire
Copy link
Member

@bcomnes @jbenet can you please check the latest version, and update the issue accordingly?

@jbenet
Copy link
Member

jbenet commented Oct 14, 2015

Need to verify it works fine on:

(what's your OS @dignifiedquire @bcomnes ?)

@dignifiedquire
Copy link
Member

I have OS X and window in a vm

@daviddias
Copy link
Member

works fine for me on OSX (and sent a shout to some more devs that are big fans of React and WebPack :)

@Mithgol
Copy link

Mithgol commented Oct 15, 2015

I assume we are talking about https://github.com/ipfs/station

As its README recommends, I've cloned the repo and then run npm install.

I've watched it running for an hour and installing 869 dependencies in node_modules\.staging and then I've forced it to quit because I had to go and I had to take the flash drive with me. (I am sure there were even more dependencies, not only those 869.)

Ideas:

  • Maybe it should be recommended to run npm install --production instead of npm install.
  • Maybe a pre-built version should be distributed as a single archive to reduce the overhead of downloading hundreds of dependencies.

@whyrusleeping
Copy link
Member

@Mithgol a prebuilt binary will be provided for users once the project is ready for release.

@Mithgol
Copy link

Mithgol commented Oct 15, 2015

The file package.json also assumes a non-Windows system where it uses NODE_ENV=production some_command because that syntax (AFAIK) is not supported by the command line of Windows.

@bcomnes
Copy link
Contributor Author

bcomnes commented Oct 15, 2015

https://github.com/ForbesLindesay/win-spawn is a commonly recommended way to route around that issue, however I find that it doesn't always noop on unix systems like its supposed to. It could be a matter of just squashing a bug though, I haven't had a chance to really look into it.

@bcomnes bcomnes closed this as completed Dec 20, 2016
hacdias added a commit that referenced this issue Dec 1, 2017
# This is the 1st commit message:

start redesign

Too many updates to explain in a commit. See PR :O

add size and objects number

fix addresses and remove agent version

persist file history

# This is the commit message #2:

outer space

# This is the commit message #3:

add files to right

# This is the commit message #4:

update

# This is the commit message #5:

relative working thing

# This is the commit message #6:

updates

# This is the commit message #7:

new font and icons

# This is the commit message #8:

close #515

# This is the commit message #9:

solve objectOf wrong type

# This is the commit message #10:

update
hacdias added a commit that referenced this issue Aug 29, 2019
# This is the 1st commit message:

try gh actions

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #2:

add build

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #3:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #4:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #5:

add gh token

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #6:

fix names

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #7:

add chrome-log driver

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #8:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #9:

xvfb?

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #10:

install xvfb

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #11:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #12:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #13:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #14:

add screensize

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #15:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #16:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #17:

xvfb-maybe

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #18:

chore!

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>
hacdias added a commit that referenced this issue Sep 2, 2019
# This is the 1st commit message:

try gh actions

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #2:

add build

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #3:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #4:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #5:

add gh token

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #6:

fix names

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #7:

add chrome-log driver

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #8:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #9:

xvfb?

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #10:

install xvfb

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #11:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #12:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #13:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #14:

add screensize

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #15:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #16:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #17:

xvfb-maybe

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #18:

chore!

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>
hacdias added a commit that referenced this issue Sep 2, 2019
# This is the 1st commit message:

try gh actions

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #2:

add build

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #3:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #4:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #5:

add gh token

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #6:

fix names

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #7:

add chrome-log driver

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #8:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #9:

xvfb?

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #10:

install xvfb

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #11:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #12:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #13:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #14:

add screensize

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #15:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #16:

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #17:

xvfb-maybe

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

# This is the commit message #18:

chore!

License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>
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

No branches or pull requests

7 participants