summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--crawl-ref/source/message.cc9
-rw-r--r--crawl-ref/source/message.h2
-rw-r--r--crawl-ref/source/tilereg.cc12
-rw-r--r--crawl-ref/source/tilesdl.cc2
4 files changed, 9 insertions, 16 deletions
diff --git a/crawl-ref/source/message.cc b/crawl-ref/source/message.cc
index 24c014dfae..aedfa7ba65 100644
--- a/crawl-ref/source/message.cc
+++ b/crawl-ref/source/message.cc
@@ -756,7 +756,7 @@ static void base_mpr(const char *inf, msg_channel_type channel, int param,
{
if (Options.force_more_message[i].is_filtered( channel, imsg ))
{
- more();
+ more(true);
New_Message_Count = 0;
// One more() is quite enough, thank you!
break;
@@ -884,7 +884,7 @@ void formatted_message_history(const std::string &st_nocolor,
{
if (Options.force_more_message[f].is_filtered(channel, st_nocolor))
{
- more();
+ more(true);
New_Message_Count = 0;
// One more() is quite enough, thank you!
break;
@@ -928,7 +928,7 @@ void reset_more_autoclear()
autoclear_more = false;
}
-void more(void)
+void more(bool user_forced)
{
#ifdef DEBUG_DIAGNOSTICS
if (you.running)
@@ -976,7 +976,8 @@ void more(void)
}
while (keypress != ' ' && keypress != '\r' && keypress != '\n'
&& keypress != ESCAPE && keypress != -1
- && keypress != CK_MOUSE_CLICK);
+ && (user_forced || keypress != CK_MOUSE_CLICK));
+
if (keypress == ESCAPE)
autoclear_more = true;
}
diff --git a/crawl-ref/source/message.h b/crawl-ref/source/message.h
index 5ccc166d07..4f7cb8f1de 100644
--- a/crawl-ref/source/message.h
+++ b/crawl-ref/source/message.h
@@ -31,7 +31,7 @@ void mesclr( bool force = false );
* item_use - items - message - misc - ouch - player -
* religion - spell - spells - spells2 - spells3
* *********************************************************************** */
-void more(void);
+void more(bool user_forced = false);
class formatted_string;
diff --git a/crawl-ref/source/tilereg.cc b/crawl-ref/source/tilereg.cc
index e001386f73..68ed8f5cd9 100644
--- a/crawl-ref/source/tilereg.cc
+++ b/crawl-ref/source/tilereg.cc
@@ -831,15 +831,7 @@ int DungeonRegion::handle_mouse(MouseEvent &event)
|| mouse_control::current_mode() == MOUSE_MODE_MACRO
|| mouse_control::current_mode() == MOUSE_MODE_MORE)
{
- if (event.event == MouseEvent::PRESS
- && event.button == MouseEvent::LEFT)
- {
- return CK_MOUSE_CLICK;
- }
- else
- {
- return 0;
- }
+ return 0;
}
int cx;
@@ -2229,7 +2221,7 @@ int MessageRegion::handle_mouse(MouseEvent &event)
return 0;
if (mouse_control::current_mode() != MOUSE_MODE_COMMAND)
- return CK_MOUSE_CLICK;
+ return 0;
return CONTROL('P');
}
diff --git a/crawl-ref/source/tilesdl.cc b/crawl-ref/source/tilesdl.cc
index 84eb19ff61..116b799163 100644
--- a/crawl-ref/source/tilesdl.cc
+++ b/crawl-ref/source/tilesdl.cc
@@ -615,7 +615,7 @@ int TilesFramework::handle_mouse(MouseEvent &event)
&& event.button == MouseEvent::LEFT
&& event.event == MouseEvent::PRESS)
{
- return '\r';
+ return CK_MOUSE_CLICK;
}
// TODO enne - in what cases should the buttons be returned?