Commit Graph

514 Commits

Author SHA1 Message Date
Sam Parkinson 64f58d3992 Don't assume all connection managers support Sugar
If the user has a "random" telepathy connection manager
installed and running on the system (eg. telepathy idle being
active if they are chatting on irc with GNOME's Polari), activities
will crash on startup.

Steps to reproduce the crash:
1. Run Polari (eg. via the Terminal activity)
2. Join an irc channel in Polari (eg. #sugar on freenode)
3. Try to open an activity from the home view
    - notice that opening any sugar3 activity will crash
2016-06-05 20:04:34 +10:00
Sebastian Silva 966c65082e Allow running GTK3 Sugar Activities in HTML5 2016-06-04 22:32:05 -05:00
Sam Parkinson 52ce5af493 Merge branch 'popup' of https://github.com/AbrahmAB/sugar-toolkit-gtk3 2016-06-05 10:25:18 +10:00
AbrahmAB a803876fbf Added new popwindow module in sugar3.graphics 2016-06-05 01:53:16 +05:30
James Cameron 6f2550cde0 Ignore empty translated summary 2016-05-23 14:02:45 +10:00
Sam Parkinson ed5e9d072b Fix palette damage for tool buttons, fixes #4960
Currently, the ToolInvoker code passes the button child in such a
way that the WidgetInvoker queues only the child's draw.  In previous
Gtk+ versions, this magically resulted in redrawing the parent as well.

However, Gtk+ 3.20 is probably trying to save power and not randomly
redraw widgets.  To fix this, we must queue the redraw of the widget
that we want to redraw explicitly.
2016-05-08 21:49:46 +10:00
Sam Parkinson ea3b673f51 Merge branch 'master' of https://github.com/icarito/sugar-toolkit-gtk3 2016-04-27 21:39:12 +10:00
Sebastian Silva 2f2b2d20d8 Allow to run activities without Sugar shell.
- Handle lack of GSettings gracefully.
- Still requires sugar-datastore.
- Supports avoiding X11 docks/panels.
- Provides icons for Activity windows.

Try it outside Sugar. Go to an Activity directory and run 'sugar-activity'.
Tested it with Terminal, Finance, Write, Browse, Memorize under XFCE4.
Tested in Gnome under OLPC-OS.
Also works from Sugar Terminal Activity.
Does not affect regular Sugar operation.

This is patch v.2 -
    Addresses most concerns:
    - Removed commented code, sorry.
    - Changed code to use profile.get_nickname and get_color where possible.

    Couldn't the launcher just pass this info?
    Maybe the launcher could set the activity root as well?
        - It is intended to be usable from the command line also.
    Should put sugar version in the environment
        - It is intended to work even without Sugar Shell installed.
    Why don't we always set the icon?
        - On XO it might use some memory. I was concerned to degrade
        performance.
    Also, imports should be at the top of the file?
        - Also a concern about performance on XO.
        This way it is only loaded in this use case.
        Maybe it is insignificant -moved as requested.
    It would be nice if the changes to the POT for sugar-toolkit-gtk3
    could be incorporated in this pull request, please.
        - There were no changes to POT files as part of this patch. Maybe
        it is worth translating low level command line tools, not sure.
    Suggest packaged activities might also provide .desktop files.
        - Intriguing but not sure within scope of this patch. You mean generate
        a .desktop file automatically as an option? Sounds nice!
    Suggest sugar-activity might also accept path to unpacked bundle.
        - Implemented!
2016-04-21 03:10:30 -05:00
Sam Parkinson 66c01ba2c6 Merge branch 'smooth-animations-try3' of https://github.com/samdroid-apps/sugar-toolkit-gtk3 2016-04-21 07:37:06 +10:00
Sam Parkinson bde85bc7e8 Merge branch 'activityhandle-docs2' of https://github.com/ndefilippis/sugar-toolkit-gtk3 2016-04-21 07:36:18 +10:00
Sam Parkinson 4325c056a4 Merge branch 'styledocs' of https://github.com/ndefilippis/sugar-toolkit-gtk3 2016-04-21 07:35:40 +10:00
Sam Parkinson 526c87d7c6 Merge branch 'divbyzero' of https://github.com/erilyth/sugar-toolkit-gtk3 2016-04-21 07:34:24 +10:00
Sam Parkinson 9c0f7df739 Merge branch 'gi-require-version' of https://github.com/samdroid-apps/sugar-toolkit-gtk3 2016-04-21 07:33:15 +10:00
Sam Parkinson 79a45ba8e8 Merge branch 'doc-palettemenu' of https://github.com/samdroid-apps/sugar-toolkit-gtk3 2016-04-21 07:30:56 +10:00
Sam Parkinson ab0f5a18aa Merge branch 'doc-combobox' of https://github.com/samdroid-apps/sugar-toolkit-gtk3 2016-04-06 07:15:21 +10:00
Sam Parkinson 79e0dd44c6 Merge branch 'master' of github.com:sugarlabs/sugar-toolkit-gtk3 2016-04-05 21:32:00 +10:00
Sam Parkinson a62ddb1d87 Merge branch 'xocolor-docs' of https://github.com/ndefilippis/sugar-toolkit-gtk3 2016-04-05 21:30:32 +10:00
leonardcj 1b9da5b1d6 Update speech.py
Improve the i18n of speech strings with wiki links
2016-03-26 17:11:07 -04:00
Sam Parkinson 57fe093886 Merge branch 'ellipsize' of https://github.com/AbrahmAB/sugar-toolkit-gtk3 2016-03-26 13:18:44 +11:00
Sam Parkinson d3fbecf110 Merge branch 'gtk-3-20' of https://github.com/samdroid-apps/sugar-toolkit-gtk3 2016-03-03 20:00:18 +11:00
AbrahmAB cd449e7149 Ellipsis in title and msg of alert 2016-02-27 06:06:26 +05:30
Sam Parkinson 824e6dcb69 Set css class on toolitems when a palette or toolbar popsdown 2016-02-19 07:18:45 +11:00
James Cameron 8d4298ee9e Remove Rainbow, avoid race in creating directories
Sugar depended on Rainbow for clearing the activity instance/ and tmp/
directories.  But Rainbow is no longer used downstream.

- remove support for Rainbow,

- avoid race when creating directories; don't check they exist before we
  create.
2016-02-15 11:41:31 +11:00
Sam Parkinson 0a50431b98 Handle git submodules in bundlebuilder
Git submodules are only listed by their root directory in the
output of "git ls-files".  Therefore, we must handle this case
so that the files from the module are included in the install
and dist_xo commands.

To reproduce the issue, you could do something like the following:

    cd pippy
    git clone https://github.com/samdroid-apps/collabwrapper
    git add collabwrapper
    python setup.py install  # or just osbuild run
2016-01-05 21:05:11 +11:00
Martin Abente Lahaye 0494f704fb collaboration: handle tubes channel failure gracefully
CHANNEL_TYPE_TUBES was deprecated since telepathy-gabble 0.17.25 and
is no longer present on modern distributions. This breaks collaboration
for _all_ activities, regardless if they use tubes or not.

Therefore, check if the channel creation failed due to support and allow
channel creation process to continue.

This patch fixes collaboration for the activities that do not use tubes
channel in modern distributions, but also allow to use tubes when running
on older distributions.

Signed-off-by: Martin Abente Lahaye <tch@sugarlabs.org>
2016-01-04 18:08:32 -03:00
radicalonion 79d11c3a28 Write docs for sugar3.graphics.xocolor 2016-01-03 20:16:43 -05:00
Sam Parkinson c374b63990 Merge branch 'scrolldetector-docs' of https://github.com/ndefilippis/sugar-toolkit-gtk3 2016-01-03 16:47:12 +11:00
Sam Parkinson 37d3b63a90 Merge branch 'notebook-docs' of https://github.com/ndefilippis/sugar-toolkit-gtk3 2016-01-03 16:45:10 +11:00
radicalonion 28053c83b1 Improve docs for sugar3.activity.activityhandle 2016-01-02 23:48:17 -05:00
radicalonion 8b947ed02f Write docs for sugar3.graphics.scrollingdetector 2016-01-02 23:42:55 -05:00
radicalonion 486988035a Write docs for sugar3.graphics.notebook 2016-01-02 23:35:44 -05:00
Sam Parkinson 8d66786a31 Merge branch 'radiotoolbutton-docs' of https://github.com/ndefilippis/sugar-toolkit-gtk3 2016-01-03 15:12:26 +11:00
radicalonion db89aca86a Write docs for sugar3.graphics.radiotoolbutton 2016-01-02 23:08:17 -05:00
Sam Parkinson 8d0cc98e43 Set css name for widgets
In Gtk+ 3.20, you need to use the css name to select elements,
rather than the gtype name.  Therefore, these must be added.

The css name must be set before the class instances are created, as
it effects the class rather than the instance.  This is why it must
be places after the class definition.
2016-01-01 12:28:42 +11:00
radicalonion ec2dca92f1 Write docs for sugar3.graphics.toolbox 2015-12-31 09:19:05 -05:00
radicalonion 031af31029 Write docs for sugar3.graphics.style 2015-12-27 20:10:54 -05:00
mandarj7 51057baef5 Add usage example to sugar3.graphics.objectchooser 2015-12-23 16:59:26 +05:30
mandarj7 c95d74eab4 Improve docstrings in sugar3.graphics.objectchooser 2015-12-23 16:55:25 +05:30
mandarj7 264ee2b5a3 Add and improve docs for sugar3.graphics.objectchooser 2015-12-23 15:31:58 +05:30
erilyth 3ceb14f884 et value of "ph" to 0 if division by zero takes place 2015-12-22 15:12:15 +05:30
James Cameron 7ba120fe25 Fix persistent tree view palettes
A rework of the TreeViewInvoker used by the journal and activity list.

Fixes a persistent journal entry palette that reappears in journal or
home view.  https://bugs.sugarlabs.org/ticket/4918

Also fixes an over-sensitive journal icon; with the journal mostly
empty, rapidly move the mouse from the bottom of the screen into the
lowest icon and then out again.  Before this patch, the palette was
shown.  After this patch, the mouse must rest in the icon.

Changes made:

- override _ensure_palette_exists in parent class Invoker,

- remove reference to MouseSpeedDetector, it is no longer required,

- remove enter and leave events; they are for the TreeView as a whole,
  and are not required,

- properly detect that None is returned by get_path_at_pos, when the
  coordinates are outside the TreeView cells.

Not fixed:

- moving the mouse out of the journal icon invoker does not popdown the
  palette, but it does when moving the mouse out of the activity icon in
  the activity list; so this is a problem beyond the invoker,

Tested on Fedora 18 and Ubuntu 15.10.

Test cases:

- check a click will activate item,

- check a right-click will show palette,

- check a mouse hover will show palette,

- check a brief mouse passing will not show palette,

- check if mouse leaving palette will popdown.
2015-12-22 09:49:16 +11:00
Sam Parkinson b1386665b1 Merge branch 'master' of https://github.com/mjuvekar7/sugar-toolkit-gtk3 2015-12-20 17:21:01 +11:00
James Cameron ae80df7725 Fix remaining icon_size references
icon_size was changed to pixel_size, yet references remained, causing
extra log data.

Additional change missed from already merged 70bc4db.
2015-12-16 10:22:21 +11:00
Sam Parkinson 739dacbd01 Position palette based on event coords, fixes #4897
Instead of getting the position of the mouse later in the code,
this commit uses the coords given to sugar by Gtk that say where
the event happened.  This means that if the system is busy, or
the user is fast with the mouse, the palette will pop up where
they originally clicked.
2015-12-15 12:51:42 -03:00
James Cameron 70bc4dbe6a Fix remaining icon_size references
icon_size was changed to pixel_size, yet references remained, causing
extra log data.
2015-12-15 16:44:04 +11:00
mandarj7 c75655a134 Add documentation for sugar3.graphics.window module 2015-12-12 17:00:08 +05:30
James Cameron a11639eb86 demote warning to debug for sugar_accel_group 2015-12-08 15:11:17 +11:00
James Cameron 280c74cd9e allow start on full disk
When disk is full, Sugar will not start, because the backup log
directory cannot be created.

X session logs in tmpfs show this exception:

Traceback (most recent call last):
  File "/usr/lib/python2.7/runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/usr/lib/python2.7/site-packages/jarabe/main.py", line 20, in <module>
    logger.cleanup()
  File "/usr/lib/python2.7/site-packages/sugar3/logger.py", line 113, in cleanup
    os.mkdir(backup_dir)
OSError: [Errno 28] No space left on device: '/home/user/.sugar/default/logs/1448258018'

Fix is to ignore the exception.

We've been here before!  Was previously fixed in 2010:

	https://github.com/sugarlabs/sugar/commit/4cde481
	https://bugs.sugarlabs.org/ticket/1720
	http://dev.laptop.org/ticket/9623

But new regression introduced in 2012 during reorganisation of
code by Daniel Narvaez; the exception was no longer handled:

	https://github.com/sugarlabs/sugar/commit/0e45f9d
	https://github.com/sugarlabs/sugar/commit/19db9c5

Reported-by: Nathan Riddle <nathanr333@charter.net>
Tested-by: James Cameron <quozl@laptop.org>
2015-11-23 17:26:29 +11:00
Sam Parkinson a334888eb9 Write documentation for sugar3.graphics.combobox 2015-11-15 07:03:59 +11:00
Sam Parkinson aea65408f0 Specify library version prior to import, fixes #4900
Gi has been emitting warnings into the log to do this for some
time now. Not doing this has also caused bugs, such as #4900.
2015-10-31 14:44:46 +11:00