Commit Graph

90 Commits

Author SHA1 Message Date
8229194abf Issue #4107: Removing titlebar/borders from Windows Splash Screen (Backport) 2022-02-01 16:22:49 +00:00
951e7d8e03 app: fix some glitches in the splash status text.
These small glitches have bothered me for a while now, so I finally
fixed these before the dev release!
Basically there were 2 fixes:
1. use the ink extents to compute any drawn area as this is what will be
   actually drawn.
2. Not only expose the drawn area of the new text, but also the one of
   the previous text in order to be sure all text pixels are correctly
   reset (in case the new text is smaller than previous one). I.e. we
   must expose the smallest rectangle containing both previous and new
   area of text.

(cherry picked from commit 3a50e52ac7)
2020-10-26 20:18:24 +01:00
Ell
464f259473 app: during splash-screen lookup, don't leak GFileEnumerator
(cherry picked from commit e09bb089a8b04372ac66aea8dc15c97301245683)
2020-08-11 21:52:08 +03:00
Ell
8a2126fc98 app: s/char/gchar/ in last commit 2018-09-02 13:48:19 -04:00
Ell
499a8962b3 app: don't use g_file_peek_path() in splash.c
... use g_file_get_path() instead.

g_file_peek_path() was added in GLib 2.56, but gimp-2-10 only
requires 2.54.
2018-09-02 13:42:58 -04:00
d49606ee83 app: work with GIO in splash code.
This will go with the next commit, but I broke it so I can backport the
code without extension handling in gimp-2-10 first.

(cherry picked from commit c7b5977637)
2018-08-12 23:14:02 +02:00
a88c0ffb93 Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:47:19 +02:00
fa0a02125c app: make the splash texts dynamic, so they are larger on larger splashes
and position the lower text roughly in the middle between the upper
text and the progress bar. This gives better spacing that the previous
logic.
2018-05-08 22:54:53 +02:00
309d118f65 app, devel-docs: improve position of loading text on splash image.
The upper text will be centered on the top quarter of the bottom quarter
of the splash image, whereas the bottom text will be centered on the
bottom quarter of the bottom quarter of the splash (unless the splash is
too small, in which case the double of the layout pixel extents will be
used). Basically don't use absolute pixel values anymore for
positionning. This should all be done relatively since there are
nowadays all kind of display size (and positionning the text 6 pixels to
the bottom, as it was done, may be ok on low density displays, yet will
look ugly on high density screens).

Also write this down in the splash requirements in the release howto so
that splash designers are aware that the bottom quarter of their image
will have to be adapted for printing text.
2018-04-15 02:32:30 +02:00
fae9c28354 app: splash max size now half of width and height.
Apparently former 2/3 value was too big according to some.
This makes the splash take now at most a quarter of the screen area. I
really don't think that's too much anymore.
2018-03-26 21:20:17 +02:00
2707236c34 app: always resize SVG splash images to an ideal size.
Whereas we would only scale *down* big pixel images, we should both
scale up or down vector images since such format is made for display at
any size. This way, a vector splash screen is always displayed at ideal
size, whatever your display size.
2018-01-14 23:10:59 +01:00
f1e2b7c892 app: improve splash screen sizing.
Current code was using the dimension of the screen as a max size. That
is really too big. 2/3 of the screen size is an acceptable size being
both well visible and not overwhelming.
Also the current code was cropping, not rescaling, the splash image,
which is obviously not an acceptable solution because on a very small
displays, we would end up with ununderstandable piece of a bigger image.

This new code will allow to ship big size default splash image(s), and
display it in an acceptable size on both low and high density displays.
We indeed got a feedback from someone with a 4K display who was saying
the current dev splash screen was tiny on one's display.

Of course, custom splash can still be at any size; but from now on, we
will need for the *default upstream splash image(s)* to be of huge
dimension in order to show up well everywhere (at least Full HD splash,
which is half of a 4K UHD screen).

