Merge text.love
This commit is contained in:
commit
abfd1eac64
2
edit.lua
2
edit.lua
|
@ -59,7 +59,7 @@ function edit.initialize_state(top, left, right, font_height, line_height) -- c
|
|||
right = math.floor(right),
|
||||
width = right-left,
|
||||
|
||||
filename = love.filesystem.getUserDirectory()..'/lines.txt', -- '/' should work even on Windows
|
||||
filename = love.filesystem.getSourceBaseDirectory()..'/lines.txt', -- '/' should work even on Windows
|
||||
|
||||
-- search
|
||||
search_term = nil,
|
||||
|
|
21
run.lua
21
run.lua
|
@ -48,14 +48,14 @@ end
|
|||
function run.load_settings()
|
||||
love.graphics.setFont(love.graphics.newFont(Settings.font_height))
|
||||
-- determine default dimensions and flags
|
||||
App.screen.width, App.screen.height, App.screen.flags = love.window.getMode()
|
||||
App.screen.width, App.screen.height, App.screen.flags = App.screen.size()
|
||||
-- set up desired window dimensions
|
||||
App.screen.flags.resizable = true
|
||||
App.screen.flags.minwidth = math.min(App.screen.width, 200)
|
||||
App.screen.flags.minheight = math.min(App.screen.height, 200)
|
||||
App.screen.width, App.screen.height = Settings.width, Settings.height
|
||||
love.window.setMode(App.screen.width, App.screen.height, App.screen.flags)
|
||||
love.window.setPosition(Settings.x, Settings.y, Settings.displayindex)
|
||||
App.screen.resize(App.screen.width, App.screen.height, App.screen.flags)
|
||||
App.screen.move(Settings.x, Settings.y, Settings.displayindex)
|
||||
Editor_state = edit.initialize_state(Margin_top, Margin_left, App.screen.width-Margin_right, Settings.font_height, math.floor(Settings.font_height*1.3))
|
||||
Editor_state.filename = Settings.filename
|
||||
Editor_state.screen_top1 = Settings.screen_top
|
||||
|
@ -75,16 +75,23 @@ function run.initialize_default_settings()
|
|||
end
|
||||
|
||||
function run.initialize_window_geometry(em_width)
|
||||
local os = love.system.getOS()
|
||||
if os == 'Android' or os == 'iOS' then
|
||||
-- maximizing on iOS breaks text rendering: https://github.com/deltadaedalus/vudu/issues/7
|
||||
-- no point second-guessing window dimensions on mobile
|
||||
App.screen.width, App.screen.height, App.screen.flags = App.screen.size()
|
||||
return
|
||||
end
|
||||
-- maximize window
|
||||
love.window.setMode(0, 0) -- maximize
|
||||
App.screen.width, App.screen.height, App.screen.flags = love.window.getMode()
|
||||
App.screen.resize(0, 0) -- maximize
|
||||
App.screen.width, App.screen.height, App.screen.flags = App.screen.size()
|
||||
-- shrink height slightly to account for window decoration
|
||||
App.screen.height = App.screen.height-100
|
||||
App.screen.width = 40*em_width
|
||||
App.screen.flags.resizable = true
|
||||
App.screen.flags.minwidth = math.min(App.screen.width, 200)
|
||||
App.screen.flags.minheight = math.min(App.screen.height, 200)
|
||||
love.window.setMode(App.screen.width, App.screen.height, App.screen.flags)
|
||||
App.screen.resize(App.screen.width, App.screen.height, App.screen.flags)
|
||||
end
|
||||
|
||||
function run.resize(w, h)
|
||||
|
@ -131,7 +138,7 @@ function run.settings()
|
|||
Settings = {}
|
||||
end
|
||||
if Current_app == 'run' then
|
||||
Settings.x, Settings.y, Settings.displayindex = love.window.getPosition()
|
||||
Settings.x, Settings.y, Settings.displayindex = App.screen.position()
|
||||
end
|
||||
local filename = Editor_state.filename
|
||||
if is_relative_path(filename) then
|
||||
|
|
42
source.lua
42
source.lua
|
@ -105,16 +105,7 @@ end
|
|||
function source.load_settings()
|
||||
local settings = Settings.source
|
||||
love.graphics.setFont(love.graphics.newFont(settings.font_height))
|
||||
-- maximize window to determine maximum allowable dimensions
|
||||
App.screen.resize(0, 0) -- maximize
|
||||
Display_width, Display_height, App.screen.flags = App.screen.size()
|
||||
-- set up desired window dimensions
|
||||
App.screen.flags.resizable = true
|
||||
App.screen.flags.minwidth = math.min(Display_width, 200)
|
||||
App.screen.flags.minheight = math.min(Display_height, 200)
|
||||
App.screen.width, App.screen.height = settings.width, settings.height
|
||||
--? print('setting window from settings:', App.screen.width, App.screen.height)
|
||||
App.screen.resize(App.screen.width, App.screen.height, App.screen.flags)
|
||||
source.resize_window_from_settings(settings)
|
||||
--? print('loading source position', settings.x, settings.y, settings.displayindex)
|
||||
source.set_window_position_from_settings(settings)
|
||||
Show_log_browser_side = settings.show_log_browser_side
|
||||
|
@ -136,9 +127,29 @@ function source.load_settings()
|
|||
end
|
||||
end
|
||||
|
||||
function source.resize_window_from_settings(settings)
|
||||
local os = love.system.getOS()
|
||||
if os == 'Android' or os == 'iOS' then
|
||||
-- maximizing on iOS breaks text rendering: https://github.com/deltadaedalus/vudu/issues/7
|
||||
-- no point second-guessing window dimensions on mobile
|
||||
App.screen.width, App.screen.height, App.screen.flags = App.screen.size()
|
||||
return
|
||||
end
|
||||
-- maximize window to determine maximum allowable dimensions
|
||||
App.screen.resize(0, 0) -- maximize
|
||||
Display_width, Display_height, App.screen.flags = App.screen.size()
|
||||
-- set up desired window dimensions
|
||||
App.screen.flags.resizable = true
|
||||
App.screen.flags.minwidth = math.min(Display_width, 200)
|
||||
App.screen.flags.minheight = math.min(Display_height, 200)
|
||||
App.screen.width, App.screen.height = settings.width, settings.height
|
||||
--? print('setting window from settings:', App.screen.width, App.screen.height)
|
||||
App.screen.resize(App.screen.width, App.screen.height, App.screen.flags)
|
||||
end
|
||||
|
||||
function source.set_window_position_from_settings(settings)
|
||||
-- setPosition doesn't quite seem to do what is asked of it on Linux.
|
||||
love.window.setPosition(settings.x, settings.y-37, settings.displayindex)
|
||||
-- love.window.setPosition doesn't quite seem to do what is asked of it on Linux.
|
||||
App.screen.move(settings.x, settings.y-37, settings.displayindex)
|
||||
end
|
||||
|
||||
function source.initialize_default_settings()
|
||||
|
@ -154,6 +165,13 @@ function source.initialize_default_settings()
|
|||
end
|
||||
|
||||
function source.initialize_window_geometry(em_width)
|
||||
local os = love.system.getOS()
|
||||
if os == 'Android' or os == 'iOS' then
|
||||
-- maximizing on iOS breaks text rendering: https://github.com/deltadaedalus/vudu/issues/7
|
||||
-- no point second-guessing window dimensions on mobile
|
||||
App.screen.width, App.screen.height, App.screen.flags = App.screen.size()
|
||||
return
|
||||
end
|
||||
-- maximize window
|
||||
App.screen.resize(0, 0) -- maximize
|
||||
Display_width, Display_height, App.screen.flags = App.screen.size()
|
||||
|
|
Loading…
Reference in New Issue