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

native gui widgets #124

Closed
ensignavenger opened this issue Mar 16, 2015 · 6 comments
Closed

native gui widgets #124

ensignavenger opened this issue Mar 16, 2015 · 6 comments

Comments

@ensignavenger
Copy link

ensignavenger commented Mar 16, 2015

From what I can tell, plyer does not currently implement any native gui widgets- probably because its primarily used in kivy which implements its own gui widgets.

It appears to be pretty simple to add native support into plyer, for example, using pyjinius for Android. So, I am proposing to add support for native gui widgets. I would like to know if the plyer project has any interest in pull requests if I can get it working.

Any advice or has anyone else done any work on this?

@akshayaurora
Copy link
Member

There have been some work on it but nobody really contributed anything back yet. Plyer was specifically kept separate from kivy so it could be used with any toolkit, not just with kivy.

How do you plan to go about it making the access to widgets toolkit agnostic?
Should be interesting to see.

@ensignavenger
Copy link
Author

Well, my immediate use was to implement Android widgets, then probably Windows and Linux. I'm still considering different approaches. I think in the end I would have something like Appcelerator Titanium or React Native does, but in Python rather than Javascript, and I would like support for desktop OSes as well as mobile. I am looking at the Appcelerator and React GUI API's to see how they are structured. I would of course use pyjinuis and pyobjus for the Android and iOS compatibility. The next big question is what to use for desktop OSes. It would be simpler to use one of the desktop cross platform GUI libraries so that I could write the code once for Windows, Linux, and Mac OS support (something that uses native UI widgets on each desktop platform, would probably be best). Creating one GUI API that seamlessly renders natively on desktop and mobile may prove challenging, because the paradigms can be significantly different. But I think it is worth a shot.

I would certainly be interested in hearing from anyone else that has worked on this or even thought about it.

@trivedigaurav
Copy link
Member

Can we make use of the work done by Qt (
http://www.qt.io/mobile-app-development/) here?

On Tue, Mar 17, 2015 at 12:08 PM, James Lee Vann [email protected]
wrote:

Well, my immediate use was to implement Android widgets, then probably
Windows and Linux. I'm still considering different approaches. I think in
the end I would have something like Appcelerator Titanium or React Native
does, but in Python rather than Javascript, and I would like support for
desktop OSes as well as mobile. I am looking at the Appcelerator and React
GUI API's to see how they are structured. I would of course use pyjinuis
and pyobjus for the Android and iOS compatibility. The next big question is
what to use for desktop OSes. It would be simpler to use one of the desktop
cross platform GUI libraries so that I could write the code once for
Windows, Linux, and Mac OS support (something that uses native UI widgets
on each desktop platform, would probably be best). Creating one GUI API
that seamlessly renders natively on desktop and mobile may prove
challenging, because the paradigms can be significantly different. But I
think it is worth a shot.

I would certainly be interested in hearing from anyone else that has
worked on this or even thought about it.


Reply to this email directly or view it on GitHub
#124 (comment).

@ensignavenger
Copy link
Author

To clearly and specifically address your question:

How do you plan to go about it making the access to widgets toolkit agnostic?

That is what I am currently researching- looking at Appcelerator and React Native, as well as other GUI toolkits that work across desktop and mobile. Most such toolkits were designed for the web, and I think there is a lot to learn from how they work on both a desktop and mobile browser. I don't know of any that work across mobile and desktop and use native, non-web gui widgets, though.

@ensignavenger
Copy link
Author

I will also look at QT a bit closer, perhaps there is somthing to learn from their implementation. One big problem with QT in Python projects is that PyQT is GPL, and PySide has not kept pace with QT development. But we can still learn from how the API is implemented to work across platforms. (it also looks like QTs mobile stuff may not be open source at all- http://blog.qt.io/blog/2014/10/01/benefits-of-the-indie-mobile-licensing/)

@dessant
Copy link
Contributor

dessant commented Dec 4, 2016

There are no current plans to implement this. Ping us if you'd like to work on it and we can reopen.

@dessant dessant closed this as completed Dec 4, 2016
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

4 participants