diff options
author | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2012-01-26 16:34:00 -0600 |
---|---|---|
committer | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2012-01-26 16:34:00 -0600 |
commit | 0eb9f5e217225129b22de1a48fe7300723456da3 (patch) | |
tree | ede5a4dd39476960a1f113a323b34b613cf07987 /src/kernel/qapplication_x11.cpp | |
parent | 336d563830cd5f9f1f9abdce20db839d06431168 (diff) | |
download | qt3-0eb9f5e217225129b22de1a48fe7300723456da3.tar.gz qt3-0eb9f5e217225129b22de1a48fe7300723456da3.zip |
Add NetWM/Motif controls to QWidget
This must break binary compatibility, so version was also bumped to 3.4.0
Diffstat (limited to 'src/kernel/qapplication_x11.cpp')
-rw-r--r-- | src/kernel/qapplication_x11.cpp | 34 |
1 files changed, 30 insertions, 4 deletions
diff --git a/src/kernel/qapplication_x11.cpp b/src/kernel/qapplication_x11.cpp index 7bc9f48..45d83df 100644 --- a/src/kernel/qapplication_x11.cpp +++ b/src/kernel/qapplication_x11.cpp @@ -262,9 +262,22 @@ Atom qt_net_wm_state = 0; Atom qt_net_wm_state_modal = 0; Atom qt_net_wm_state_max_v = 0; Atom qt_net_wm_state_max_h = 0; -Atom qt_net_wm_state_fullscreen = 0; -Atom qt_net_wm_state_above = 0; -Atom qt_net_wm_window_type = 0; +Atom qt_net_wm_state_fullscreen = 0; +Atom qt_net_wm_state_above = 0; +Atom qt_net_wm_action = 0; +Atom qt_net_wm_action_move = 0; +Atom qt_net_wm_action_resize = 0; +Atom qt_net_wm_action_minimize = 0; +Atom qt_net_wm_action_shade = 0; +Atom qt_net_wm_action_stick = 0; +Atom qt_net_wm_action_max_h = 0; +Atom qt_net_wm_action_max_v = 0; +Atom qt_net_wm_action_fullscreen = 0; +Atom qt_net_wm_action_change_desktop = 0; +Atom qt_net_wm_action_close = 0; +Atom qt_net_wm_action_above = 0; +Atom qt_net_wm_action_below = 0; +Atom qt_net_wm_window_type = 0; Atom qt_net_wm_window_type_normal = 0; Atom qt_net_wm_window_type_dialog = 0; Atom qt_net_wm_window_type_toolbar = 0; @@ -2003,6 +2016,19 @@ void qt_init_internal( int *argcptr, char **argv, qt_x11_intern_atom( "_NET_WM_STATE_MAXIMIZED_HORZ", &qt_net_wm_state_max_h ); qt_x11_intern_atom( "_NET_WM_STATE_FULLSCREEN", &qt_net_wm_state_fullscreen ); qt_x11_intern_atom( "_NET_WM_STATE_ABOVE", &qt_net_wm_state_above ); + qt_x11_intern_atom( "_NET_WM_ALLOWED_ACTIONS", &qt_net_wm_action ); + qt_x11_intern_atom( "_NET_WM_ACTION_MOVE", &qt_net_wm_action_move ); + qt_x11_intern_atom( "_NET_WM_ACTION_RESIZE", &qt_net_wm_action_resize ); + qt_x11_intern_atom( "_NET_WM_ACTION_MINIMIZE", &qt_net_wm_action_minimize ); + qt_x11_intern_atom( "_NET_WM_ACTION_SHADE", &qt_net_wm_action_shade ); + qt_x11_intern_atom( "_NET_WM_ACTION_STICK", &qt_net_wm_action_stick ); + qt_x11_intern_atom( "_NET_WM_ACTION_MAXIMIZE_HORZ", &qt_net_wm_action_max_h ); + qt_x11_intern_atom( "_NET_WM_ACTION_MAXIMIZE_VERT", &qt_net_wm_action_max_v ); + qt_x11_intern_atom( "_NET_WM_ACTION_FULLSCREEN", &qt_net_wm_action_fullscreen ); + qt_x11_intern_atom( "_NET_WM_ACTION_CHANGE_DESKTOP", &qt_net_wm_action_change_desktop ); + qt_x11_intern_atom( "_NET_WM_ACTION_CLOSE", &qt_net_wm_action_close ); + qt_x11_intern_atom( "_NET_WM_ACTION_ABOVE", &qt_net_wm_action_above ); + qt_x11_intern_atom( "_NET_WM_ACTION_BELOW", &qt_net_wm_action_below ); qt_x11_intern_atom( "_NET_WM_WINDOW_TYPE", &qt_net_wm_window_type ); qt_x11_intern_atom( "_NET_WM_WINDOW_TYPE_NORMAL", &qt_net_wm_window_type_normal ); qt_x11_intern_atom( "_NET_WM_WINDOW_TYPE_DIALOG", &qt_net_wm_window_type_dialog ); @@ -5167,7 +5193,7 @@ bool QETWidget::translateKeyEventInternal( const XEvent *event, int& count, uint keystate = event->xkey.state; // remove the modifiers where mode_switch exists... HPUX machines seem // to have alt *AND* mode_switch both in Mod1Mask, which causes - // XLookupString to return things like 'å' (aring) for ALT-A. This + // XLookupString to return things like '�' (aring) for ALT-A. This // completely breaks modifiers. If we remove the modifier for Mode_switch, // then things work correctly... xkeyevent.state &= ~qt_mode_switch_remove_mask; |