Commit Graph

222 Commits

Author SHA1 Message Date
Mukund Sivaraman 6a6604871f windows: Add support for generating crash backtraces using Dr. MingW 2016-01-02 18:55:37 +05:30
Michael Natterer d5255dc133 app: derive GimpProcedure from GimpViewable
and remove redundant icon managing code from GimpPlugInProcedure
2016-01-01 20:05:32 +01:00
Jehan cd2b395194 app: batch commands won't run on existing instance. 2015-09-28 22:31:21 +02:00
Michael Henning 3e0d10d860 win: Group gimp windows together on the taskbar.
The plug-ins and the main window used to be separate.
2015-08-10 22:27:45 -04:00
Mukund Sivaraman 60197c227d windows: Call SetDLLDirectory() in the app
With this patch, there should be no more need to set PATH on Windows
before running GIMP.

This patch was tested by me and drawoc, but there could be some
undetected issues lurking. Revert if any problems arise.
2015-04-13 15:45:58 +05:30
Michael Natterer 0bf1f22b01 app: add a "Playground" perfs page and a --show-playground command line option
The page is shown by default in unstable but needs --show-playground
in stable versions. There is nothing yet on that page. Also, the icon
needs improvement...
2014-09-14 01:08:25 +02:00
Michael Natterer 4d15f219a7 app: don't use GLIB_CHECK_VERSION (2, 39, 90) for win32 argv parsing
Instead, use the new APIs unconditionally.
2014-08-12 15:37:46 +02:00
Michael Natterer 3e85deefb5 app: manage the system and user gimprc paths as GFiles 2014-07-28 15:03:06 +02:00
Michael Natterer 774e064fbf Bug 691169 - Gimp fails to open files with UTF8 characters as filenames...
...when started via Windows Explorer (e.g. the file context menu)

When built against GLib >= 2.39.90, use g_win32_get_command_line()
and g_option_context_parse_strv() which handle all sorts of windows
filename encodings properly.
2014-03-08 22:39:47 +01:00
Michael Natterer 697572ccc0 app,libgimp*: fix includes to follow our include policy
- don't include <gdk-pixbuf/gdk-pixbuf.h> in headers in app/
- instead, include it in many .c files instead of <glib-object.h>,
  finally acknowledging the fact that app/ depends on gdk-pixbuf almost
  globally
- fix up includes as if libgimpbase depended in GIO, which it soon will
2013-10-15 01:58:39 +02:00
Michael Natterer fa05f2ab11 app: need to call babl_init() in gimp_option_dump_gimprc() 2012-11-20 08:21:33 +01:00
Michael Natterer 373a4e7469 app: completely remove TileManager and friends (base/ and paint-funcs/)
And along with it a lot of stuff like the drawable preview cache, the
gegl tile manager backend, temporary gimp_gegl_buffer_foo() stuff, and
the remaining bits of performance.

The projection is in an evil semi-ported state which makes it work
ok-ish for stuff like layer moving, but absolutely unbearable for
painting, there is also an off-by-one rendering glitch at some zoom
levels.
2012-06-20 21:44:09 +02:00
Michael Muré 9966bcfd13 remove now useless and deprecated g_thread_init
Warning

g_thread_init has been deprecated since version 2.32 and should not be used in newly-written code. This function is no longer necessary. The GLib threading system is automatically initialized at the start of your program.
2012-05-03 20:44:07 +09:00
Martin Nordholts dfc11599d1 app: Small --dump-pdb-procedures-deprecated cleanup 2011-05-06 07:29:01 +02:00
Martin Nordholts ed01101429 app: Add hidden --dump-pdb-procedures-deprecated option
Allow to dump the names of all internal deprecated PDB
procedures. This enables us to do static analysis on *.scm files and
look for usage of deprecated procedures.
2011-05-05 01:01:17 +02:00
Mikael Magnusson b81276ca83 app: fix goption warning
Using G_OPTION_FLAG_NO_ARG with G_OPTION_ARG_NONE is not a valid combination,
glib 2.28.2 warns about it.

(gimp:20379): GLib-WARNING **: goption.c:2132: ignoring no-arg, optional-arg or filename flags (8) on option "debug-handlers" of type 0
2011-03-09 15:37:18 +01:00
Tor Lillqvist 24386abb3b Increase safety on Windows
Call SetDllDirectory() to reduce risk of DLL hijacking, and call
SetProcessDEPPolicy() to reduce risk of rogue code execution.
2010-09-02 18:40:50 +03:00
Martin Nordholts fa441e8d5f app: Refer to splash screen as splash screen, not startup window 2010-08-17 18:59:04 +02:00
Sven Neumann a56de78b01 app: add "language" gimprc option and set the language accordingly 2010-01-05 22:30:16 +01:00
Michael Natterer d9b5207aa2 Change licence to GPLv3 (and to LGPLv3 for libgimp).
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
2009-01-17 22:28:01 +00:00
Sven Neumann 3f256652e6 removed prototype for gimp_sigfatal_handler()
svn path=/trunk/; revision=27271
2008-10-13 19:49:51 +00:00
Sven Neumann f6e08757a1 app/Makefile.am new files with code split out of main.c.
2008-10-13  Sven Neumann  <sven@gimp.org>

	* app/Makefile.am
	* app/signals.[ch]: new files with code split out of main.c.

	* app/main.c: changed accordingly.


