File: ChangeLog

package info (click to toggle)
xenophilia 0.8-3
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 840 kB
  • ctags: 1,202
  • sloc: ansic: 11,181; makefile: 188; python: 47
file content (329 lines) | stat: -rw-r--r-- 15,774 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
ChangeLog
=========

Xenophilia-0.8:
  System changes:
  * Works with beta GTK 2.0 but patches are off and all options are not recognized.
    GTK 2.0's widgets ask the theme to draw them differently than in GTK 1.2, but style properties
    in the theme file can be used to revert to the old look/behavior.
    You have to edit the theme file if you want the same theme for GTK 2.0 as for GTK 1.2.

  * New image code and new images. Most of the images have been created by software or
    computed manually using a pencil, paper and a calculator, input using a broken keyboard
    with no spacebar, no '*' character and no cursor keys. ;-(
    I wonder if anybody will notice that the images are changed ...

  Visual changes:
  * All solid arrows are now equiangular triangles.
    I intended to use these all along. 

  * Top and bottom notebook tabs have diagonal edges. They are drawn using remapped pixmaps
    of antialiased lines, of course. However, there are some single pixel drawing errors
    here and there because of overlap.
    You can change a #define in xeno_theme_draw if you don't want them.

  New options:
  * Added configurable focus color "focus".
  * All knobs can now be one of: true, false/none, buds [in|out], holes, dimple [in|out], box,
    in, out, etched [in|out], thin [in|out]

  Bug fixes:
  * Tweaked scrollbar slider update code. Draws well with strange GtkAdjustment.
  * Fixed style class stuff.
  * Used to crash when "widget" parameter was passed as NULL to some routines.
    (Maybe I should have left the bug unfixed just for spite, for reasons I am not telling you!)
  * Vertical sliders look OK now.

  Other:
  * Uses autoconf.

Xenophilia-0.7:
  As always, I have hardly left any code untouched for this release ;-).

  System changes:
  * Now uses a different image set for pseudocolor displays, which will reduce color usage even more.
  * Recognizes the environment variables XENO_THEME_PATCH (set to "NONE" to disable patches) and
    XENO_THEME_CMAP (set to "YES" to fool the engine it is running on a pseudocolor display).
  * Now accepts themes made for the "XenoStep" mod, but that doesn't say that it respects all options. ;-)
  * A port to GTK 1.3/2.0 is underway. It compiles, but it does not work ...
    I will not implement support for style-properties until they are in 1.3 in a somewhat stable state.
    The patches will stay in there for as long as they are needed.

  Improved background code:
    Overall:
    * Background-relative color is set only for the primary window of a widget, i.e. no more dark sliders knobs.

    Background pixmap:
    * Automatically sets "bg[<state_type>]" to the average color from "bg_pixmap[<state_type>]" if there is one,
      which means that the colors used for shadows will also be computed accordingly.
    * Pixmap alignment option:  "align" '['<state_type>']' '=' ("default" | <x-align> <y-align>)
      Example: align[NORMAL] = 0.5 0.5, will center the background pixmap.
      Parameters "window" and "root" will be implemented later for fake transparency.

    Gradients:
    * Gradients are now reference-counted and looked up faster.
    * Gradients are dithered, minimizing banding artifacts.
      The downside is that a large diagonal gradients now occupies a large pixmap and takes
      much more time to create than before.
    * Gradients in pseudocolor are dithered using only two additional colors.
    * If there is a background pixmap and a gradient, they will be combined.
      Looks great, but becomes almost too slow to be bearable for large pixmaps. Use well.
    * Radio buttons can have diagonal gradients.

  Improved shadow code:
  * New shadow types: ["none"|"etched"|"thin"|"black"|"note"|"next"|"default"] ("in"|"out")
  * Shadow options "in" and "out". They take state types. Shade anyway you want!
    If unset, the Xenophilia shadow-selection code will kick in.
  * Text labels can be shaded, same manner as shadow options. E.g. if you want text to be
    bevelled in when insensitive, use "label[INSENSITIVE] = in".
  * Shadow option "none" for prelighted toolbar-buttons. Default is "black out".

  Small changes:
  * No more prelight on GTK_SHADOW_IN frames.
  * Small changes to scrollbar code.
  * Uses a separate color for antialiasing scrollbar buttons.

Xenophilia-0.6:
  This is mostly a bug-fix release.

  Visual changes:
  * The popup_arrows arrows are different. I think these are better.

  * Reduced color usage on pseudocolor displays.

