]>
Commit | Line | Data |
---|---|---|
88e38274 JR |
1 | #! /bin/sh /usr/share/dpatch/dpatch-run |
2 | ## tray_hotfixes.dpatch, reverting a weird CVS change creating races | |
3 | ## | |
4 | ||
5 | @DPATCH@ | |
6 | Index: icewm-1.3.7~pre2/src/icetray.cc | |
7 | =================================================================== | |
8 | --- icewm-1.3.7~pre2.orig/src/icetray.cc 2010-04-28 21:00:30.000000000 +0200 | |
9 | +++ icewm-1.3.7~pre2/src/icetray.cc 2010-04-29 22:11:16.938048246 +0200 | |
10 | @@ -36,14 +36,10 @@ | |
11 | bool checkMessageEvent(const XClientMessageEvent &message); | |
12 | void requestDock(); | |
13 | ||
14 | - void handleUnmap(const XUnmapEvent &ev) { | |
15 | - YWindow::handleUnmap(ev); | |
16 | - MSG(("hide1")); | |
17 | -// if (visible() && ev.window == handle()) { | |
18 | - MSG(("hide2")); | |
19 | + void handleUnmap(const XUnmapEvent &) { | |
20 | + MSG(("hide")); | |
21 | + if (visible()) | |
22 | hide(); | |
23 | - fManaged = false; | |
24 | -// } | |
e4d5bbaf | 25 | } |
e4d5bbaf | 26 | |
88e38274 JR |
27 | void trayChanged(); |
28 | @@ -51,7 +47,6 @@ | |
29 | Atom icewm_internal_tray; | |
30 | Atom _NET_SYSTEM_TRAY_OPCODE; | |
31 | YXTray *fTray2; | |
32 | - bool fManaged; | |
33 | }; | |
e4d5bbaf | 34 | |
88e38274 JR |
35 | class SysTrayApp: public YXApplication { |
36 | @@ -187,7 +182,6 @@ | |
37 | setSize(fTray2->width(), | |
38 | fTray2->height()); | |
39 | fTray2->show(); | |
40 | - fManaged = false; | |
41 | requestDock(); | |
e4d5bbaf | 42 | } |
88e38274 JR |
43 | |
44 | @@ -195,15 +189,10 @@ | |
45 | fTray2->backgroundChanged(); | |
46 | setSize(fTray2->width(), | |
47 | fTray2->height()); | |
48 | - if (fTray2->visible()) { | |
49 | - if (!fManaged) | |
50 | - requestDock(); | |
51 | - else | |
52 | - show(); | |
53 | - } else { | |
54 | - fManaged = false; | |
55 | + if (fTray2->visible()) | |
56 | + show(); | |
57 | + else | |
58 | hide(); | |
59 | - } | |
e4d5bbaf | 60 | } |
61 | ||
88e38274 JR |
62 | void SysTray::requestDock() { |
63 | @@ -223,19 +212,12 @@ | |
e4d5bbaf | 64 | |
88e38274 JR |
65 | XSendEvent(xapp->display(), w, False, StructureNotifyMask, (XEvent *) &xev); |
66 | } | |
67 | - fManaged = true; | |
e4d5bbaf | 68 | } |
69 | ||
88e38274 JR |
70 | bool SysTray::checkMessageEvent(const XClientMessageEvent &message) { |
71 | if (message.message_type == icewm_internal_tray) { | |
72 | - MSG(("requestDock %lX", (long)handle())); | |
73 | - setSize(fTray2->width(), | |
74 | - fTray2->height()); | |
75 | - MSG(("requestDock2 %d %d", width(), height())); | |
76 | - if (fTray2->visible()) | |
77 | - requestDock(); | |
78 | - else | |
79 | - fManaged = false; | |
80 | + MSG(("requestDock")); | |
81 | + requestDock(); | |
e4d5bbaf | 82 | } |
88e38274 JR |
83 | return true; |
84 | } |