svn path=/trunk/; revision=27270
2008-10-13 19:32:33 +00:00
Tor Lillqvist c1d3d25ef2 Code built by the still unstable mingw-w64 toolchain gets bogus argc and
2008-08-07  Tor Lillqvist  <tml@novell.com>

	* app/main.c: Code built by the still unstable mingw-w64 toolchain
	gets bogus argc and argv when built as subsystem:windows, so use
	__argc and __argv instead, which seem to be OK.

	* libgimp/gimp.h: Similar change here.


svn path=/trunk/; revision=26420
2008-08-07 15:45:33 +00:00
Sven Neumann 0cf63ba421 moved some common code back to main.c
svn path=/trunk/; revision=26118
2008-07-11 09:16:23 +00:00
Sven Neumann 30cc37c5fe app/Makefile.am new files containing functionality to check for an already
2008-07-11  Sven Neumann  <sven@gimp.org>

	* app/Makefile.am 
	* app/unique.[ch]: new files containing functionality to check 
for
	an already running instance of GIMP of notifying it about files 
to
	open. Code split out of main.c.

	* app/main.c: changed accordingly.


svn path=/trunk/; revision=26117
2008-07-11 09:08:07 +00:00
Sven Neumann c6260c55f2 removed misleading comment.
2008-07-11  Sven Neumann  <sven@gimp.org>

	* app/main.c (gimp_init_malloc): removed misleading comment.


svn path=/trunk/; revision=26116
2008-07-11 08:22:53 +00:00
Tor Lillqvist 131aa16e7a New files. Rename gimp_show_version() to gimp_version_show() and move
2008-02-26  Tor Lillqvist  <tml@novell.com>

	* app/version.[ch]: New files. Rename gimp_show_version() to
	gimp_version_show() and move here. When given both --version and
	--verbose, print build-time and run-time versions of the most
	important dependencies.

	* app/Makefile.am: Add them.

	* app/main.c: Call gimp_version_show().

	* app/Makefile.am: Use -mwindows only for the GUI gimp, not for
	gimp-console.


svn path=/trunk/; revision=24968
2008-02-26 14:02:44 +00:00
Michael Natterer 479a649898 Some cleanup...
2007-12-29  Michael Natterer  <mitch@gimp.org>

	Some cleanup...

	* app/Makefile.am: change linking order.

	* app/main.c: move gegl initialization from here...

	* app/app.c: ...to here.

	* app/gegl/gimpops.c: removed.

	* app/gegl/gimp-gegl.[ch]
	* app/gegl/gegl-types.h: added.

	* app/gegl/Makefile.am: changed accordingly.

	* app/gegl/gimpoptilesink.[ch]
	* app/gegl/gimpoptilesource.[ch]: made more gimpish.


svn path=/trunk/; revision=24459
2007-12-29 01:35:04 +00:00
Øyvind Kolås b06afdec24 Added adapter GEGL operations for reading and writing to TileManagers.
2007-12-29  Øyvind Kolås  <pippin@gimp.org>

	Added adapter GEGL operations for reading and writing to TileManagers.

	* configure.in:
	* app/Makefile.am: added gegl subdir.
	* app/gegl/Makefile.am: added.
	* app/gegl/gimpops.c: (gimp_gegl_ops_init):
	* app/gegl/gimpoptilesink.[ch]: adapter GEGL operation for writing to
	GIMP tile managers.
	* app/gegl/gimpoptilesource.[ch]: adapter GEGL operation for reading
	from GIMP tile managers.
	* app/main.c: (main): call gimp_gegl_ops_init()
	* app/gegl/gegl/: added some headers from GEGL that are not installed
	since they are not public API yet.

svn path=/trunk/; revision=24458
2007-12-29 00:57:51 +00:00
Michael Natterer 3229e67f64 app/Makefile.am new files implementing a log facility which can be enabled
2007-11-15  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gimp-log.[ch]: new files implementing a log facility which
	can be enabled using the GIMP_LOG environment variable.

	* app/main.c: initialize it.

	* app/display/gimpdisplayshell-callbacks.c: use it instead of
	private debugging macros that need to be enabled at compile time.


