Commit Graph

49 Commits

Author SHA1 Message Date
Daniel Drake
4e137f6e4f sugar-activity: import and make independent of sugar-toolkit GTK versions
As we move to adding support for a second UI toolkit (GTK+ 3.x),
the sugar-activity binary used by all activities must become
backend-toolkit-independent. It would be wasteful to have two backend
toolkits loaded in memory, and in the GTK2/GTK3 case, it is impossible
(importing both results in an instant crash).

To achieve this, we split the existing sugar-toolkit activity/main.py:main()
functionality into two parts, moving it into the sugar-activity binary and
the Activity class as follows:
 1. All toolkit-specific stuff is moved into the Activity class (i.e.
   everything that interacts with GTK)
 2. Everything that can be reasonably/easily moved into the Activity class
   is also moved.
 3. What remains is the stuff that is inherently involved with the
   construction of the Activity object, not related to UI toolkits. This
   is moved into the sugar-activity binary.

main.py is then removed from sugar-toolkit, and sugar-activity is moved
from sugar to sugar-toolkit-gtk3 in order to keep toolkit-related code
with the toolkit itself.

With this work done, the one remaining question is how to invoke the main
loop. An optional run_main_loop() method is added to the activity class,
for GTK2 this will run the GTK2 main loop, for GTK3 the GTK3 main loop will
be run, etc.

Signed-off-by: Daniel Drake <dsd@laptop.org>
2011-12-13 17:35:30 -03:00
Simon Schampijer
10d7f7d3f9 Switch sugarext to be an introspectable library
This makes sugarext accessible through introspection. It is used
from the shell (key grabber, sound volume management) and the
shell session management.

Making the sugarext introspectable was done following the
descriptions at: http://live.gnome.org/GObjectIntrospection#Using_GI

Signed-off-by: Simon Schampijer <simon@schampijer.de>
2011-12-13 17:19:52 -03:00
Marco Pesenti Gritti
72c2a1d770 Use a src directory consistently with base and shell. 2008-04-29 14:58:34 +02:00
Marco Pesenti Gritti
f90b1d3ebc Make it distcheck. Fix license. 2008-02-06 16:43:10 +01:00
Marco Pesenti Gritti
488402df7d Split sugar-toolkit out of sugar shell. 2008-02-06 10:20:33 +01:00
Marco Pesenti Gritti
44efc2a131 Complete paths cleanup and remove SUGAR_PREFIX and
SUGAR_PATH environment variables.
2008-02-05 01:21:55 +01:00
Marco Pesenti Gritti
ae5ce06ccb Refactor directory structure a bit, preliminary to the
library split-out.
2008-02-04 23:36:12 +01:00
Marco Pesenti Gritti
6240c1cf6f Cleanup the source structure 2007-10-16 11:04:59 +02:00
Simon McVittie
d93122bf5e Merge branch 'master' of git+ssh://dev.laptop.org/git/sugar 2007-08-14 20:24:01 +01:00
Dan Winship
56eb7c2dc3 Borrow some autofoo goo from nautilus to make the mimedb stuff distcheck 2007-08-13 17:57:05 -04:00
Simon McVittie
96023f3e42 Fix regeneration of ./configure from configure.ac when using make
To use an m4 macro library you need three things:

* configure.ac mentions it (OK)
* autogen.sh mentions it (OK)
* Makefile.am mentions it (fixed by this patch)

