projects/chimara/chimara.git
11 years agoUse GParamSpecFlags for the flags property libpeas-plugins
Philip Chimento [Fri, 12 Oct 2012 23:05:24 +0000 (01:05 +0200)]
Use GParamSpecFlags for the flags property

Doesn't do much as property binding is not working right now

11 years agoAdd configure UI to Frotz plugin
Philip Chimento [Fri, 12 Oct 2012 12:18:30 +0000 (14:18 +0200)]
Add configure UI to Frotz plugin

GObject bindings do not work, for some reason!

11 years agoImprove Python test program
Philip Chimento [Fri, 12 Oct 2012 12:17:07 +0000 (14:17 +0200)]
Improve Python test program

to make testing easier

11 years agoAdd properties to Frotz plugin
Philip Chimento [Sat, 6 Oct 2012 19:04:51 +0000 (12:04 -0700)]
Add properties to Frotz plugin

11 years agoExperiment with plugin configuration screen
Philip Chimento [Sat, 6 Oct 2012 16:50:41 +0000 (09:50 -0700)]
Experiment with plugin configuration screen

11 years agoInstall plugin files and Libpeas plugin objects
Philip Chimento [Wed, 3 Oct 2012 05:48:52 +0000 (22:48 -0700)]
Install plugin files and Libpeas plugin objects

Each interpreter plugin now has a .plugin information file and a
Chimara plugin object. The plugin objects are all empty right now
but they will get properties that can be configured.

11 years agoChange interpreter plugin .so names
Philip Chimento [Wed, 3 Oct 2012 05:46:42 +0000 (22:46 -0700)]
Change interpreter plugin .so names

Libpeas expects 'libNAME.so' instead of 'NAME.so', due to an automatic
GModule function to get the .so name of a plugin.

11 years agoBuild interpreter plugins with a single Makefile
Philip Chimento [Fri, 28 Sep 2012 13:57:09 +0000 (15:57 +0200)]
Build interpreter plugins with a single Makefile

This is to facilitate linking them with the libpeas plugin library
and making .plugin description files for them, while keeping the
interpreter source trees as close to Gargoyle as possible.

11 years agoMerge branch 'gtk3'
Marijn van Vliet [Mon, 24 Sep 2012 09:38:10 +0000 (11:38 +0200)]
Merge branch 'gtk3'

11 years agoMerge branch 'master' of ssh://git.stderr.nl/projects/chimara/chimara
Marijn van Vliet [Mon, 24 Sep 2012 09:37:57 +0000 (11:37 +0200)]
Merge branch 'master' of ssh://git.stderr.nl/projects/chimara/chimara

11 years agoMerge branch 'gtk3' of ssh://git.stderr.nl/projects/chimara/chimara into gtk3
Marijn van Vliet [Mon, 24 Sep 2012 09:37:17 +0000 (11:37 +0200)]
Merge branch 'gtk3' of ssh://git.stderr.nl/projects/chimara/chimara into gtk3

11 years agoBegan implementing OSX app-bundle support.
Marijn van Vliet [Mon, 24 Sep 2012 09:30:48 +0000 (11:30 +0200)]
Began implementing OSX app-bundle support.
Doesn't work yet, get Pango errors. See ticket #43.

11 years agoAdd test program for CSS styling
Philip Chimento [Sun, 23 Sep 2012 19:43:08 +0000 (21:43 +0200)]
Add test program for CSS styling

Doesn't do anything yet

11 years agoCopyright, change log, news file v0.9
Philip Chimento [Sun, 16 Sep 2012 20:22:35 +0000 (22:22 +0200)]
Copyright, change log, news file

Update the copyright notice in the license file, add content to the
NEWS and ChangeLog file. We will not use a ChangeLog, because just
referring to the git log does a much better job.

11 years agoKeep glkunix startup arg[c,v] alive
Philip Chimento [Sun, 16 Sep 2012 17:52:38 +0000 (19:52 +0200)]
Keep glkunix startup arg[c,v] alive

Bocfel (for one) relies on the argc and argv that it gets from the
Glk library not being freed during the course of the game. So now
we keep them alive.

11 years agoAdd Bocfel interpreter
Philip Chimento [Sun, 16 Sep 2012 17:52:07 +0000 (19:52 +0200)]
Add Bocfel interpreter

The Bocfel interpreter is now available for playing Z-machine files.

11 years agoFix automatic resource file search
Philip Chimento [Sun, 16 Sep 2012 17:11:36 +0000 (19:11 +0200)]
Fix automatic resource file search