svn path=/trunk/; revision=24160
2007-11-15 10:57:53 +00:00
Sven Neumann 3963c27fe4 added back short versions of --gimprc option and --console-messages
2007-10-17  Sven Neumann  <sven@gimp.org>

	* app/main.c: added back short versions of --gimprc option and
	--console-messages command-line options.

svn path=/trunk/; revision=23861
2007-10-17 18:43:23 +00:00
Sven Neumann c58c5e9659 added back short version of --gimprc option.
2007-10-17  Sven Neumann  <sven@gimp.org>

	* app/main.c: added back short version of --gimprc option.


svn path=/trunk/; revision=23860
2007-10-17 17:25:07 +00:00
Hans Breuer aface5c12a updated msvc build include <io.h> for get_osfhandle() prototype
2007-08-26  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc : updated msvc build
	* app/main.c : include <io.h> for get_osfhandle()
	* plug-ins/jpeg/jpeg-settings.h : prototype
	jpeg_swap_original_settings


svn path=/trunk/; revision=23377
2007-08-26 18:59:34 +00:00
Sven Neumann 09578ea070 removed extra check for gthread and fold it into the GLIB and GTK checks.
2007-06-25  Sven Neumann  <sven@gimp.org>

	* configure.in: removed extra check for gthread and fold it into
	the GLIB and GTK checks.

	* */Makefile.am: changed accordingly.

	* app/main.c (main): always call g_thread_init().

svn path=/trunk/; revision=22832
2007-06-25 12:41:59 +00:00
Michael Natterer 3679ac69e8 initialize "uri" to NULL. #include "file/file-utils.h"
2007-05-22  Michael Natterer  <mitch@gimp.org>

	* app/main.c (gimp_dbus_open): initialize "uri" to NULL.
	#include "file/file-utils.h"


svn path=/trunk/; revision=22560
2007-05-22 11:24:23 +00:00
Michael Natterer 88ac187c84 new function, fixed and factored out of file_utils_filename_to_uri().
2007-05-14  Michael Natterer  <mitch@gimp.org>

	* app/file/file-utils.[ch] (file_utils_filename_is_uri): new function,
	fixed and factored out of file_utils_filename_to_uri().

	* app/main.c (gimp_dbus_open): use it here instead of a simple
	strstr(filename, "://").


svn path=/trunk/; revision=22484
2007-05-13 23:15:34 +00:00
Sven Neumann 0619846aef minor cleanup
svn path=/trunk/; revision=22471
2007-05-11 09:39:54 +00:00
Sven Neumann ea4becaca4 don't attempt the conversion if the argument is already an URI.
2007-05-11  Sven Neumann  <sven@gimp.org>

	* app/main.c (gimp_dbus_open): don't attempt the conversion if the
	argument is already an URI.


svn path=/trunk/; revision=22470
2007-05-11 09:31:26 +00:00
Sven Neumann 05d2b9a475 convert filenames to absolute file URIs before passing them to
2007-05-11  Sven Neumann  <sven@gimp.org>

	* app/main.c (gimp_dbus_open): convert filenames to absolute 
file
	URIs before passing them to dbus_g_proxy_call().


svn path=/trunk/; revision=22469
2007-05-11 07:12:05 +00:00
Sven Neumann 49b8176aa5 Allow other applications to open images in GIMP as if they were new images
2007-04-17  Sven Neumann  <sven@gimp.org>

	Allow other applications to open images in GIMP as if they were
	new images (without associating a filename). Fixes bug #423118.

	* app/file/file-open.[ch]: added parameter 'as_new' to
	file_open_image() and its variants.

	* app/actions/data-commands.c
	* app/actions/documents-commands.c
	* app/actions/file-commands.c
	* app/core/gimpimagefile.c
	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-open-location-dialog.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimptoolbox-dnd.c: changed accordingly.

	* app/app.[ch]
	* app/main.c: added new command-line option '--as-new'.

	* app/widgets/gimpdbusservice.[ch]
	* app/widgets/dbus-service.xml: added new method "OpenAsNew" to the
	D-Bus interface.

	* docs/gimp.1.in: document the new command-line option.


svn path=/trunk/; revision=22264
2007-04-17 15:54:01 +00:00
Sven Neumann fe0b95b6bc app/widgets/gimpdbusservice.[ch] added a boolean return value to the D-Bus
2007-03-27  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdbusservice.[ch]
	* app/widgets/dbus-service.xml: added a boolean return value to
	the D-Bus Open method.


svn path=/trunk/; revision=22182
2007-03-27 20:12:44 +00:00
Sven Neumann 518b13d17b changed file_open_from_command_line() to deal with a single filename only.
2007-03-27  Sven Neumann  <sven@gimp.org>

	* app/file/file-open.[ch]: changed file_open_from_command_line()
	to deal with a single filename only.

	* app/widgets/gimpdbusservice.[ch]
	* app/widgets/dbus-service.xml: changed the D-Bus Open method to
	take only a single filename.

	* app/app.c
	* app/main.c: changed accordingly.