Animated splash images are still not resized though and will show up at
their default dimension. This means we cannot ship animated splash
screens as a default for the time being (they can still be installed as
custom splash).
2018-01-14 20:53:02 +01:00
3fa016fb4b app: clean out tab indentations. 2016-12-21 04:05:32 +01:00
d23135ef97 app: enable a pulsing progress bar in the splash
Startup functions can now make the progress bar pulse in order
to report that something of unknown duration is in progress.

Call status_callback (NULL, NULL, same_percentage)
2016-04-17 16:52:31 +01:00
62257edb3e app: make sure the GUI appears on the same monitor as the splash
Manually figure the monitor where the pointer is and pass it to the
splash, the empty image window and to session_restore() explicly.
2014-05-02 21:16:17 +02:00
568aa7a5b0 Bug 676667 - Splash image display in splash screen is delayed
Throw away the code that sets the splash image as window background
and always use GtkImage. Due to internal GDK changes since this code
was written, this is now the way to avoid any delay when showing the
image, for whatever reason.
2012-11-05 01:47:03 +01:00
3e119c5af7 libgimpcolor: add gimp_rgb[a]_set,get_pixel()
which converts from/to any pixel format using Babl. Added tons of
includes and CFLAGS now that libgimpcolor publically uses Babl.
2012-05-02 17:50:43 +02:00
3e336199b9 app: use gtk_box_new() 2011-09-30 11:29:11 +02:00
a4cf150191 Bug 649610 - Gimp does not initialize as long as the splash screen is not mapped
app: don't use gtk_widget_show_now as that blocks until the window maps.
2011-05-07 00:14:59 +02:00
fcfb7cf160 Use the new g_[s]list_free_full() instead of foreach() and free() 2011-03-07 17:11:28 +01:00
154eb3d307 app: port the splash's background pixmap drawing to cairo 2010-09-09 03:32:45 +02:00
e1d9a32a83 app: draw the splash's strings with cairo, not gdk_draw_layout() 2010-07-28 16:00:50 +02:00
454f1391d6 Use gtk_widget_get_window() instead of widget->window 2009-10-09 21:19:07 +02:00
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
baea3223f1 don't make the upper label bold. This change compensates for the smaller
2008-09-30  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: don't make the upper label bold. This change
	compensates for the smaller width of the new splash screen.


svn path=/trunk/; revision=27089
2008-09-30 11:27:00 +00:00
ca0b070852 added gimp_pango_layout_set_scale().
2008-09-30  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpwidgets-utils.[ch]: added
	gimp_pango_layout_set_scale().

	* app/gui/splash.c: set a smaller font size on the lower label.


svn path=/trunk/; revision=27088
2008-09-30 11:16:28 +00:00
95cd081d13 added a 'restored' flag to the Gimp object and set it in
2008-09-25  Sven Neumann  <sven@gimp.org>

	* app/core/gimp.[ch]: added a 'restored' flag to the Gimp object
	and set it in gimp_real_restore(). Added method 
gimp_is_restored().

	* app/gui/gui.c: call gui_unique_init() in gui_init() instead of
	that later in gui_restore_after_callback(). By doing so we start
	our DBus service (or message proxy window on Win32) much earlier
	in the start process, thus reducing the time frame where two
	instances of gimp can be launched.

	* app/gui/gui-unique.c
	* app/gui/gimpdbusservice.c: wait handling the queued file-open
	requests until gimp is fully restored.

	* app/gui/splash.c (splash_update): only run one iteration of 
the
	main loop. Doing it in a while loop can cause us to get stuck if
	the gimp-unique service already added an idle handler.