Fixes #21. Don't look for an extra resource file if the game to be
loaded already has a blorb file extension.

11 years agoSome style cleanup work in glk_window_clear()
Marijn van Vliet [Sun, 16 Sep 2012 16:00:53 +0000 (18:00 +0200)]
Some style cleanup work in glk_window_clear()

11 years agoMerge branch 'gtk3' of ssh://git.stderr.nl/projects/chimara/chimara into gtk3
Marijn van Vliet [Sun, 16 Sep 2012 15:50:59 +0000 (17:50 +0200)]
Merge branch 'gtk3' of ssh://git.stderr.nl/projects/chimara/chimara into gtk3

11 years agoRedone textgrid resize logic. Fixes #8
Marijn van Vliet [Sun, 16 Sep 2012 15:50:54 +0000 (17:50 +0200)]
Redone textgrid resize logic. Fixes #8

11 years agoGive focus to the text buffer after pager click
Philip Chimento [Sun, 16 Sep 2012 14:03:31 +0000 (16:03 +0200)]
Give focus to the text buffer after pager click

11 years agoFix pager bug #25!
Philip Chimento [Sun, 16 Sep 2012 13:59:01 +0000 (15:59 +0200)]
Fix pager bug #25!

Finally fixed! An extra check to see whether the pager is at the
bottom. Apparently if you click to put the cursor somewhere that's
not the end of the text buffer, then scroll up with your scroll
wheel, then _sometimes_ the pager wouldn't stop paging when you
paged down to the end again, because the GtkAdjustment's "changed"
signal didn't fire. But now that's fixed.

11 years agoWhen paging, End key advances to end
Philip Chimento [Sun, 16 Sep 2012 13:38:10 +0000 (15:38 +0200)]
When paging, End key advances to end

Another way to stop paging is to press the End key.

11 years agoAdvance the pager to the end when clicked
Philip Chimento [Sun, 16 Sep 2012 13:35:02 +0000 (15:35 +0200)]
Advance the pager to the end when clicked

If you click on the pager button, then it should advance to the
end and stop paging.

11 years agoRemove code for styling the pager
Philip Chimento [Sun, 16 Sep 2012 13:21:23 +0000 (15:21 +0200)]
Remove code for styling the pager

It can be done by normal GTK CSS styling when we switch to that.

11 years agoConvert the pager to a GtkOverlay
Philip Chimento [Sun, 16 Sep 2012 13:21:08 +0000 (15:21 +0200)]
Convert the pager to a GtkOverlay

11 years agoUpdate interpreters to latest Garglk codebase
Philip Chimento [Sun, 16 Sep 2012 11:04:26 +0000 (13:04 +0200)]
Update interpreters to latest Garglk codebase

11 years agoEach time a sound is played, a new GioStreamSrc object is created. This fixes #37.
Marijn van Vliet [Sun, 16 Sep 2012 11:04:42 +0000 (13:04 +0200)]
Each time a sound is played, a new GioStreamSrc object is created. This fixes #37.

11 years agoMerge branch 'gtk3' of ssh://git.stderr.nl/projects/chimara/chimara into gtk3
Marijn van Vliet [Sat, 15 Sep 2012 23:05:44 +0000 (01:05 +0200)]
Merge branch 'gtk3' of ssh://git.stderr.nl/projects/chimara/chimara into gtk3

11 years agoupdated comments
Marijn van Vliet [Sat, 15 Sep 2012 23:05:36 +0000 (01:05 +0200)]
updated comments

11 years agoConst return type for static error messages
Philip Chimento [Sat, 15 Sep 2012 22:40:54 +0000 (00:40 +0200)]
Const return type for static error messages

11 years agoMake sound/graphics work in Nitfol.
Marijn van Vliet [Sat, 15 Sep 2012 23:03:37 +0000 (01:03 +0200)]
Make sound/graphics work in Nitfol.

11 years agoFix window resizing bug; no size requests!
Philip Chimento [Sat, 15 Sep 2012 21:28:40 +0000 (23:28 +0200)]
Fix window resizing bug; no size requests!

Size allocation is strictly top-down in Glk, so we actually don't
need to do size requests. All size requests are 1, so that the
window keeps its current size.

11 years agoRemove compatibility checks with GTK 2.x
Philip Chimento [Sat, 15 Sep 2012 19:51:33 +0000 (21:51 +0200)]
Remove compatibility checks with GTK 2.x