svn path=/trunk/; revision=22181
2007-03-27 19:40:31 +00:00
Sven Neumann 766d27da9d renamed to app/app.[ch].
2007-02-02  Sven Neumann  <sven@gimp.org>

	* app/app_procs.[ch]: renamed to app/app.[ch].

	* app/Makefile.am
	* app/main.c: changed accordingly.


svn path=/trunk/; revision=21838
2007-02-02 14:27:16 +00:00
Tor Lillqvist 2f6ed7f688 Use wide character version of SetConsoleTitle().
2007-01-26  Tor Lillqvist  <tml@novell.com>

	* app/main.c: Use wide character version of SetConsoleTitle().


svn path=/trunk/; revision=21782
2007-01-26 21:22:07 +00:00
Tor Lillqvist 92cdceed77 Make the handling of console output make more sense Win32. Should mostly
2007-01-26  Tor Lillqvist  <tml@novell.com>

	Make the handling of console output make more sense Win32. Should
	mostly fix #400927.
	    
	* app/app_procs.c (app_exit): Drop the Win32 "This console window
	will close in ten seconds" message from here.
	(app_run): Drop the call to FreeConsole() from here. GIMP is built
	as a GUI executable on Windows, and in case we do open a fresh
	console window in main() (see below), we shouldn't then
	immediately close it here.

	* app/errors.c (errors_init): Drop printing the "You can mimize
	this window, but don't close it" message on Win32 from here.

	* app/main.c (gimp_open_console_window): New Win32-only
	function. If either stdout or stderr are unconnected, open a new
	console window and connect stdout and/or stderr to it as
	needed. Set the console title to "GIMP output. You can minimize
	this window, but don't close it." Register an atexit function that
	waits for the user to close the console window.
	(wait_console_window): New Win32-only function. Registered as an
	atexit function when GIMP has opened a new console window. Prompts
	the user to type any character to close the window.
	(main, gimp_show_version): Always call gimp_open_console_window()
	in the unstable version. As the "This is a development version of
	GIMP. Debug messages may appear here" message says, one point of
	the unstable version is that debug messages should be visible, so
	I think it makes sense to always see them in an unstable
	version. In stable versions, call gimp_open_console_window() only
	if options that cause output that the user wants to see were
	given, like --help and --version.


svn path=/trunk/; revision=21781
2007-01-26 20:47:36 +00:00
Sven Neumann 509351d069 improved output.
2007-01-23  Sven Neumann  <sven@gimp.org>

	* app/main.c: improved output.


svn path=/trunk/; revision=21763
2007-01-23 07:52:13 +00:00
Sven Neumann 4c5cfb61d3 added Activate method.
2007-01-23  Sven Neumann  <sven@gimp.org>

        * app/widgets/dbus-service.xml: added Activate method.

        * app/widgets/gimpdbusservice.[ch]: raise the toolbox from the
        Activate method. Do nothing when no URIs are passed

        * app/main.c: try the Activate method on the org.gimp.GIMP 
service
        when being called without any filenames on the command-lines.


svn path=/trunk/; revision=21761
2007-01-22 23:25:37 +00:00
Sven Neumann 569e1b35fd simplified handling of d-bus errors.
2007-01-22  Sven Neumann  <sven@gimp.org>

	* app/main.c: simplified handling of d-bus errors.


svn path=/trunk/; revision=21760
2007-01-22 21:45:13 +00:00
Sven Neumann 8b405077c8 call gdk_notify_startup_complete() when we have delegated the work to
2007-01-19  Sven Neumann  <sven@gimp.org>

	* app/main.c: call gdk_notify_startup_complete() when we have
	delegated the work to another GIMP instance and are about to 
quit.


svn path=/trunk/; revision=21738
2007-01-19 19:21:18 +00:00
Sven Neumann bfd1dd5f07 INSTALL check for D-Bus GLib bindings.
2007-01-19  Sven Neumann  <sven@gimp.org>

	* INSTALL
	* configure.in: check for D-Bus GLib bindings.

	* app/Makefile.am
	* app/main.c: check if an interactive GIMP instance proposes
	itself on the D-Bus and delegate to it. Allow this behaviour to be
	overridden by using the --new-instance command-line option.

	* app/widgets/Makefile.am
	* app/widgets/gimpdbusservice.[ch]
	* app/widgets/dbus-service.xml: added an object that offers a
	D-Bus service.

	* app/gui/Makefile.am
	* app/gui/gui.c: connect to the D-Bus and export the GimpDBusService.


svn path=/trunk/; revision=21737
2007-01-19 14:50:13 +00:00