numix team mailing list archive
-
numix team
-
Mailing list archive
-
Message #00228
Re: Advanced documentation for creating extensions for GNOME 3
Hi, I really understand about how confusing and difficult it is to write a
gnome shell extension. I myself have trouble understanding how things work
in gnome js, and gnome have no simple and easy documentation. Therefore I
only rely on how others did their extension and tried to copy from that. I
can only share you some tips:
- Try to learn more about javascript, I don't know on what level your
understanding is, but you might surprised on what javascript could do,
especially on object-oriented programming. You could read on it
here<http://bonsaiden.github.io/JavaScript-Garden/>
. But then again, gnome uses its own object wrapper for OOP which is
easier to use, so you could skim through it.
- Gnome js is javascript binding for gnome framework, which originally
written in C, so basic grasp on gnome is a must too (e.g. how to make
button, drop down menu, text input).
This<https://developer.gnome.org/gnome-devel-demos/3.12/js.html.en>
contains straightforward tutorials and documentation on how to make
gnome application using javascript.
- Looking Glass is the most powerful tool to get UI component you want
to change. You could also manipulate the object directly from its console.
- If you want to add some component (like drop down menu, etc) but don't
know what class to implement, refer to mathematical coffee, and the
original files that usually on /usr/share/gnome-shell/js/ui. You could
learn what class emit what event on that too.
- Most often you need to use other gnome library function (e.g. get
webpage, write to file),
this<http://www.roojs.com/seed/gir-1.2-gtk-3.0/seed/>
has documentation at least the objects and function names, to learn
what does what you need to search the C documentation on
developer.gnome.org
- Learn from similar works. You could learn others' approach to make
their extension.
I'd say there's no straightforward tutorial that teaches you on how to make
complex extension (and heck, even the simplest, like making drop down menu
extension). That Gnome 3 development book looks like a good start, but I
can't recommend it since I've never read it.
This is a big problem for everybody who wants to write their own extension,
to which I want to do some documentation on it, but I don't know where to
start. Anyone have a suggestion?
On Tue, May 6, 2014 at 9:58 PM, Хрусталёв Владимир <
vova.jameson2010@xxxxxxxxx> wrote:
> Hi! I Appeal to those who have considerable experience in the development
> of extensions for GNOME 3.10/12. In particular those who wrote atom - dock
> and other developers who wrote good extensions. Can you direct me to the
> appropriate resource or literature describing the step by step development
> of extensions for GNOME, and includes a description of events . Don't offer
> mathematical coffee. On the official website describes the development of
> GNOME applications using the UI, I need to edit the UI of the environment
> . Step by step tutorial on the official website describes all of the
> superficially . I've found on Google Play this book -
> https://play.google.com/store/books/details/Mohammad_Anwari_Gnome_3_Application_Development_Be?id=o4TnACjehLcC. What do you think , she will help me in this aspect ?If there is no ,
> then tell me how you solved problem . And I have another question : is it
> possible to somehow pure JS write extensions?I very much want help the
> community. Thank in advance.
> --
> Mailing list: https://launchpad.net/~numix
> Post to : numix@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~numix
> More help : https://help.launchpad.net/ListHelp
>
--
My best regards,
Muhammad Iqbal CR
Dept. of Computer Science and Information Engineering
National Taiwan University of Science and Technology
References