diff --git a/frame.js b/frame.js index e99b766f..67b7a30c 100644 --- a/frame.js +++ b/frame.js @@ -505,7 +505,7 @@ Volcanos(chat.ONLAYOUT, {help: "页面布局", _init: function(can, target) { ta return } - var width = can._root._width, height = can._root._height + var width = window.innerWidth, height = window.innerHeight can.page.Select(can, target, can.page.Keys(html.FIELDSET_HEAD, html.FIELDSET_FOOT), function(field) { height -= field.offsetHeight }) @@ -603,6 +603,7 @@ Volcanos(chat.ONLAYOUT, {help: "页面布局", _init: function(can, target) { ta }) Volcanos(chat.ONMOTION, {help: "动态特效", _init: function(can, target) { window.addEventListener(html.ORIENTATIONCHANGE, function(event) { can.onengine.signal(can, html.ORIENTATIONCHANGE) }) + window.onresize = function(event) { can.onengine.signal(can, chat.ONRESIZE) } can.onmotion.float.auto(can, target) }, float: {_hash: {}, diff --git a/panel/action.js b/panel/action.js index 0934f80f..5d9a375c 100644 --- a/panel/action.js +++ b/panel/action.js @@ -190,6 +190,7 @@ Volcanos(chat.ONACTION, {help: "操作数据", _init: function(can, cb, target) }, onsize: function(can, msg, height, width) { can.Conf({height: height-can.Conf(html.MARGIN_Y), width: width-can.Conf(html.MARGIN_X)}) }, onprint: function(can, msg) { can.page.styleHeight(can, can._target, "") }, + onresize: function(can, msg) { can.onlayout._init(can), can.onaction.layout(can, can.Conf(chat.LAYOUT)) }, layout: function(can, button, silent) { button = button||ice.AUTO can.page.ClassList.del(can, can._target, can.Conf(chat.LAYOUT)); if (button == ice.AUTO) { button = "" } @@ -204,6 +205,7 @@ Volcanos(chat.ONACTION, {help: "操作数据", _init: function(can, cb, target) can.core.Next(can._plugins, function(sub, next) { can.onmotion.delay(can, function() { sub.onaction._resize(sub, button == "" || button == ice.AUTO, can.ConfHeight(), can.ConfWidth()), next() + if (button == "" || button == ice.AUTO) { can.page.style(can, sub._output, html.MAX_HEIGHT, "") } }, 10) }) }, help: function(can, button) { can.user.open("/help/"+button+".shy") }, diff --git a/plugin/local/code/inner.js b/plugin/local/code/inner.js index 424316e3..ff4475b5 100644 --- a/plugin/local/code/inner.js +++ b/plugin/local/code/inner.js @@ -461,7 +461,7 @@ Volcanos(chat.ONIMPORT, {help: "导入数据", _init: function(can, msg, cb, tar can.page.styleWidth(can, can.ui.profile_output, profile_width) can.page.styleWidth(can, can.ui.display_output, width-project_width) - var height = can.user.isMobile && can.isFloatMode()? window.innerHeight-2*html.ACTION_HEIGHT: can.ConfHeight()-1 + var height = can.user.isMobile && can.isFloatMode()? window.innerHeight-2*html.ACTION_HEIGHT: can.base.Min(can.ConfHeight(), 320)-1 var display_height = can.ui.display.style.display == html.NONE? 0: (can.display_size[can.onexport.keys(can)]||120) if (can.isCmdMode()) { height += html.ACTION_HEIGHT var content_height = height-display_height - can.ui._tabs.offsetHeight - can.ui._path.offsetHeight - 4 diff --git a/plugin/story/spide.js b/plugin/story/spide.js index b0edc608..98ed99bc 100644 --- a/plugin/story/spide.js +++ b/plugin/story/spide.js @@ -56,6 +56,7 @@ Volcanos(chat.ONIMPORT, {help: "导入数据", _init: function(can, msg, cb, tar layout: function(can) { can.margin = can.margin||20 can.onmotion.clear(can), can.onimport._show(can, can.request()) can.svg.Val(html.FONT_SIZE, can.Action("size")) + can.page.style(can, can._output, html.MAX_HEIGHT, "") can.onaction[can.Action(ice.VIEW)](event, can, can.Action(ice.VIEW)) }, }, [""]) diff --git a/proto.js b/proto.js index 8ca505a7..0fa879c4 100644 --- a/proto.js +++ b/proto.js @@ -211,6 +211,7 @@ var chat = { ONMAIN: "onmain", ONLOGIN: "onlogin", ONSEARCH: "onsearch", ONSIZE: "onsize", ONTOAST: "ontoast", ONREMOTE: "onremote", ONKEYUP: "onkeyup", + ONRESIZE: "onresize", ONKEYDOWN: "onkeydown", ONMOUSEENTER: "onmouseenter", ORIENTATIONCHANGE: "orientationchange", ONSTORM_SELECT: "onstorm_select", ONACTION_TOUCH: "onaction_touch", ONACTION_NOTOOL: "onaction_notool", ONACTION_CMD: "onaction_cmd", ONOPENSEARCH: "onopensearch", ONSEARCH_FOCUS: "onsearch_focus", ONCOMMAND_FOCUS: "oncommand_focus",