svn path=/trunk/; revision=27049
2008-09-25 08:56:58 +00:00
c4777516ba app/gui/splash.c don't use gtk_box_pack_start_defaults(), it got
2008-07-21  Michael Natterer  <mitch@gimp.org>

	* app/gui/splash.c
	* plug-ins/common/*.c: don't use gtk_box_pack_start_defaults(),
	it got deprecated in GTK+ trunk.


svn path=/trunk/; revision=26252
2008-07-21 13:41:00 +00:00
9d9726e4cd use gimp_pango_layout_set_weight().
2008-04-02  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: use	gimp_pango_layout_set_weight().

svn path=/trunk/; revision=25335
2008-04-02 16:39:44 +00:00
2df60469ba disable automatic startup notification. (gui_restore_after_callback):
2008-03-27  Sven Neumann  <sven@gimp.org>

	* app/gui/gui.c (gui_init): disable automatic startup 
notification.
	(gui_restore_after_callback): notify the display enviroment that
	the application has finished loading.

	* app/gui/splash.c: no need to deal with startup notification 
here
	any longer.


svn path=/trunk/; revision=25254
2008-03-27 06:58:29 +00:00
38f854e70a tweaked label positons.
2007-08-09  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: tweaked label positons.

svn path=/trunk/; revision=23169
2007-08-09 11:17:08 +00:00
a6d783152d app/core/gimp-user-install.c app/core/gimpgradient-load.c
2007-05-23  Sven Neumann  <sven@gimp.org>

	* app/core/gimp-user-install.c
	* app/core/gimpgradient-load.c
	* app/core/gimpsamplepoint.c
	* app/core/gimpscanconvert.c
	* app/core/gimpunit.c
	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell-scale.c
	* app/file/gimprecentitem.c
	* app/gui/splash.c: allocate structs using GSlice.

svn path=/trunk/; revision=22590
2007-05-23 10:22:09 +00:00
c0b134dbd0 reverted the progress bar size change.
2007-05-05  Mukund Sivaraman  <muks@mukund.org>

        * app/gui/splash.c: reverted the progress bar size change.     


svn path=/trunk/; revision=22420
2007-05-05 13:52:18 +00:00
4ac8573df2 make the splash progress bar lean and mean.
2007-05-05  Mukund Sivaraman  <muks@mukund.org>

        * app/gui/splash.c: make the splash progress bar lean and mean.    


svn path=/trunk/; revision=22419
2007-05-05 13:05:59 +00:00
83d3a750d4 include "libgimpmath/gimpmathtypes.h" instead of "libgimpmath/gimpmath.h".
2007-03-09  Michael Natterer  <mitch@gimp.org>

	* app/core/core-types.h: include "libgimpmath/gimpmathtypes.h"
	instead of "libgimpmath/gimpmath.h".

	* app/core/gimpbrush.h
	* app/paint/gimppaintcore.h
	* app/paint/gimpperspectiveclone.h
	* app/text/gimptext.h
	* app/tools/gimptransformtool.h: include gimpvector.h and
	gimpmatrix.h explicitely where they are needed in public structs.

	* app/*/*.c
	* tools/pdbgen/pdb/paths.pdb: include "libgimpmath/gimpmath.h"
	where needed.

	* app/pdb/paths_cmds.c: regenerated.


svn path=/trunk/; revision=22084
2007-03-09 13:00:01 +00:00
41237259c9 In all files, changed the standard copyright notice to say "GIMP - The GNU
2006-12-09  Sven Neumann  <sven@gimp.org>

        * In all files, changed the standard copyright notice to say
        "GIMP - The GNU Image Manipulation Program".
2006-12-09 21:33:38 +00:00
1e29e7dba8 unset the test strings after calculating the text color.
2006-07-05  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c (splash_average_text_area): unset the test
	strings after calculating the text color.
2006-07-05 20:05:05 +00:00
48a6fbea39 added "be_verbose" parameters and be verbose about which splash image is
2006-07-03  Michael Natterer  <mitch@gimp.org>

	* app/gui/splash.[ch]: added "be_verbose" parameters and be
	verbose about which splash image is actually loaded.

	* app/gui/gui.c (gui_init): pass gimp->be_verbose to
	splash_create().
