From 591a6b29ea7e7b90fefa00828dd78e6eaab08f38 Mon Sep 17 00:00:00 2001 From: Jorge Gorbe Date: Tue, 23 Oct 2012 16:15:13 +0200 Subject: [PATCH 1/1] initial commit --- cool_story_bro.jpg | Bin 0 -> 78939 bytes cool_story_bro2.jpg | Bin 0 -> 56774 bytes deck.js/.gitignore | 3 + deck.js/GPL-license.txt | 278 ++ deck.js/MIT-license.txt | 21 + deck.js/README.md | 64 + deck.js/boilerplate.html | 96 + deck.js/core/deck.core.css | 407 +++ deck.js/core/deck.core.js | 498 ++++ deck.js/core/deck.core.scss | 450 +++ deck.js/extensions/goto/deck.goto.css | 41 + deck.js/extensions/goto/deck.goto.html | 7 + deck.js/extensions/goto/deck.goto.js | 170 ++ deck.js/extensions/goto/deck.goto.scss | 46 + deck.js/extensions/hash/deck.hash.css | 13 + deck.js/extensions/hash/deck.hash.html | 2 + deck.js/extensions/hash/deck.hash.js | 142 + deck.js/extensions/hash/deck.hash.scss | 15 + deck.js/extensions/menu/deck.menu.css | 47 + deck.js/extensions/menu/deck.menu.js | 187 ++ deck.js/extensions/menu/deck.menu.scss | 58 + .../extensions/navigation/deck.navigation.css | 43 + .../navigation/deck.navigation.html | 3 + .../extensions/navigation/deck.navigation.js | 92 + .../navigation/deck.navigation.scss | 56 + deck.js/extensions/scale/deck.scale.css | 28 + deck.js/extensions/scale/deck.scale.js | 170 ++ deck.js/extensions/scale/deck.scale.scss | 31 + deck.js/extensions/status/deck.status.css | 18 + deck.js/extensions/status/deck.status.html | 6 + deck.js/extensions/status/deck.status.js | 95 + deck.js/extensions/status/deck.status.scss | 22 + deck.js/introduction/index.html | 215 ++ deck.js/jquery-1.7.2.min.js | 4 + deck.js/modernizr.custom.js | 4 + deck.js/test/fixtures/complex.html | 24 + deck.js/test/fixtures/empty.html | 19 + deck.js/test/fixtures/iframe_simple.html | 10 + deck.js/test/fixtures/iframes.html | 32 + deck.js/test/fixtures/nesteds.html | 36 + deck.js/test/fixtures/standard.html | 42 + deck.js/test/index.html | 39 + deck.js/test/lib/jasmine-html.js | 190 ++ deck.js/test/lib/jasmine-jquery.js | 288 ++ deck.js/test/lib/jasmine.css | 166 ++ deck.js/test/lib/jasmine.js | 2477 +++++++++++++++++ deck.js/test/settings.js | 3 + deck.js/test/spec.core.js | 436 +++ deck.js/test/spec.goto.js | 142 + deck.js/test/spec.hash.js | 81 + deck.js/test/spec.menu.js | 66 + deck.js/test/spec.navigation.js | 51 + deck.js/test/spec.scale.js | 57 + deck.js/test/spec.status.js | 58 + deck.js/themes/style/neon.css | 123 + deck.js/themes/style/neon.scss | 155 ++ deck.js/themes/style/swiss.css | 84 + deck.js/themes/style/swiss.scss | 107 + deck.js/themes/style/web-2.0.css | 214 ++ deck.js/themes/style/web-2.0.scss | 250 ++ deck.js/themes/transition/fade.css | 43 + deck.js/themes/transition/fade.scss | 69 + .../themes/transition/horizontal-slide.css | 76 + .../themes/transition/horizontal-slide.scss | 90 + deck.js/themes/transition/vertical-slide.css | 94 + deck.js/themes/transition/vertical-slide.scss | 112 + index.html | 164 ++ oh_god_why.png | Bin 0 -> 25761 bytes resacon.css | 216 ++ samples/test1.c | 13 + samples/test1.exe | Bin 0 -> 50340 bytes samples/test2.c | 23 + samples/test2.exe | Bin 0 -> 50358 bytes stallman.jpg | Bin 0 -> 16151 bytes visual_studio.jpg | Bin 0 -> 80644 bytes 75 files changed, 9382 insertions(+) create mode 100644 cool_story_bro.jpg create mode 100644 cool_story_bro2.jpg create mode 100644 deck.js/.gitignore create mode 100644 deck.js/GPL-license.txt create mode 100644 deck.js/MIT-license.txt create mode 100644 deck.js/README.md create mode 100644 deck.js/boilerplate.html create mode 100644 deck.js/core/deck.core.css create mode 100644 deck.js/core/deck.core.js create mode 100755 deck.js/core/deck.core.scss create mode 100644 deck.js/extensions/goto/deck.goto.css create mode 100644 deck.js/extensions/goto/deck.goto.html create mode 100644 deck.js/extensions/goto/deck.goto.js create mode 100755 deck.js/extensions/goto/deck.goto.scss create mode 100644 deck.js/extensions/hash/deck.hash.css create mode 100644 deck.js/extensions/hash/deck.hash.html create mode 100644 deck.js/extensions/hash/deck.hash.js create mode 100644 deck.js/extensions/hash/deck.hash.scss create mode 100644 deck.js/extensions/menu/deck.menu.css create mode 100644 deck.js/extensions/menu/deck.menu.js create mode 100755 deck.js/extensions/menu/deck.menu.scss create mode 100644 deck.js/extensions/navigation/deck.navigation.css create mode 100644 deck.js/extensions/navigation/deck.navigation.html create mode 100644 deck.js/extensions/navigation/deck.navigation.js create mode 100755 deck.js/extensions/navigation/deck.navigation.scss create mode 100644 deck.js/extensions/scale/deck.scale.css create mode 100644 deck.js/extensions/scale/deck.scale.js create mode 100644 deck.js/extensions/scale/deck.scale.scss create mode 100644 deck.js/extensions/status/deck.status.css create mode 100644 deck.js/extensions/status/deck.status.html create mode 100644 deck.js/extensions/status/deck.status.js create mode 100755 deck.js/extensions/status/deck.status.scss create mode 100644 deck.js/introduction/index.html create mode 100644 deck.js/jquery-1.7.2.min.js create mode 100644 deck.js/modernizr.custom.js create mode 100644 deck.js/test/fixtures/complex.html create mode 100644 deck.js/test/fixtures/empty.html create mode 100644 deck.js/test/fixtures/iframe_simple.html create mode 100644 deck.js/test/fixtures/iframes.html create mode 100644 deck.js/test/fixtures/nesteds.html create mode 100644 deck.js/test/fixtures/standard.html create mode 100644 deck.js/test/index.html create mode 100755 deck.js/test/lib/jasmine-html.js create mode 100755 deck.js/test/lib/jasmine-jquery.js create mode 100755 deck.js/test/lib/jasmine.css create mode 100755 deck.js/test/lib/jasmine.js create mode 100755 deck.js/test/settings.js create mode 100755 deck.js/test/spec.core.js create mode 100644 deck.js/test/spec.goto.js create mode 100644 deck.js/test/spec.hash.js create mode 100644 deck.js/test/spec.menu.js create mode 100644 deck.js/test/spec.navigation.js create mode 100644 deck.js/test/spec.scale.js create mode 100644 deck.js/test/spec.status.js create mode 100644 deck.js/themes/style/neon.css create mode 100644 deck.js/themes/style/neon.scss create mode 100644 deck.js/themes/style/swiss.css create mode 100644 deck.js/themes/style/swiss.scss create mode 100644 deck.js/themes/style/web-2.0.css create mode 100644 deck.js/themes/style/web-2.0.scss create mode 100644 deck.js/themes/transition/fade.css create mode 100644 deck.js/themes/transition/fade.scss create mode 100644 deck.js/themes/transition/horizontal-slide.css create mode 100644 deck.js/themes/transition/horizontal-slide.scss create mode 100644 deck.js/themes/transition/vertical-slide.css create mode 100644 deck.js/themes/transition/vertical-slide.scss create mode 100644 index.html create mode 100644 oh_god_why.png create mode 100644 resacon.css create mode 100644 samples/test1.c create mode 100755 samples/test1.exe create mode 100644 samples/test2.c create mode 100755 samples/test2.exe create mode 100644 stallman.jpg create mode 100644 visual_studio.jpg diff --git a/cool_story_bro.jpg b/cool_story_bro.jpg new file mode 100644 index 0000000000000000000000000000000000000000..183ba87197709693e70b6e08ea68d1ecc4ef22f5 GIT binary patch literal 78939 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