Omission of the third part means that when you change configure.ac and run
make, ./configure is rebuilt without using the m4 directory, so autoconf
doesn't load python.m4 and the rebuild fails.
2007-08-07 13:13:23 +01:00
Marco Pesenti Gritti
c202b6be43 Import xdgmime and start hooking it up 2007-05-23 11:55:21 +02:00
Marco Pesenti Gritti
0ddbf7e9ab Add the AddressEntry object to sugar 2007-05-21 17:36:08 +02:00
Marco Pesenti Gritti
42f7eeedc8 Drop the browser stuff, it will be replaced by hulahop. 2007-05-21 11:06:52 +02:00
Marco Pesenti Gritti
5343752c35 Make browser a modules inside sugar library 2007-04-07 13:17:36 +02:00
Marco Pesenti Gritti
9af06c0b26 Add a script to start sugar. Move the gtkrc to avoid conflicts when
installing on a complete system.
2007-03-22 20:34:07 +01:00
Marco Pesenti Gritti
c9f28b7317 Rework the emulator. Move matchbox in the shell. 2007-03-16 18:12:47 +01:00
Marco Pesenti Gritti
57c928916c Refactor sugar.env and paths 2007-03-09 14:57:54 +01:00
Marco Pesenti Gritti
73c1dbe4a7 CLeanup emulator shutdown 2007-03-09 13:53:26 +01:00
Marco Pesenti Gritti
cf156fac07 Get rid of our custom dbus config, simplify stuff 2006-12-01 21:24:24 +01:00
Marco Pesenti Gritti
594613aa6b Remove the internal activities. They are now splitted to their own module. 2006-11-30 15:21:42 +01:00
Marco Pesenti Gritti
9a7518f230 Get rid of dbus 0.94 compatibility, since we build dbus in jhbuild now. Yay! 2006-11-16 11:07:30 +01:00
Marco Pesenti Gritti
4b328c8417 Less invasive solution for the reverted commit 2006-11-05 03:41:44 +01:00
Marco Pesenti Gritti
984035f933 Revert "Fixup services path with the various installed/uninstalled 0.94/0.95 combinations. What a pain!"
This reverts commit 6d84d886e1.
2006-11-05 03:33:49 +01:00
Marco Pesenti Gritti
6d84d886e1 Fixup services path with the various installed/uninstalled 0.94/0.95 combinations. What a pain! 2006-11-05 03:25:51 +01:00
Marco Pesenti Gritti
a906c1e758 Release 0.35 2006-10-17 11:34:45 +02:00
Marco Pesenti Gritti
535b67ea41 alt+q shutdown the emulator 2006-10-17 01:09:44 +02:00
Marco Pesenti Gritti
096d5c5238 Fix makefiles 2006-10-16 13:40:59 +02:00
Marco Pesenti Gritti
a3be4492b2 Delete unused p2p model code. Fix distcheck. 2006-10-15 02:03:58 +02:00
Marco Pesenti Gritti
62a46ff92b Create a private sugar lib and put our extensions there. 2006-10-12 12:47:17 +02:00
Marco Pesenti Gritti
5f99dcf9a5 Move the presence service out of the shell 2006-09-15 13:54:16 +02:00
Marco Pesenti Gritti
b34cff91a3 Move threadframe inside bindings directory, will add more stuff there. 2006-08-25 10:33:39 +02:00
Marco Pesenti Gritti
7d6adc55a3 Fixup distcheck, release 0.19 2006-08-21 15:59:40 +02:00
Dan Williams
95c06280ca Add threadframe and TracebackUtils.py so we can get tracebacks of dbus deadlocks 2006-08-16 23:05:44 -04:00
Marco Pesenti Gritti
167dbec0f5 Add a script to install external activities 2006-08-04 15:54:28 +02:00
Marco Pesenti Gritti
86bd6f50f0 Use dbus activation to launch factories. This breaks
p-to-p chat and ./sugar/activities. Will fix tomorrow.
2006-07-28 01:25:08 +02:00
Marco Pesenti Gritti
9ea6805174 More work on packages refactoring, mostly working 2006-06-21 16:05:52 -04:00
Marco Pesenti Gritti
f2ae132410 Fix a bunch of outdated makefiles. 2006-06-15 08:38:21 -04:00
Marco Pesenti Gritti
f6491e6afc Refactor the directory structure to match the packages 2006-05-12 02:32:03 -04:00
Marco Pesenti Gritti
5d2ce73c23 Merge 2006-05-09 14:31:35 -04:00
Marco Pesenti Gritti
f286d1505d Check in initial model stuff, unused 2006-05-09 14:30:54 -04:00
Dan Williams
c9105311c5 also dist sugar. 2006-05-09 00:16:33 -04:00
Dan Williams
81d59b371b More build fixes. 2006-05-08 15:48:34 -04:00
Dan Williams
05cd353891 Make 'make distcheck' actually work. 2006-05-08 13:37:05 -04:00
Marco Pesenti Gritti
07434a4834 Restore the sugar script so we can run from installation too 2006-04-27 15:23:11 -04:00
Dan Williams
81f45f1447 merge to tip of tree 2006-04-27 15:01:42 -04:00
Marco Pesenti Gritti
38c5e5847b Add some tab icons, still missing web site icons 2006-04-27 14:58:10 -04:00
Dan Williams
af89be9a0c Clarify README more and remove bin_SCRIPTS=sugar from Makefile.am. 2006-04-27 14:28:58 -04:00
Marco Pesenti Gritti
7c2531899b Automakeify 2006-04-26 00:18:21 -04:00