Page 3 of 4

Re: Starting a new app with UXP

Posted: 2021-06-22, 08:27
by moonbat
New Tobin Paradigm wrote:
2021-06-22, 01:20
I want to add some basic xul application bits and bobs for basic reference so give it a day or two more. Though you can check out the tree now. I am also gonna want to write some basic documentation like a .mozconfig to use.
Thanks a lot for doing this Tobin! Although I don't have any ideas for a standalone app yet, I'm greatly interested in making one in future. Also, happy birthday! :thumbup:

Re: Starting a new app with UXP

Posted: 2021-06-23, 16:41
by Bilbo47
Sweet, looking forward to this in General Release :)

Re: Starting a new app with UXP

Posted: 2021-06-23, 16:50
by New Tobin Paradigm
What do you mean "General Release"? This is an example application.. It won't HAVE a binary release.. cause it would be pointless..

If you are talking about their intended project.. You do realize it won't be any time soon.. They are planning to build from scratch and that takes a long time.

Re: Starting a new app with UXP

Posted: 2021-06-24, 01:25
by Bilbo47
I mean general release of this 'starter project' / 'sample application' as in, the version that has a notice / post from you saying "Okay, the current milestone is all done". When looking at that non-beta release, I won't be tempted to question "Oh, is something missing but supposed to be here to make this work as advertised."

Re: Starting a new app with UXP

Posted: 2021-06-24, 01:34
by Moonchild
Bilbo47 wrote:
2021-06-24, 01:25
Oh, is something missing but supposed to be here to make this work as advertised.
... It will be an example application for people to use as a template to get started with their own applications.
It won't "work as advertised" because there is nothing it will do aside from build and present a rudimentary UI to start from. It won't do anything.
It's basically a "hello world" program.

Re: Starting a new app with UXP

Posted: 2021-06-24, 01:38
by Bilbo47
Yes I understand that, and I'm excited about trying to use it.

Re: Starting a new app with UXP

Posted: 2021-06-24, 01:40
by New Tobin Paradigm
I don't understand.. There won't be a "release" it will just.. exist. I may add more example shit at a later date but it is a reference tool though with some specific actions the example-ness of it can be converted into a functional starting point for an application.

All the general build system stuff is already done as it builds and packages now.. I just think a commandline handler, a sample glue component, main window functioning menubar with a few items under file as well as a Tools Menu to open some basic toolkit features like the Add-ons Manager, The (newly re-discovered method to get a fully functional) Downloads Manager, Password Manager, Developer Tools > Error Console, and a Help Menu that can open Troubleshooting, Safe Mode, Updater, and About Window. Plus a statusbar with the online/offline icon. The Communicator Preferences System.

But beyond that it will say.. "Hello, World!"

I will work more on it tomorrow after I get home from the store and perhaps through the weekend until it is a GOOD example. RIght now it is more of a build system example than an application example.

Re: Starting a new app with UXP

Posted: 2021-06-24, 18:25
by noobsoftware
Excited to test this out. There is one thing that would be cool to have, I'm still struggling to understand XPCOM / Glue, but in Nigthingale they use something called GStreamer for playing media, and the build process references external DLLs, .so files and dylibs. I am looking into what library i can use and I've found something called irrKlang, which seems to suite my purposes. I'm still reading up on XPCOM and of course the template will be of great help to cement mine and others understanding of that. But the question is if you could include a dependency on a DLL/.SO in the glue example in the template? (perhaps you were going to anyway, but it doesn't hurt to ask).

Re: Starting a new app with UXP

Posted: 2021-06-24, 19:20
by Moonchild
GStreamer has long since been removed in favour of using ffmpeg in our platform (since there was no end to trouble with it). The platform will take care of it as long as you have the supporting libs installed.

Re: Starting a new app with UXP

Posted: 2021-06-24, 19:59
by New Tobin Paradigm
Well you don't have to worry about Macintosh as we don't support it as an OS target anymore. Also, I don't c++. Like at all. It doesn't click for me. I can sometimes cleans stuff out but can't really modify or add unless it is extremely mind-numbingly basic and even then likely not.

Re: Starting a new app with UXP

Posted: 2021-06-24, 21:10
by noobsoftware
Sorry i didn''t do my research, I didn't realize the platform had ffmpeg, that will take care of that. So there's no need for what i was asking for.

Re: Starting a new app with UXP

Posted: 2021-06-24, 21:14
by New Tobin Paradigm
Any UXP Application wanting to use media features (save WebRTC/EME) that can otherwise use them on the web will be capable nonetheless.

I know it can be confusing and frustrating looking at an ancient project for reference and various states of old documentation.

Personally, I wouldn't worry too much about C++ XPCOM components for right now. Though they may be useful later on cause of course C++ components would be faster than JS XPCOM Components but they aren't as easy to code up.

Aside from studying how the build system does what I have accomplished already.. Here is an essentual resource you can use: http://xref.palemoon.org/moonchild-central/

Re: Starting a new app with UXP

Posted: 2021-06-26, 13:35
by noobsoftware
Thanks, that's definitely a good resource. Is there any place on the forum where it would be appropriate to ask questions about general XUL things? And i definitely prefer JS over C++, hopefully the application will be fast enough regardless of me just using JS.

Re: Starting a new app with UXP

Posted: 2021-06-26, 14:16
by New Tobin Paradigm
For now Platform Development or in this board under your own application topic or just this thread.

Re: Starting a new app with UXP

Posted: 2021-06-26, 22:26
by noobsoftware
I'm working on the view for playlists and the music library in general and according to the UDN docs the current drag and drop html api is the one you should use for XUL, but i can't find any way to drag multiple files at the same time (searching online). The only method i can think of is when starting to drag while having multiple files selected, to add all those files to a container and simulate a drag on that container, i have yet to try if i can get it to work properly. But i thought it would be best to ask around first. The cross reference isn't of much help because i only find one reference to the draggable attribute being set and it isn't of much help, so i assume drag and drop is implemented differently in most cases than using the html drag and drop api.

Re: Starting a new app with UXP

Posted: 2021-06-26, 22:43
by New Tobin Paradigm
We might want to revert bug #1162050 at some point. I think I understand it better than I did when we started UXP.

Re: Starting a new app with UXP

Posted: 2021-06-27, 08:09
by noobsoftware
I just realized i can set an image for multiple element selections using: ev.dataTransfer.setDragImage(image, 0, 0);

Re: Starting a new app with UXP

Posted: 2021-06-27, 20:48
by noobsoftware
Although if anyone knows how to do drag and drop for <treechildren> in a <tree> xul element that would be very helpful.

Re: Starting a new app with UXP

Posted: 2021-06-27, 21:01
by New Tobin Paradigm

Re: Starting a new app with UXP

Posted: 2021-06-28, 18:47
by New Tobin Paradigm
I just had a terrible thought.. You're not gonna use this work I have done and knowledge gleemed to do shit with Macintosh are you?