GTK 2.x won't be supported anymore on this branch.

11 years agoMerge branch 'gtk3' of ssh://git.stderr.nl/projects/chimara/chimara into gtk3
Marijn van Vliet [Sat, 15 Sep 2012 16:14:12 +0000 (18:14 +0200)]
Merge branch 'gtk3' of ssh://git.stderr.nl/projects/chimara/chimara into gtk3

11 years agoMerge branch 'master' into gtk3
Marijn van Vliet [Sat, 15 Sep 2012 16:13:59 +0000 (18:13 +0200)]
Merge branch 'master' into gtk3

11 years agoRedone flush_buffer logic, fixes #39
Marijn van Vliet [Sat, 15 Sep 2012 16:11:55 +0000 (18:11 +0200)]
Redone flush_buffer logic, fixes #39

11 years agoRemove Iliad code from codebase
Philip Chimento [Sat, 15 Sep 2012 15:46:59 +0000 (17:46 +0200)]
Remove Iliad code from codebase

The iRex Iliad is, unfortunately, obsolete, and the company that
made it is bankrupt. So it is not supported anymore.

11 years agoFix config.py
Philip Chimento [Sat, 15 Sep 2012 15:39:15 +0000 (17:39 +0200)]
Fix config.py

@DATADIRNAME@ = lib all of a sudden?! Now we use the proper
@datarootdir@ setting.

11 years agoRemove Babel library from codebase
Philip Chimento [Sat, 15 Sep 2012 15:38:07 +0000 (17:38 +0200)]
Remove Babel library from codebase

Since we are going to release the library with a minimal player, and
work together with Grotesque to produce a cool player, we are removing
the Babel library for now.

11 years agoMerge branch 'master' of ssh://git.stderr.nl/projects/chimara/chimara
Marijn van Vliet [Tue, 28 Aug 2012 08:57:54 +0000 (10:57 +0200)]
Merge branch 'master' of ssh://git.stderr.nl/projects/chimara/chimara

11 years agoDo not require database dependancies anymore, IFDB test program is irrelevant
Marijn van Vliet [Tue, 28 Aug 2012 08:56:37 +0000 (10:56 +0200)]
Do not require database dependancies anymore, IFDB test program is irrelevant
now.

11 years agoMerge branch 'master' into gtk3
Philip Chimento [Sun, 26 Aug 2012 00:21:36 +0000 (02:21 +0200)]
Merge branch 'master' into gtk3

11 years agoAdd missing $(AM_CPPFLAGS) to makefile
Philip Chimento [Sun, 26 Aug 2012 00:21:10 +0000 (02:21 +0200)]
Add missing $(AM_CPPFLAGS) to makefile

11 years agoImprovements to Python player
Philip Chimento [Sun, 26 Aug 2012 00:19:52 +0000 (02:19 +0200)]
Improvements to Python player

11 years agoVarious PyGObject fixes
Philip Chimento [Sat, 25 Aug 2012 22:52:09 +0000 (00:52 +0200)]
Various PyGObject fixes

11 years agoUse keyfile GSettings backend in Python player
Philip Chimento [Sat, 25 Aug 2012 22:50:26 +0000 (00:50 +0200)]
Use keyfile GSettings backend in Python player

This requires a modification to gobject-introspection; see
bugzilla.gnome.org #682702. If that fails, use the old behavior.

11 years agoSignal handler autoconnect now works in player.py
Philip Chimento [Sat, 25 Aug 2012 21:23:16 +0000 (23:23 +0200)]
Signal handler autoconnect now works in player.py

Not working may have been due to GTK 2 or maybe the bug was fixed.

11 years agoMerge branch 'master' into gtk3
Philip Chimento [Sat, 25 Aug 2012 21:01:23 +0000 (23:01 +0200)]
Merge branch 'master' into gtk3

11 years agoRegularize indentation in player.py
Philip Chimento [Sat, 25 Aug 2012 21:00:58 +0000 (23:00 +0200)]
Regularize indentation in player.py

11 years agoPEP8 cleanup in player.py
Philip Chimento [Sat, 25 Aug 2012 21:00:32 +0000 (23:00 +0200)]
PEP8 cleanup in player.py

11 years agoUse cairo for drawing
Philip Chimento [Sat, 25 Aug 2012 20:46:36 +0000 (22:46 +0200)]
Use cairo for drawing

GDK drawing does not exist in GTK 3 anymore. We now use cairo for
drawing. This means that the graphics window now corresponds to a
GtkDrawingArea, and we use a cairo surface as a backing store.

