Comments (6)
I can remove the view reloads (which re-fetches the data). It seems to work fine without them as long as you set the URL/directory next time you use it (which will reload the views), which I think is the normal usage pattern. Should I also reset the directory URL to nil?
from connectionkit.
I think it seems reasonable to me to keep the directory URL the same as it was before.
I have to admit in our code we're creating a fresh open panel each time, so I haven't looked that much at how that might affect panel re-use.
from connectionkit.
Just pushed the fix. Confirm it on your end and close if it works for you.
from connectionkit.
I fear there's more to it than that. If I:
- Bring up the panel
- Navigate to a folder
- Click OK
I now get this:
#0 0x00007fff906486b3 in objc_exception_throw ()
#1 0x00007fff8dfc174e in -[__NSArrayI objectAtIndex:] ()
#2 0x0000000100927e59 in -[CK2OpenPanelColumnViewController browser:child:ofItem:] at /Users/Mike/Code/Karelia/Sandvox/Code/ConnectionKit/ConnectionKit/CK2OpenPanelColumnViewController.m:358
#3 0x000000010092797b in __48-[CK2OpenPanelColumnViewController selectedURLs]_block_invoke at /Users/Mike/Code/Karelia/Sandvox/Code/ConnectionKit/ConnectionKit/CK2OpenPanelColumnViewController.m:300
#4 0x00007fff918bbdec in __NSIndexSetEnumerate ()
#5 0x0000000100927913 in -[CK2OpenPanelColumnViewController selectedURLs] at /Users/Mike/Code/Karelia/Sandvox/Code/ConnectionKit/ConnectionKit/CK2OpenPanelColumnViewController.m:295
#6 0x00000001009211d1 in -[CK2OpenPanelController validateProgressIndicator] at /Users/Mike/Code/Karelia/Sandvox/Code/ConnectionKit/ConnectionKit/CK2OpenPanelController.m:800
#7 0x000000010092062a in -[CK2OpenPanelController childrenForURL:] at /Users/Mike/Code/Karelia/Sandvox/Code/ConnectionKit/ConnectionKit/CK2OpenPanelController.m:671
#8 0x0000000100927e05 in -[CK2OpenPanelColumnViewController browser:child:ofItem:] at /Users/Mike/Code/Karelia/Sandvox/Code/ConnectionKit/ConnectionKit/CK2OpenPanelColumnViewController.m:352
#9 0x000000010092797b in __48-[CK2OpenPanelColumnViewController selectedURLs]_block_invoke at /Users/Mike/Code/Karelia/Sandvox/Code/ConnectionKit/ConnectionKit/CK2OpenPanelColumnViewController.m:300
#10 0x00007fff918bbdec in __NSIndexSetEnumerate ()
#11 0x0000000100927913 in -[CK2OpenPanelColumnViewController selectedURLs] at /Users/Mike/Code/Karelia/Sandvox/Code/ConnectionKit/ConnectionKit/CK2OpenPanelColumnViewController.m:295
#12 0x00000001009211d1 in -[CK2OpenPanelController validateProgressIndicator] at /Users/Mike/Code/Karelia/Sandvox/Code/ConnectionKit/ConnectionKit/CK2OpenPanelController.m:800
#13 0x00000001009210c7 in -[CK2OpenPanelController validateViews] at /Users/Mike/Code/Karelia/Sandvox/Code/ConnectionKit/ConnectionKit/CK2OpenPanelController.m:779
#14 0x000000010091f654 in -[CK2OpenPanelController resetSession] at /Users/Mike/Code/Karelia/Sandvox/Code/ConnectionKit/ConnectionKit/CK2OpenPanelController.m:431
#15 0x000000010091b505 in -[CK2OpenPanel endWithCode:] at /Users/Mike/Code/Karelia/Sandvox/Code/ConnectionKit/ConnectionKit/CK2OpenPanel.m:223
#16 0x000000010091b902 in -[CK2OpenPanel ok:] at /Users/Mike/Code/Karelia/Sandvox/Code/ConnectionKit/ConnectionKit/CK2OpenPanel.m:263
#17 0x0000000100921fd9 in -[CK2OpenPanelController ok:] at /Users/Mike/Code/Karelia/Sandvox/Code/ConnectionKit/ConnectionKit/CK2OpenPanelController.m:907
#18 0x00007fff8a062cd7 in _os_activity_initiate ()
#19 0x00007fff90e0f6d7 in -[NSApplication sendAction:to:from:] ()
I've selected item 17 of a particular folder. That's what the browser's data source is being asked for. But at this point in time, it looks the panel has been reset in some fashion, because all that's present in the data source is:
Printing description of children:
(
"Loading%E2%80%A6"
)
from connectionkit.
Ack, you're right. Will take a closer look at it. It probably doesn't need to do anything with the UI really so I'll also defer validating.
from connectionkit.
Excellent, working a treat for me!
from connectionkit.
Related Issues (20)
- Updating look of CK2OpenPanel for 10.10+
- Support file download HOT 1
- Open Panel error-handling HOT 2
- Authentication HOT 3
- New Folder button shouldn’t be enabled until actually connected HOT 12
- Support uploading of directories using CK2FileManager
- Optimise dequeuing FTP operations
- private ssh key authentication on sftp HOT 2
- Down/Upload and a Crash in Release Build HOT 3
- Add cocoapod HOT 2
- -[CK2OpenPanelController pathControlItemSelected:] exception HOT 4
- CK2FileManager's -enumerateContentsOfURL... sometimes doles out URLs without the username
- -createFileAtURL:... with intermediate directories set to YES doesn't seem to work? HOT 13
- Is anyone using -[CK2FileManager setAttributes:…] in their code? HOT 2
- Receiving URL of form https://@dav.box.com/dav HOT 17
- Support for FTP using SSL in Swift 3? HOT 5
- NSURLErrorDomain error -1012 on Sierra? HOT 1
- Incorporate CurlHandle fix 82d036fa7e453b71a01a8a6ba2d7e31560490009
- libcurl broken on 10.12
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from connectionkit.