YfkB;+wuA+E3it8)fJmO7uw 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�$m& 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�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%0Dxe)P~WVbbI)~cdAc?S0 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%0A! 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 literal 0 HcmV?d00001 diff --git a/cool_story_bro2.jpg b/cool_story_bro2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6a9b97b7d736373ac0b64f796cff33aa92d6e1b4 GIT binary patch literal 56774 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 literal 0 HcmV?d00001 diff --git a/deck.js/.gitignore b/deck.js/.gitignore new file mode 100644 index 0000000..cedd4ec --- /dev/null +++ b/deck.js/.gitignore @@ -0,0 +1,3 @@ +.DS_Store +.sass-cache/ +progress/ \ No newline at end of file diff --git a/deck.js/GPL-license.txt b/deck.js/GPL-license.txt new file mode 100644 index 0000000..336e7be --- /dev/null +++ b/deck.js/GPL-license.txt @@ -0,0 +1,278 @@ +GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. \ No newline at end of file diff --git a/deck.js/MIT-license.txt b/deck.js/MIT-license.txt new file mode 100644 index 0000000..de57ea6 --- /dev/null +++ b/deck.js/MIT-license.txt @@ -0,0 +1,21 @@ +The MIT License + +Copyright (c) 2011 Caleb Troughton + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. \ No newline at end of file diff --git a/deck.js/README.md b/deck.js/README.md new file mode 100644 index 0000000..0f6a96e --- /dev/null +++ b/deck.js/README.md @@ -0,0 +1,64 @@ +#deck.js + +A JavaScript library for building modern HTML presentations. deck.js is flexible enough to let advanced CSS and JavaScript authors craft highly customized decks, but also provides templates and themes for the HTML novice to build a standard slideshow. + +## Quick Start + +This repository includes a `boilerplate.html` as a starting point, with all the extensions included. Just [download it](https://github.com/imakewebthings/deck.js/zipball/stable), open `boilerplate.html`, and start editing your slides. + +## Documentation + +Check out the [documentation page](http://imakewebthings.github.com/deck.js/docs) for more information on the methods, events, and options available in core and all the included extensions. A sample standard slide deck is included in the package under the `introduction` folder. You can also [view that sample deck](http://imakewebthings.github.com/deck.js/introduction) online to play with the available style and transition themes. + +## Extensions, Themes, and Related Projects + +Take a look at [the wiki](https://github.com/imakewebthings/deck.js/wiki) for lists of extensions, themes, and other related goodies. If you have a publicly available project of your own, feel free to add to the list. + +## Dependencies (included in this repository) + +- [jQuery](http://jquery.com) +- [Modernizr](http://modernizr.com) + +## Tests & Support + +Unit tests are written with [Jasmine](http://pivotal.github.com/jasmine/) and [jasmine-jquery](https://github.com/velesin/jasmine-jquery). You can [run them here](http://imakewebthings.github.com/deck.js/test). + +deck.js has been tested with jQuery 1.6+ and works in IE7+, Chrome, FF, Safari, and Opera. The more capable browsers receive greater enhancements, but a basic cutaway slideshow will work for all browsers listed above. Please don't give your presentations in IE6. + +For any questions or general discussion about deck.js please direct your attention to the [mailing list](http://groups.google.com/group/deckjs) (uses Google groups.) If you would like to report a bug, please see the [issues page](https://github.com/imakewebthings/deck.js/issues). + +## Known Bug(s) + +There is an issue with certain builds of Chrome that result in a solid blue background and generally broken decks. This is a bug in Chrome ([Issue 91518](http://code.google.com/p/chromium/issues/detail?id=91518)) that stems from hardware acceleration of 3d transforms. Current workarounds: + +- Use a different browser. This problem doesn't exist in Safari, FF, Opera. +- Disable hardware compositing by setting `--disable-accelerated-compositing` in the Chrome loading options +- Replace instances of `translate3d` with `translate` in the CSS of your decks (though this will slow down performance on iOS devices and Safari.) + +Firefox contains a bug that allows users to scroll horizontally using the trackpad despite `overflow-x:hidden`. ([Bug 664275](https://bugzilla.mozilla.org/show_bug.cgi?id=664275) and [Bug 325942](https://bugzilla.mozilla.org/show_bug.cgi?id=325942).) If anyone knows of any workarounds to this issue please contact me. + +## Printing + +Core includes stripped down black and white print styles for the standard slide template that is suitable for handouts. + +## Awesome Contributors + +- [jbuck](https://github.com/jbuck) +- [cykod](https://github.com/cykod) +- [dougireton](https://github.com/dougireton) +- [awirick](https://github.com/awirick) +- Daniel Knittl-Frank +- [alexch](https://github.com/alexch) + +If you would like to contribute a patch to deck.js please do as much as you can of the following: + +- Add or amend Jasmine tests. +- Add inline documentation. +- If the standard snippet of an extension changes, please change it in both the introduction deck and the snippet html in the extension folder. +- If the API changes, it would be awesome to receive a parallel pull request to the gh-pages branch which updates the public-facing documentation. + +## License + +Copyright (c) 2011-2012 Caleb Troughton + +Dual licensed under the [MIT license](https://github.com/imakewebthings/deck.js/blob/master/MIT-license.txt) and [GPL license](https://github.com/imakewebthings/deck.js/blob/master/GPL-license.txt). diff --git a/deck.js/boilerplate.html b/deck.js/boilerplate.html new file mode 100644 index 0000000..9b76d94 --- /dev/null +++ b/deck.js/boilerplate.html @@ -0,0 +1,96 @@ + + + + + + + + Your deck.js Presentation + + + + + + + + + + + + + + + + + + + + + + + + + +

