Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6718)

Unified Diff: chrome/browser/resources/touch_ntp/newtab.css

Issue 6661024: Use a specialized new tab page in TOUCH_UI builds (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Fix some indentation issues and enable gjslist --strict mode to catch them automatically Created 9 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/resources/touch_ntp/grabber.js ('k') | chrome/browser/resources/touch_ntp/newtab.html » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/resources/touch_ntp/newtab.css
diff --git a/chrome/browser/resources/touch_ntp/newtab.css b/chrome/browser/resources/touch_ntp/newtab.css
new file mode 100644
index 0000000000000000000000000000000000000000..455e6105872894bd7dfe6c01ab0dfd94d25dd505
--- /dev/null
+++ b/chrome/browser/resources/touch_ntp/newtab.css
@@ -0,0 +1,217 @@
+/* Copyright (c) 2011 The Chromium Authors. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ *
+ * This is the stylesheet used by the touch-enabled new tab page
+ */
+
+html {
+ /* It's necessary to put this here instead of in body in order to get the
+ background-size of 100% to work properly */
+ height: 100%;
+}
+
+body {
+ /* This newer linear-gradient form works on Chrome but not mobile Safari */
+ /*background: -webkit-linear-gradient(top,#252c39,#3e485b,#252c39); */
+ background: -webkit-gradient(linear, left top, left bottom, from(#252c39),
+ color-stop(0.5,#3e485b), to(#252c39));
+ background-size: auto 100%;
+ font-family: segoe ui, arial, helvetica, sans-serif;
+ font-size: 14px;
+ color: white;
+ margin: 0;
+ /* Don't highlight links when they're tapped. Safari has bugs here that
+ show up as flicker when dragging in some situations */
+ -webkit-tap-highlight-color: transparent;
+ /* Don't allow selecting text - can occur when dragging */
+ -webkit-user-select: none;
+}
+
+/* The frame is what the slider fits into
+ */
+#apps-frame {
+ /* We want this to fill the window except for the region used
+ by footer
+ */
+ position: fixed;
+ width: 100%;
+ top: 0;
+ bottom: 60px; /* must match #footer height */
+ overflow: hidden;
+}
+
+/* The list holds all the pages and is what the touch events are attached to
+*/
+#apps-page-list {
+ /* fill the apps-frame */
+ height: 100%;
+ display: -webkit-box;
+}
+
+/* The apps-page is the slider card that is moved.
+ */
+.apps-page {
+ -webkit-box-sizing: border-box;
+ padding: 29px;
+ /* TODO(rbyers): Don't want the final row centered, but would like all rows
+ * centered. Really I want the page-content width determined by the boxes
+ * inside of it, but perhaps webkit-box doesn't support that.
+ * Note that instead of display:inline-block for the apps, I could use
+ * float:left and have a .app-container:first-child { clear:both; } rule,
+ * but I'd have to figure out some way to get the vertical position reset.
+ text-align:center; */
+}
+
+.app-container {
+ width: 128px;
+ height: 128px;
+ padding: 16px;
+ display: inline-block;
+ vertical-align: top;
+}
+
+.app {
+ text-align: center;
+ width: 128px;
+ height: 128px;
+ /* Animate effects to/from the grabbed state, and the position when drop
+ is cancelled. I'd like to also animate movement when an app is
+ re-positioned, but since chrome is doing the layout there is no property
+ to animate.
+ TODO(rbyers): Should we take over responsibility for app layout ourself
+ like the classic NTP's most-visited icons? Or should we extend webkit
+ somehow to support animation of the position of browser laid-out
+ elements. */
+ -webkit-transition-property: -webkit-transform, opacity, zIndex;
+ -webkit-transition-duration: 200ms;
+ /* Don't offer the context menu on long-press. */
+ -webkit-touch-callout: none;
+ /* Work-around regression bug 74802 */
+ -webkit-transform: scale3d(1, 1, 1);
+}
+
+.app span {
+ text-decoration: none;
+ /* TODO(rbyers): why isn't ellipsis working? */
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ overflow: hidden;
+ color: white;
+}
+
+.app img {
+ display: block;
+ width: 96px;
+ height: 96px;
+ margin-left: auto;
+ margin-right: auto;
+ /* -webkit-mask-image set by JavaScript to the image source */
+ -webkit-mask-size: 100% 100%;
+}
+
+/* Pressed is set when an app is first touched.
+ By using the mask, pressing causes a darkening effect of just the image */
+.app.grabber-pressed img {
+ opacity: 0.8;
+}
+
+/* Grabbed is set (and pressed is cleared) when the app has been held. */
+.grabber-grabbed {
+ opacity: 0.8;
+ -webkit-transform: scale3d(1.4, 1.4, 1);
+}
+
+/* Dragging is set (without grabbed being cleared) when a grabbed app is
+ moved */
+.grabber-dragging {
+ /* We need to ensure there is no animation applied to its position
+ (or the drag touch may stop being over top of it */
+ -webkit-transition: none !important;
+
+ /* Ensure the element has a large z-index so that we can get events
+ for it as it moves over other elements. This is animated as the
+ element flys back, so we want a large value that will stay large until
+ its almost home. */
+ z-index: 100;
+}
+
+#footer {
+ width: 100%;
+ position: absolute;
+ bottom: 0;
+ height: 60px; /* must match #apps-frame bottom */
+ overflow: hidden;
+}
+
+#dot-list {
+ text-align: center;
+ margin: 0;
+ padding: 0;
+ bottom: 0;
+ list-style-type: none;
+ margin-top: 20px;
+}
+
+.dot {
+ display: inline-block;
+ margin: 10px;
+ width: 10px;
+ height: 10px;
+ background-color: #3d465f;
+ -webkit-box-sizing: border-box;
+ border: 1px solid black;
+ -webkit-border-radius: 2px;
+ -webkit-transition-property: width, height, margin, -webkit-transform;
+ -webkit-transition-duration: 500ms;
+ /* Work-around regression bug 74802 */
+ -webkit-transform: translate3d(0, 0, 0);
+}
+
+#footer.rearrange-mode .dot {
+ margin: 0px 20px;
+ width: 30px;
+ height: 30px;
+}
+
+.dot.selected {
+ background-color: #b3bbd3;
+}
+
+.dot.new {
+ -webkit-transform: translate3d(0, 40px, 0);
+}
+
+#trash {
+ position: absolute;
+ width: 110px;
+ height: 100%;
+ right: 0px;
+ bottom: 0px;
+ background-image: url('trash.png');
+ background-size: 40px 40px;
+ background-repeat: no-repeat;
+ background-position: 40px 12px;
+ /* Work-around chromium bug 74730 by using translate instead of the
+ GPU-accelerated translate3d */
+ -webkit-transform: translate(80px, 0);
+ -webkit-transition-property: -webkit-transform;
+ -webkit-transition-duration: 500ms;
+}
+
+#trash.hover {
+ background-image: url('trash-open.png');
+}
+
+.app.trashing img {
+ opacity: 0.3;
+}
+
+#footer.rearrange-mode #trash {
+ -webkit-transform: translate(0, 0);
+}
+
+/* Ensure template items are never drawn when the page initially loads */
+#app-template {
+ display: none;
+}
« no previous file with comments | « chrome/browser/resources/touch_ntp/grabber.js ('k') | chrome/browser/resources/touch_ntp/newtab.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698