Wish list for next release
First of all, great job with 2.0, it's a great update, and everything I expected.
I don't know if you're planning to work on an editorial update next or pythonista, or maybe something else, but I thought I'd start a thread where people can post their thoughts about what should go into the next update.
I think for the next update, it would be helpful to just provide more modules for use. This would be a good contrast to 2.0, which updates the editor in a lot of ways. The top 5 modules I'd like to see the most are:
photosmodule but for videos
I think this alone would be a significant update to pythonista, adding a lot of functionality.
I'm curious to hear what other people want to see most from the next update.
@ExParrot yes, only you. I find that most canvas stuff can be done with
ui.Pathand then exported as an image using the appropriate
Interactive notifications with the notifications module (for those that don't know what I'm talking about, swipe down on the notification next time you get a text from the Messages app.
Not a big issue. But would be nice have the console.set_color method updated or another method added to handle the console colors with more grace.
Maybe I missed something as usual, but after getting a json object from the web with css color names and hex values, I did this
conv = ui.parse_color(v) console.set_color(conv, conv, conv)
Maybe I missed something. But went looking for this as it appears that faker is also not up to date. Faker has a fake.color method in the latest version. The Pythonista version does not have it.
But anyway, would be nice to see console colors supported with single calls instead of what I did above. If it is already, sorry. I did read the docs and try. (Admittedly, I rarely use console colors, just for debugging)
Edit: v in script is a hex string
After working a bit with the UI editor I would suggest adding these features:
- Provide a view type which can serve as placeholder for a subview which is defined in another pyui file. This way you could easily re-use subviews.
- Allow several items in a view to be simultaneously selected, cut and inserted into another view. This would make refactoring view a LOT easier.
- Provide the icon for the action menu while the UI editor is active. Otherwise I always have to switch to a tab with a Python script before I can start my app using an action icon.
Allow several items in a view to be simultaneously selected, cut and inserted into another view. This would make refactoring view a LOT easier.
This is already possible. Tap and hold on an empty part of the canvas, then you can drag a selection rectangle to select multiple views. Tap again on the selection to copy them. Then tap and hold on an empty part of the canvas (possibly in another file) and select Paste from the menu.
In Pythonista's Matlab documentation under Toolkits two mapping libraries are mentioned. Both seem to require Proj4 and Shapely that hooks into the GEOS C++ library. So I can't actually use Cartopy or Basemap toolkits. I'd pay extra for the toolkits to have all of their dependencies met in Pythonista or some kind of add-on. I can see a lot of terrific field and data collection uses with these toolkits.
I would love to be proven wrong if it is actually possible to get these toolkits to work.
When opening (and not neccessarily modifying) pyui files the order in which the JSON is written out to file does not seem to be preserved. So, I do get changes in GIT commits that are not real changes:
Would it possible to sort the attributes by name before streaming them to file? Thanks!
Please add background_color support for ui.ListDataSource cells.
Not being able to subclass most ui classes has been painful to me. This pain has been mostly absent since I found gestures through objc_utils and proxy ObjectWrappers in ProxyTypes. Please consider including the latter; even if it is a very small library, it would provide a shared base from which to share best practices from.
I think it would be nice if in the menu there was a type of ui.ButtonItemMenu. Simlar API interface as dialogs. A little more open. Also including an action and delegate. Well something like that. Also the popup menu designed for the menu item, could be called independently. A 2 for 1 😬
- option for line numbers on iPhone 6/6S Plus !!! (or ability to slide them out from either side like in messages.app and it's timestamps)
- better programmatic audio playback controls
- on-the-fly text resizing via pinch to zoom
Today View widget:
-would be useful just as a shortcut to launch certain scripts via pythonista://url
(i currently use launch center pro of this purpose and it has a today widget so doesn't really matter)
>along the same lines pythonista quick actions tied to a list of favorite scripts in settings...because why not
-where I would really like the ability to make today view widgets with python is incorporated into the xCode template.
-also template support for quick actions would be cool too. (and probably easy to do?)
+1 interactive notifications.
UPDATE:******* I feel stupid, I didn't realize quick action for 3d touch support was already integrated.
@omz Is it possible to add
mmapmodule in future release? It is part of Python standard distribution. Is it difficult to port?
@ywangd The main purpose of
mmapseems to be communication between processes by sharing a section of memory. If you want a byte buffer, you can use
I'm not sure why
mmapisn't included, I think I just forgot it somehow. I've never actually used it, but it should be possible to port.
@ywangd mmap is in the latest beta, uploaded moments ago
I don't know if it has already been mentioned somewhere but it would be nice if the app shows that it's running a script via url "api".
If the app starts up and is not returning from a suspended state it just shows the initial screen and I am not sure if the script is running
The small indicator with the script name would be nice for the first start up
Thanks @omz This level of support is just like a dream! :)
Delete key on extended keyboard (deletes this way: --> as opposed to backspace: <--)
It is simple to get the different UISscrollView/UITextView keyboard dismiss modes with objc_utils:
ObjCInstance(textview).keyboardDismissMode = 2 # 0 - normal, 1 - on scroll, 2 - on scroll interactive
But publishing this as a part of the TextView Python interface would be a very easy way to make this rather convenient functionality available to everyone.
(Special note to @marcus67)