+

Slide

+
+ +
+

Content

+
+ +
+

Here

+
+ + + + + + + +
+ + + +

+ + / + +

+ + +
+ + + + +
+ + +# + + + + + + + + + + + + + + + + + + + + + diff --git a/deck.js/core/deck.core.css b/deck.js/core/deck.core.css new file mode 100644 index 0000000..823af0f --- /dev/null +++ b/deck.js/core/deck.core.css @@ -0,0 +1,407 @@ +html, body { + height: 100%; + padding: 0; + margin: 0; +} + +body.deck-container { + overflow-y: auto; + position: static; +} + +.deck-container { + position: relative; + min-height: 100%; + margin: 0 auto; + padding: 0 48px; + font-size: 16px; + line-height: 1.25; + overflow: hidden; + /* Resets and base styles from HTML5 Boilerplate */ + /* End HTML5 Boilerplate adaptations */ +} +.js .deck-container { + visibility: hidden; +} +.ready .deck-container { + visibility: visible; +} +.touch .deck-container { + -webkit-text-size-adjust: none; + -moz-text-size-adjust: none; +} +.deck-container div, .deck-container span, .deck-container object, .deck-container iframe, +.deck-container h1, .deck-container h2, .deck-container h3, .deck-container h4, .deck-container h5, .deck-container h6, .deck-container p, .deck-container blockquote, .deck-container pre, +.deck-container abbr, .deck-container address, .deck-container cite, .deck-container code, .deck-container del, .deck-container dfn, .deck-container em, .deck-container img, .deck-container ins, .deck-container kbd, .deck-container q, .deck-container samp, +.deck-container small, .deck-container strong, .deck-container sub, .deck-container sup, .deck-container var, .deck-container b, .deck-container i, .deck-container dl, .deck-container dt, .deck-container dd, .deck-container ol, .deck-container ul, .deck-container li, +.deck-container fieldset, .deck-container form, .deck-container label, .deck-container legend, +.deck-container table, .deck-container caption, .deck-container tbody, .deck-container tfoot, .deck-container thead, .deck-container tr, .deck-container th, .deck-container td, +.deck-container article, .deck-container aside, .deck-container canvas, .deck-container details, .deck-container figcaption, .deck-container figure, +.deck-container footer, .deck-container header, .deck-container hgroup, .deck-container menu, .deck-container nav, .deck-container section, .deck-container summary, +.deck-container time, .deck-container mark, .deck-container audio, .deck-container video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} +.deck-container article, .deck-container aside, .deck-container details, .deck-container figcaption, .deck-container figure, +.deck-container footer, .deck-container header, .deck-container hgroup, .deck-container menu, .deck-container nav, .deck-container section { + display: block; +} +.deck-container blockquote, .deck-container q { + quotes: none; +} +.deck-container blockquote:before, .deck-container blockquote:after, .deck-container q:before, .deck-container q:after { + content: ""; + content: none; +} +.deck-container ins { + background-color: #ff9; + color: #000; + text-decoration: none; +} +.deck-container mark { + background-color: #ff9; + color: #000; + font-style: italic; + font-weight: bold; +} +.deck-container del { + text-decoration: line-through; +} +.deck-container abbr[title], .deck-container dfn[title] { + border-bottom: 1px dotted; + cursor: help; +} +.deck-container table { + border-collapse: collapse; + border-spacing: 0; +} +.deck-container hr { + display: block; + height: 1px; + border: 0; + border-top: 1px solid #ccc; + margin: 1em 0; + padding: 0; +} +.deck-container input, .deck-container select { + vertical-align: middle; +} +.deck-container select, .deck-container input, .deck-container textarea, .deck-container button { + font: 99% sans-serif; +} +.deck-container pre, .deck-container code, .deck-container kbd, .deck-container samp { + font-family: monospace, sans-serif; +} +.deck-container a { + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} +.deck-container a:hover, .deck-container a:active { + outline: none; +} +.deck-container ul, .deck-container ol { + margin-left: 2em; + vertical-align: top; +} +.deck-container ol { + list-style-type: decimal; +} +.deck-container nav ul, .deck-container nav li { + margin: 0; + list-style: none; + list-style-image: none; +} +.deck-container small { + font-size: 85%; +} +.deck-container strong, .deck-container th { + font-weight: bold; +} +.deck-container td { + vertical-align: top; +} +.deck-container sub, .deck-container sup { + font-size: 75%; + line-height: 0; + position: relative; +} +.deck-container sup { + top: -0.5em; +} +.deck-container sub { + bottom: -0.25em; +} +.deck-container textarea { + overflow: auto; +} +.ie6 .deck-container legend, .ie7 .deck-container legend { + margin-left: -7px; +} +.deck-container input[type="radio"] { + vertical-align: text-bottom; +} +.deck-container input[type="checkbox"] { + vertical-align: bottom; +} +.ie7 .deck-container input[type="checkbox"] { + vertical-align: baseline; +} +.ie6 .deck-container input { + vertical-align: text-bottom; +} +.deck-container label, .deck-container input[type="button"], .deck-container input[type="submit"], .deck-container input[type="image"], .deck-container button { + cursor: pointer; +} +.deck-container button, .deck-container input, .deck-container select, .deck-container textarea { + margin: 0; +} +.deck-container input:invalid, .deck-container textarea:invalid { + border-radius: 1px; + -moz-box-shadow: 0px 0px 5px red; + -webkit-box-shadow: 0px 0px 5px red; + box-shadow: 0px 0px 5px red; +} +.deck-container input:invalid .no-boxshadow, .deck-container textarea:invalid .no-boxshadow { + background-color: #f0dddd; +} +.deck-container button { + width: auto; + overflow: visible; +} +.ie7 .deck-container img { + -ms-interpolation-mode: bicubic; +} +.deck-container, .deck-container select, .deck-container input, .deck-container textarea { + color: #444; +} +.deck-container a { + color: #607890; +} +.deck-container a:hover, .deck-container a:focus { + color: #036; +} +.deck-container a:link { + -webkit-tap-highlight-color: #fff; +} +.deck-container.deck-loading { + display: none; +} + +.slide { + width: auto; + min-height: 100%; + position: relative; +} +.slide h1 { + font-size: 4.5em; +} +.slide h1, .slide .vcenter { + font-weight: bold; + text-align: center; + padding-top: 1em; + max-height: 100%; +} +.csstransforms .slide h1, .csstransforms .slide .vcenter { + padding: 0 48px; + position: absolute; + left: 0; + right: 0; + top: 50%; + -webkit-transform: translate(0, -50%); + -moz-transform: translate(0, -50%); + -ms-transform: translate(0, -50%); + -o-transform: translate(0, -50%); + transform: translate(0, -50%); +} +.slide .vcenter h1 { + position: relative; + top: auto; + padding: 0; + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + -o-transform: none; + transform: none; +} +.slide h2 { + font-size: 2.25em; + font-weight: bold; + padding-top: .5em; + margin: 0 0 .66666em 0; + border-bottom: 3px solid #888; +} +.slide h3 { + font-size: 1.4375em; + font-weight: bold; + margin-bottom: .30435em; +} +.slide h4 { + font-size: 1.25em; + font-weight: bold; + margin-bottom: .25em; +} +.slide h5 { + font-size: 1.125em; + font-weight: bold; + margin-bottom: .2222em; +} +.slide h6 { + font-size: 1em; + font-weight: bold; +} +.slide img, .slide iframe, .slide video { + display: block; + max-width: 100%; +} +.slide video, .slide iframe, .slide img { + display: block; + margin: 0 auto; +} +.slide p, .slide blockquote, .slide iframe, .slide img, .slide ul, .slide ol, .slide pre, .slide video { + margin-bottom: 1em; +} +.slide pre { + white-space: pre; + white-space: pre-wrap; + word-wrap: break-word; + padding: 1em; + border: 1px solid #888; +} +.slide em { + font-style: italic; +} +.slide li { + padding: .25em 0; + vertical-align: middle; +} + +.deck-before, .deck-previous, .deck-next, .deck-after { + position: absolute; + left: -999em; + top: -999em; +} + +.deck-current { + z-index: 2; +} + +.slide .slide { + visibility: hidden; + position: static; + min-height: 0; +} + +.deck-child-current { + position: static; + z-index: 2; +} +.deck-child-current .slide { + visibility: hidden; +} +.deck-child-current .deck-previous, .deck-child-current .deck-before, .deck-child-current .deck-current { + visibility: visible; +} + +@media screen and (max-device-width: 480px) { + /* html { -webkit-text-size-adjust:none; -ms-text-size-adjust:none; } */ +} +@media print { + * { + background: transparent !important; + color: black !important; + text-shadow: none !important; + filter: none !important; + -ms-filter: none !important; + -webkit-box-reflect: none !important; + -moz-box-reflect: none !important; + -webkit-box-shadow: none !important; + -moz-box-shadow: none !important; + box-shadow: none !important; + } + * :before, * :after { + display: none !important; + } + + a, a:visited { + color: #444 !important; + text-decoration: underline; + } + + a[href]:after { + content: " (" attr(href) ")"; + } + + abbr[title]:after { + content: " (" attr(title) ")"; + } + + .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { + content: ""; + } + + pre, blockquote { + border: 1px solid #999; + page-break-inside: avoid; + } + + thead { + display: table-header-group; + } + + tr, img { + page-break-inside: avoid; + } + + @page { + margin: 0.5cm; +} + + p, h2, h3 { + orphans: 3; + widows: 3; + } + + h2, h3 { + page-break-after: avoid; + } + + .slide { + position: static !important; + visibility: visible !important; + display: block !important; + -webkit-transform: none !important; + -moz-transform: none !important; + -o-transform: none !important; + -ms-transform: none !important; + transform: none !important; + opacity: 1 !important; + } + + h1, .vcenter { + -webkit-transform: none !important; + -moz-transform: none !important; + -o-transform: none !important; + -ms-transform: none !important; + transform: none !important; + padding: 0 !important; + position: static !important; + } + + .deck-container > .slide { + page-break-after: always; + } + + .deck-container { + width: 100% !important; + height: auto !important; + padding: 0 !important; + display: block !important; + } + + script { + display: none; + } +} diff --git a/deck.js/core/deck.core.js b/deck.js/core/deck.core.js new file mode 100644 index 0000000..997942c --- /dev/null +++ b/deck.js/core/deck.core.js @@ -0,0 +1,498 @@ +/*! +Deck JS - deck.core +Copyright (c) 2011 Caleb Troughton +Dual licensed under the MIT license and GPL license. +https://github.com/imakewebthings/deck.js/blob/master/MIT-license.txt +https://github.com/imakewebthings/deck.js/blob/master/GPL-license.txt +*/ + +/* +The deck.core module provides all the basic functionality for creating and +moving through a deck. It does so by applying classes to indicate the state of +the deck and its slides, allowing CSS to take care of the visual representation +of each state. It also provides methods for navigating the deck and inspecting +its state, as well as basic key bindings for going to the next and previous +slides. More functionality is provided by wholly separate extension modules +that use the API provided by core. +*/ +(function($, deck, document, undefined) { + var slides, // Array of all the uh, slides... + current, // Array index of the current slide + $container, // Keeping this cached + + events = { + /* + This event fires whenever the current slide changes, whether by way of + next, prev, or go. The callback function is passed two parameters, from + and to, equal to the indices of the old slide and the new slide + respectively. If preventDefault is called on the event within this handler + the slide change does not occur. + + $(document).bind('deck.change', function(event, from, to) { + alert('Moving from slide ' + from + ' to ' + to); + }); + */ + change: 'deck.change', + + /* + This event fires at the beginning of deck initialization, after the options + are set but before the slides array is created. This event makes a good hook + for preprocessing extensions looking to modify the deck. + */ + beforeInitialize: 'deck.beforeInit', + + /* + This event fires at the end of deck initialization. Extensions should + implement any code that relies on user extensible options (key bindings, + element selectors, classes) within a handler for this event. Native + events associated with Deck JS should be scoped under a .deck event + namespace, as with the example below: + + var $d = $(document); + $.deck.defaults.keys.myExtensionKeycode = 70; // 'h' + $d.bind('deck.init', function() { + $d.bind('keydown.deck', function(event) { + if (event.which === $.deck.getOptions().keys.myExtensionKeycode) { + // Rock out + } + }); + }); + */ + initialize: 'deck.init' + }, + + options = {}, + $d = $(document), + + /* + Internal function. Updates slide and container classes based on which + slide is the current slide. + */ + updateStates = function() { + var oc = options.classes, + osc = options.selectors.container, + old = $container.data('onSlide'), + $all = $(); + + // Container state + $container.removeClass(oc.onPrefix + old) + .addClass(oc.onPrefix + current) + .data('onSlide', current); + + // Remove and re-add child-current classes for nesting + $('.' + oc.current).parentsUntil(osc).removeClass(oc.childCurrent); + slides[current].parentsUntil(osc).addClass(oc.childCurrent); + + // Remove previous states + $.each(slides, function(i, el) { + $all = $all.add(el); + }); + $all.removeClass([ + oc.before, + oc.previous, + oc.current, + oc.next, + oc.after + ].join(" ")); + + // Add new states back in + slides[current].addClass(oc.current); + if (current > 0) { + slides[current-1].addClass(oc.previous); + } + if (current + 1 < slides.length) { + slides[current+1].addClass(oc.next); + } + if (current > 1) { + $.each(slides.slice(0, current - 1), function(i, el) { + el.addClass(oc.before); + }); + } + if (current + 2 < slides.length) { + $.each(slides.slice(current+2), function(i, el) { + el.addClass(oc.after); + }); + } + }, + + /* Methods exposed in the jQuery.deck namespace */ + methods = { + + /* + jQuery.deck(selector, options) + + selector: string | jQuery | array + options: object, optional + + Initializes the deck, using each element matched by selector as a slide. + May also be passed an array of string selectors or jQuery objects, in + which case each selector in the array is considered a slide. The second + parameter is an optional options object which will extend the default + values. + + $.deck('.slide'); + + or + + $.deck([ + '#first-slide', + '#second-slide', + '#etc' + ]); + */ + init: function(elements, opts) { + var startTouch, + tolerance, + esp = function(e) { + e.stopPropagation(); + }; + + options = $.extend(true, {}, $[deck].defaults, opts); + slides = []; + current = 0; + $container = $(options.selectors.container); + tolerance = options.touch.swipeTolerance; + + // Pre init event for preprocessing hooks + $d.trigger(events.beforeInitialize); + + // Hide the deck while states are being applied to kill transitions + $container.addClass(options.classes.loading); + + // Fill slides array depending on parameter type + if ($.isArray(elements)) { + $.each(elements, function(i, e) { + slides.push($(e)); + }); + } + else { + $(elements).each(function(i, e) { + slides.push($(e)); + }); + } + + /* Remove any previous bindings, and rebind key events */ + $d.unbind('keydown.deck').bind('keydown.deck', function(e) { + if (e.which === options.keys.next || $.inArray(e.which, options.keys.next) > -1) { + methods.next(); + e.preventDefault(); + } + else if (e.which === options.keys.previous || $.inArray(e.which, options.keys.previous) > -1) { + methods.prev(); + e.preventDefault(); + } + }) + /* Stop propagation of key events within editable elements */ + .undelegate('input, textarea, select, button, meter, progress, [contentEditable]', 'keydown', esp) + .delegate('input, textarea, select, button, meter, progress, [contentEditable]', 'keydown', esp); + + /* Bind touch events for swiping between slides on touch devices */ + $container.unbind('touchstart.deck').bind('touchstart.deck', function(e) { + if (!startTouch) { + startTouch = $.extend({}, e.originalEvent.targetTouches[0]); + } + }) + .unbind('touchmove.deck').bind('touchmove.deck', function(e) { + $.each(e.originalEvent.changedTouches, function(i, t) { + if (startTouch && t.identifier === startTouch.identifier) { + if (t.screenX - startTouch.screenX > tolerance || t.screenY - startTouch.screenY > tolerance) { + $[deck]('prev'); + startTouch = undefined; + } + else if (t.screenX - startTouch.screenX < -1 * tolerance || t.screenY - startTouch.screenY < -1 * tolerance) { + $[deck]('next'); + startTouch = undefined; + } + return false; + } + }); + e.preventDefault(); + }) + .unbind('touchend.deck').bind('touchend.deck', function(t) { + $.each(t.originalEvent.changedTouches, function(i, t) { + if (startTouch && t.identifier === startTouch.identifier) { + startTouch = undefined; + } + }); + }) + .scrollLeft(0).scrollTop(0); + + /* + Kick iframe videos, which dont like to redraw w/ transforms. + Remove this if Webkit ever fixes it. + */ + $.each(slides, function(i, $el) { + $el.unbind('webkitTransitionEnd.deck').bind('webkitTransitionEnd.deck', + function(event) { + if ($el.hasClass($[deck]('getOptions').classes.current)) { + var embeds = $(this).find('iframe').css('opacity', 0); + window.setTimeout(function() { + embeds.css('opacity', 1); + }, 100); + } + }); + }); + + if (slides.length) { + updateStates(); + } + + // Show deck again now that slides are in place + $container.removeClass(options.classes.loading); + $d.trigger(events.initialize); + }, + + /* + jQuery.deck('go', index) + + index: integer | string + + Moves to the slide at the specified index if index is a number. Index is + 0-based, so $.deck('go', 0); will move to the first slide. If index is a + string this will move to the slide with the specified id. If index is out + of bounds or doesn't match a slide id the call is ignored. + */ + go: function(index) { + var e = $.Event(events.change), + ndx; + + /* Number index, easy. */ + if (typeof index === 'number' && index >= 0 && index < slides.length) { + ndx = index; + } + /* Id string index, search for it and set integer index */ + else if (typeof index === 'string') { + $.each(slides, function(i, $slide) { + if ($slide.attr('id') === index) { + ndx = i; + return false; + } + }); + }; + + /* Out of bounds, id doesn't exist, illegal input, eject */ + if (typeof ndx === 'undefined') return; + + $d.trigger(e, [current, ndx]); + if (e.isDefaultPrevented()) { + /* Trigger the event again and undo the damage done by extensions. */ + $d.trigger(events.change, [ndx, current]); + } + else { + current = ndx; + updateStates(); + } + }, + + /* + jQuery.deck('next') + + Moves to the next slide. If the last slide is already active, the call + is ignored. + */ + next: function() { + methods.go(current+1); + }, + + /* + jQuery.deck('prev') + + Moves to the previous slide. If the first slide is already active, the + call is ignored. + */ + prev: function() { + methods.go(current-1); + }, + + /* + jQuery.deck('getSlide', index) + + index: integer, optional + + Returns a jQuery object containing the slide at index. If index is not + specified, the current slide is returned. + */ + getSlide: function(index) { + var i = typeof index !== 'undefined' ? index : current; + if (typeof i != 'number' || i < 0 || i >= slides.length) return null; + return slides[i]; + }, + + /* + jQuery.deck('getSlides') + + Returns all slides as an array of jQuery objects. + */ + getSlides: function() { + return slides; + }, + + /* + jQuery.deck('getContainer') + + Returns a jQuery object containing the deck container as defined by the + container option. + */ + getContainer: function() { + return $container; + }, + + /* + jQuery.deck('getOptions') + + Returns the options object for the deck, including any overrides that + were defined at initialization. + */ + getOptions: function() { + return options; + }, + + /* + jQuery.deck('extend', name, method) + + name: string + method: function + + Adds method to the deck namespace with the key of name. This doesn’t + give access to any private member data — public methods must still be + used within method — but lets extension authors piggyback on the deck + namespace rather than pollute jQuery. + + $.deck('extend', 'alert', function(msg) { + alert(msg); + }); + + // Alerts 'boom' + $.deck('alert', 'boom'); + */ + extend: function(name, method) { + methods[name] = method; + } + }; + + /* jQuery extension */ + $[deck] = function(method, arg) { + if (methods[method]) { + return methods[method].apply(this, Array.prototype.slice.call(arguments, 1)); + } + else { + return methods.init(method, arg); + } + }; + + /* + The default settings object for a deck. All deck extensions should extend + this object to add defaults for any of their options. + + options.classes.after + This class is added to all slides that appear after the 'next' slide. + + options.classes.before + This class is added to all slides that appear before the 'previous' + slide. + + options.classes.childCurrent + This class is added to all elements in the DOM tree between the + 'current' slide and the deck container. For standard slides, this is + mostly seen and used for nested slides. + + options.classes.current + This class is added to the current slide. + + options.classes.loading + This class is applied to the deck container during loading phases and is + primarily used as a way to short circuit transitions between states + where such transitions are distracting or unwanted. For example, this + class is applied during deck initialization and then removed to prevent + all the slides from appearing stacked and transitioning into place + on load. + + options.classes.next + This class is added to the slide immediately following the 'current' + slide. + + options.classes.onPrefix + This prefix, concatenated with the current slide index, is added to the + deck container as you change slides. + + options.classes.previous + This class is added to the slide immediately preceding the 'current' + slide. + + options.selectors.container + Elements matched by this CSS selector will be considered the deck + container. The deck container is used to scope certain states of the + deck, as with the onPrefix option, or with extensions such as deck.goto + and deck.menu. + + options.keys.next + The numeric keycode used to go to the next slide. + + options.keys.previous + The numeric keycode used to go to the previous slide. + + options.touch.swipeTolerance + The number of pixels the users finger must travel to produce a swipe + gesture. + */ + $[deck].defaults = { + classes: { + after: 'deck-after', + before: 'deck-before', + childCurrent: 'deck-child-current', + current: 'deck-current', + loading: 'deck-loading', + next: 'deck-next', + onPrefix: 'on-slide-', + previous: 'deck-previous' + }, + + selectors: { + container: '.deck-container' + }, + + keys: { + // enter, space, page down, right arrow, down arrow, + next: [13, 32, 34, 39, 40], + // backspace, page up, left arrow, up arrow + previous: [8, 33, 37, 38] + }, + + touch: { + swipeTolerance: 60 + } + }; + + $d.ready(function() { + $('html').addClass('ready'); + }); + + /* + FF + Transforms + Flash video don't get along... + Firefox will reload and start playing certain videos after a + transform. Blanking the src when a previously shown slide goes out + of view prevents this. + */ + $d.bind('deck.change', function(e, from, to) { + var oldFrames = $[deck]('getSlide', from).find('iframe'), + newFrames = $[deck]('getSlide', to).find('iframe'); + + oldFrames.each(function() { + var $this = $(this), + curSrc = $this.attr('src'); + + if(curSrc) { + $this.data('deck-src', curSrc).attr('src', ''); + } + }); + + newFrames.each(function() { + var $this = $(this), + originalSrc = $this.data('deck-src'); + + if (originalSrc) { + $this.attr('src', originalSrc); + } + }); + }); +})(jQuery, 'deck', document); diff --git a/deck.js/core/deck.core.scss b/deck.js/core/deck.core.scss new file mode 100755 index 0000000..6721050 --- /dev/null +++ b/deck.js/core/deck.core.scss @@ -0,0 +1,450 @@ +html, body { + height:100%; + padding:0; + margin:0; +} + +body.deck-container { + overflow-y:auto; + position:static; +} + +.deck-container { + position:relative; + min-height:100%; + margin:0 auto; + padding:0 48px; + font-size:16px; + line-height:1.25; + overflow:hidden; + + .js & { + visibility:hidden; + } + + .ready & { + visibility:visible; + } + + .touch & { + -webkit-text-size-adjust:none; + -moz-text-size-adjust:none; + } + + /* Resets and base styles from HTML5 Boilerplate */ + div, span, object, iframe, + h1, h2, h3, h4, h5, h6, p, blockquote, pre, + abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, + small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, + fieldset, form, label, legend, + table, caption, tbody, tfoot, thead, tr, th, td, + article, aside, canvas, details, figcaption, figure, + footer, header, hgroup, menu, nav, section, summary, + time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; + } + + article, aside, details, figcaption, figure, + footer, header, hgroup, menu, nav, section { + display: block; + } + + blockquote, q { + quotes:none; + + &:before, &:after { + content:""; + content:none; + } + } + + ins { + background-color:#ff9; + color:#000; + text-decoration:none; + } + + mark { + background-color:#ff9; + color:#000; + font-style:italic; + font-weight:bold; + } + + del { + text-decoration:line-through; + } + + abbr[title], dfn[title] { + border-bottom:1px dotted; + cursor:help; + } + + table { + border-collapse:collapse; + border-spacing:0; + } + + hr { + display:block; + height:1px; + border:0; + border-top:1px solid #ccc; + margin:1em 0; + padding:0; + } + + input, select { + vertical-align:middle; + } + + select, input, textarea, button { + font:99% sans-serif; + } + + pre, code, kbd, samp { + font-family:monospace, sans-serif; + } + + a { + -webkit-tap-highlight-color:rgba(0,0,0,0); + + &:hover, &:active { + outline:none; + } + } + + ul, ol { + margin-left:2em; + vertical-align:top; + } + + ol { + list-style-type:decimal; + } + + nav { + ul, li { + margin:0; + list-style:none; + list-style-image:none; + } + } + + small { + font-size:85%; + } + + strong, th { + font-weight:bold; + } + + td { + vertical-align:top; + } + + sub, sup { + font-size:75%; + line-height:0; + position:relative; + } + + sup { + top:-0.5em; + } + + sub { bottom: -0.25em; } + + textarea { + overflow:auto; + } + + legend { + .ie6 &, .ie7 & { + margin-left:-7px; + } + } + + input[type="radio"] { + vertical-align:text-bottom; + } + + input[type="checkbox"] { + vertical-align:bottom; + } + + .ie7 & input[type="checkbox"] { + vertical-align:baseline; + } + + .ie6 & input { + vertical-align:text-bottom; + } + + label, input[type="button"], input[type="submit"], input[type="image"], button { + cursor:pointer; + } + + button, input, select, textarea { + margin: 0; + } + + input, textarea { + &:invalid { + border-radius:1px; + -moz-box-shadow:0px 0px 5px red; + -webkit-box-shadow:0px 0px 5px red; + box-shadow: 0px 0px 5px red; + + .no-boxshadow { + background-color: #f0dddd; + } + } + } + + button { + width:auto; + overflow:visible; + } + + .ie7 & img { + -ms-interpolation-mode: bicubic; } + + &, select, input, textarea { + color:#444; + } + + a { + color:#607890; + + &:hover, &:focus { + color:#036; + } + + &:link { + -webkit-tap-highlight-color: #fff; + } + } + /* End HTML5 Boilerplate adaptations */ + + &.deck-loading { + display:none; + } +} + +.slide { + width:auto; + min-height:100%; + position:relative; + + h1 { + font-size:4.5em; + } + + h1, .vcenter { + font-weight:bold; + text-align:center; + padding-top:1em; + max-height:100%; + + .csstransforms & { + padding:0 48px; + position:absolute; + left:0; + right:0; + top:50%; + -webkit-transform:translate(0, -50%); + -moz-transform:translate(0, -50%); + -ms-transform:translate(0, -50%); + -o-transform:translate(0, -50%); + transform:translate(0, -50%); + } + } + + .vcenter h1 { + position:relative; + top:auto; + padding:0; + -webkit-transform:none; + -moz-transform:none; + -ms-transform:none; + -o-transform:none; + transform:none; + } + + h2 { + font-size:2.25em; + font-weight:bold; + padding-top:.5em; + margin:0 0 .66666em 0; + border-bottom:3px solid #888; + } + + h3 { + font-size:1.4375em; + font-weight:bold; + margin-bottom:.30435em; + } + + h4 { + font-size:1.25em; + font-weight:bold; + margin-bottom:.25em; + } + + h5 { + font-size:1.125em; + font-weight:bold; + margin-bottom:.2222em; + } + + h6 { + font-size:1em; + font-weight:bold; + } + + img, iframe, video { + display:block; + max-width:100%; + } + + video, iframe, img { + display:block; + margin:0 auto; + } + + p, blockquote, iframe, img, ul, ol, pre, video { + margin-bottom:1em; + } + + pre { + white-space:pre; + white-space:pre-wrap; + word-wrap:break-word; + padding: 1em; + border:1px solid #888; + } + + em { + font-style:italic; + } + + li { + padding:.25em 0; + vertical-align:middle; + } +} + +.deck-before, .deck-previous, .deck-next, .deck-after { + position:absolute; + left:-999em; + top:-999em; +} + +.deck-current { + z-index:2; +} + +.slide .slide { + visibility:hidden; + position:static; + min-height:0; +} + +.deck-child-current { + position:static; + z-index:2; + + .slide { + visibility:hidden; + } + + .deck-previous, .deck-before, .deck-current { + visibility:visible; + } +} + +@media all and (orientation:portrait) { + +} + +@media all and (orientation:landscape) { + +} + +@media screen and (max-device-width: 480px) { + + /* html { -webkit-text-size-adjust:none; -ms-text-size-adjust:none; } */ +} + + +@media print { + * { + background: transparent !important; + color: black !important; + text-shadow: none !important; + filter:none !important; + -ms-filter: none !important; + -webkit-box-reflect:none !important; + -moz-box-reflect:none !important; + -webkit-box-shadow:none !important; + -moz-box-shadow:none !important; + box-shadow:none !important; + + :before, :after { + display:none !important; + } +} + a, a:visited { color: #444 !important; text-decoration: underline; } + a[href]:after { content: " (" attr(href) ")"; } + abbr[title]:after { content: " (" attr(title) ")"; } + .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; } + pre, blockquote { border: 1px solid #999; page-break-inside: avoid; } + thead { display: table-header-group; } + tr, img { page-break-inside: avoid; } + @page { margin: 0.5cm; } + p, h2, h3 { orphans: 3; widows: 3; } + h2, h3{ page-break-after: avoid; } + + .slide { + position:static !important; + visibility:visible !important; + display:block !important; + -webkit-transform:none !important; + -moz-transform:none !important; + -o-transform:none !important; + -ms-transform:none !important; + transform:none !important; + opacity:1 !important; + } + + h1, .vcenter { + -webkit-transform:none !important; + -moz-transform:none !important; + -o-transform:none !important; + -ms-transform:none !important; + transform:none !important; + padding:0 !important; + position:static !important; + } + + .deck-container > .slide { + page-break-after: always; + } + + .deck-container { + width:100% !important; + height:auto !important; + padding:0 !important; + display:block !important; + } + + script { + display:none; + } +} diff --git a/deck.js/extensions/goto/deck.goto.css b/deck.js/extensions/goto/deck.goto.css new file mode 100644 index 0000000..108e4f9 --- /dev/null +++ b/deck.js/extensions/goto/deck.goto.css @@ -0,0 +1,41 @@ +.deck-container .goto-form { + position: absolute; + z-index: 3; + bottom: 10px; + left: 50%; + height: 1.75em; + margin: 0 0 0 -9.125em; + line-height: 1.75em; + padding: 0.625em; + display: none; + background: #ccc; + overflow: hidden; +} +.borderradius .deck-container .goto-form { + -webkit-border-radius: 10px; + -moz-border-radius: 10px; + border-radius: 10px; +} +.deck-container .goto-form label { + font-weight: bold; +} +.deck-container .goto-form label, .deck-container .goto-form input { + display: inline-block; + font-family: inherit; +} + +.deck-goto .goto-form { + display: block; +} + +#goto-slide { + width: 8.375em; + margin: 0 0.625em; + height: 1.4375em; +} + +@media print { + .goto-form, #goto-slide { + display: none !important; + } +} diff --git a/deck.js/extensions/goto/deck.goto.html b/deck.js/extensions/goto/deck.goto.html new file mode 100644 index 0000000..e3b6a18 --- /dev/null +++ b/deck.js/extensions/goto/deck.goto.html @@ -0,0 +1,7 @@ + +
+ + + + +
\ No newline at end of file diff --git a/deck.js/extensions/goto/deck.goto.js b/deck.js/extensions/goto/deck.goto.js new file mode 100644 index 0000000..eedba10 --- /dev/null +++ b/deck.js/extensions/goto/deck.goto.js @@ -0,0 +1,170 @@ +/*! +Deck JS - deck.goto +Copyright (c) 2011 Caleb Troughton +Dual licensed under the MIT license and GPL license. +https://github.com/imakewebthings/deck.js/blob/master/MIT-license.txt +https://github.com/imakewebthings/deck.js/blob/master/GPL-license.txt +*/ + +/* +This module adds the necessary methods and key bindings to show and hide a form +for jumping to any slide number/id in the deck (and processes that form +accordingly). The form-showing state is indicated by the presence of a class on +the deck container. +*/ +(function($, deck, undefined) { + var $d = $(document); + + /* + Extends defaults/options. + + options.classes.goto + This class is added to the deck container when showing the Go To Slide + form. + + options.selectors.gotoDatalist + The element that matches this selector is the datalist element that will + be populated with options for each of the slide ids. In browsers that + support the datalist element, this provides a drop list of slide ids to + aid the user in selecting a slide. + + options.selectors.gotoForm + The element that matches this selector is the form that is submitted + when a user hits enter after typing a slide number/id in the gotoInput + element. + + options.selectors.gotoInput + The element that matches this selector is the text input field for + entering a slide number/id in the Go To Slide form. + + options.keys.goto + The numeric keycode used to show the Go To Slide form. + + options.countNested + If false, only top level slides will be counted when entering a + slide number. + */ + $.extend(true, $[deck].defaults, { + classes: { + goto: 'deck-goto' + }, + + selectors: { + gotoDatalist: '#goto-datalist', + gotoForm: '.goto-form', + gotoInput: '#goto-slide' + }, + + keys: { + goto: 71 // g + }, + + countNested: true + }); + + /* + jQuery.deck('showGoTo') + + Shows the Go To Slide form by adding the class specified by the goto class + option to the deck container. + */ + $[deck]('extend', 'showGoTo', function() { + $[deck]('getContainer').addClass($[deck]('getOptions').classes.goto); + $($[deck]('getOptions').selectors.gotoInput).focus(); + }); + + /* + jQuery.deck('hideGoTo') + + Hides the Go To Slide form by removing the class specified by the goto class + option from the deck container. + */ + $[deck]('extend', 'hideGoTo', function() { + $($[deck]('getOptions').selectors.gotoInput).blur(); + $[deck]('getContainer').removeClass($[deck]('getOptions').classes.goto); + }); + + /* + jQuery.deck('toggleGoTo') + + Toggles between showing and hiding the Go To Slide form. + */ + $[deck]('extend', 'toggleGoTo', function() { + $[deck]($[deck]('getContainer').hasClass($[deck]('getOptions').classes.goto) ? 'hideGoTo' : 'showGoTo'); + }); + + $d.bind('deck.init', function() { + var opts = $[deck]('getOptions'), + $datalist = $(opts.selectors.gotoDatalist), + slideTest = $.map([ + opts.classes.before, + opts.classes.previous, + opts.classes.current, + opts.classes.next, + opts.classes.after + ], function(el, i) { + return '.' + el; + }).join(', '), + rootCounter = 1; + + // Bind key events + $d.unbind('keydown.deckgoto').bind('keydown.deckgoto', function(e) { + var key = $[deck]('getOptions').keys.goto; + + if (e.which === key || $.inArray(e.which, key) > -1) { + e.preventDefault(); + $[deck]('toggleGoTo'); + } + }); + + /* Populate datalist and work out countNested*/ + $.each($[deck]('getSlides'), function(i, $slide) { + var id = $slide.attr('id'), + $parentSlides = $slide.parentsUntil(opts.selectors.container, slideTest); + + if (id) { + $datalist.append('