Xenophilia-0.5:
  A lot of things have been rewritten for this release. I hope it does not have any
  serious bugs that would impact its stability. =)

  System changes:
  * A patch will not have effect on a widget unless the widget is themed to use the engine.
    This does not mean that patches will not be installed, it just means that the patched
    functions will work as default GTK+ unless "xeno" is defined to be used as engine
    in the current style or in an inherited style.
    An exception is the space between viewports and scrollbars which is set to 1 pixel.
    If you know of any better way to do it, please mail me <misagon@bahnhof.se>.

  Visual changes:
  * Numeric entries with up and down-arrows (GtkSpinButton) are now right-justified.
    This was common on the Amiga. Some people like this, others don't.
    The patch was written (originally as a subclass) by Gian Luigi Gragnani. Thanks!

  * A better-looking checkmark image, in a couple of sizes.

  * There is no longer an arrow in torn-off menus, instead there are more lines.
    You wouldn't notice it unless I told you. =)

  * Resizebars have prelighting. Yeah, it did not have it per default.

  New options:
  * Gradients! Just wrote it, a little bit unstable. The syntax is:
    
      bg_style '['<state_type>']' = gradient <gradient_type> <factor> [<gamma>]
    
    where <gradient_type> is one of "horizontal", "vertical" and "diagonal".
    The factor is used for blending between the background color and the light
    and dark colors. 1.0: no shading, 2.0: full gradient, 0.0: full inverted gradient.
    Horizontal and vertical gradients are very fast but consume little memory,
    diagonal gradients consume a little more.
    No dithering is done, so use gradients only with grayscale or true color displays.

  * Added "box" knob type, which has always been the default for the resizebars.

  * You can now redefine the shading factors for the colors used as "white" and "black",
    and for each state. These can be used for very bright and very dark themes.
    The default for "white" is 2.0 and for "black" it is 0.0, i.e. white and black.

  * The shadow types for the prelighted menu item and frame around the default button
    (the one that is automatically clicked when pressing RETURN) are now
    configurable.

      menu_item_shadow = <shadow_type>
      button_default = <shadow_type>

    where <shadow_type> is "in", "out" or "none" preceded with an optional "thin".

  * The shadow around windows are now optional. This would look better with window managers
    such as KWM where the windows have no internal border.
    The option is "flat_windows = <boolean>". Default is "false".

  Small changes:
  * Insensitive frames now use shaded colors instead of dotted lines.
    The insensitive shading factors are automatically computed as: 
	<shading> [INSENSITIVE] = ( <shading> [NORMAL] + 1.0 ) / 2.0
    .. unless you explicitly set the shading factor for the insensitive state.
    The pixmap remapping code had to be changed to not blend too much.
    I also cleanup up insensitive rendering here and there and changed the arrow
    code to use the foreground color.

  * Scrollbars smaller than their requisitions now have smaller buttons instead of
    just being a mess. I also added a configurable variable "scrollbar_flush" that when
    true makes the scrollbars borderless, just to test a borderless scrollbar for the
    shortcut-bar in Gentoo.

  * Modified remapping code to use a XYZ color space instead of HSL.. Smaller, faster.

Xenophilia-0.4:
  Structure:
  * Changed license to GNU Library General Public License (LGPL).
  * Removed the XenoSephia and the pixmap configurations.

  New options:
  * Styles can now be in "thin" mode.
    Within the 'engine "xeno" { ... }' closure in the gtkrc file,
    set "thin = true". (or "thin = false" if you want).
    The option does now also cascade like all other "xeno" options.
  * The "shade" and "shine" factors can now be set for every state
    the way you set colors and pixmaps for different states using
    subscripts, i.e. "shine [INSENSITIVE] = 0.5".
    You can still use the old syntax.
  * There is a larger selection of knobs for the scrollbar, handle box
    and resize bar (GtkPaned).

	scrollbar_knob	= none | dimple | lines | holes | buds
	handle_knob	= false | lines | holes | buds
	paned_knob	= false | dimple | lines | holes | buds

    Use of "false" or "none" will use the default settings.
    The old syntax for setting scrollbar parameters still apply.
    See Xenophilia/README.html for a long description.

  * You can now enable/disable the box around the scrollbar arrows.
    This is not because of any UI design principle, just an Amiga-ism.

  Visual changes:
  * GtkCombo: The popup button is now inside the entry to make it visual
    that they behave as one widget and not two.
  * All arrows wrapped within buttons are now drawn in the foreground color,
    i.e. all arrows that could be seen as labels using a symbol font are now
    drawn that way. Arrows who are themselves buttons are drawn with button
    frames.

  Small changes:
  * Pixmap remapping code can now remap using a conditional code for thin mode.
  * Modified black arrow drawing routine a little bit.
  * Popup windows now have thick frames.

  Bug fixes:
  * Does now restore patched functions who have found their way into subclasses.
  * A little more stable when previewing themes in the GNOME theme selector.
    There are still a few things done by the patches that can not be solved,
    but at least they do not cause the theme selector to crash.
    Other themes who have patches can still crash your theme selector
    and other GNOME programs when switching theme to or from them.
    Thanks to Mads Villadsen for reporting the bug!

