about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--main.lua2
-rw-r--r--source.lua7
2 files changed, 9 insertions, 0 deletions
diff --git a/main.lua b/main.lua
index 39b9ae0..335f5ec 100644
--- a/main.lua
+++ b/main.lua
@@ -180,10 +180,12 @@ function App.keychord_press(chord, key)
       Settings.source = source_settings
       if run.quit then run.quit() end
       Current_app = 'source'
+      -- preserve any Error_message when going from run to source
     elseif Current_app == 'source' then
       Settings.source = source.settings()
       if source.quit then source.quit() end
       Current_app = 'run'
+      Error_message = nil
     else
       assert(false, 'unknown app "'..Current_app..'"')
     end
diff --git a/source.lua b/source.lua
index 2b9b1a4..cfe0b90 100644
--- a/source.lua
+++ b/source.lua
@@ -252,6 +252,13 @@ function source.draw()
     log_browser.draw(Log_browser_state, --[[hide_cursor]] Focus ~= 'log_browser')
   end
   source.draw_menu_bar()
+  if Error_message then
+    local height = math.min(20*Editor_state.line_height, App.screen.height*0.2)
+    App.color{r=0.8,g=0,b=0}
+    love.graphics.rectangle('fill', 150, App.screen.height - height-10, App.screen.width, height+10)
+    App.color{r=0,g=0,b=0}
+    love.graphics.print(Error_message, 150+10, App.screen.height - height)
+  end
 end
 
 function source.update(dt)