summaryrefslogtreecommitdiff
path: root/ChangeLog.pre-2-6
diff options
context:
space:
mode:
Diffstat (limited to 'ChangeLog.pre-2-6')
-rw-r--r--ChangeLog.pre-2-666
1 files changed, 61 insertions, 5 deletions
diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6
index 5bad0b16c9..80fb6c00bd 100644
--- a/ChangeLog.pre-2-6
+++ b/ChangeLog.pre-2-6
@@ -1,3 +1,63 @@
+2002-02-17 Tor Lillqvist <tml@iki.fi>
+
+ * gdk/win32/*.c: Massive changes. Too many to list here, but I'll
+ try a summary:
+
+ 1) Unify GdkPixmap and GdkImage implementation: For each
+ GdkPixmap, allocate a GdkImage, and vice versa.
+ GdkPixmapImplWin32Data has a pointer to the GdkImage.
+ GdkImage::windowing_data is a pointer to the GdkPixmap.
+
+ This simplifies many pixmap and image related functions a lot, and
+ reduces duplicated code snippets. For instance, there is only one
+ place in gdk/win32 where CreateDIBSection() is called, in the
+ function _gdk_win32_new_pixmap(). Converting a bitmap (GdkPixmap)
+ to a Windows region is almost trivial, with the bitmap bits being
+ readily accessible in the associated GdkImage.
+
+ All blitting between GdkPixmaps, GdkWindows and GdkImages goes
+ through handled the _gdk_win32_blit() function, which calls
+ different functions to handle the cases of blitting from pixmaps,
+ inside windows (scrolling), or from windows, which all require
+ somewhat different handling.
+
+ 2) Support 256-color mode. This has long been very broken, now it
+ works more or less OK. Keep the logical palette for each colormap
+ as small as possible while allocating and freeing colors. Select
+ and realize the logical palette associated with a GdkColormap into
+ a DC before drawing or blitting.
+
+ When the display is in 256-color mode, make it possible for the
+ user to override the size of the palette(s) used with either the
+ GDK_WIN32_MAX_COLORS environment variable, or a -max-colors
+ command line option. It is possible to reduce the palette size all
+ the way down to using just the 16 static colors (which causes the
+ system visual to be of type GDK_VISUAL_STATIC_COLOR. This could
+ possibly be useful if one desperately wants to avoid color
+ flashing. (Note that in order for this to work properly, an as of
+ yet not commited fix to gdkrgb.c is needed.)
+
+ Handle the palette messages. On WM_PALETTECHANGED, call
+ UpdateColors() for the given window hierarchy. Do this only if a
+ window in some other top-level window hierarchy caused the palette
+ change (realized a palette). Do this max five times in a row (an
+ arbitrarily chosen limit), though, otherwise redraw by generating
+ expose events. On WM_QUERYNEWPALETTE, cause a redraw of the whole
+ window hierarchy by generating GDK_EXPOSE events.
+
+ 3) Code cleanup in general. For instance, remove the "emulated"
+ X11 structs ColormapStruct, Visual and XStandardColormap. Use the
+ new GDK_DEBUG_* flags for debugging output in the relevant source
+ files. Remove the unused colormap hash table in gdkcolor-win32.c
+
+ 4) Plug some resource leaks.
+
+2002-02-14 Tor Lillqvist <tml@iki.fi>
+
+ * gdk/win32/gdkdnd-win32.c (gdk_dropfiles_filter): Use
+ g_filename_to_uri() to actually create legal URIs in the
+ text/uri-list data.
+
2002-02-16 Manish Singh <yosh@gimp.org>
* gtk/gtkfilesel.[ch]: Added multiple selection API
@@ -1903,11 +1963,7 @@ Sat Jan 12 16:57:31 2002 Kristian Rietveld <kris@gtk.org>
cursor, set the Windows cursor to none first.
* gdk/win32/gdkgc-win32.c (predraw_set_foreground): Delete the old
- brush that was in the DC, like the win32-production branch does. I
- guess this plugs a resource leak? With the HDC cache, the old
- brush might be something we created ourselves, and not a stock
- brush. And it doesn't do any harm to call DeleteObject on stock
- brushes.
+ brush that was in the DC, like the win32-production branch does.
* gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_finalize): If
the window has a cursor which is the current Windows cursor,