Xenophilia-0.3:
  Bug fixes:
  * Fixed trough click bug. I did not use the new GtkStep 1.7 code as I had
    changed so much in the scrollbar code already.
  * Fixed position bug when scrollbar was max size.

  Code changes:
  * Notebook tab corners are now antialiased.

  Small changes:
  * Cleaned up background pixmap code.
  * Dotted focus frames are now perfect.
  * Toolbars look better in GNOME.
  * Polygon drawing code changed again.

Xenophilia-0.2:
  New stuff:
  * I modified the scrollbar code a little bit and gave it options.
    See the more user-friendly changelog "NEWS".
  * Added "shine" and "shade" options.
  * Added an experimental "thin" mode. Set "thin = true" in rc file to use.
    Don't mix thin and non-thin frames. That would be ugly.

  Bug fixes:
  * The character '6' in the font was 2064 pixels wide, which made windows
    that contained the character very wide. Thanks to people have reported
    this bug! Not all of you traced it back to the font, though.
  * Cleaned up checkbutton, checkmenuitem and radiomenuitem image code.
    Now also use antialiased remapped images, and the PRELIGHT state.
    That old code should not have been released in the first place.
  * Notebook tab backgrounds are now drawn correctly.

  (Re)implemented support for background pixmaps:
  * A background pixmap for a widget will not be used if the style's background
    color does not match the background color in the rc style.
    I.e. when the program sets a color, it overrides the settings in the rc style.
  * "buttondefault" does not use the button's background pixmaps.
  * I included a quick'n dirty python script that creates horizontal
    and vertical gradient xpms, together with a "gradients" make target
    and a sample gtkrc. You can use it without themes. Not an engine feature.

  Code changes:
  * There can now be more than one instance of an internal image, remapped to
    different colors. It should work for both named widgets as well as program-
    modified styles. In the rc file, the "engine" clause is not required.
  * Modified the GtkPaned patches a little bit. Use arrow cursors instead
    of the cross cursor, don't draw on the border and don't cover children.

  Minor changes:
  * Implemented xeno_draw_diamond(). Now 100% of what the theme renders
    is my code, and it is looking pretty sweet too. =)
    I want to implement xeno_draw_cross and xeno_draw_oval, but I don't know how
	because it is not even implemented in GTK+.
  * Reduced pixel-scale overdraw in polygon routine.
  * Shaved off a few pixels from the submenu arrow.
  * Unnoticable change in stippled focus frame rendering.
  * Cleaned up handle box code.
  * Added some contrast.
  * Removed the sticky pin image and replaced it with ye olde arrow.
    It was too ugly.

Xenophilia-0.1:
  * First release. Friday June 25, 1999.
    Appeared on gtk.themes.org, Thursday July 1. (?)

Changes from GtkStep 1.5:
  * Much better polygon and arrow drawing code.
    Almost everything is now drawn using the new polygon routine.
  * Most pixmaps used have been hand-drawn/calculated, and are
    remapped at runtime to the user's colors.
  * Recessed bevels are drawn using the pens of the parent widget.
  * The frame around "Default" buttons has the same width in all directions.
 
  * Noninteractive widgets like progress and status bars, frames and rulers
    are drawn with thin borders so as not to invite interaction.
  * Flat progress bar. It is not structural, and it can not be manipulated.
  * Frame titles are beveled. They are not widget labels.
    It also looks better, borrowed from MUI on Amiga.
  * Ghosted widgets are drawn in a semi-transparent look.
    This includes spinbutton arrows. In the original GTK look, insensitive
    widgets only have their labels different, except for images.
  * Torn-off menus are drawn as windows/menu bars.
  * Less space between scrollbar and viewport.
    The original space was larger than the space that most programs
    use between their other widgets. That could give the impression that
    the scrollbar did not belong to the viewport, but to another widget.
  * Non-editable Entry widgets are drawn with the insensitive "base" color.
  * Menuitems are recessed when prelighted, as _releasing_ a menu item
    is what activates it, not pressing it.
  * New consistent checkmark and radio buttons.
    Bevelled down when selected, beveled up otherwise.
 
  * New softer frames.
    The drawback is that I use both white and black.
  * Scrollbar and menu arrows are black.
  * Pressed-down buttons look pressed down, not inverted.
    This includes the scrollbar buttons.
  * Notebook tabs are rounded.
  * Borderless toolbar buttons are drawn as in Netscape Navigator,
  * Windows have thin frames. This may look ugly with some programs that
    don't set any border between children and the window.
    I hack those. How about you? =)
  * Menu bars and lines are drawn thin to fit the window style.
  * The "mid" color is used extensivelly.
  * Tooltips' have a slight 3D'ness, but they do not look like buttons.
 
  * Checkmarks, radio buttons and toggle buttons use the "base" color
    when selected.
 
  * Entry and slider widgets have their focus frame drawn on the inside.
  * Notebook tabs, checkmarks and radio buttons have dotted focus frames.
 
  * Sliders have more lines.
  ... plus countless other things I have not bothered to write down.