The whole multi-threading changes in the help plug-in seem to badly
break on macOS. See discussion in reopened#12898.
We decided to get rid of it for now and see later if we need to
reimplement this (after understanding what is going on).
Revert "plug-ins: fix#13049 Calling help on unknown help-id causes..."
This reverts commit 7d153bcc6d.
Revert "plug-ins/help: fix thread unnecessarily waiting when locale_parse failed"
This reverts commit fd0ccfa16c.
Revert "plug-ins/help: fix crash when locale is NULL"
This reverts commit 4075add5b4.
Revert "plug-ins: fix failing to access help from within GIMP"
This reverts commit 38f0527ebc.
Revert "plug-ins: add some better error handling when the docs XML request/parsing fails."
This reverts commit 543bb374a8.
Revert "plug-ins: try to load the gimp-help.xml file in a thread."
This reverts commit f2d47e910b.
progress on statusbar to not finish
When we returned early we did not call `_gimp_help_progress_finish`.
We fix this by adding those calls in relevant places.
I had a case where the GIO API ended just stuck and never returning.
This API is made to work in a thread so that you can cancel loading URIs
from the main thread. Let's make use of that.
This is not the main reason for the specific output in #9994. These ones are
more probably because of similar usage in GTK (which updated its own calls to
g_file_info_get_is_hidden|backup() in version 3.24.38). But we should likely
also update the various calls we have to use the generic
g_file_info_get_attribute_*() variants.
To be fair, it is unclear to me when we can be sure that an attribute is set.
For instance, when we call g_file_enumerate_children() or g_file_query_info()
with specific attributes, docs say that it is still possible for these
attributes to not be set. So I assume it means we should never use direct
accessor functions.
The only exception is that I didn't remove usage of g_file_info_get_name(),
since its docs says:
> * Gets a display name for a file. This is guaranteed to always be set.
Even though it also says just after:
> * It is an error to call this if the #GFileInfo does not contain
> * %G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME.
Which is very contradictory. But assuming that this error warning was
over-zealous documentation, I kept the direct accessors since they are supposed
to be slightly more optimized (still according to in-code documentation) so
let's priorize them when we know they are set for sure.
2009-01-17 Michael Natterer <mitch@gimp.org>
* all files with a GPL header and all COPYING files:
Change licence to GPLv3 (and to LGPLv3 for libgimp).
Cleaned up some copyright headers and regenerated the parsers in
the ImageMap plugin.
svn path=/trunk/; revision=27913
2008-08-13 Sven Neumann <sven@gimp.org>
* plug-ins/help/gimphelplocale.c (gimp_help_locale_parse):
reverted the last change as g_file_query_info() is now also
implemented on Win32.
svn path=/trunk/; revision=26537
2008-08-13 Sven Neumann <sven@gimp.org>
* plug-ins/help/gimphelplocale.c (gimp_help_locale_parse):
continue even if g_file_query_info() fails. We can't show proper
progress information then, but we can still attempt the
download.
svn path=/trunk/; revision=26536
2008-05-16 Sven Neumann <sven@gimp.org>
* plug-ins/help/Makefile.am
* plug-ins/help/gimphelpprogress.[ch]
* plug-ins/help/gimphelpprogress-private.h: new files providing a
simple framework for progress indication and cancellation.
* plug-ins/help/gimphelp.[ch]
* plug-ins/help/gimphelpdomain.[ch]
* plug-ins/help/gimphelpitem.[ch]
* plug-ins/help/gimphelplocale.[ch]
* plug-ins/help/gimphelptypes.h
* plug-ins/help/help.c
* plug-ins/help/locales.[ch]: changed accordingly (passing NULL
as progress for now). Also updated copyright headers.
* plug-ins/help-browser/help-browser.c: same here.
* plug-ins/help/gimp-help-lookup.c: use the new API and show some
progress indication when the --verbose command-line option is used.
svn path=/trunk/; revision=25674
2008-04-02 Sven Neumann <sven@gimp.org>
* plug-ins/help/Makefile.am
* plug-ins/help/gimphelpdomain.[ch]
* plug-ins/help/gimphelplocale.[ch]
* plug-ins/help/gimphelp.[ch]
* plug-ins/help/gimp-help-lookup.c: use GIO to access the help index.
svn path=/trunk/; revision=25331
2006-11-23 Michael Natterer <mitch@gimp.org>
* plug-ins/help/gimphelpitem.[ch]
* plug-ins/help/gimphelplocale.[ch]: added some EEKy members to
the structs where the browser can store its state.
* plug-ins/helpbrowser/Makefile.am
* plug-ins/helpbrowser/helpbrowser.c: link against libgimphelp.a
and implement all the help ID mapping ourselves.
* plug-ins/helpbrowser/dialog.[ch]: added a tree view with the
help IDs of the current help domain. Double click to jump to an
item. Very early-stage code and very unusable, please try anyway.
* app/widgets/gimphelp.c: if the help browser is available, call
it directly, not via the help plug-in.
2006-11-20 Michael Natterer <mitch@gimp.org>
* plug-ins/help/domain.[ch]
* plug-ins/help/help.h: removed these files...
* plug-ins/help/gimphelptypes.h
* plug-ins/help/gimphelp.[ch]
* plug-ins/help/gimphelpdomain.[ch]
* plug-ins/help/gimphelpitem.[ch]
* plug-ins/help/gimphelplocale.[ch]: ...completely chopped them
and added a new private utility library. Soon to be used by the
helpbrowser too.
* plug-ins/help/Makefile.am
* plug-ins/help/gimp-help-lookup.c
* plug-ins/help/help.c: changed accordingly.
2005-02-07 Sven Neumann <sven@gimp.org>
* plug-ins/help/domain.c
* plug-ins/helpbrowser/dialog.c: same trick here; should allow to
work with help files installed in an UNC path.
2004-12-05 Sven Neumann <sven@gimp.org>
* plug-ins/help/domain.c
* plug-ins/help/gimp-help-lookup.c
* plug-ins/help/help.[ch]: if the help files are not installed,
uninstall the temporary procedure and quit. Fixes bug #160258.
2004-08-14 Sven Neumann <sven@gimp.org>
* plug-ins/help/domain.[ch]: allow to specify the location of the
index files independently from the base URL.
* plug-ins/help/help.c: changed accordingly.
* plug-ins/help/gimp-help-lookup.c: added command-line options to
specify base URI and root directory for index files.
2004-08-14 Sven Neumann <sven@gimp.org>
* plug-ins/help/help.[ch]: moved some defines to the header file.
* plug-ins/help/domain.c: trivial change to remove the libgimpbase
dependency.
* plug-ins/help/Makefile.am
* plug-ins/help/gimp-help-lookup.c: added a very simple
command-line tool that allows to lookup a help-id.
2004-08-12 Sven Neumann <sven@gimp.org>
* plug-ins/common/sel_gauss.c
* plug-ins/common/unsharp.c: place the preview widget into the
upper left corner like all other plug-ins do.
* plug-ins/help/domain.c: added some (disabled) debug output.
2004-07-27 Sven Neumann <sven@gimp.org>
* libgimpbase/Makefile.am
* libgimpbase/gimpbase.h
* libgimpbase/gimpbase.def
* libgimpbase/gimpmemsize.[ch]: added new files with memsize
related functions (moved here from gimputil.c) and
GIMP_TYPE_MEMSIZE (moved here from app/config/gimpconfig-types.[ch]).
* libgimpbase/gimputils.[ch]: removed gimp_memsize_to_string() here.
* libgimpbase/gimpunit.[ch]: added GIMP_TYPE_UNIT (moved here from
app/config/gimpconfig-types.[ch]).
* libgimpbase/gimpbase-private.c
* libgimp/gimptile.c
* libgimp/gimpunitcache.c
* plug-ins/help/domain.c
* app/xcf/xcf-read.c: need to include glib-object.h.
* plug-ins/common/uniteditor.c: use GIMP_TYPE_UNIT.
* app/config/gimpconfig-types.[ch]: removed code that lives in
libgimpbase now.
* app/config/gimpconfig-deserialize.c: changed accordingly.
* app/config/gimpbaseconfig.c
* app/config/gimpdisplayconfig.c
* app/core/gimpcontext.c
* app/gui/grid-dialog.c
* app/tools/gimpcolortool.c
* app/widgets/gimpaction.c
* app/widgets/gimpunitstore.c: no need to include gimpconfig-types.h
any longer.
2004-03-18 Sven Neumann <sven@gimp.org>
Added support for localized help (bug #136996). Will need some
minor touches to improve error reporting but basically it works.
* plug-ins/help/Makefile.am
* plug-ins/help/help.h: new file with common defines.
* plug-ins/help/help.c
* plug-ins/help/locales.c: include help.h, made debugging output
optional.
* plug-ins/help/domain.[ch]: added a hash table with locales for
each help domain.
2004-03-18 Sven Neumann <sven@gimp.org>
* plug-ins/help/Makefile.am
* plug-ins/help/locales.[ch]: new files with code to handle locales.
* plug-ins/help/help.c: changed accordingly.
* plug-ins/help/domain.[ch]: added support for a fallback URL to
handle missing help content. i18n support is missing still.
2004-03-09 Sven Neumann <sven@gimp.org>
Finished some work that Brix started on the help system. It's
now possibly to use an external web-browser for context help
(bug #136081):
* configure.in
* plug-ins/Makefile.am
* plug-ins/help/Makefile.am
* plug-ins/help/domain.[ch]
* plug-ins/help/help.c: new plug-in that does the help domain
management. Most of this used to live in the helpbrowser plug-in.
* plug-ins/helpbrowser/Makefile.am
* plug-ins/helpbrowser/domain.[ch]: removed these two files here.
* plug-ins/helpbrowser/helpbrowser.c: changed accordingly.
* app/widgets/gimphelp.c: use the new help plug-in.