2006-07-03 11:03:53 +00:00
59056d8d9a improved calculation of text color based on the splash image (bug
2006-06-28  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: improved calculation of text color based on
	the splash image (bug #165760).
2006-06-28 18:39:13 +00:00
5cb9278d07 connect to "expose-event" with G_SIGNAL_CONNECT_AFTER so that the text is
2006-06-05  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c (splash_create): connect to "expose-event"
with
	G_SIGNAL_CONNECT_AFTER so that the text is rendered on the
image.
2006-06-05 15:10:05 +00:00
4df1b1a5dd added back support for animated splashes but continue to use the optimized
2006-06-05  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: added back support for animated splashes but
	continue to use the optimized code for static splash images.
2006-06-05 14:31:28 +00:00
20a653a542 added some commented-out debug output that can be used to get an idea of
2005-11-05  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: added some commented-out debug output that can
	be used to get an idea of where the startup time is being spent.

	* app/core/gimp.c
	* app/pdb/internal_procs.c
	* app/pdb/procedural_db.c
	* app/plug-in/plug-ins.c
	* tools/pdbgen/app.pl: cosmetic changes.
2005-11-05 12:18:56 +00:00
bff081e6cb set the clip region instead of just the clip rectangle.
2005-11-05  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c (splash_area_expose): set the clip region
	instead of just the clip rectangle.

	* configure.in: bumped version to 2.3.6.
2005-11-05 11:05:56 +00:00
6200046753 set the splash image as back pixmap.
2005-11-03  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: set the splash image as back pixmap.
2005-11-02 23:27:00 +00:00
4f870bc132 deprecated RGB intensity functions and definitions. These coefficients do
2005-08-03  Sven Neumann  <sven@gimp.org>

	* libgimpcolor/gimprgb.[ch]: deprecated RGB intensity functions
	and definitions. These coefficients do not accurately compute
	luminance for contemporary monitors. Instead the coefficients from
	the sRGB spec should be used which have now been added.

	* libgimpcolor/gimpcolor.def: updated.

	* libgimp/gimpdrawable.c
	* libgimp/gimppixelfetcher.c
	* app/base/colorize.c
	* app/base/levels.c
	* app/base/temp-buf.c
	* app/core/gimpdrawable-blend.c
	* app/core/gimpdrawable-convert.c
	* app/core/gimpdrawable-desaturate.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage.c
	* app/gui/splash.c
	* app/widgets/gimpgradienteditor.c
	* modules/colorsel_triangle.c
	* plug-ins/common/aa.c
	* plug-ins/common/bumpmap.c
	* plug-ins/common/colorify.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/displace.c
	* plug-ins/common/engrave.c
	* plug-ins/common/gradmap.c
	* plug-ins/common/grid.c
	* plug-ins/common/mng.c
	* plug-ins/common/newsprint.c
	* plug-ins/common/png.c
	* plug-ins/common/whirlpinch.c
	* plug-ins/gflare/gflare.c
	* plug-ins/gfli/gfli.c
	* plug-ins/maze/handy.c
	* plug-ins/pagecurl/pagecurl.c: use gimp_rgb_luminance() and
	friends instead of the deprecated intensity functions.
2005-08-03 00:36:41 +00:00
93eab43eef Use the canonical form for signal names.
2005-05-27  Sven Neumann  <sven@gimp.org>

	* (lots of files): Use the canonical form for signal names.
2005-05-27 16:51:39 +00:00
9dc239a433 fixed display of progress labels in RTL environment.
2005-01-02  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c (splash_update): fixed display of progress
	labels in RTL environment.
2005-01-02 03:32:10 +00:00
4f76089e26 restrict splash image to screen size to guard us from insanely large
2004-12-13  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: restrict splash image to screen size to guard us
	from insanely large splash images.
2004-12-12 23:20:09 +00:00
9af2a5d2b1 only expose the area of the window that actually changed.
2004-12-09  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c (splash_update): only expose the area of the
	window that actually changed.

	* app/plug-in/plug-in-rc.c (plug_in_rc_write): changed the header
	and footer to be more in line with the other rc files.
2004-12-09 10:11:43 +00:00
67725268da fnord 2004-12-08 16:32:56 +00:00