11 years agoReplace deprecated functions
P. F. Chimento [Sun, 3 Jun 2012 21:46:14 +0000 (23:46 +0200)]
Replace deprecated functions

gdk_pixbuf_(un)ref -> g_object_(un)ref

11 years agoExit after an error building the player interface
P. F. Chimento [Sat, 5 May 2012 09:29:56 +0000 (11:29 +0200)]
Exit after an error building the player interface

11 years agoRemove nonexistent function
Philip Chimento [Sat, 25 Aug 2012 19:06:34 +0000 (21:06 +0200)]
Remove nonexistent function

Apparently gtk_box_pack_end_with_defaults() has been deprecated for a
while and does not exist now in GTK 3.

11 years agoReplace deprecated signals
Philip Chimento [Sat, 25 Aug 2012 19:04:04 +0000 (21:04 +0200)]
Replace deprecated signals

The 'size-request' and 'expose-event' signals now don't exist anymore.
'expose-event' is simply replaced by 'draw'. We used 'size-request' in a
slightly different way than it was supposed to be: connecting a handler
after the default 'size-request' handler run, ensured that the handler
was run after the GtkTextView finished validating text positions, so we
could scroll the text view to the end after printing text to it. Luckily,
'size-allocate' works the same way in GTK 3.

11 years agoReplace size-request by minimal height-for-width
Philip Chimento [Sat, 25 Aug 2012 19:00:42 +0000 (21:00 +0200)]
Replace size-request by minimal height-for-width

The size-request method is now gone, in favor of height-for-width
allocation. The height-for-width implementation is currently minimal,
as described at
http://developer.gnome.org/gtk3/stable/ch24s02.html#id1328275
This could be made much nicer.

11 years agoRemove deprecated member access
Philip Chimento [Sat, 25 Aug 2012 18:58:50 +0000 (20:58 +0200)]
Remove deprecated member access

GObject classes aren't supposed to have their members accessed directly
anymore. Instead use accessor functions. In the case of our
gtk_text_tag_copy() function this requires some clever copying of
properties ;-)

11 years agoChange GDK_ key constants
Philip Chimento [Sat, 25 Aug 2012 18:55:46 +0000 (20:55 +0200)]
Change GDK_ key constants

In GTK 3 they are GDK_KEY_ constants

11 years agoBuild with GTK 3
Philip Chimento [Sat, 25 Aug 2012 18:50:45 +0000 (20:50 +0200)]
Build with GTK 3

Use GTK 3 instead of GTK 2 packages

11 years agoReplace deprecated functions
P. F. Chimento [Sun, 3 Jun 2012 21:46:14 +0000 (23:46 +0200)]
Replace deprecated functions

gdk_pixbuf_(un)ref -> g_object_(un)ref

11 years agoExit after an error building the player interface
P. F. Chimento [Sat, 5 May 2012 09:29:56 +0000 (11:29 +0200)]
Exit after an error building the player interface

12 years agoUpdate Andrew Plotkin's unit tests
Philip Chimento [Sun, 12 Feb 2012 13:10:21 +0000 (14:10 +0100)]
Update Andrew Plotkin's unit tests

12 years agoMerge branch 'glk-074'
Philip Chimento [Sun, 12 Feb 2012 12:58:18 +0000 (13:58 +0100)]
Merge branch 'glk-074'

12 years agoFixed a bug in creating fileref from fileref
Philip Chimento [Sun, 12 Feb 2012 12:55:38 +0000 (13:55 +0100)]
Fixed a bug in creating fileref from fileref

glk_fileref_create_from_fileref() would use the entire pathname of
the old fileref as its basename. Now it uses the original basename.

12 years agoImplement new name mangling
Philip Chimento [Sun, 12 Feb 2012 12:40:05 +0000 (13:40 +0100)]
Implement new name mangling

The Glk 0.7.4 spec has new recommendations on what characters should
be legal in filenames and how to make sure that files created by
different Glk implementations are interoperable.

12 years agoUpdate ExternalFile unit test
Philip Chimento [Sun, 12 Feb 2012 12:39:08 +0000 (13:39 +0100)]
Update ExternalFile unit test

This tests the new name-mangling code in glk_fileref_create_by_name().

12 years agoImplement recommended file suffixes in dialog
Philip Chimento [Sun, 12 Feb 2012 12:11:23 +0000 (13:11 +0100)]
Implement recommended file suffixes in dialog

