Author Topic: Change the behavior of the file Open tab  (Read 6388 times)

dholshou

  • Community Member
  • Posts: 51
  • Hero Points: 1
Re: Change the behavior of the file Open tab
« Reply #15 on: April 05, 2016, 09:19:52 pm »
Oh, and those snaps were taken with Sync turned off, so that's not it.

JeffB

  • Senior Community Member
  • Posts: 292
  • Hero Points: 14
Re: Change the behavior of the file Open tab
« Reply #16 on: April 06, 2016, 01:55:14 pm »
I agree with the request to change the directories shown when the the Open dialog is first opened.  I have to double click the parent directory (to get the collapsed parent), then double click again to get the parent to uncollapse...just to see any parallel directories to the one of the file I'm editing.  Very annoying and I don't see the logic for it.

Jeff

Dennis

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 2920
  • Hero Points: 438
Re: Change the behavior of the file Open tab
« Reply #17 on: April 06, 2016, 03:25:20 pm »
Would it be satisfactory to add an option to expand the sibling directories of the current directory, or would you prefer to see sibling directories at all levels?

dholshou

  • Community Member
  • Posts: 51
  • Hero Points: 1
Re: Change the behavior of the file Open tab
« Reply #18 on: April 06, 2016, 03:35:49 pm »
Would it be satisfactory to add an option to expand the sibling directories of the current directory, or would you prefer to see sibling directories at all levels?
See sibling directories, with plus sign expansion, at all levels.
Or to put it another way, it should always looks like the first attached image on this thread.
I would prefer it act like Windows Explorer (or every "open/save" dialog in windows).

Principle of least surprise on this one. Act like most other tools in this respect.
Doing something novel here is not a good thing. Act like I would expect a directory explorer to act.

jorick

  • Senior Community Member
  • Posts: 357
  • Hero Points: 16
Re: Change the behavior of the file Open tab
« Reply #19 on: April 06, 2016, 06:46:17 pm »
I fully agree with dholshou.  It's irritating to want to go to a parallel folder but have to close and reopen the folder above.

Dennis

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 2920
  • Hero Points: 438
Re: Change the behavior of the file Open tab
« Reply #20 on: April 06, 2016, 09:56:44 pm »
I believe the directory panel of the Open tool window was designed to emulate a commonly accepted standard, but it was implemented a long time ago, and Windows Explorer has changed also over time.  The basic idea was to focus in on the directory tree such that you could see the whole path in one glance from top-down, and then be able to see where you could go from there with the children directories.

I'm working on adding the option to show all sibling folders, but I do have a question about what you specifically want it to do.  Suppose you start in "/usr/include/c++/4.2.1" as in image 1 below.  Then you cd to "/usr/include/libkern".  Which result do you want to see?  The first approach (shown in the second image) focuses in on "include/libkern" (and collapses include/c++), or the second approach (show in the third image) where "include/c++" is left expanded?  (I manually resized the dialog for illustration only).

The second approach leaves more breadcrumbs around, but also can cause the directory panel to get uncontrollably large as you gradually visit everything in the galaxy, which will lead you to having the opposite problem as what you have now, needing to manually click to collapse directories you are no longer interested in.  It also invites more trouble with stale directories and requires more bookkeeping.

I have the first approach implemented and ready to go into the next release.  The other would take more work

dholshou

  • Community Member
  • Posts: 51
  • Hero Points: 1
Re: Change the behavior of the file Open tab
« Reply #21 on: April 06, 2016, 10:10:11 pm »
Actually, either of those is fine. That isn't the problem and I can live with either choice of the things you described. I've worked under both.

I think we may be missing each other. The actual problem isn't upon changing dir. This isn't a behavior I'm looking to change. It feels more like a bug than the behavioral choice you're describing.

When I move into /usr/include/c++ and use my editor to get to work, a few minutes later I'll look back and all of the siblings are missing: bank, bsm, CommonCrypt, corpses, cups, curl, etc...., and libkern are missing. They weren't missing when I opened my file and started editing. They were all just like your Image 1 and then they went away while I was editing.

I CAN'T change into libkern because it's no longer there. It isn't visible at all. Only c++ is visible under /usr/include. In order to change dir, I have to collapse /usr/include and then re-expand it. That is the problem I'm after.

Dennis

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 2920
  • Hero Points: 438
Re: Change the behavior of the file Open tab
« Reply #22 on: April 06, 2016, 10:33:11 pm »
The bug you describe happens because it's trying to refresh the current directory and wiping out the sibling directories in the process.  By making it intentionally show the sibling directories, the problem you originally pointed out simply goes away (or at least, becomes intentional, for people who have the option turned off).

JeffB

  • Senior Community Member
  • Posts: 292
  • Hero Points: 14
Re: Change the behavior of the file Open tab
« Reply #23 on: April 07, 2016, 12:15:45 am »
Thanks, Dennis.
Just fixing the peer directories is a big step.  I would say option 2 is better.  It's also more like Windows and Linux (Dolphin).  In fact, in both Windows File Explorer and Dolphin, collapsing/expanding a directory remembers any already expanded subdirectories under that directory.  With option 1, I could see this coming up as a question/request in the future once the "new" behavior becomes the "normal" behavior (or for new users).  But either is better than the current behaviour.

Jeff