summaryrefslogtreecommitdiff
path: root/NEWS
blob: 52c55148cb160f2cab8d1c0cb4ef156fffdfc700 (plain)
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
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
2.13.2
==

This release just contains a merge of all the changes on the
constraints_experiments branch.

Thanks to Havoc Pennington for reviewing the gargantuan patch and
suggesting lots of little fixes for making it better, to Rob Adams and
Soeren Sandmann for grilling me on how some of the difficult internals work
-- allowing me to improve the documentation, to Olav Vitters for finding an
easy-to-fix crasher bug in early testing and for repeatedly extending my
deadline for switching from working on Metacity to Bugzilla, to Ray Strode
for finding two crashers and fixing one of them in early testing, to Bryan
Clark for usability advice, to Davyd Madeley and Christian Kellner for
testing Xinerama stuff, to Sebastien Bacher for packaging an early version
and finding some obscure bugs (that I unfortunately still can't duplicate
and will probably still need to fix once I can),

Bugs fixed:
  unfiled - constraints.c is overly complicated[1]
  unfiled - constraints.c is not robust when all constraints cannot
            simultaneously be met (constraints need to be prioritized)
  unfiled - keep-titlebar-onscreen constraint is decoration unaware (since
            get_outermost_onscreen_positions() forgets to include
            decorations)
  unfiled - keyboard snap-moving and snap-resizing snap to hidden edges
    86644 - resize should have a shift option like move does
   109553 - gravity w/ simultaneous move & resize doesn't work
   113601 - maximize vertical and horizontal should toggle and be
            constrained
   122196 - windows show up under vertical panels
   122670 - jerky/random resizing of window via keyboard[2]
   124582 - keyboard and mouse snap-resizing and snap-moving erroneously
            moves the window multidimensionally
   136307 - don't allow apps to resize themselves off the screen (*cough*
            filechooser *cough*)
   142016, 143784 - windows should not span multiple xineramas unless
            placed there by the user
   143145 - clamp new windows to screensize and force them onscreen, if
            they'll fit
   144126 - Handle pathological strut lists sanely[3]
   149867 - fixed aspect ratio windows are difficult to resize[4]
   152898 - make screen edges consistent; allow easy slamming of windows
            into the left, right, and bottom edges of the screen too.
   154706 - bouncing weirdness at screen edge with keyboard moving or
            resizing
   156699 - avoid struts when placing windows, if possible (nasty a11y
            blocker)
   302456 - dragging offscreen too restrictive
   304857 - wireframe moving off the top of the screen is misleading
   308521 - make uni-directional resizing easier with alt-middle-drag and
            prevent the occasional super annoying resize-the-wrong-side(s)
            behavior
   312007 - snap-resize moves windows with a minimum size constraint
   312104 - resizing the top of a window can cause the bottom to grow
   319351 - don't instantly snap on mouse-move-snapping, remove
            braindeadedness of having order of releasing shift and
            releasing button press matter so much

   [1] fixed in my opinion, anyway.
   [2] Actually, it's not totally fixed--it's just annoying
       instead of almost completely unusable.  Matthias had a
       suggestion that may fix the remainder of the problems (see
       http://tinyurl.com/bwzuu).
   [3] This bug was originally about not-quite-so-pathological
       cases but was left open for the worse cases. The code from
       the branch handles the remainder of the cases mentioned in
       this bug.
   [4] Actually, although it's far better there's still some minor
       issues left: a slight drift that's only noticeable after
       lots of resizing, and potential problems with partially
       onscreen constraints due to not clearing any
       fixed_directions flags (aspect ratio windows get resized in
       both directions and thus aren't fixed in one of them)
        
New feature:
  81704 - edge resistance for user move and resize operations; in
          particular 3 different kinds of resistance are implemented:
     Pixel-Distance: window movement is resisted when it aligns with an
       edge unless the movement is greater than a threshold number of
       pixels
     Timeout: window movement past an edge is prevented until a certain
       amount of time has elapsed during the operation since the first
       request to move it past that edge
     Keyboard-Buildup: when moving or resizing with the keyboard, once a
       window is aligned with a certain edge it cannot move past until the
       correct direction has been pressed enough times (e.g. 2 or 3 times)

Major code changes:
  - constraints.c has been rewritten; very few lines of code from the old
    version remain.  There is a comment near the top of the function
    explaining the basics of how the new framework works.  A more detailed
    explanation can be found in doc/how-constraints-works.txt
  - edge-resistance.[ch] are new files implementing edge-resistance.
  - boxes.[ch] are new files containing low-level error-prone functions
    used heavily in constraints.c and edge-resistance.c, among various
    places throughout the code.  testboxes.c contains a thorough testsuite
    for the boxes.[ch] functions compiled into a program, testboxes.
  - meta_window_move_resize_internal() *must* be told the gravity of the
    associated operation (if it's just a move operation, the gravity will
    be ignored, but for resize and move+resize the correct value is needed)
  - the craziness of different values that
    meta_window_move_resize_internal() accepts has been documented in a
    large comment at the beginning of the function.  It may be possible to
    clean this up some, but until then things will remain as they were
    before--caller beware.
  - screen and xinerama usable areas (i.e. places not covered by
    e.g. panels) are cached in the workspace now, as are the screen and
    xinerama edges.  These get updated with the workarea in
    src/workspace.c:ensure_work_areas_validated()

Translation
  Michiel Sikkes (nl)

2.13.1
==

Thanks to Philip O'Brien, Kjartan Maraas, and Aidan Delaney for
improvements in this release.

 - add handling for META_PREF_CURSOR_THEME and META_PREF_CURSOR_SIZE
   for more complete debug info (Philip) [#318976]
 - Remove possible g_source leak in #ifdef'd out code, in case anyone uses
   it in the future (Kjartan) [#320050]
 - Changed the 'minimized' field of the MetaTabEntry struct to 'hidden'
   (Aidan) [#168455]

Translations
  Miloslav Trmac (cs), Francisco Javier F. Serrador (es), Takeshi AIHANA (ja),
  Erdal Ronahi (ku), Theppitak Karoonboonyanan (th)

2.13.0
==

Thanks to Björn Lindqvist, Kjartan Maraas, Søren Sandmann,
Elijah Newren, Ross Cohen, and Muktha for improvements in this release
since 2.12.1.

 - Mave ancestors come along with the transient when moving the window from
   one workspace to another (Björn) [#314977]
 - Fix the workspace switcher tabpopup to display the right windows and to
   fix the pick-a-new-window-to-focus algorithm in order to not select
   windows that aren't showing (Björn) [#170475]
 - Fix a couple memory leaks (Kjartan, Søren, Elijah) [#313030]
 - Make alt-esc (the "switch between windows immediately" keybinding)
   actually show minimized windows too (Ross) [#107072]
 - Make alt-esc consistent with alt-tab by leaving stacking of unselected
   windows unchanged (Ross) [#314285]
 - Clarify the meaning of the auto_raise preference (Elijah) [#312421]
 - Fix a crash that occurs when removing some virtual desktops and windows
   happen to be on those desktops (Elijah) [#318306]
 - Make the unfocussed Simple window border visible with high contrast
   inverse theme (Muktha) [#121361]
 - Fix edge snapping for multi-screen (non-xinerama) setups (Elijah)
   [#319425]

Translations
  Vladimir Petkov (bg), Kostas Papadimas (el), Adam Weinberger (en_CA),
  Ivar Smolin (et), Michiel Sikkes (nl), Marcel Telka (sk), Funda 
  Wang (zh_CN)

2.12.1
==

Thanks to Ray Strode, Havoc Pennington, and Elijah Newren for
improvements in this release.

 - Truncate ridiculously long titles to avoid crashing or letting the
   pager crash (Ray, Havoc, Elijah) [#315070]
 - Get the tabbing window outline to work with gtk+ 2.8.4 again
   (Elijah) [#317528]

Translations
  Mahay Alam Khan (bn), Francisco Javier F. Serrador (es), Ivar Smolin (et),
  Iñaki Larrañaga Murgoitio (eu), Luca Ferretti (it), Christian Rose (sv),
  Clytie Siddall (vi), Funda Wang (zh_CN)

2.12.0
==

Thanks to Brent Smith for finding the crasher in the release candidate!

 - Fix an uninitialized variable problem causing crashes (Brent) [#315000]

Translations
  Bryn Salisbury (cy), Hendrik Richter (de), Christophe Merlet (RedFox) (fr),
  Ignacio Casal Quinteiro (gl), Norayr Chilingaryan (hy), Young-Ho Cha (ko),
  ´ygimantas Berucka (lt), Michiel Sikkes (nl), Leonid Kanter (ru), Danilo
  ¦egan(sr), Baris Cicek (tr)

2.11.3
==

Thanks to Björn Lindqvist and Elijah Newren for improvements in
this release.

 - Check for the right versions of glib and gtk+ (Björn) [#314116]
 - Avoid obscuring centered-on-desktop windows which are denied focus
   (Elijah) [#313234]

Translations
  Vladimir Petkov (bg), Jordi Mallach (ca), Kostas Papadimas (el),
  Ivar Smolin (et), Gabor Kelemen (hu), Mohammad DAMT (id), Duarte
  Loreto (pt), Mugurel Tudor (ro), Laurent Dhima (sq), Maxim
  Dziumanenko (uk)

2.11.2
==

Thanks to Elijah Newren, Jaap Haitsma, Ray Strode, and Brent Smith for
improvements in this release.

 - Fix an easy to trigger crasher in 2.11.1 caused by unneeded
   debugging spew (Elijah) [#311819]
 - Make sure that Metacity dialogs have icons (Jaap) [#309876]
 - Fix an infinite restacking flicker loop in sloppy and mouse focus
   with fullscreen windows (Elijah) [#311400]
 - Change default theme from Simple to Clearlooks (Elijah)
 - Vastly improve the behavior of keyboard move/resize and edge
   snapping (Ray) [#310888]
 - Remove a duplicate string (Brent) [#309774]

Translations
  Yuval Tanny (he), Gnome PL Team (pl), Raphael Higino (pt_BR),
  Chao-Hsiung Liao (zh_TW)

2.11.1
==

Thanks to Elijah Newren, Ken Harris, Matthias Clasen, Christian
Persch, and Billy Biggs for improvements in this release.

 - Fix a miscoloring of parts of the titlebar introduced in the last
   unstable release (Elijah) [follow-up to #169982]
 - Provide a more lenient threshold for drawing rounded corners (Ken)
   [#122065]
 - Make the Xcursor changes in the last unstable release effective
   (Matthias) [follow-up to #308106]
 - Revert the _NET_ACTIVE_WINDOW behavior change made in the 2.9.x
   unstable series; activation includes changing a window to the
   current workspace again (Elijah) [reversion of #128380]
 - Restore original window size if the window was maximized upon
   withdrawing it (Elijah, Christian) [#137185]
 - Fix a raising bug with a window that has more than one child window
   (Elijah, Billy) [part of #307875]
 - Try to place windows denied focus near the focus window and fix a
   xinerama bug with the placement (Elijah) [part of #307875]
 - Avoid modal dialogs being obscured in somewhat pathologically
   strange circumstances that Eclipse seems to be good at triggering
   (Elijah) [part of #307875]

Translations
  Miloslav Trmac (cs), Kostas Papadimas (el), Adam Weinberger (en_CA),
  Francisco Javier F. Serrador (es), Ilkka Tuohela (fi), Christophe
  Merlet (RedFox) (fr), Ignacio Casal Quinteiro (gl), Ankit 
  Patel (gu), Yair Hershkovitz (he), Takeshi AIHANA (ja), Kjartan
  Maraas (nb), Kjartan Maraas (no), Marcel Telka (sk), Theppitak
  Karoonboonyanan (th), Clytie Siddall (vi), Funda Wang (zh_CN)

2.11.0
==

This release contains all fixes up to Metacity 2.10.2 plus some new goodies.

Thanks to Matthias Clasen, Aivars Kalvans, Björn Lindqvist, and
Andrew Johnson for improvements in this release.

 - React to cursor theme changes (Matthias) [#308106]
 - Plug a small leak with xinerama information (Aivars) [#307884]
 - Split up main() into more manageable chunks and make use of GOpt
   (Björn) [#305331]
 - Speed up vertical gradients (Andrew) [#169982]

Translations
  Hendrik Richter (de), Ivar Smolin (et), Ignacio Casal
  Quinteiro (gl), Clytie Siddall (vi)

2.10.2
==

Thanks to Billy Biggs, Greg Hudson, Elijah Newren, Ray Strode, Ryan
Lortie, and Soeren Sandmann for improvements in this release.

 - Makes metacity a bit faster when dragging windows around (Soeren) [#141813]
 - Fix simple memory error, using the address of a local variable as a
   hash key (Ryan) [#307209]
 - Fix a small leak in the case of a SYNC_COUNTER property value and
   HAVE_XSYNC not defined (Ryan) [#307214]
 - Cleanup font data when done with it (Ray) [#306720]
 - If the window has a modal transient which is being unmanaged, don't
   focus it (Elijah) [#305362]
 - Make sure window position is calculated correctly for reconfigure
   requests when part of the XWindowChanges structure is uninitialized
   (Greg) [#305257]
 - Add a resize popup when resizing constrained windows (Ray) [#305564]
 - Don't accidentally treat maximize vertically as maximize in both
   directions (Elijah) [#302204]
 - Put all transients of the new window, if any exist, in the
   calc_showing queue (Elijah, Billy) [#303284]

Translations
  Kostas Papadimas (el), Priit Laes (et), Pauli Virtanen (fi), Ignacio
  Casal Quinteiro (gl), Theppitak Karoonboonyanan (th), Canonical
  Ltd (xh), Woodman Tuen (zh_TW)

2.10.1
==

This is a stable release to coincide with the release of Gnome 2.10.0.

Thanks to Dan Winship and Lex Hider for fixes in this release.

 - Make sure the "Close" button has the focus in the
   buggy-session-management-applications-warning dialog instead of the
   table (Dan) [#172703]
 - add doc/code-overview.txt and doc/how-to-get-focus-right.txt to the
   distributed files (Lex) [#170519]

Translations
  Adam Weinberger (en_CA), Christopher Orr (en_GB), Elnaz Sarbar (fa),
  Gabor Kelemen (hu), Jyotsna Shrestha (ne), Steve Murphy (rw),
  Baris Cicek (tr), Canonical Ltd (xh)

2.10.0
==

This is a stable release to coincide with the release of Gnome 2.10.0.
The only difference between this version and 2.9.34 is some
translation updates.

Translations
  Vladimir Petkov (bg), Gabor Kelemen (hu), ´ygimantas Berucka (lt),
  Reinout van Schouwen (nl), Mugurel Tudor (ro), Danilo ¦egan (sr),
  Woodman Tuen (zh_TW)

2.9.34
==

This is an unstable release to coincide with the release of Gnome
2.10.0 release candidate 1 (2.9.92).

Thanks to Aidan Delaney, Elijah Newren, and Joe Marcus Clarke for
fixes in this release.

 - Fix crash that occurs when stupid apps claim that a window is its
   own parent (Elijah, Joe) [#168207]
 - Prevent the visual bell from changing the focus window (Elijah)
   [#123366]
 - Make sure that icons in the alt-tab popup are dimmed for all hidden
   windows, not just minimized ones (Aidan) [#168455]

Translations
  Elnaz Sarbar (fa), Ankit Patel (gu), Luca Ferretti (it),
  Reinout van Schouwen (nl), Gnome PL Team (pl),
  Alexandre Folle de Menezes (pt_BR)

2.9.21
==

This is an unstable release heading towards Gnome 2.10.  Since there
have been an awful lot of fixes since Gnome 2.10 Beta 2, we are hoping
to get an extra week of wider testing of all these changes before hard
code freeze.

Thanks to Aidan Delaney, Crispin Flowerday, Elijah Newren, and Joe
Marcus Clarke for fixes in this release.

 - Make sure we get a valid timestamp if one doesn't come with the
   _NET_ACTIVE_WINDOW message (Elijah, Crispin) [#166728]
 - Avoid sending CurrentTime to our XSetInputFocus wrappers, but
   handle it better in case we miss any cases (Elijah) [#166732]
 - Remove useless function call (Aidan) [#166730]
 - Avoid new windows being obscured by the focus window and thus
   possibly lost (Elijah) [#166524]
 - Don't unconditionally place not-to-be-focused windows, such as
   splashscreens, below the focus window (Elijah) [#167042]
 - Raise the ancestor of a window instead of the window itself
   (Elijah) [#166894]
 - Cover half a dozen issues needed to fix a variety of rare timestamp
   bugs (Elijah) [#167358]
 - Fix a possible crash on logout (Joe) [#167935]
 - Fix an obscure xinerama placement bug with windows that are too
   large to fit in the workarea in both dimensions (Elijah) [#166757]
 - Ignore all focus and focus-stealing-prevention code in
   meta_window_show when not showing the window for the first time
   (Elijah) [#167199]
 - when receiving a _NET_ACTIVE_WINDOW message, switch to the desktop
   where the window is located before activating instead of moving the
   window to the current desktop (Elijah) [#128380]
 - Handle _NET_CURRENT_DESKTOP messages that come with timestamps
   (Elijah) [#161361]
 - Handle keynav vs. mousenav in mouse and sloppy focus modes (Elijah)
   [#167545]

Translations
  Jordi Mallach (ca), Martin Willemoes Hansen (da), 
  Kostas Papadimas (el), David Lodge (en_GB), 
  Francisco Javier F.  Serrador (es), Tõivo Leedjärv (et),
  Christophe Merlet (RedFox) (fr), Takeshi AIHANA (ja), 
  Young-Ho, Cha (ko), Kjartan Maraas (nb), Michiel Sikkes (nl),
  Kjartan Maraas (no), Duarte Loreto (pt), Leonid Kanter (ru), 
  Marcel Telka (sk), Laurent Dhima (sq), Maxim Dziumanenko (uk)

2.9.13
==

This is an unstable release to coincide with the release of Gnome
2.10.0 Beta 2 (2.9.91).

Thanks to Elijah Newren, Balamurali Viswanathan, Stephane Loeuillet,
Benjamin Kahn, Garrett (LeSage?), Jose Moya, Dave Ahlswede, Arvind
Samptur, John Paul Wallington, Tim Herold, Muktha Narayan, Sinisa
Segvic, Owen Taylor, Crispin Flowerday, "RHEL-3", KWin, and Google for
improvements in this release.

 - Refuse to focus a window with a modal transient, and focus the
   transient instead (Elijah) [#164716]
 - Make sure we get gconf notifications about the terminal command
   changing (Balamurali) [#160934]
 - Specify encoding of src/metacity.desktop.in (Stephane) [#151850]
 - New 48x48 default icon (Benjamin, Garrett) [#160660]
 - Add man pages for metacity-window-demo and metacity-theme-viewer
   (Jose, Dave) [#143513]
 - Fix minimized window display in workspace switcher after relogin
   with a saved session (Elijah) [#164677]
 - Ignore sticky windows for non-active workspaces (Elijah) [#165259]
 - Don't wireframe when accessibility is on, it apparently causes a
   desktop wide freeze. (Arvind) [#159538]
 - Keep tooltip on screen horizontally for xinerama (John) [#165261]
 - Stick and unstick transients with their parent automatically
   (Elijah) [#152283]
 - Shaded windows should not show up in pagers (Elijah) [#165377]
 - Treat splashscreens same as other windows for stacking (Elijah)
   [#165243]
 - Plug a pair of leaks (Elijah) [#165378]
 - Take into account the appropriate list of windows when placing a
   new one (Elijah) [#165381]
 - Correct misleading and inaccurate wording (Elijah) [#165380]
 - Handle xcomposite pkgconfig version regression (Tim) [#149368]
 - Make the warn-about-buggy-session-management-apps dialog be sticky
   (Elijah) [#164745]
 - Fix the problem with fullscreen windows on a different xinerama
   monitor not staying on top ("RHEL-3") [#156511]
 - Make the unfocussed title bar distinguishable in cases where it
   otherwise isn't for the Atlanta, Simple, and Bright themes (Muktha)
   [#125291]
 - Correct the stacking when returning from fullscreen mode (Elijah)
   [#165718]
 - Focus parents of dismissed transient windows in preference to the
   window that most recently had keyboard focus (Elijah) [#157360]
 - Make sure window->border_only is initialized so we don't get random
   windows without decorations (Elijah, Sinisa, Owen) [#145131]
 - Add period to the end of reduced_resources' description (Dave)
   [#165780]
 - If activation requests are too old, set the demands_attention hint
   instead of actually activating (Elijah, Crispin) [#166395]
 - Ignore xconfigurerequest events for stacking when it should be safe
   to do so (Elijah, Crispin, KWin, Google) [#166395]
 - Set a _METACITY_VERSION property (a utf8 string) on the WM check
   window (Elijah) [#165350]

Translations
  Vladimir Petkov (bg), Miloslav Trmac (cs), Frank Arnold (de), 
  Adam Weinberger (en_CA), David Lodge (en_GB), 
  Francisco Javier F. Serrador (es), Pauli Virtanen (fi), 
  Young-Ho, Changwoo Ryu (ko), ´ygimantas Berucka (lt),
  Kjartan Maraas (nb),  Kjartan Maraas (no), Duarte Loreto (pt),
  Marcel Telka (sk), Christian Rose (sv), 
  Theppitak Karoonboonyanan (th)

2.9.8
==

This is a brown paper bag release to cover up the crash I introduced
in version 2.9.5.  Thanks to Sebastien Bacher and the bleeding edge
Ubuntu users for quickly catching the occasional crash that my fix in
#123576 could cause, and for verifying that the patch I made fixed
this issue (I couldn't duplicate).

 - Don't forget to initialize display->grab_old_window_stacking
   [#165093]

2.9.5
==

This is an unstable release to coincide with the release of Gnome
2.10.0 Beta 1 (2.9.90).

Thanks to Vincent Noel, Elijah Newren, and John Paul Wallington for
fixes in this release.

 - Restore original stacking when aborting an alt-esc window switch
   operation (Elijah) [#123576]
 - Fix vertical maximization for second screen (John) [#163420]
 - Show labels in bold for windows that demand attention (Vincent)
   [#164590]
 - In the tab task switcher popup, dim the window icon and put its
   name between brackets when the window is minimized (Vincent)
   [#136666]
 - Correct highlighting of windows in workspace switcher popup
   (Elijah) [#163450]

Translations
 zh_CN (Funda Wang), nb (Kjartan Maraas), nn (Kjartan Maraas), de
 (Frank Arnold)

2.9.3
==

This is an unstable release to coincide with the release of Gnome 2.9.4.

Thanks to Leena Gunda, Thomas Fitzsimmons, and mild7 users sourceforge
net, and Elijah Newren for fixes in this release.

 - Don't focus the panel on click (Elijah) [#160470, and others]
 - Make sure the save session dialog appears focused (Elijah) [#162983]
 - Correctly restore size of window when double clicking the titlebar
   to unmaximize (Leena) [#161236]
 - Install schema data from builddir not srcdir (Thomas) [#161417]
 - Provide more documentation to make it easier for people to
   contribute to Metacity (Elijah) [#162646]
 - Allow users to move the window around immediately after
   double-clicking to shade (Elijah) [#90290]
 - Focus windows that manually position themselves too (Elijah) [#107347]
 - Don't show window menu if all options are invalid (Elijah) [#148915]
 - Exclude windows with skip_taskbar hint set from the alt-tab list;
   they'll appear in the ctrl-alt-tab list instead. (mild7 users
   sourceforge net) [#106249]
 - Wrap XSetInputFocus to make display->expected_focus_window more
   reliable (Elijah) [#154598]
 - Remove conflict between windows on multiple workspaces and hidden
   being a global quantity (Elijah) [#156182]

Translations
 es (Francisco Javier F. Serrador), sv (Christian Rose), cs (Miloslav
 Trmac), ja (Takeshi AIHANA)

2.9.2
==

This is an unstable release to coincide with the release of Gnome 2.9.3.

Thanks to Alex Duggan, ash AT contact bg, Elijah Newren, and Baptiste
Mille-Mathias for fixes in this release.

 - Add a missing period at the end of a sentence (Baptiste) [#158210]
 - When snap-moving don't snap to hidden windows, such as transients
   of minimized windows (Elijah) [#157180]
 - Focus the desktop when showing it (Elijah) [#159257]
 - Remove deprecated capplet (Alex, ash) [#160753]

Translations
 da (Martin Willemoes Hansen), bg (Alexander Shopov), en_CA (Adam
 Weinberger)

2.9.1
==

This is an unstable release heading towards Gnome 2.10, released a
little late for Gnome 2.9.2 but there weren't many changes anyway this
time...

Thanks to Benjamin Kahn, Marco Pesenti Gritti, James Henstridge, and
Vincent Untz for fixes/features in this release.

 - gnome-panel-screenshot was renamed to gnome-screenshot (Vincent) [#157529]
 - Update build stuff (use newer automake, etc.) (James)
 - Fix build out of src directory (Marco) [#158325]
 - Use a better default application icon (Benjamin) [#160373]

Translations
 da (Martin Willemoes Hansen), fr(Christophe Merlet, Baptiste
 Mille-Mathias), lt(´ygimantas Berucka), ja(Takeshi AIHANA)

2.9.0
==

This is an unstable release heading towards Gnome 2.10.

Thanks to Rob Adams, Anders Carlsson, Elijah Newren, Soeren Sandmann,
and Vincent Untz for fixes and features in this release.

 - Add a keybinding to launch a terminal (Vincent) [#154232]
 - Correct the requested number of keycodes (Rob) [#155247]
 - Add tracker bugs to rationales.txt file
 - Make the "showing desktop" mode be per-workspace instead of
   per-screen. (Elijah) [#142198]
 - Don't try to use an ARGB visual at all if the depth isn't
   32-bit. This caused major slowdowns with Composite
   enabled. (Anders)
 - Fix the modifier key breakage introduced by an Xorg
   change. (Soeren) [#151554]
 - Update _NET_WM_STATE_HIDDEN so the pager on the panel will know
   whether to display windows as visible or hidden (Elijah) [#105665]
 - Fix the alt-tab order--if the most recently used window is not
   focused, start alt tabbing with that window instead of the one
   after it (Elijah) [#156251]
 - Don't lower newly mapped windows when they're denied focus if they
   are transients of the focused window.  Instead, defocus the
   currently focused window (Elijah) [#151996]
 - Re-enable focus stealing prevention (Elijah)

Translations
 es(Francisco Javier F. Serrador), sq(Laurent Dhima), sr(Danilo ¦egan), 
 cs(Miloslav Trmac), en_CA(Adam Weinberger), en_GB(David Lodge)

2.8.6
==

This is a stable release for Gnome 2.8.1.

Thanks to the Ken Harris, Kjartan Maraas, and the tireless efforts of
Elijah Newren for fixes in this release.

Fixes
  * Ensure the correct window is focused when minimizing (Elijah)
  * Fix keynav with mouse focus (Elijah)
  * Fix several race conditions in window focusing (Elijah)
  * Focus the top window when lowering by frame click (Ken)
  * Fix some compiler warnings (Kjartan)
  * Fix some valgrind-reported errors (Elijah)
  * Fix some potential issues with autoraising windows (Elijah)

Translations
  * en_CA(Adam Weinberger), it(Luca Ferretti)

2.8.5
==

This is a stable release for Gnome 2.8.  Only translations and some
new developer documentation were added since the last unstable release.
This release boasts improved standards-compliance and a number of 
bug fixes since the last stable release.

Translations

  * ar(Abdulaziz Al-Arfaj), cs(Miloslav Trmac), cy(Dafydd Harries),
    en_GB(David Lodge), fr(Christophe Merlet (RedFox)), 
    nn(Åsmund Skjæveland), or(Gora Mohanty), 
    pr_BR(Gustavo Noronha Silva), ro(Mugurel Tudor), 
    th(Paisa Seeluangsawat), tr(Baris Cicek), zh_TW(Woodman Tuen)

2.8.4
==

This release features a number of bug fixes, and also the disabling of
the focus-stealing-prevention code (we're entering hard code freeze in
Gnome so it's too late to fix the remaining issues, especially since
it requires several patches to modules other than Metacity).

Thanks to Havoc Pennington, Soeren Sandmann, Elijah Newren, and Rich
Wareham for fixes in this release

Fixes
  * track the last_xor_rect, for wireframe painting (Havoc)
  * Move wireframe code before grab is released to prevent endless
    loops with fullscreen windows. (Soeren)
  * Make dialogs that Metacity shows follow focus-stealing-prevention
    conventions. (Elijah; part of #149028)
  * add render extension check to the display, don't build the
    compositing manager by default, use an ARGB visual when available
    for the window frame (Rich Wareham; various tweaks added later by
    Havoc)
  * move the have_xrender variable initialization up in the file since
    it can be set as part of composite check (Havoc)
  * make argb stuff compile, add some code from xcompmgr (Havoc)
  * fix an assertion failure that would occur after increasing the
    number of workspaces; fix stacking order when a window is denied
    focus (Elijah; #150615)
  * disable some compositor code that wasn't working, don't grab the
    server during repaint, various set_background fixes and
    refactoring (Havoc)

Translations
  * az(Metin Amiroff), bs(Kemal Sanjta), ca(Jordi Mallach), 
    el(Kostas Papadimas), es(Francisco Javier F. Serrador), 
    eu(Iñaki Larrañaga Murgoitio), fi(Pauli Virtanen),
    nb(Kjartan Maraas), sq(Laurent Dhima), uk(Maxim Dziumanenko)


2.8.3
==

Some important bug fixes in this release, including somy a11y bugs,
and a compile issue on Solaris.

Thanks to Rob Adams, Bill Haneman, Peter O'Shea, Mike Castle, Soeren
Sandman, Elijah Newren, and Havoc Pennington for fixes in this
release.

Fixes
  * Adjust the MRU list when preventing focus stealing (Elijah)
  * Ensure that we maintain a focus window when switching workspaces
    in mouse focus mode (Elijah)
  * Some improvements in the showing desktop mode, and window
    activation (Elijah)
  * Make sure cursors changes are handled correctly (Havoc, Soeren)
  * Some fixes to the window menu (Rob)
  * Fix a compile issue on Solaris (Peter, Mike)
  * Allow struts to go past the middle of the screen, provided there's
    a gap between them, fixing an issue with gnome magnifier (Bill)

Translations
  * fi (Pauli Virtanen), ja (Takeshi AIHANA), ko (Young-Ho, Cha), 
    pl (Gnome PL Team), ru (Dmitry G. Mastrukov), sr (Danilo Å egan),
    tk (Gurban M. Tewekgeli), zh_CN (Funda Wang)

2.8.2
===

Many bugfixes and better support for the freedesktop.org EWMH spec.

Thanks to Rob Adams, Anders Carlsson, Elijah Newren, Soeren Sandmann,
Emil Soleyman-Zomalan, Michael Terry, and Jeff Waugh for fixes in this
release.

  - set titlebar_uses_system_font = false (it was ugly)
  - make naming for "move a window"/"move the window"/"move window"
    more consistent (fixes #142235)
  - Add trailing quotes to keybinding explanation text.
  - support for EWMH update counter spec & add compensation events
    when events are ignored. (fixes #143333 and #109362)
  - Fix focus bugs: remove race condition on window close/minimize
    (#131582), make focus choice consistent for each focus mode
    (#135810), choose correct focus window when "un-showing the
    desktop (#144900), make sure correct window is focused when using
    the workspace switcher (#120100).
  - Use meta_topic instead of meta_warning when failing to connect to
    a session manager; reduces metacity verbosity. (fixes #136218)
  - Make meta_window_delete take a timestamp, and be sure to pass it
    one.
  - Add support for EWMH _NET_WM_USER_TIME spec.  This enables part of
    preventing focus stealing.  (bug #118372) Also fix bug with
    windows not being focused on unminimizing caused by original
    patch.  (also bug #118372)
  - Fix some support for EWMH hints, and fix USER_TIME support to
    include the DEMANDS_ATTENTION hint.  Also includes some code for
    implementing _NET_RESTACK_WINDOW and _NET_MOVERESIZE_WINDOW, but
    this is disabled pending feature thaw.

2.8.1
===

Thanks to Olivier Crete, Jarrod Johnson, Neil Muller, Elijah Newren,
Mark McLoughlin, Rob Adams, and foser AT gentoo.org for fixes in this
release.

  - make the --enable-xinerama switch work properly
  - prevent unwanted grab op from occurring
  - don't down-size nitems from a gulong to an int
  - add a value type check for the visual/audible bell gconf settings
  - make the no sm support warning resizable
  - more translations

2.8.0
===

No code changes in this release, but some new translations.

2.7.1
===

Thanks to Rob Adams for fixes in this release.

 - bug #122016 - fix a focus race
 - Change move_to_workspace_left/right/up/down keybindings to
   <Control><Alt><Shift> arrow to avoid conflicting with new
   keybindings in spacial nautilus.
 - fix dialog stacking order issues so e.g. panel properties 
   dialog is above the panel

2.7.0
===

First unstable release tarball for GNOME 2.6.

Thanks to Anders Carlsson, Elijah Newren, Rob Adams, James Cape,
Thomas Fitzimmons, Calum Benson for fixes in this release.

2.6.2
===

Thanks to Yukihiro Nakai, Rached Ben Mustapha, Gwenole Beauchesne,
Padraig O'Briain, Laurent Vivier, Rob Adams for contributions to this
release.

 - fix to repaint after resize always, so on maximize 
   and theme changes we get things drawn properly
 - fix a compile issue on HPUX
 - fix translations of metacity-message output
 - fix to update window icons when they change
 - put a limit on number of characters displayed in 
   window titles during Alt+tab
 - fix configure check for Xrandr
 - fix 64-bit bug in property reading that broke 
   things badly on 64-bit
 - don't move focus when clicking close button on a window
 - fix a crash in getting pixmap icons
 - spawn dialogs and child processes on the proper 
   screen in multihead situations
 - if the focus gets set to None, set it back to 
   something sane
 - load accessibility modules and set accessibility roles
 - fix hang after displaying warning dialogs
 - fix a memory corruption when sticking/unsticking windows
   that lead to a frequent crash and windows appearing 
   in Alt+tab improperly
 - fix some handling of partial-width panel struts
 - more translations

2.6.1
===

 - rebuild with fixed glib-gettext.m4

2.6.0
===

 - some additional translations

2.5.5
===

 Thanks to Rob Adams, Arvind Samptur, Andreas Volz, Ray Strode, John
 Paul Wallington, Soeren Sandmann for contributions to this release. 
 And as always thanks to the translators.

 - fix aspect ratio handling
 - fix "shake loose" functionality for maximized windows
 - handle Xrandr size changes properly again
 - fix fullscreen window detection
 - fix workspace name handling
 - don't steal button press events on root window
 - nuke metacity.spec due to nonmaintenance
 - allow too-large-for-screen windows to move their titlebar offscreen
 - keep an MRU list of windows per-workspace and use it to focus 
   the next window when the focused window disappears
 - fix cursor when moving
 - improve appearance of opaque resize
 - make BELOW window state work
 - fix a crash when gdk_pixmap_foreign_new() returned NULL

2.5.3
===

 Thanks to Jordi Mallach, Padraig O'Briain, Rob Adams, Julio Merino,
 Ben Jansens, Jurg Billeter, Ray Strode, marcus@freebsd.org, James
 Laska, for contributions to this release. Thanks also to 
 all the tireless translators.

 - fixups to .desktop file
 - activate window prior to grab end, avoiding
   extra focus events
 - add support for partial-width panels (fixes corner panel 
   and xinerama window position constraints)
 - added keybinding to toggle window as "always on top"
 - support --disable-schemas-install option to configure
 - destroy support for legacy GNOME 1.x hints; metacity 
   no longer works with GNOME 1.x
 - disable raise-on-click for mouse focus modes
 - fix bug that broke many Javascript popup menus with mozilla
 - allow "shaking loose" maximized windows, to move them 
   between Xinerama heads or whatever
 - honor desktop-wide double click timeout
 - handle window placement properly for windows that 
   start out maximized
 - integrate Ximian patch to go ahead and log out after 4 minutes
   even if a dialog is open
 - fix a segfault
 - fix bug where window groups weren't always kept up to date
 - fix bug where focus got confused when switching workspaces
   with mouse focus mode
 - fix 64-bit crash on s390x
 - chdir to user's homedir on startup
 - keep window in fullscreen layer when its transients are focused
 - fix keybindings bug when you had ScrollLock enabled
 - many translation updates

2.5.2
===

 Thanks to David Santiago, Julien Olivier, Anders Carlsson, Rob Adams
 for fixes in this release.

 - improved wording/UI for some dialogs
 - while clicking a window button, if you move the mouse outside 
   the button such that releasing the mouse button won't activate 
   the window button, visually indicate by "popping out" the button.
 - fix some valgrind errors
 - change "show desktop mode" to convert to "everything is minimized
   mode" if you open a new window while showing desktop, rather 
   than previous behavior of simply leaving show desktop mode.
 - fix a trivial memory leak
 - change "move to workspace N" so it doesn't switch workspaces, 
   just moves the window.
 - translation updates

2.5.1
===

 Thanks to Rob Adams, Peter O'Shea, Dafydd Harries, Masahiro Sakai, 
 Soeren Sandmann for fixes in this release.

 - fix bug where fullscreen windows were below top panels
 - build fix for Solaris
 - support diagonal window movement with numeric keypad
 - multihead fix
 - build fix for Cygwin 
 - place on xinerama containing the pointer
 - fix totally hosed window placement/movement for frameless
   windows
 - improvement to smoothness of window move/resize

2.5.0
===

 Thanks to Rob Adams, Owen Taylor, Frederic Crozat, Arvind Samptur,
 Bill Haneman, Akira Tagoh for help with fixes in this release.

 - many new translations
 - fix an infinite loop while holding a server grab triggered by 
   some recent Qt versions doing weird stuff
 - fix bug where Alt+rightclick repeatedly on titlebar resulted 
   in zillions of menus
 - fix Alt+Tab to *actually* put minimized windows at the end, 
   though this was always intended
 - rewrite size/positions constraint code (currently known 
   to be quite buggy, e.g. xmms is hosed)
 - enforce size of at least 1x1 on windows
 - reduce latency of managing new windows still further 
   by using async properties code in more places
 - don't grab keybindings on docks, so gnome-panel 
   can handle them
 - suck in the panel's screenshot and run dialog global 
   bindings
 - lots of improvements to window placement
 - sync max number of workspaces with pager applet
 - fix to keep focus when inside window frame in 
   strict mouse focus mode
 - make it possible to start a reverse tab with 
   shift+alt+tab (vs. alt+tab then shift)
 - fix a multihead issue with constraints between two 
   windows on different heads
 - require GTK+ 2.2.0 and fontconfig
 - default theme is now Simple
 - add visual bell feature
 - incorporate many fixes from 2.4.34
 - other stuff

2.4.13
===

 - we were making all dialogs skip the taskbar, even non-transient 
   ones, though this was supposedly fixed a while ago. Now really
   fixed.
 - change back to Alt+click by default for the window drag feature.
 - assign Alt+F12 to shade window
 - fix not deleting enough workspaces when the number 
   was reduced via the pager config dialog (readams@hmc.edu)
 - don't allow windows under the top panel ever, even if they 
   are tall windows (Arvind)
 - fix up the window layout for directional workspace nav, 
   so you always stop at the edges and always end up 
   where you expect (hp, with tweaks from readams@hmc.edu)
 - focus new windows in mouse focus mode (readams@hmc.edu)
 - support xeyes, oclock, etc. by applying shape mask 
   to the window manager frame (yeah it resizes slow, deal)
 - fix vertical/horizontal maximize
 - handle crossing events resizing for more opaque resize goodness
   (Soeren)
 - add wacky _METACITY_UPDATE_COUNTER experimental extension 
   to do nice opaque resizing (does nothing without a GTK patch)
 - fix a crash setting workspace names
 - fix internationalized WM_NAME reading