When creating a file with glk_fileref_create_by_prompt(), there will
be a file filter active for the recommended file extension. For
fileusage_InputRecord and fileusage_Transcript, there will also be a
filter for text/plain files selectable. In any case there is also an
"All files" filter selectable.

12 years agoImplement resource streams
Philip Chimento [Sun, 12 Feb 2012 11:36:28 +0000 (12:36 +0100)]
Implement resource streams

12 years agoMerge commit 'cbb35cca'
Philip Chimento [Sat, 11 Feb 2012 23:57:53 +0000 (00:57 +0100)]
Merge commit 'cbb35cca'

12 years agoAdd new resource stream unit test
Philip Chimento [Sat, 11 Feb 2012 22:26:03 +0000 (23:26 +0100)]
Add new resource stream unit test

From Andrew Plotkin's glk-dev repository

12 years agoUpdate to Blorb protocol 1.5
Philip Chimento [Sat, 11 Feb 2012 21:47:17 +0000 (22:47 +0100)]
Update to Blorb protocol 1.5

Update documentation of new Blorb constants

12 years agoUpdate Dispatch layer
Philip Chimento [Sat, 11 Feb 2012 23:51:09 +0000 (00:51 +0100)]
Update Dispatch layer

12 years agoUpdate Glulxe to 0.4.7
Philip Chimento [Sat, 11 Feb 2012 23:33:39 +0000 (00:33 +0100)]
Update Glulxe to 0.4.7

12 years agoUpdate documentation to match Glk 0.7.4 spec
Philip Chimento [Sat, 11 Feb 2012 14:20:35 +0000 (15:20 +0100)]
Update documentation to match Glk 0.7.4 spec

12 years agoAdd stub functions for Glk 0.7.4 API
Philip Chimento [Sat, 11 Feb 2012 10:21:59 +0000 (11:21 +0100)]
Add stub functions for Glk 0.7.4 API

Technically, we implement the spec now by having the gestalt function
claim that the functions do nothing.

12 years agoUpdate header file and spec version number
Philip Chimento [Sat, 11 Feb 2012 07:45:52 +0000 (08:45 +0100)]
Update header file and spec version number

12 years agoPrevent unnecessary regeneration of VAPI
Philip Chimento [Sun, 5 Feb 2012 16:14:50 +0000 (17:14 +0100)]
Prevent unnecessary regeneration of VAPI

Vapigen doesn't update the timestamp of the VAPI file when the
contents don't change; so when the GIR changes but the VAPI doesn't,
the dependency tracking got confused. This updates the timestamp
properly.

12 years agoGtk-Doc 1.12 required for introspection
Philip Chimento [Sun, 5 Feb 2012 16:13:29 +0000 (17:13 +0100)]
Gtk-Doc 1.12 required for introspection

12 years agoWorkaround for recent files bug no longer needed
Philip Chimento [Sun, 5 Feb 2012 16:13:02 +0000 (17:13 +0100)]
Workaround for recent files bug no longer needed

12 years agoAdded a Python player!
Philip Chimento [Wed, 1 Feb 2012 22:13:36 +0000 (23:13 +0100)]
Added a Python player!

It crashes half the time because GObject Introspection isn't actually
officially supported with GTK 2. However, it's a simple player that
shows how to use Chimara in Python. We don't even have to write any
language bindings, thanks to the power of GObject Introspection! But
if we want to do anything serious with Python, we will need to port to
GTK 3 first.

It's a straight port of the C player, but it's 300 lines instead
of 1200 ;-)

12 years agoAdd 'running' property to ChimaraGlk
Philip Chimento [Wed, 1 Feb 2012 22:09:35 +0000 (23:09 +0100)]
Add 'running' property to ChimaraGlk

Read-only property that does the same as chimara_glk_get_running();
properties work nicely in language bindings

12 years agoIdentified two more entry points
Philip Chimento [Wed, 1 Feb 2012 21:06:05 +0000 (22:06 +0100)]
Identified two more entry points

This fixes an obscure bug! If you create your ChimaraGlk object
not with chimara_glk_new() but with g_object_new(), then the library
init function was not called. That caused a crash when trying to
access the thread-private data.

12 years agoAutomatic generation of VAPI file
Philip Chimento [Wed, 18 Jan 2012 16:38:24 +0000 (17:38 +0100)]
Automatic generation of VAPI file

The bugs in vapigen seem to have been worked out.

