diff options
author | markt <markt> | 2007-07-31 23:16:05 (GMT) |
---|---|---|
committer | markt <markt> | 2007-07-31 23:16:05 (GMT) |
commit | 8da54ca0eb91e0595b506725369ede0a6426d795 (patch) | |
tree | 444fbcc9849c10764f5bc6f3b71481c6057992a8 | |
parent | 363764db5b36dbffcc019cec8ffb405d357d7130 (diff) | |
download | fluxbox_pavel-8da54ca0eb91e0595b506725369ede0a6426d795.zip fluxbox_pavel-8da54ca0eb91e0595b506725369ede0a6426d795.tar.bz2 |
add some decorations to torn menus, and fix restart without an argument
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | src/Ewmh.cc | 7 | ||||
-rw-r--r-- | src/FbTk/XmbFontImp.cc | 4 | ||||
-rw-r--r-- | src/main.cc | 18 | ||||
-rw-r--r-- | util/fbrun/FbRun.cc | 8 | ||||
-rw-r--r-- | util/fbrun/fbrun.xpm | 2 |
6 files changed, 26 insertions, 16 deletions
@@ -1,5 +1,8 @@ | |||
1 | (Format: Year/Month/Day) | 1 | (Format: Year/Month/Day) |
2 | Changes for 1.0.0: | 2 | Changes for 1.0.0: |
3 | *07/07/31: | ||
4 | * Change _NET_WM_WINDOW_TYPE_MENU to use TINY decoration type (Mark) | ||
5 | Ewmh.cc | ||
3 | *07/07/24: | 6 | *07/07/24: |
4 | * Don't allow ToggleDecor with fullscreen windows, and make it show | 7 | * Don't allow ToggleDecor with fullscreen windows, and make it show |
5 | decorations for windows that don't have a titlebar by default (Mark) | 8 | decorations for windows that don't have a titlebar by default (Mark) |
diff --git a/src/Ewmh.cc b/src/Ewmh.cc index afab938..fef4428 100644 --- a/src/Ewmh.cc +++ b/src/Ewmh.cc | |||
@@ -310,8 +310,7 @@ void Ewmh::setupFrame(FluxboxWindow &win) { | |||
310 | } else if (atoms[l] == m_net_wm_window_type_dialog) { | 310 | } else if (atoms[l] == m_net_wm_window_type_dialog) { |
311 | // dialog windows should not be tabable | 311 | // dialog windows should not be tabable |
312 | win.setTabable(false); | 312 | win.setTabable(false); |
313 | } else if (atoms[l] == m_net_wm_window_type_menu || | 313 | } else if (atoms[l] == m_net_wm_window_type_menu) { |
314 | atoms[l] == m_net_wm_window_type_toolbar) { | ||
315 | /* | 314 | /* |
316 | * _NET_WM_WINDOW_TYPE_TOOLBAR and _NET_WM_WINDOW_TYPE_MENU | 315 | * _NET_WM_WINDOW_TYPE_TOOLBAR and _NET_WM_WINDOW_TYPE_MENU |
317 | * indicate toolbar and pinnable menu windows, respectively | 316 | * indicate toolbar and pinnable menu windows, respectively |
@@ -319,6 +318,10 @@ void Ewmh::setupFrame(FluxboxWindow &win) { | |||
319 | * application). Windows of this type may set the | 318 | * application). Windows of this type may set the |
320 | * WM_TRANSIENT_FOR hint indicating the main application window. | 319 | * WM_TRANSIENT_FOR hint indicating the main application window. |
321 | */ | 320 | */ |
321 | win.setDecoration(FluxboxWindow::DECOR_TINY); | ||
322 | win.setIconHidden(true); | ||
323 | win.moveToLayer(Layer::ABOVE_DOCK); | ||
324 | } else if (atoms[l] == m_net_wm_window_type_toolbar) { | ||
322 | win.setDecoration(FluxboxWindow::DECOR_NONE); | 325 | win.setDecoration(FluxboxWindow::DECOR_NONE); |
323 | win.setIconHidden(true); | 326 | win.setIconHidden(true); |
324 | win.moveToLayer(Layer::ABOVE_DOCK); | 327 | win.moveToLayer(Layer::ABOVE_DOCK); |
diff --git a/src/FbTk/XmbFontImp.cc b/src/FbTk/XmbFontImp.cc index 025f96d..3a45b09 100644 --- a/src/FbTk/XmbFontImp.cc +++ b/src/FbTk/XmbFontImp.cc | |||
@@ -115,7 +115,9 @@ const char *getFontElement(const char *pattern, char *buf, int bufsiz, ...) { | |||
115 | XFontSet createFontSet(const char *fontname, bool& utf8mode) { | 115 | XFontSet createFontSet(const char *fontname, bool& utf8mode) { |
116 | Display *display = FbTk::App::instance()->display(); | 116 | Display *display = FbTk::App::instance()->display(); |
117 | XFontSet fs; | 117 | XFontSet fs; |
118 | char **missing, *def = "-"; | 118 | char **missing; |
119 | const char *constdef = "-"; | ||
120 | char *def = const_cast<char *>(constdef); | ||
119 | int nmissing; | 121 | int nmissing; |
120 | string orig_locale = ""; | 122 | string orig_locale = ""; |
121 | 123 | ||
diff --git a/src/main.cc b/src/main.cc index 2d1ff0d..4554123 100644 --- a/src/main.cc +++ b/src/main.cc | |||
@@ -321,14 +321,16 @@ int main(int argc, char **argv) { | |||
321 | FbTk::FbStringUtil::shutdown(); | 321 | FbTk::FbStringUtil::shutdown(); |
322 | 322 | ||
323 | if (restarting) { | 323 | if (restarting) { |
324 | const char *shell = getenv("SHELL"); | 324 | if (!restart_argument.empty()) { |
325 | if (!shell) | 325 | const char *shell = getenv("SHELL"); |
326 | shell = "/bin/sh"; | 326 | if (!shell) |
327 | 327 | shell = "/bin/sh"; | |
328 | const char *arg = restart_argument.c_str(); | 328 | |
329 | if (arg) { | 329 | const char *arg = restart_argument.c_str(); |
330 | execlp(shell, shell, "-c", arg, (char *) NULL); | 330 | if (arg) { |
331 | perror(arg); | 331 | execlp(shell, shell, "-c", arg, (const char *) NULL); |
332 | perror(arg); | ||
333 | } | ||
332 | } | 334 | } |
333 | 335 | ||
334 | // fall back in case the above execlp doesn't work | 336 | // fall back in case the above execlp doesn't work |
diff --git a/util/fbrun/FbRun.cc b/util/fbrun/FbRun.cc index 908b3c2..8d449b3 100644 --- a/util/fbrun/FbRun.cc +++ b/util/fbrun/FbRun.cc | |||
@@ -79,8 +79,8 @@ FbRun::FbRun(int x, int y, size_t width): | |||
79 | XClassHint *class_hint = XAllocClassHint(); | 79 | XClassHint *class_hint = XAllocClassHint(); |
80 | if (class_hint == 0) | 80 | if (class_hint == 0) |
81 | throw string("Out of memory"); | 81 | throw string("Out of memory"); |
82 | class_hint->res_name = "fbrun"; | 82 | class_hint->res_name = const_cast<char *>("fbrun"); |
83 | class_hint->res_class = "FbRun"; | 83 | class_hint->res_class = const_cast<char *>("FbRun"); |
84 | XSetClassHint(m_display, window(), class_hint); | 84 | XSetClassHint(m_display, window(), class_hint); |
85 | 85 | ||
86 | XFree(class_hint); | 86 | XFree(class_hint); |
@@ -89,7 +89,7 @@ FbRun::FbRun(int x, int y, size_t width): | |||
89 | Pixmap pm; | 89 | Pixmap pm; |
90 | XpmCreatePixmapFromData(m_display, | 90 | XpmCreatePixmapFromData(m_display, |
91 | window(), | 91 | window(), |
92 | fbrun_xpm, | 92 | const_cast<char **>(fbrun_xpm), |
93 | &pm, | 93 | &pm, |
94 | &mask, | 94 | &mask, |
95 | 0); // attribs | 95 | 0); // attribs |
@@ -120,7 +120,7 @@ void FbRun::run(const std::string &command) { | |||
120 | // fork and execute program | 120 | // fork and execute program |
121 | if (!fork()) { | 121 | if (!fork()) { |
122 | 122 | ||
123 | char *shell = getenv("SHELL"); | 123 | const char *shell = getenv("SHELL"); |
124 | if (!shell) | 124 | if (!shell) |
125 | shell = "/bin/sh"; | 125 | shell = "/bin/sh"; |
126 | 126 | ||
diff --git a/util/fbrun/fbrun.xpm b/util/fbrun/fbrun.xpm index 856f214..0ee2c18 100644 --- a/util/fbrun/fbrun.xpm +++ b/util/fbrun/fbrun.xpm | |||
@@ -1,5 +1,5 @@ | |||
1 | /* XPM */ | 1 | /* XPM */ |
2 | static char * fbrun_xpm[] = { | 2 | static const char * fbrun_xpm[] = { |
3 | "32 32 433 2", | 3 | "32 32 433 2", |
4 | " c None", | 4 | " c None", |
5 | ". c #000000", | 5 | ". c #000000", |