diff options
Diffstat (limited to 'riscos/gui.c')
-rw-r--r-- | riscos/gui.c | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/riscos/gui.c b/riscos/gui.c index b5ef080bf..d01ee6dfb 100644 --- a/riscos/gui.c +++ b/riscos/gui.c @@ -174,7 +174,7 @@ static struct { } prev_sigs; /** Accepted wimp user messages. */ -static wimp_MESSAGE_LIST(40) task_messages = { { +static wimp_MESSAGE_LIST(41) task_messages = { { message_HELP_REQUEST, message_DATA_SAVE, message_DATA_SAVE_ACK, @@ -185,6 +185,7 @@ static wimp_MESSAGE_LIST(40) task_messages = { { message_SAVE_DESKTOP, message_MENU_WARNING, message_MENUS_DELETED, + message_WINDOW_INFO, message_MODE_CHANGE, message_CLAIM_ENTITY, message_DATA_REQUEST, @@ -261,6 +262,7 @@ static void ro_msg_dataopen(wimp_message *message); static void ro_gui_get_screen_properties(void); static void ro_msg_prequit(wimp_message *message); static void ro_msg_save_desktop(wimp_message *message); +static void ro_msg_window_info(wimp_message *message); static void ro_gui_view_source_bounce(wimp_message *message); @@ -410,6 +412,8 @@ void gui_init(int argc, char** argv) ro_gui_selection_dragging); ro_message_register_route(message_DRAG_CLAIM, ro_gui_selection_drag_claim); + ro_message_register_route(message_WINDOW_INFO, + ro_msg_window_info); /* end of handler registration */ nsfont_init(); @@ -1962,6 +1966,25 @@ void ro_msg_save_desktop(wimp_message *message) /** + * Handle WindowInfo message (part of the iconising protocol) + * + * \param message WindowInfo message from the Iconiser + */ + +void ro_msg_window_info(wimp_message *message) +{ + wimp_full_message_window_info *wi; + struct gui_window *g; + + wi = (wimp_full_message_window_info*)message; + g = ro_gui_window_lookup(wi->w); + + /* ic_<task name> will suffice for our other windows */ + if (g) ro_gui_window_iconise(g, wi); +} + + +/** * Convert a RISC OS pathname to a file: URL. * * \param path RISC OS pathname |