12 years agoBring documentation up to date with API 0.7.3
Philip Chimento [Wed, 18 Jan 2012 16:18:51 +0000 (17:18 +0100)]
Bring documentation up to date with API 0.7.3

12 years agoChange implemented Glk spec to 0.7.3.
Philip Chimento [Wed, 18 Jan 2012 13:18:30 +0000 (14:18 +0100)]
Change implemented Glk spec to 0.7.3.

12 years agoFix Gtk-Doc warnings
Philip Chimento [Wed, 18 Jan 2012 13:17:34 +0000 (14:17 +0100)]
Fix Gtk-Doc warnings

12 years agoMerge branch 'new-sound-api'
Philip Chimento [Wed, 18 Jan 2012 12:59:59 +0000 (13:59 +0100)]
Merge branch 'new-sound-api'

Conflicts:
docs/reference/chimara-docs.sgml

12 years agoAdd API to start plugins using GFile
Philip Chimento [Sun, 1 Jan 2012 17:32:28 +0000 (18:32 +0100)]
Add API to start plugins using GFile

To complete the API, we should have functions that start a plugin using
GIO's GFile API. It's easier for navigating the filesystem in language
bindings such as Python.

12 years agoMake const char * string argument
Philip Chimento [Tue, 6 Dec 2011 21:27:44 +0000 (22:27 +0100)]
Make const char * string argument

In chimara_if_run_game(), the game file argument should be const char *.

12 years agoAdd GIR and typelib to ignore files
Philip Chimento [Tue, 29 Nov 2011 22:38:43 +0000 (23:38 +0100)]
Add GIR and typelib to ignore files

12 years agoAdd introspection glossary to documentation
Philip Chimento [Tue, 29 Nov 2011 22:35:13 +0000 (23:35 +0100)]
Add introspection glossary to documentation

So that Gtk-Doc doesn't complain about that either, and now the
introspection annotations in the docs have nice hover-over
explanations.

12 years agoAdded IDs to documentation chapters
Philip Chimento [Tue, 29 Nov 2011 22:31:55 +0000 (23:31 +0100)]
Added IDs to documentation chapters

At Gtk-Doc's suggestion

12 years agoAdd silent rule to documentation Makefile
Philip Chimento [Tue, 29 Nov 2011 22:20:58 +0000 (23:20 +0100)]
Add silent rule to documentation Makefile

Since newer versions of Gtk-Doc spew much less garbage onto the
terminal, this fixes the rule that generates selectors.xml to be
less verbose as well.

12 years agoAdd missing symbol to documentation
Philip Chimento [Tue, 29 Nov 2011 22:18:16 +0000 (23:18 +0100)]
Add missing symbol to documentation

12 years agoFix some memory leakage
Marijn van Vliet [Thu, 3 Nov 2011 14:36:37 +0000 (15:36 +0100)]
Fix some memory leakage

12 years agofixed get_current_font to actually do something now.
Marijn van Vliet [Thu, 3 Nov 2011 14:23:42 +0000 (15:23 +0100)]
fixed get_current_font to actually do something now.
Fixes #35

12 years agoFixed some omitted applications of default and glk-input tags
Marijn van Vliet [Tue, 25 Oct 2011 14:08:56 +0000 (16:08 +0200)]
Fixed some omitted applications of default and glk-input tags

12 years agoAdd API to unload plugin module
Philip Chimento [Fri, 2 Sep 2011 23:59:17 +0000 (01:59 +0200)]
Add API to unload plugin module

This is a workaround for a very complicated bug. When you have more than
one ChimaraGlk widget opening the same plugin, then g_module_open()
doesn't dlopen() the plugin again; instead, it just adds a reference to
the open module.

This means that all static variables in the module are not reinitialized
when the Glk program starts running in the second ChimaraGlk widget.

This problem needs to be solved either by eliminating the static
variables from the plugins, or making sure that different ChimaraGlk
widgets open their plugins separately.

This commit does the latter, by adding API to unload the plugin module
(chimara_glk_unload_plugin()) so that ChimaraGlk widgets that run the
same program but not at the same time have the option to unload the
plugin in one widget before loading it in the other. Specifically, this
is the use case of Inform 7.

This does not fix the use case where two separate ChimaraGlk widgets
want to run the same program at the same time.

12 years agoClarify documentation
Philip Chimento [Mon, 29 Aug 2011 03:52:27 +0000 (23:52 -0400)]
Clarify documentation

...of chimara_glk_stop() and chimara_glk_wait()