You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by hl...@apache.org on 2013/08/22 03:34:02 UTC
[4/4] git commit: Initial work on conversion to Bootstrap 3
Initial work on conversion to Bootstrap 3
Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo
Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/bb23cdc2
Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/bb23cdc2
Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/bb23cdc2
Branch: refs/heads/master
Commit: bb23cdc21f68a655f8f2c24bb8c2c2ce5369ca12
Parents: cc5c53d
Author: Howard M. Lewis Ship <hl...@apache.org>
Authored: Wed Aug 21 18:33:53 2013 -0700
Committer: Howard M. Lewis Ship <hl...@apache.org>
Committed: Wed Aug 21 18:33:53 2013 -0700
----------------------------------------------------------------------
.../src/main/resources/components/Layout.tml | 6 +-
.../META-INF/modules/t5/core/alert.coffee | 16 +-
.../META-INF/modules/t5/core/bootstrap.coffee | 29 +
.../META-INF/modules/t5/core/console.coffee | 22 +-
.../tapestry5/corelib/components/Checkbox.java | 5 +-
.../tapestry5/corelib/components/Checklist.java | 30 +-
.../tapestry5/corelib/components/DateField.java | 27 +-
.../tapestry5/corelib/components/Errors.java | 5 +-
.../corelib/components/PasswordField.java | 4 +-
.../tapestry5/corelib/components/Radio.java | 17 +-
.../tapestry5/corelib/components/Select.java | 7 +-
.../tapestry5/corelib/components/TextArea.java | 14 +-
.../tapestry5/corelib/components/TextField.java | 4 +-
.../tapestry5/corelib/mixins/ControlGroup.java | 11 +-
.../tapestry5/modules/JavaScriptModule.java | 22 +-
.../tapestry5/modules/TapestryModule.java | 2 +-
.../css/bootstrap-responsive.css | 1109 ----
.../tapestry5/bootstrap_2_3_2/css/bootstrap.css | 6167 ------------------
.../img/glyphicons-halflings-white.png | Bin 8777 -> 0 bytes
.../img/glyphicons-halflings.png | Bin 12799 -> 0 bytes
.../tapestry5/bootstrap_2_3_2/js/bootstrap.js | 2280 -------
.../tapestry5/bootstrap_3_0_0/js/affix.js | 126 +
.../tapestry5/bootstrap_3_0_0/js/alert.js | 98 +
.../tapestry5/bootstrap_3_0_0/js/button.js | 109 +
.../tapestry5/bootstrap_3_0_0/js/carousel.js | 217 +
.../tapestry5/bootstrap_3_0_0/js/collapse.js | 179 +
.../tapestry5/bootstrap_3_0_0/js/dropdown.js | 154 +
.../tapestry5/bootstrap_3_0_0/js/modal.js | 246 +
.../tapestry5/bootstrap_3_0_0/js/popover.js | 117 +
.../tapestry5/bootstrap_3_0_0/js/scrollspy.js | 158 +
.../assets/tapestry5/bootstrap_3_0_0/js/tab.js | 135 +
.../tapestry5/bootstrap_3_0_0/js/tooltip.js | 386 ++
.../tapestry5/bootstrap_3_0_0/js/transition.js | 56 +
.../corelib/components/BeanEditForm.tml | 2 +-
.../tapestry5/corelib/components/BeanEditor.tml | 4 +-
.../corelib/pages/PropertyEditBlocks.tml | 34 +-
tapestry-core/src/test/app1/BeanEditorDemo.tml | 20 +-
tapestry-core/src/test/app1/Index.tml | 4 +-
.../integration/app1/components/Border.java | 3 +-
.../integration/app1/components/Border.tml | 8 +-
40 files changed, 2164 insertions(+), 9669 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/quickstart/filtered/archetype-resources/src/main/resources/components/Layout.tml
----------------------------------------------------------------------
diff --git a/quickstart/filtered/archetype-resources/src/main/resources/components/Layout.tml b/quickstart/filtered/archetype-resources/src/main/resources/components/Layout.tml
index f5ab93f..444770c 100644
--- a/quickstart/filtered/archetype-resources/src/main/resources/components/Layout.tml
+++ b/quickstart/filtered/archetype-resources/src/main/resources/components/Layout.tml
@@ -1,7 +1,7 @@
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml"
xmlns:t="http://tapestry.apache.org/schema/tapestry_5_3.xsd"
- xmlns:p="tapestry:parameter">
+ >
<head>
<meta charset="utf-8" />
<title>${D}{title}</title>
@@ -29,9 +29,9 @@
<body>
<div class="navbar navbar-inverse navbar-fixed-top">
- <div class="navbar-inner">
+ <div class="navbar-header">
<div class="container">
- <button type="button" class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
+ <button type="button" class="btn navbar-btn" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/coffeescript/META-INF/modules/t5/core/alert.coffee
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/coffeescript/META-INF/modules/t5/core/alert.coffee b/tapestry-core/src/main/coffeescript/META-INF/modules/t5/core/alert.coffee
index 0a015e6..bdbdea4 100644
--- a/tapestry-core/src/main/coffeescript/META-INF/modules/t5/core/alert.coffee
+++ b/tapestry-core/src/main/coffeescript/META-INF/modules/t5/core/alert.coffee
@@ -20,10 +20,10 @@ define ["./dom", "./console", "./messages", "./ajax", "underscore"],
(dom, console, messages, ajax, _) ->
severityToClass =
- info: "alert alert-info"
- success: "alert alert-success"
- warn: "alert alert-warning"
- error: "alert alert-error"
+ info: "alert-info"
+ success: "alert-success"
+ warn: "alert-warning"
+ error: "alert-error"
getURL = (container) -> container.attribute "data-dismiss-url"
@@ -66,7 +66,7 @@ define ["./dom", "./console", "./messages", "./ajax", "underscore"],
if (outer.attribute "data-show-dismiss-all") is "true"
outer.append """
- <div class="row-fluid">
+ <div class="row">
<button class="btn btn-mini pull-right" data-action="dismiss-all">
<strong>×</strong>
#{messages "core-dismiss-label"}
@@ -116,10 +116,10 @@ define ["./dom", "./console", "./messages", "./ajax", "underscore"],
# Also, the <span> tag makes it easier to pull out just the content when doing tests.
element = dom.create "div",
"data-alert-id": data.id
- class: className
+ class: "alert alert-dismissable " + className
"""
- <button class="close">×</button>
- <span>#{content}</span>
+ <button type="button" class="close">×</button>
+ #{content}
"""
container.append element
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/coffeescript/META-INF/modules/t5/core/bootstrap.coffee
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/coffeescript/META-INF/modules/t5/core/bootstrap.coffee b/tapestry-core/src/main/coffeescript/META-INF/modules/t5/core/bootstrap.coffee
new file mode 100644
index 0000000..e4da9db
--- /dev/null
+++ b/tapestry-core/src/main/coffeescript/META-INF/modules/t5/core/bootstrap.coffee
@@ -0,0 +1,29 @@
+# Copyright 2013 The Apache Software Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http:#www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# ## t5/core/bootstrap
+#
+# Utilities for leveraging Bootstrap
+define [],
+ ->
+
+ exports =
+ # Generates the CSS class name for an icon.
+ #
+ # * name - of icon, e.g., "arrow-left"
+ glyph: (name) -> """<span class="glyphicon glyphicon-#{name}"/>"""
+
+ return exports
+
+
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/coffeescript/META-INF/modules/t5/core/console.coffee
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/coffeescript/META-INF/modules/t5/core/console.coffee b/tapestry-core/src/main/coffeescript/META-INF/modules/t5/core/console.coffee
index 6a8c0eb..3e12c00 100644
--- a/tapestry-core/src/main/coffeescript/META-INF/modules/t5/core/console.coffee
+++ b/tapestry-core/src/main/coffeescript/META-INF/modules/t5/core/console.coffee
@@ -15,8 +15,8 @@
# ## t5/core/console
#
# A wrapper around the native console, when it exists.
-define ["./dom", "underscore"],
- (dom, _) ->
+define ["./dom", "underscore", "./bootstrap"],
+ (dom, _, { glyph }) ->
nativeConsole = {}
floatingConsole = null
@@ -56,11 +56,15 @@ define ["./dom", "underscore"],
class: "tapestry-console",
"""
<div class="message-container"></div>
- <div class="row-fluid">
- <button data-action="clear" class="btn btn-mini"><i class="icon-remove"></i> Clear Console</button>
- <button data-action="enable" class="btn btn-mini" disabled="true"><i class="icon-play"></i> Enable Console</button>
- <button data-action="disable" class="btn btn-mini"><i class="icon-pause"></i> Disable Console</button>
- <input class="search-query input-xlarge" size="40" placeholder="Filter console content">
+ <div class="row">
+ <div class="btn-group-sm col-lg-5">
+ <button data-action="clear" class="btn btn-mini">#{glyph "remove"} Clear Console</button>
+ <button data-action="enable" class="btn btn-mini" disabled="true">#{glyph "play"}</i> Enable Console</button>
+ <button data-action="disable" class="btn btn-mini">#{glyph "pause"} Disable Console</button>
+ </div>
+ <div class="col-lg-6">
+ <input class="form-control input-xlarge" size="40" placeholder="Filter console content">
+ </div>
</div>
"""
@@ -163,13 +167,13 @@ define ["./dom", "underscore"],
requirejs.onError = (err) ->
- message = "RequireJS error: #{err.requireType}"
+ message = "RequireJS error: #{err?.requireType or 'unknown'}"
if err.message
message += """: #{err.message}"""
if err.requireType
- modules = err.requireModules
+ modules = err?.requireModules
if modules and modules.length > 0
message += """, modules #{modules.join(", ")}"""
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Checkbox.java
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Checkbox.java b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Checkbox.java
index 38caf9f..3e4eea7 100644
--- a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Checkbox.java
+++ b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Checkbox.java
@@ -1,4 +1,4 @@
-// Copyright 2006, 2007, 2008, 2011, 2012 The Apache Software Foundation
+// Copyright 2006-2013 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -48,11 +48,8 @@ public class Checkbox extends AbstractField
boolean checked = asSubmitted != null ? Boolean.parseBoolean(asSubmitted) : value;
writer.element("input", "type", "checkbox",
-
"name", getControlName(),
-
"id", getClientId(),
-
"checked", checked ? "checked" : null);
resources.renderInformalParameters(writer);
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Checklist.java
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Checklist.java b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Checklist.java
index 328bd0d..7e7131c 100644
--- a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Checklist.java
+++ b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Checklist.java
@@ -1,4 +1,4 @@
-// Copyright 2011, 2012 The Apache Software Foundation
+// Copyright 2011-2013 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -84,32 +84,36 @@ public class Checklist extends AbstractField
@Property
private List<Renderable> availableOptions;
- private final class RenderRadio implements Renderable
+ private final class RenderCheckbox implements Renderable
{
private final OptionModel model;
- private RenderRadio(final OptionModel model)
+ private RenderCheckbox(final OptionModel model)
{
this.model = model;
}
public void render(MarkupWriter writer)
{
- final String clientId = javaScriptSupport.allocateClientId(resources);
-
final String clientValue = encoder.toClient(model.getValue());
- final Element checkbox = writer.element("input", "type", "checkbox", "id", clientId, "name", getControlName(), "value", clientValue);
+ writer.element("label");
+
+ final Element checkbox = writer.element("input",
+ "type", "checkbox",
+ "name", getControlName(),
+ "value", clientValue);
if (getSelected().contains(model.getValue()))
{
checkbox.attribute("checked", "checked");
}
- writer.end();
- writer.element("label", "for", clientId);
writer.write(model.getLabel());
writer.end();
+
+ writer.end();
+
}
}
@@ -125,7 +129,7 @@ public class Checklist extends AbstractField
public void option(final OptionModel optionModel)
{
- availableOptions.add(new RenderRadio(optionModel));
+ availableOptions.add(new RenderCheckbox(optionModel));
}
public void endOptionGroup(final OptionGroupModel groupModel)
@@ -204,5 +208,13 @@ public class Checklist extends AbstractField
{
return validate.isRequired();
}
+
+ void beginRender(MarkupWriter writer) {
+ writer.element("div", "class", "checkbox");
+ }
+
+ void afterRender(MarkupWriter writer) {
+ writer.end();
+ }
}
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/DateField.java
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/DateField.java b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/DateField.java
index d8b0aa2..99676de 100644
--- a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/DateField.java
+++ b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/DateField.java
@@ -1,4 +1,4 @@
-// Copyright 2007, 2008, 2009, 2010, 2011, 2012 The Apache Software Foundation
+// Copyright 2007-2013 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -210,14 +210,14 @@ public class DateField extends AbstractField
if (!hideTextField)
{
- writer.attributes("class", "input-append");
+ writer.attributes("class", "input-group");
}
writer.element("input",
"type", hideTextField ? "hidden" : "text",
- "class", "input-small",
+ "class", "form-control",
"name", getControlName(),
@@ -237,14 +237,27 @@ public class DateField extends AbstractField
decorateInsideField();
- writer.end();
+ writer.end(); // input
+
+ if (!hideTextField)
+ {
+ writer.element("span", "class", "input-group-btn");
+ }
writer.element("button",
+ "type", "button",
"class", "btn",
"alt", "[Show]");
- writer.element("i", "class", "icon-calendar");
- writer.end();
- writer.end();
+
+ writer.element("span", "class", "glyphicon glyphicon-calendar");
+ writer.end(); // span
+
+ writer.end(); // button
+
+ if (!hideTextField)
+ {
+ writer.end(); // span.input-group-btn
+ }
writer.end(); // outer div
}
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Errors.java
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Errors.java b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Errors.java
index 8d06439..3861701 100644
--- a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Errors.java
+++ b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Errors.java
@@ -32,7 +32,7 @@ import java.util.List;
* @tapestrydoc
* @see Form
*/
-@Import(module = "bootstrap")
+@Import(module = "bootstrap-alert")
public class Errors
{
/**
@@ -63,8 +63,9 @@ public class Errors
return;
}
- writer.element("div", "class", className);
+ writer.element("div", "class", "alert-dismissable " + className);
writer.element("button",
+ "type", "button",
"class", "close",
"data-dismiss", "alert");
writer.writeRaw("×");
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/PasswordField.java
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/PasswordField.java b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/PasswordField.java
index f699ee2..edd779b 100644
--- a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/PasswordField.java
+++ b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/PasswordField.java
@@ -1,4 +1,4 @@
-// Copyright 2007, 2008, 2011 The Apache Software Foundation
+// Copyright 2007-2013 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -40,6 +40,8 @@ public class PasswordField extends AbstractTextField
"type", "password",
+ "class", "form-control",
+
"name", getControlName(),
"id", getClientId(),
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Radio.java
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Radio.java b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Radio.java
index 884a95b..7fcf320 100644
--- a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Radio.java
+++ b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Radio.java
@@ -1,4 +1,4 @@
-// Copyright 2007, 2008, 2010, 2011 The Apache Software Foundation
+// Copyright 2007-2013 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,11 +14,7 @@
package org.apache.tapestry5.corelib.components;
-import org.apache.tapestry5.BindingConstants;
-import org.apache.tapestry5.ComponentResources;
-import org.apache.tapestry5.Field;
-import org.apache.tapestry5.MarkupWriter;
-import org.apache.tapestry5.RadioContainer;
+import org.apache.tapestry5.*;
import org.apache.tapestry5.annotations.Environmental;
import org.apache.tapestry5.annotations.Mixin;
import org.apache.tapestry5.annotations.Parameter;
@@ -35,7 +31,7 @@ import org.apache.tapestry5.services.javascript.JavaScriptSupport;
* <p/>
* If the value parameter is not bound, then the default value is a property of the container component whose name
* matches the Radio component's id.
- *
+ *
* @tapestrydoc
* @see RadioGroup
* @see Form
@@ -132,7 +128,12 @@ public class Radio implements Field
clientId = jsSupport.allocateClientId(resources);
controlName = container.getControlName();
- writer.element("input", "type", "radio", "id", clientId, "name", controlName, "value", value);
+ writer.element("input",
+ "type", "radio",
+ "id", clientId,
+ "name", controlName,
+ "class", "form-control",
+ "value", value);
if (container.isSelected(this.value))
writer.attributes("checked", "checked");
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Select.java
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Select.java b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Select.java
index f424f07..63d6731 100644
--- a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Select.java
+++ b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Select.java
@@ -1,4 +1,4 @@
-// Copyright 2007, 2008, 2009, 2010, 2011, 2012 The Apache Software Foundation
+// Copyright 2007-2013 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -179,7 +179,10 @@ public class Select extends AbstractField
void beginRender(MarkupWriter writer)
{
- writer.element("select", "name", getControlName(), "id", getClientId());
+ writer.element("select",
+ "name", getControlName(),
+ "id", getClientId(),
+ "class", "form-control");
putPropertyNameIntoBeanValidationContext("value");
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/TextArea.java
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/TextArea.java b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/TextArea.java
index bbe2fdf..bf0310f 100644
--- a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/TextArea.java
+++ b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/TextArea.java
@@ -1,4 +1,4 @@
-// Copyright 2006, 2007, 2008, 2011 The Apache Software Foundation
+// Copyright 2006-2013 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -24,9 +24,9 @@ import org.apache.tapestry5.corelib.base.AbstractTextField;
* <p/>
* Includes the <code>cols</code> attribute, if a {@link org.apache.tapestry5.beaneditor.Width} annotation is present on
* the property bound to the value parameter.
- *
- * @see org.apache.tapestry5.corelib.components.TextOutput
+ *
* @tapestrydoc
+ * @see org.apache.tapestry5.corelib.components.TextOutput
* @see TextField
* @see Form
*/
@@ -39,11 +39,13 @@ public class TextArea extends AbstractTextField
{
writer.element("textarea",
- "name", getControlName(),
+ "name", getControlName(),
+
+ "class", "form-control",
- "id", getClientId(),
+ "id", getClientId(),
- "cols", getWidth());
+ "cols", getWidth());
// Save until needed in after()
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/TextField.java
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/TextField.java b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/TextField.java
index 3dd8177..2c1c40c 100644
--- a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/TextField.java
+++ b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/TextField.java
@@ -1,4 +1,4 @@
-// Copyright 2006, 2007, 2008, 2011 The Apache Software Foundation
+// Copyright 2006-2013 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -48,6 +48,8 @@ public class TextField extends AbstractTextField
"name", getControlName(),
+ "class", "form-control",
+
"id", getClientId(),
"value", value,
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/java/org/apache/tapestry5/corelib/mixins/ControlGroup.java
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/mixins/ControlGroup.java b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/mixins/ControlGroup.java
index e0f8296..5835aa5 100644
--- a/tapestry-core/src/main/java/org/apache/tapestry5/corelib/mixins/ControlGroup.java
+++ b/tapestry-core/src/main/java/org/apache/tapestry5/corelib/mixins/ControlGroup.java
@@ -1,4 +1,4 @@
-// Copyright (c) 2013. The Apache Software Foundation
+// Copyright 2013 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -41,11 +41,9 @@ public class ControlGroup
void beginRender(MarkupWriter writer)
{
- writer.element("div", "class", "control-group");
- label = writer.element("label", "class", "control-label");
+ writer.element("div", "class", "form-group");
+ label = writer.element("label");
writer.end();
- writer.element("div", "class", "controls");
-
fillInLabelAttributes();
}
@@ -58,7 +56,6 @@ public class ControlGroup
void afterRender(MarkupWriter writer)
{
- writer.end(); // div.controls
- writer.end(); // div.control-group
+ writer.end(); // div.form-group
}
}
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/java/org/apache/tapestry5/modules/JavaScriptModule.java
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/java/org/apache/tapestry5/modules/JavaScriptModule.java b/tapestry-core/src/main/java/org/apache/tapestry5/modules/JavaScriptModule.java
index e2e9135..6807f4f 100644
--- a/tapestry-core/src/main/java/org/apache/tapestry5/modules/JavaScriptModule.java
+++ b/tapestry-core/src/main/java/org/apache/tapestry5/modules/JavaScriptModule.java
@@ -98,7 +98,7 @@ public class JavaScriptModule
}
add(configuration, StackExtensionType.STYLESHEET,
- "${tapestry.bootstrap-root}/css/bootstrap.css",
+ "${" + SymbolConstants.BOOTSTRAP_ROOT + "}/css/bootstrap.css",
ROOT + "/tapestry.css",
@@ -233,15 +233,29 @@ public class JavaScriptModule
@Path("${tapestry.asset.root}/jquery-1.9.1.js")
Resource jQuery,
- @Path("${" + SymbolConstants.BOOTSTRAP_ROOT + "}/js/bootstrap.js")
- Resource bootstrap)
+ @Path("${" + SymbolConstants.BOOTSTRAP_ROOT + "}/js/transition.js")
+ Resource transition)
{
configuration.add("underscore", new JavaScriptModuleConfiguration(underscore).exports("_"));
// Hacking around https://github.com/jrburke/requirejs/issues/534
configuration.add("jquery-library", new JavaScriptModuleConfiguration(jQuery));
configuration.add("jquery", new JavaScriptModuleConfiguration(jqueryShim));
configuration.add("prototype", new JavaScriptModuleConfiguration(prototype));
- configuration.add("bootstrap", new JavaScriptModuleConfiguration(bootstrap).dependsOn("jquery"));
+
+ configuration.add("bootstrap-transition", new JavaScriptModuleConfiguration(transition).dependsOn("jquery"));
+
+ for (String name : new String[]{"affix", "alert", "button", "carousel", "collapse", "dropdown", "modal",
+ "scrollspy", "tab", "tooltip"})
+ {
+
+ Resource lib = transition.forFile(name + ".js");
+
+ configuration.add("bootstrap-" + name, new JavaScriptModuleConfiguration(lib).dependsOn("bootstrap-transition"));
+ }
+
+ Resource popover = transition.forFile("popover.js");
+
+ configuration.add("bootstrap-popover", new JavaScriptModuleConfiguration(popover).dependsOn("bootstrap-tooltip"));
}
@Contribute(SymbolProvider.class)
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/java/org/apache/tapestry5/modules/TapestryModule.java
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/java/org/apache/tapestry5/modules/TapestryModule.java b/tapestry-core/src/main/java/org/apache/tapestry5/modules/TapestryModule.java
index 8b7b969..8b2c2cb 100644
--- a/tapestry-core/src/main/java/org/apache/tapestry5/modules/TapestryModule.java
+++ b/tapestry-core/src/main/java/org/apache/tapestry5/modules/TapestryModule.java
@@ -2090,7 +2090,7 @@ public final class TapestryModule
// you are expected to override this symbol.
configuration.add(SymbolConstants.HMAC_PASSPHRASE, "");
- configuration.add(SymbolConstants.BOOTSTRAP_ROOT, "${tapestry.asset.root}/bootstrap_2_3_2");
+ configuration.add(SymbolConstants.BOOTSTRAP_ROOT, "${tapestry.asset.root}/bootstrap_3_0_0");
configuration.add(SymbolConstants.SESSION_LOCKING_ENABLED, true);
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/bb23cdc2/tapestry-core/src/main/resources/META-INF/assets/tapestry5/bootstrap_2_3_2/css/bootstrap-responsive.css
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/resources/META-INF/assets/tapestry5/bootstrap_2_3_2/css/bootstrap-responsive.css b/tapestry-core/src/main/resources/META-INF/assets/tapestry5/bootstrap_2_3_2/css/bootstrap-responsive.css
deleted file mode 100644
index 09e88ce..0000000
--- a/tapestry-core/src/main/resources/META-INF/assets/tapestry5/bootstrap_2_3_2/css/bootstrap-responsive.css
+++ /dev/null
@@ -1,1109 +0,0 @@
-/*!
- * Bootstrap Responsive v2.3.2
- *
- * Copyright 2012 Twitter, Inc
- * Licensed under the Apache License v2.0
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Designed and built with all the love in the world @twitter by @mdo and @fat.
- */
-
-.clearfix {
- *zoom: 1;
-}
-
-.clearfix:before,
-.clearfix:after {
- display: table;
- line-height: 0;
- content: "";
-}
-
-.clearfix:after {
- clear: both;
-}
-
-.hide-text {
- font: 0/0 a;
- color: transparent;
- text-shadow: none;
- background-color: transparent;
- border: 0;
-}
-
-.input-block-level {
- display: block;
- width: 100%;
- min-height: 30px;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
-}
-
-@-ms-viewport {
- width: device-width;
-}
-
-.hidden {
- display: none;
- visibility: hidden;
-}
-
-.visible-phone {
- display: none !important;
-}
-
-.visible-tablet {
- display: none !important;
-}
-
-.hidden-desktop {
- display: none !important;
-}
-
-.visible-desktop {
- display: inherit !important;
-}
-
-@media (min-width: 768px) and (max-width: 979px) {
- .hidden-desktop {
- display: inherit !important;
- }
- .visible-desktop {
- display: none !important ;
- }
- .visible-tablet {
- display: inherit !important;
- }
- .hidden-tablet {
- display: none !important;
- }
-}
-
-@media (max-width: 767px) {
- .hidden-desktop {
- display: inherit !important;
- }
- .visible-desktop {
- display: none !important;
- }
- .visible-phone {
- display: inherit !important;
- }
- .hidden-phone {
- display: none !important;
- }
-}
-
-.visible-print {
- display: none !important;
-}
-
-@media print {
- .visible-print {
- display: inherit !important;
- }
- .hidden-print {
- display: none !important;
- }
-}
-
-@media (min-width: 1200px) {
- .row {
- margin-left: -30px;
- *zoom: 1;
- }
- .row:before,
- .row:after {
- display: table;
- line-height: 0;
- content: "";
- }
- .row:after {
- clear: both;
- }
- [class*="span"] {
- float: left;
- min-height: 1px;
- margin-left: 30px;
- }
- .container,
- .navbar-static-top .container,
- .navbar-fixed-top .container,
- .navbar-fixed-bottom .container {
- width: 1170px;
- }
- .span12 {
- width: 1170px;
- }
- .span11 {
- width: 1070px;
- }
- .span10 {
- width: 970px;
- }
- .span9 {
- width: 870px;
- }
- .span8 {
- width: 770px;
- }
- .span7 {
- width: 670px;
- }
- .span6 {
- width: 570px;
- }
- .span5 {
- width: 470px;
- }
- .span4 {
- width: 370px;
- }
- .span3 {
- width: 270px;
- }
- .span2 {
- width: 170px;
- }
- .span1 {
- width: 70px;
- }
- .offset12 {
- margin-left: 1230px;
- }
- .offset11 {
- margin-left: 1130px;
- }
- .offset10 {
- margin-left: 1030px;
- }
- .offset9 {
- margin-left: 930px;
- }
- .offset8 {
- margin-left: 830px;
- }
- .offset7 {
- margin-left: 730px;
- }
- .offset6 {
- margin-left: 630px;
- }
- .offset5 {
- margin-left: 530px;
- }
- .offset4 {
- margin-left: 430px;
- }
- .offset3 {
- margin-left: 330px;
- }
- .offset2 {
- margin-left: 230px;
- }
- .offset1 {
- margin-left: 130px;
- }
- .row-fluid {
- width: 100%;
- *zoom: 1;
- }
- .row-fluid:before,
- .row-fluid:after {
- display: table;
- line-height: 0;
- content: "";
- }
- .row-fluid:after {
- clear: both;
- }
- .row-fluid [class*="span"] {
- display: block;
- float: left;
- width: 100%;
- min-height: 30px;
- margin-left: 2.564102564102564%;
- *margin-left: 2.5109110747408616%;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- }
- .row-fluid [class*="span"]:first-child {
- margin-left: 0;
- }
- .row-fluid .controls-row [class*="span"] + [class*="span"] {
- margin-left: 2.564102564102564%;
- }
- .row-fluid .span12 {
- width: 100%;
- *width: 99.94680851063829%;
- }
- .row-fluid .span11 {
- width: 91.45299145299145%;
- *width: 91.39979996362975%;
- }
- .row-fluid .span10 {
- width: 82.90598290598291%;
- *width: 82.8527914166212%;
- }
- .row-fluid .span9 {
- width: 74.35897435897436%;
- *width: 74.30578286961266%;
- }
- .row-fluid .span8 {
- width: 65.81196581196582%;
- *width: 65.75877432260411%;
- }
- .row-fluid .span7 {
- width: 57.26495726495726%;
- *width: 57.21176577559556%;
- }
- .row-fluid .span6 {
- width: 48.717948717948715%;
- *width: 48.664757228587014%;
- }
- .row-fluid .span5 {
- width: 40.17094017094017%;
- *width: 40.11774868157847%;
- }
- .row-fluid .span4 {
- width: 31.623931623931625%;
- *width: 31.570740134569924%;
- }
- .row-fluid .span3 {
- width: 23.076923076923077%;
- *width: 23.023731587561375%;
- }
- .row-fluid .span2 {
- width: 14.52991452991453%;
- *width: 14.476723040552828%;
- }
- .row-fluid .span1 {
- width: 5.982905982905983%;
- *width: 5.929714493544281%;
- }
- .row-fluid .offset12 {
- margin-left: 105.12820512820512%;
- *margin-left: 105.02182214948171%;
- }
- .row-fluid .offset12:first-child {
- margin-left: 102.56410256410257%;
- *margin-left: 102.45771958537915%;
- }
- .row-fluid .offset11 {
- margin-left: 96.58119658119658%;
- *margin-left: 96.47481360247316%;
- }
- .row-fluid .offset11:first-child {
- margin-left: 94.01709401709402%;
- *margin-left: 93.91071103837061%;
- }
- .row-fluid .offset10 {
- margin-left: 88.03418803418803%;
- *margin-left: 87.92780505546462%;
- }
- .row-fluid .offset10:first-child {
- margin-left: 85.47008547008548%;
- *margin-left: 85.36370249136206%;
- }
- .row-fluid .offset9 {
- margin-left: 79.48717948717949%;
- *margin-left: 79.38079650845607%;
- }
- .row-fluid .offset9:first-child {
- margin-left: 76.92307692307693%;
- *margin-left: 76.81669394435352%;
- }
- .row-fluid .offset8 {
- margin-left: 70.94017094017094%;
- *margin-left: 70.83378796144753%;
- }
- .row-fluid .offset8:first-child {
- margin-left: 68.37606837606839%;
- *margin-left: 68.26968539734497%;
- }
- .row-fluid .offset7 {
- margin-left: 62.393162393162385%;
- *margin-left: 62.28677941443899%;
- }
- .row-fluid .offset7:first-child {
- margin-left: 59.82905982905982%;
- *margin-left: 59.72267685033642%;
- }
- .row-fluid .offset6 {
- margin-left: 53.84615384615384%;
- *margin-left: 53.739770867430444%;
- }
- .row-fluid .offset6:first-child {
- margin-left: 51.28205128205128%;
- *margin-left: 51.175668303327875%;
- }
- .row-fluid .offset5 {
- margin-left: 45.299145299145295%;
- *margin-left: 45.1927623204219%;
- }
- .row-fluid .offset5:first-child {
- margin-left: 42.73504273504273%;
- *margin-left: 42.62865975631933%;
- }
- .row-fluid .offset4 {
- margin-left: 36.75213675213675%;
- *margin-left: 36.645753773413354%;
- }
- .row-fluid .offset4:first-child {
- margin-left: 34.18803418803419%;
- *margin-left: 34.081651209310785%;
- }
- .row-fluid .offset3 {
- margin-left: 28.205128205128204%;
- *margin-left: 28.0987452264048%;
- }
- .row-fluid .offset3:first-child {
- margin-left: 25.641025641025642%;
- *margin-left: 25.53464266230224%;
- }
- .row-fluid .offset2 {
- margin-left: 19.65811965811966%;
- *margin-left: 19.551736679396257%;
- }
- .row-fluid .offset2:first-child {
- margin-left: 17.094017094017094%;
- *margin-left: 16.98763411529369%;
- }
- .row-fluid .offset1 {
- margin-left: 11.11111111111111%;
- *margin-left: 11.004728132387708%;
- }
- .row-fluid .offset1:first-child {
- margin-left: 8.547008547008547%;
- *margin-left: 8.440625568285142%;
- }
- input,
- textarea,
- .uneditable-input {
- margin-left: 0;
- }
- .controls-row [class*="span"] + [class*="span"] {
- margin-left: 30px;
- }
- input.span12,
- textarea.span12,
- .uneditable-input.span12 {
- width: 1156px;
- }
- input.span11,
- textarea.span11,
- .uneditable-input.span11 {
- width: 1056px;
- }
- input.span10,
- textarea.span10,
- .uneditable-input.span10 {
- width: 956px;
- }
- input.span9,
- textarea.span9,
- .uneditable-input.span9 {
- width: 856px;
- }
- input.span8,
- textarea.span8,
- .uneditable-input.span8 {
- width: 756px;
- }
- input.span7,
- textarea.span7,
- .uneditable-input.span7 {
- width: 656px;
- }
- input.span6,
- textarea.span6,
- .uneditable-input.span6 {
- width: 556px;
- }
- input.span5,
- textarea.span5,
- .uneditable-input.span5 {
- width: 456px;
- }
- input.span4,
- textarea.span4,
- .uneditable-input.span4 {
- width: 356px;
- }
- input.span3,
- textarea.span3,
- .uneditable-input.span3 {
- width: 256px;
- }
- input.span2,
- textarea.span2,
- .uneditable-input.span2 {
- width: 156px;
- }
- input.span1,
- textarea.span1,
- .uneditable-input.span1 {
- width: 56px;
- }
- .thumbnails {
- margin-left: -30px;
- }
- .thumbnails > li {
- margin-left: 30px;
- }
- .row-fluid .thumbnails {
- margin-left: 0;
- }
-}
-
-@media (min-width: 768px) and (max-width: 979px) {
- .row {
- margin-left: -20px;
- *zoom: 1;
- }
- .row:before,
- .row:after {
- display: table;
- line-height: 0;
- content: "";
- }
- .row:after {
- clear: both;
- }
- [class*="span"] {
- float: left;
- min-height: 1px;
- margin-left: 20px;
- }
- .container,
- .navbar-static-top .container,
- .navbar-fixed-top .container,
- .navbar-fixed-bottom .container {
- width: 724px;
- }
- .span12 {
- width: 724px;
- }
- .span11 {
- width: 662px;
- }
- .span10 {
- width: 600px;
- }
- .span9 {
- width: 538px;
- }
- .span8 {
- width: 476px;
- }
- .span7 {
- width: 414px;
- }
- .span6 {
- width: 352px;
- }
- .span5 {
- width: 290px;
- }
- .span4 {
- width: 228px;
- }
- .span3 {
- width: 166px;
- }
- .span2 {
- width: 104px;
- }
- .span1 {
- width: 42px;
- }
- .offset12 {
- margin-left: 764px;
- }
- .offset11 {
- margin-left: 702px;
- }
- .offset10 {
- margin-left: 640px;
- }
- .offset9 {
- margin-left: 578px;
- }
- .offset8 {
- margin-left: 516px;
- }
- .offset7 {
- margin-left: 454px;
- }
- .offset6 {
- margin-left: 392px;
- }
- .offset5 {
- margin-left: 330px;
- }
- .offset4 {
- margin-left: 268px;
- }
- .offset3 {
- margin-left: 206px;
- }
- .offset2 {
- margin-left: 144px;
- }
- .offset1 {
- margin-left: 82px;
- }
- .row-fluid {
- width: 100%;
- *zoom: 1;
- }
- .row-fluid:before,
- .row-fluid:after {
- display: table;
- line-height: 0;
- content: "";
- }
- .row-fluid:after {
- clear: both;
- }
- .row-fluid [class*="span"] {
- display: block;
- float: left;
- width: 100%;
- min-height: 30px;
- margin-left: 2.7624309392265194%;
- *margin-left: 2.709239449864817%;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- }
- .row-fluid [class*="span"]:first-child {
- margin-left: 0;
- }
- .row-fluid .controls-row [class*="span"] + [class*="span"] {
- margin-left: 2.7624309392265194%;
- }
- .row-fluid .span12 {
- width: 100%;
- *width: 99.94680851063829%;
- }
- .row-fluid .span11 {
- width: 91.43646408839778%;
- *width: 91.38327259903608%;
- }
- .row-fluid .span10 {
- width: 82.87292817679558%;
- *width: 82.81973668743387%;
- }
- .row-fluid .span9 {
- width: 74.30939226519337%;
- *width: 74.25620077583166%;
- }
- .row-fluid .span8 {
- width: 65.74585635359117%;
- *width: 65.69266486422946%;
- }
- .row-fluid .span7 {
- width: 57.18232044198895%;
- *width: 57.12912895262725%;
- }
- .row-fluid .span6 {
- width: 48.61878453038674%;
- *width: 48.56559304102504%;
- }
- .row-fluid .span5 {
- width: 40.05524861878453%;
- *width: 40.00205712942283%;
- }
- .row-fluid .span4 {
- width: 31.491712707182323%;
- *width: 31.43852121782062%;
- }
- .row-fluid .span3 {
- width: 22.92817679558011%;
- *width: 22.87498530621841%;
- }
- .row-fluid .span2 {
- width: 14.3646408839779%;
- *width: 14.311449394616199%;
- }
- .row-fluid .span1 {
- width: 5.801104972375691%;
- *width: 5.747913483013988%;
- }
- .row-fluid .offset12 {
- margin-left: 105.52486187845304%;
- *margin-left: 105.41847889972962%;
- }
- .row-fluid .offset12:first-child {
- margin-left: 102.76243093922652%;
- *margin-left: 102.6560479605031%;
- }
- .row-fluid .offset11 {
- margin-left: 96.96132596685082%;
- *margin-left: 96.8549429881274%;
- }
- .row-fluid .offset11:first-child {
- margin-left: 94.1988950276243%;
- *margin-left: 94.09251204890089%;
- }
- .row-fluid .offset10 {
- margin-left: 88.39779005524862%;
- *margin-left: 88.2914070765252%;
- }
- .row-fluid .offset10:first-child {
- margin-left: 85.6353591160221%;
- *margin-left: 85.52897613729868%;
- }
- .row-fluid .offset9 {
- margin-left: 79.8342541436464%;
- *margin-left: 79.72787116492299%;
- }
- .row-fluid .offset9:first-child {
- margin-left: 77.07182320441989%;
- *margin-left: 76.96544022569647%;
- }
- .row-fluid .offset8 {
- margin-left: 71.2707182320442%;
- *margin-left: 71.16433525332079%;
- }
- .row-fluid .offset8:first-child {
- margin-left: 68.50828729281768%;
- *margin-left: 68.40190431409427%;
- }
- .row-fluid .offset7 {
- margin-left: 62.70718232044199%;
- *margin-left: 62.600799341718584%;
- }
- .row-fluid .offset7:first-child {
- margin-left: 59.94475138121547%;
- *margin-left: 59.838368402492065%;
- }
- .row-fluid .offset6 {
- margin-left: 54.14364640883978%;
- *margin-left: 54.037263430116376%;
- }
- .row-fluid .offset6:first-child {
- margin-left: 51.38121546961326%;
- *margin-left: 51.27483249088986%;
- }
- .row-fluid .offset5 {
- margin-left: 45.58011049723757%;
- *margin-left: 45.47372751851417%;
- }
- .row-fluid .offset5:first-child {
- margin-left: 42.81767955801105%;
- *margin-left: 42.71129657928765%;
- }
- .row-fluid .offset4 {
- margin-left: 37.01657458563536%;
- *margin-left: 36.91019160691196%;
- }
- .row-fluid .offset4:first-child {
- margin-left: 34.25414364640884%;
- *margin-left: 34.14776066768544%;
- }
- .row-fluid .offset3 {
- margin-left: 28.45303867403315%;
- *margin-left: 28.346655695309746%;
- }
- .row-fluid .offset3:first-child {
- margin-left: 25.69060773480663%;
- *margin-left: 25.584224756083227%;
- }
- .row-fluid .offset2 {
- margin-left: 19.88950276243094%;
- *margin-left: 19.783119783707537%;
- }
- .row-fluid .offset2:first-child {
- margin-left: 17.12707182320442%;
- *margin-left: 17.02068884448102%;
- }
- .row-fluid .offset1 {
- margin-left: 11.32596685082873%;
- *margin-left: 11.219583872105325%;
- }
- .row-fluid .offset1:first-child {
- margin-left: 8.56353591160221%;
- *margin-left: 8.457152932878806%;
- }
- input,
- textarea,
- .uneditable-input {
- margin-left: 0;
- }
- .controls-row [class*="span"] + [class*="span"] {
- margin-left: 20px;
- }
- input.span12,
- textarea.span12,
- .uneditable-input.span12 {
- width: 710px;
- }
- input.span11,
- textarea.span11,
- .uneditable-input.span11 {
- width: 648px;
- }
- input.span10,
- textarea.span10,
- .uneditable-input.span10 {
- width: 586px;
- }
- input.span9,
- textarea.span9,
- .uneditable-input.span9 {
- width: 524px;
- }
- input.span8,
- textarea.span8,
- .uneditable-input.span8 {
- width: 462px;
- }
- input.span7,
- textarea.span7,
- .uneditable-input.span7 {
- width: 400px;
- }
- input.span6,
- textarea.span6,
- .uneditable-input.span6 {
- width: 338px;
- }
- input.span5,
- textarea.span5,
- .uneditable-input.span5 {
- width: 276px;
- }
- input.span4,
- textarea.span4,
- .uneditable-input.span4 {
- width: 214px;
- }
- input.span3,
- textarea.span3,
- .uneditable-input.span3 {
- width: 152px;
- }
- input.span2,
- textarea.span2,
- .uneditable-input.span2 {
- width: 90px;
- }
- input.span1,
- textarea.span1,
- .uneditable-input.span1 {
- width: 28px;
- }
-}
-
-@media (max-width: 767px) {
- body {
- padding-right: 20px;
- padding-left: 20px;
- }
- .navbar-fixed-top,
- .navbar-fixed-bottom,
- .navbar-static-top {
- margin-right: -20px;
- margin-left: -20px;
- }
- .container-fluid {
- padding: 0;
- }
- .dl-horizontal dt {
- float: none;
- width: auto;
- clear: none;
- text-align: left;
- }
- .dl-horizontal dd {
- margin-left: 0;
- }
- .container {
- width: auto;
- }
- .row-fluid {
- width: 100%;
- }
- .row,
- .thumbnails {
- margin-left: 0;
- }
- .thumbnails > li {
- float: none;
- margin-left: 0;
- }
- [class*="span"],
- .uneditable-input[class*="span"],
- .row-fluid [class*="span"] {
- display: block;
- float: none;
- width: 100%;
- margin-left: 0;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- }
- .span12,
- .row-fluid .span12 {
- width: 100%;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- }
- .row-fluid [class*="offset"]:first-child {
- margin-left: 0;
- }
- .input-large,
- .input-xlarge,
- .input-xxlarge,
- input[class*="span"],
- select[class*="span"],
- textarea[class*="span"],
- .uneditable-input {
- display: block;
- width: 100%;
- min-height: 30px;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- }
- .input-prepend input,
- .input-append input,
- .input-prepend input[class*="span"],
- .input-append input[class*="span"] {
- display: inline-block;
- width: auto;
- }
- .controls-row [class*="span"] + [class*="span"] {
- margin-left: 0;
- }
- .modal {
- position: fixed;
- top: 20px;
- right: 20px;
- left: 20px;
- width: auto;
- margin: 0;
- }
- .modal.fade {
- top: -100px;
- }
- .modal.fade.in {
- top: 20px;
- }
-}
-
-@media (max-width: 480px) {
- .nav-collapse {
- -webkit-transform: translate3d(0, 0, 0);
- }
- .page-header h1 small {
- display: block;
- line-height: 20px;
- }
- input[type="checkbox"],
- input[type="radio"] {
- border: 1px solid #ccc;
- }
- .form-horizontal .control-label {
- float: none;
- width: auto;
- padding-top: 0;
- text-align: left;
- }
- .form-horizontal .controls {
- margin-left: 0;
- }
- .form-horizontal .control-list {
- padding-top: 0;
- }
- .form-horizontal .form-actions {
- padding-right: 10px;
- padding-left: 10px;
- }
- .media .pull-left,
- .media .pull-right {
- display: block;
- float: none;
- margin-bottom: 10px;
- }
- .media-object {
- margin-right: 0;
- margin-left: 0;
- }
- .modal {
- top: 10px;
- right: 10px;
- left: 10px;
- }
- .modal-header .close {
- padding: 10px;
- margin: -10px;
- }
- .carousel-caption {
- position: static;
- }
-}
-
-@media (max-width: 979px) {
- body {
- padding-top: 0;
- }
- .navbar-fixed-top,
- .navbar-fixed-bottom {
- position: static;
- }
- .navbar-fixed-top {
- margin-bottom: 20px;
- }
- .navbar-fixed-bottom {
- margin-top: 20px;
- }
- .navbar-fixed-top .navbar-inner,
- .navbar-fixed-bottom .navbar-inner {
- padding: 5px;
- }
- .navbar .container {
- width: auto;
- padding: 0;
- }
- .navbar .brand {
- padding-right: 10px;
- padding-left: 10px;
- margin: 0 0 0 -5px;
- }
- .nav-collapse {
- clear: both;
- }
- .nav-collapse .nav {
- float: none;
- margin: 0 0 10px;
- }
- .nav-collapse .nav > li {
- float: none;
- }
- .nav-collapse .nav > li > a {
- margin-bottom: 2px;
- }
- .nav-collapse .nav > .divider-vertical {
- display: none;
- }
- .nav-collapse .nav .nav-header {
- color: #777777;
- text-shadow: none;
- }
- .nav-collapse .nav > li > a,
- .nav-collapse .dropdown-menu a {
- padding: 9px 15px;
- font-weight: bold;
- color: #777777;
- -webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- border-radius: 3px;
- }
- .nav-collapse .btn {
- padding: 4px 10px 4px;
- font-weight: normal;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
- }
- .nav-collapse .dropdown-menu li + li a {
- margin-bottom: 2px;
- }
- .nav-collapse .nav > li > a:hover,
- .nav-collapse .nav > li > a:focus,
- .nav-collapse .dropdown-menu a:hover,
- .nav-collapse .dropdown-menu a:focus {
- background-color: #f2f2f2;
- }
- .navbar-inverse .nav-collapse .nav > li > a,
- .navbar-inverse .nav-collapse .dropdown-menu a {
- color: #999999;
- }
- .navbar-inverse .nav-collapse .nav > li > a:hover,
- .navbar-inverse .nav-collapse .nav > li > a:focus,
- .navbar-inverse .nav-collapse .dropdown-menu a:hover,
- .navbar-inverse .nav-collapse .dropdown-menu a:focus {
- background-color: #111111;
- }
- .nav-collapse.in .btn-group {
- padding: 0;
- margin-top: 5px;
- }
- .nav-collapse .dropdown-menu {
- position: static;
- top: auto;
- left: auto;
- display: none;
- float: none;
- max-width: none;
- padding: 0;
- margin: 0 15px;
- background-color: transparent;
- border: none;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- border-radius: 0;
- -webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none;
- }
- .nav-collapse .open > .dropdown-menu {
- display: block;
- }
- .nav-collapse .dropdown-menu:before,
- .nav-collapse .dropdown-menu:after {
- display: none;
- }
- .nav-collapse .dropdown-menu .divider {
- display: none;
- }
- .nav-collapse .nav > li > .dropdown-menu:before,
- .nav-collapse .nav > li > .dropdown-menu:after {
- display: none;
- }
- .nav-collapse .navbar-form,
- .nav-collapse .navbar-search {
- float: none;
- padding: 10px 15px;
- margin: 10px 0;
- border-top: 1px solid #f2f2f2;
- border-bottom: 1px solid #f2f2f2;
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
- -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
- }
- .navbar-inverse .nav-collapse .navbar-form,
- .navbar-inverse .nav-collapse .navbar-search {
- border-top-color: #111111;
- border-bottom-color: #111111;
- }
- .navbar .nav-collapse .nav.pull-right {
- float: none;
- margin-left: 0;
- }
- .nav-collapse,
- .nav-collapse.collapse {
- height: 0;
- overflow: hidden;
- }
- .navbar .btn-navbar {
- display: block;
- }
- .navbar-static .navbar-inner {
- padding-right: 10px;
- padding-left: 10px;
- }
-}
-
-@media (min-width: 980px) {
- .nav-collapse.collapse {
- height: auto !important;
- overflow: visible !important;
- }
-}