Commit Graph

1817 Commits

Author SHA1 Message Date
MinRK
2041dc6563 widen modal dialogs on wide displays
needed for quick help layout with multiple meta keys
2014-03-20 14:12:09 -07:00
MinRK
840364ff71 use box-flex to layout quickhelp 2014-03-20 14:11:05 -07:00
MinRK
19c64f4b59 remove alt-- shortcut
replace with ctrl-shift--

alt is not safe for defaults
2014-03-20 14:10:44 -07:00
Brian E. Granger
9f1b26d860 Merge pull request #5331 from minrk/raw-input-css
fix raw_input CSS
2014-03-20 13:47:14 -07:00
Min RK
0ae0216b12 Merge pull request #5049 from ivanov/quickhelp-update
update quickhelp on adding and removing shortcuts
2014-03-20 12:39:42 -07:00
Paul Ivanov
35c861f583 fix MacOS specific shortcuts, thanks @minrk 2014-03-20 12:38:25 -07:00
Brian E. Granger
bfdbdd456c Merge pull request #5391 from jdfreder/netscape-keyboard
Fix Gecko (Netscape) keyboard handling
2014-03-20 12:35:52 -07:00
Paul Ivanov
c28096f0c5 prevent saving of partially loaded notebooks
closes #5363
2014-03-20 02:21:38 -07:00
Paul Ivanov
54d9eb4358 really fix the '-' key shortcuts now 2014-03-19 22:29:31 -07:00
Paul Ivanov
77bf4a72dd better handling of minus 2014-03-19 19:24:05 -07:00
Jonathan Frederic
a08fbff5d9 Fix Gecko (Netscape) keyboard handling 2014-03-19 16:36:11 -07:00
Paul Ivanov
21ebaf2e32 handle keyboard shortcuts ending with '-' 2014-03-19 16:24:53 -07:00
Paul Ivanov
4cf1717980 use - for shortcut separators 2014-03-19 15:58:59 -07:00
Thomas Kluyver
8e1146c6d1 Merge pull request #5357 from minrk/smb-fails
catch exception in copystat
2014-03-19 15:13:14 -07:00
Paul Ivanov
083f631cde wider style for keyboard shortcuts 2014-03-19 12:44:12 -07:00
MinRK
62061f0294 only catch errors in copystat 2014-03-19 12:22:33 -07:00
Min RK
d88b2ccc4a Merge pull request #5310 from ivanov/fix-5238
remove raw cell placeholder on focus, closes #5238
2014-03-19 12:21:03 -07:00
Min RK
5c5139b65d Merge pull request #5332 from ivanov/semantic-icons
semantic names for indicator icons
2014-03-19 12:20:07 -07:00
Paul Ivanov
c54ced12e5 Merge pull request #5360 from minrk/monospace
remove some redundant font-family: monospace
2014-03-19 11:25:12 -07:00
Paul Ivanov
2e4036fd4f raw cell placeholder text as one line 2014-03-19 10:42:11 -07:00
Paul Ivanov
37852baa6d render on focus out, always pad raw cells 2014-03-19 10:37:59 -07:00
Paul Ivanov
8a623dbcc4 fab css 2014-03-18 12:06:06 -07:00
Paul Ivanov
955d239d07 rename css class names to be consistent with current style 2014-03-18 12:03:43 -07:00
Paul Ivanov
a0a17fa04a capitalize keyboard shortcuts in the tour 2014-03-18 11:19:44 -07:00
Paul Ivanov
00603a11f6 remove stale modal dialog from the DOM 2014-03-18 11:16:56 -07:00
Fernando Perez
5f086fded2 Merge pull request #5372 from minrk/no-close-strings
Don't autoclose strings, because CodeMirror's behavior makes it confusing and awkward to type triple-quoted strings (and these are very common in Python).

An issue about this was filed in CodeMirror itself: https://github.com/marijnh/CodeMirror/issues/2385
2014-03-18 11:14:24 -07:00
MinRK
3c1fe84f52 Don't autoclose strings
CodeMirror doesn't do the right thing with triple-quoted strings,
so don't let it try.
2014-03-18 11:11:28 -07:00
Paul Ivanov
597a5cb741 don't color code in crimson
do alliterate, aforementioned color alternative alias is amaranth
2014-03-18 11:03:09 -07:00
Paul Ivanov
b9ef37ac26 semicolon fixes buttress half of my js commits 2014-03-18 10:31:51 -07:00
Min RK
e64c2cb5d8 Merge pull request #5296 from ivanov/more-shortcuts
unify keyboard shortcut and codemirror interaction
2014-03-18 09:46:07 -07:00
Paul Ivanov
0c366861c5 brief key event desription 2014-03-17 21:09:51 -07:00
Paul Ivanov
6d6e0fb007 fix up and down arrows in the top and bottom cells 2014-03-17 20:11:33 -07:00
Paul Ivanov
09866e0ee1 go to the beginning of the line when entering cell 2014-03-17 17:41:44 -07:00
Paul Ivanov
96848748de restore master behavior
up arrow at the top line first goes to char 0, and only goes to the cell
above if already on char 0. Same with down arrow on the bottom line:
transition cursor to the end of the line, and only go down a cell if
already at the end of the last line.

this makes for an unhappy experience in code-mirror's vim mode  for j
and k keys, but we'll fix that in the next commit
2014-03-17 16:21:23 -07:00
Paul Ivanov
8f17444c27 go to appropriate line when coming from another cell
Sets the cursor on the last line of the cell when moved up from the top
of the cell below, and sets the cursors to the first line when moving
down from the bottom of a last line.

Here, we retain the character that the cursor was on, so that users
wishing to have up-down functionality like one document can still use
this shortcut handler and simple adjust the at_top and at_bottom methods
2014-03-17 15:48:36 -07:00
Jonathan Frederic
2dd8757da7 Fab CSS 2014-03-17 10:44:29 -07:00
Jonathan Frederic
77904a044c Re-added already existing base for less backwards compatability. 2014-03-17 10:43:53 -07:00
Jonathan Frederic
0020b9f896 Fix specifity of flex modifier classes 2014-03-17 10:40:28 -07:00
MinRK
8e5937e993 remove some redundant font-family: monospace
`pre`, `code` tags already set the font-family in these contexts.
Setting it again in the surrounding context is redundant,
and causes inconsistency when embedding notebooks in HTML
(e.g. nbviewer).
2014-03-14 11:43:11 -07:00
Jonathan Frederic
d37ffe91b7 Fix status ind. icon bug 2014-03-14 11:40:54 -07:00
MinRK
caee63f413 fallback on copy, copyfile if copy2 fails
in notebook manager
2014-03-14 10:06:02 -07:00
MinRK
89faa5f340 simplify raw_input css
for once, vertical-align: baseline is the right choice
2014-03-13 20:47:34 -07:00
MinRK
065a6eaa34 fix ambiguous raw_input classes 2014-03-13 20:45:54 -07:00
Paul Ivanov
61b47695e4 renamed 'use_shortcut' method to 'handles' 2014-03-13 16:44:19 -07:00
Paul Ivanov
d8287466d0 another doc fix 2014-03-13 16:40:37 -07:00
Paul Ivanov
f68dcc3e57 it's only half true that I'm anal about semicolons 2014-03-13 16:30:58 -07:00
Paul Ivanov
67fd905421 minor fixes to docs to address PR feedback 2014-03-13 16:29:28 -07:00
Paul Ivanov
469c70fd10 more semicolons 2014-03-13 16:23:27 -07:00
Jonathan Frederic
443083c1fd Added some comments 2014-03-13 14:34:17 -07:00
Paul Ivanov
1dc113a9cb closes #5336 2014-03-13 14:30:32 -07:00
cgohlke
74be15ec19 Fix filenbmanager.list_dirs fails for Windows user profile directory 2014-03-11 23:50:46 -07:00
Paul Ivanov
4142911ac7 better fix for starting with Command Mode icon 2014-03-11 18:58:46 -07:00
Paul Ivanov
12139b4d6e ensure ipython-command-mode icon displayed on load 2014-03-11 18:48:21 -07:00
Paul Ivanov
f0ae836f5f semantic names for kernel status indicator 2014-03-11 18:37:35 -07:00
Paul Ivanov
f5a02a02dd semantic names for indicator icons
For all of the discussion that we had about what kind of icons should
and should not be used to indicate what mode the notebook is in, we
never went through to make it possible to override it.

With this change, it is now possible to override what icons are
displayed for Command and Edit Modes.

For example, @minrk liked the fighter-jet icon for Command Mode, so he
can put this in his custom.css

.ipython-command-mode:before {
     content: "\f0fb";
}
2014-03-11 18:22:03 -07:00
MinRK
084aba793f fix raw_input CSS
I had to express padding in px, not em for consistent appearance.
I'm not sure why.
2014-03-11 14:45:37 -07:00
Paul Ivanov
4dd009f198 DRY: style in one place, removed code duplication 2014-03-11 00:53:15 -07:00
Jonathan Frederic
7762cb0ab3 Fixed a small bug/typo 2014-03-10 15:29:10 -07:00
Jonathan Frederic
e61b6aef47 Add logic to close tt when cell is unselected 2014-03-10 15:26:04 -07:00
MinRK
f9758dd453 add NotebookNotary to NotebookApp's class list
adds it to help output and config files
2014-03-10 15:21:11 -07:00
Brian E. Granger
3eb654bd86 Merge pull request #5295 from minrk/no-append-prototype
OutputArea.append_type functions are not prototype methods
2014-03-10 14:13:14 -07:00
Paul Ivanov
b08665563d fix capitalization of mode-switching keys 2014-03-10 11:48:13 -07:00
MinRK
a24595d16b call append_text from append_map 2014-03-10 11:44:00 -07:00
Paul Ivanov
01c9be84d0 prettify combo keyboard shortcuts 2014-03-10 11:30:50 -07:00
Paul Ivanov
1c213bc615 first pass at capitalizing keyboard shortcuts 2014-03-10 11:13:18 -07:00
Jonathan Frederic
95492b0f42 Add illusion that cell is in edit mode when complete is up,
even though it is not in focus so it is not in edit mode.
2014-03-10 10:10:06 -07:00
Jonathan Frederic
65732920eb Remove all should cancel blur logic. 2014-03-10 09:46:59 -07:00
Jonathan Frederic
989ae4e1b3 Workaround for Tooltip & completer click focus bug. 2014-03-10 09:28:19 -07:00
MinRK
abe2dce926 back to dev 2014-03-09 21:58:09 -07:00
Paul Ivanov
1c23dee141 remove recreation of QuickHelp 2014-03-09 14:21:14 -07:00
Paul Ivanov
8bf4ffa2ca rebuild.QuickHelp event sets the dirty bit
QuickHelp is rebuilt on show if the dirty bit was set.
2014-03-09 14:15:47 -07:00
Paul Ivanov
cdb7967cc2 removing keyboard shortcuts should also update help 2014-03-09 12:26:34 -07:00
Paul Ivanov
4a287569fc update notebook quickhelp on new shortcuts 2014-03-09 12:24:32 -07:00
Paul Ivanov
cd38181438 remove raw cell placeholder on focus, closes #5238 2014-03-09 11:41:25 -07:00
MinRK
4d1f9b21c4 append functions are not prototype methods 2014-03-07 17:57:37 -08:00
Paul Ivanov
54409a196d dem semicolons 2014-03-07 17:48:34 -08:00
Paul Ivanov
19c7189b15 no need to special-case Escape anymore 2014-03-07 17:48:34 -08:00
Paul Ivanov
6a2c4121f9 up and down keys no longer need special casing 2014-03-07 17:48:34 -08:00
Paul Ivanov
2c9ff376a2 added new use_shortcut method to shortcuts
this way, you can ask if a particular event will be handled by the
shortcuts system. This takes away the need to special-case many
different possible keys which should be ignored by codemirror by
ignoring them en masse.
2014-03-07 17:48:34 -08:00
Paul Ivanov
b9e448b160 DRY: refactor common keyboard handling to Cell
Our edit mode keyboard shortcuts don't distinguish between being in a
code cell or in a text cell, so it makes sense to handle both in one
place. This is a first step in that direction.
2014-03-07 17:48:34 -08:00
Paul Ivanov
15f4345ba3 typo, use keycodes object instead of magic numbers 2014-03-07 17:48:34 -08:00
Paul Ivanov
bf3ecdb35f DRY: factor out common handle_keyevent method
This method was identical in both CodeCell and TextCell
2014-03-07 17:48:34 -08:00
Paul Ivanov
71d4c427c9 refactor to improve cell switching in edit mode
This code was repeated in both CodeCell and TextCell, both of which are
extensions of Cell, so this just unifies the logic in Cell.

TextCell had logic here to check if the cell was rendered or not, but I
don't believe it is possible to end up triggering such a code path.
(Should that be required, I can always just add back these methods to
TextCell, performing the .rendered==True check, and calling the Cell

prior to this, code mirror at_top would only return true on if the
cursor was at the first character of the top line. Now, pressing up
arrow on any character on the top line will take you to the cell above.

The same applies for the bottom line. Pressing down arrow would only go
to the next cell if the cursor was at a location *after* the last
character (something that is only possible to achieve in vim mode if the
last line is empty, for example). Now, down arrow on any character of
the last line will go to the next cell.
2014-03-07 17:48:34 -08:00
Paul Ivanov
8889a7581c start better keyboard handling 2014-03-07 17:48:34 -08:00
MinRK
3face719e8 setup jsversion 2014-03-07 15:54:55 -08:00
Brian E. Granger
30c500bfa9 Merge pull request #5292 from jdfreder/shift-enter-scroll
focus next cell on shift+enter
2014-03-07 14:55:48 -08:00
Jonathan Frederic
da334e782e focus next cell on shift+enter 2014-03-07 14:48:09 -08:00
Min RK
0a37d7bfc5 Merge pull request #5232 from jdfreder/nbc_incono
Make nbconvert html full output like notebook's html.
2014-03-07 14:14:43 -08:00
Brian E. Granger
05e6fbade4 Merge pull request #5288 from minrk/start-idle
Correct initial state of kernel status indicator
2014-03-07 14:07:42 -08:00
Thomas Kluyver
80af3b4cfb Merge pull request #4802 from ivanov/ui-docs
Tour of the notebook UI (was UI elements inline with highlighting)
2014-03-07 12:09:32 -08:00
MinRK
e901c9be33 Correct initial state of kernel status indicator
- start as busy, since we don't know
- send a kernel_info request once connections are established
- set idle on reply to the to the kernel_info request
2014-03-07 11:51:54 -08:00
Brian E. Granger
f62ce75a62 Lots of CSS tweaks to get nbconvert output looking right. 2014-03-06 16:36:39 -08:00
Jonathan Frederic
9c5bca99e2 addClass instead of adding extra_class arg everywhere 2014-03-06 14:22:36 -08:00
Jonathan Frederic
6169acfc6d Fixed rebase issues 2014-03-06 14:10:37 -08:00
Jonathan Frederic
8b3c356c8d Add extra_class arg to the rest of the append methods,
use new extra_arg to add output_pyout class
2014-03-06 13:29:09 -08:00
Jonathan Frederic
b92ede2800 Added output_pyerr to python error output 2014-03-06 13:26:44 -08:00
Brian E. Granger
1407b4347e Merge pull request #5268 from ellisonbg/cmd-mode
Refactoring Notebook.command_mode
2014-03-06 12:09:43 -08:00
Paul Ivanov
610e66615e added a note to what's new 2014-03-05 22:18:16 -08:00
Paul Ivanov
7974e32150 oops, <tt> went the way of the dodo, using <code> 2014-03-05 21:27:14 -08:00
Paul Ivanov
06e5858ee2 lower case names for keys 2014-03-05 21:08:24 -08:00
Min RK
aaedd1a311 Merge pull request #5283 from takluyver/widget-del
Remove Widget.closed attribute
2014-03-05 17:16:35 -08:00
Thomas Kluyver
95dc697e3b Remove Widget.closed attribute
Closes gh-5282
2014-03-05 15:34:14 -08:00
MinRK
7d87978a66 fix a typo introduced by a rebased PR
caused heading cells to appear in both rendered and unrendered state
2014-03-05 14:30:34 -08:00
Jonathan Frederic
de9b5b907e Fab CSS 2014-03-05 12:25:26 -08:00
juhasch
72864cc83c append Firefox overflow-x fix 2014-03-05 12:25:11 -08:00
Paul Ivanov
fdca0762a4 tidy up capitalization 2014-03-04 19:05:56 -08:00
Paul Ivanov
0ba3d22501 proper styling for the tour 2014-03-04 19:00:14 -08:00
Paul Ivanov
e10afab397 rewording according to feedback in #4802 2014-03-04 18:14:51 -08:00
Paul Ivanov
490e4d1e42 horizontally center menubar popup 2014-03-04 18:10:45 -08:00
Paul Ivanov
4371ebf625 fix vertical position of command mode tooltip 2014-03-04 18:02:21 -08:00
MinRK
3588fe40a9 Merge Security Pull Request: google-caja
Adds HTML sanitization.

The basics:

- untrusted HTML is always sanitized, with no warning
  (there is console logging for changes made)
- markdown is always treated as untrusted
- no warnings for simply excluded output (e.g. Javascript)
- CSS tags and attributes are always stripped from untrusted HTML
- never check whether HTML is "safe," only sanitize
- add 'Trust notebook' to File menu
2014-03-04 17:35:55 -08:00
MinRK
54e1558c16 make trust notebook dialog a single paragraph 2014-03-04 17:35:38 -08:00
MinRK
8cd744db85 mention that Trust triggers reload 2014-03-04 15:58:09 -08:00
MinRK
9396619f9d security.js docstrings 2014-03-04 15:38:11 -08:00
Brian E. Granger
4e0a2ee476 Make sure we are in command mode before we select a new cell. 2014-03-04 15:09:49 -08:00
Brian E. Granger
8d38e042df Merge pull request #5158 from ivanov/fix-5157
log refusal to serve hidden directories
2014-03-04 10:05:29 -08:00
MinRK
d8f2e320f2 trust method docstrings 2014-03-03 16:27:59 -08:00
MinRK
d5b0026cf1 trust via mark cells and save, rather than trust API request 2014-03-03 16:10:21 -08:00
MinRK
e7f3c05d28 remove unused get_attr_names 2014-03-03 16:10:21 -08:00
MinRK
6792d38215 log excluded untrusted output 2014-03-03 16:10:21 -08:00
MinRK
aaefc5f296 remove warning for stripped output 2014-03-03 16:10:21 -08:00
MinRK
b5c8a51331 disable trust notebook menu item on trusted notebooks 2014-03-03 16:10:20 -08:00
MinRK
c9c23cd71c cleanup test_nbmanager
use class setUp / teardown instead of the same context manager in every test
2014-03-03 16:10:20 -08:00
MinRK
1ae689f30c Add Trust Notebook to File menu 2014-03-03 16:10:20 -08:00
MinRK
46665483ed remove struct-returning sanitize
only keep str-str sanitization
2014-03-03 16:10:20 -08:00
MinRK
d4780c2cfc remove security.is_safe 2014-03-03 16:10:20 -08:00
MinRK
d59e44a190 default to allow_css = false 2014-03-03 16:10:20 -08:00
MinRK
4d35660f3c sanitize CSS
rather than removing it entirely
2014-03-03 16:10:19 -08:00
MinRK
d7b1e8b45b test style 2014-03-03 16:10:19 -08:00
MinRK
5f7f1c51ec remove unused security warning 2014-03-03 16:10:19 -08:00
MinRK
c49f04545a don't use result.safe to communicate incomplete information 2014-03-03 16:10:19 -08:00
MinRK
028ce17c62 fix tagName comparison 2014-03-03 16:10:19 -08:00
MinRK
a7dc526b2b testing for sanitize 2014-03-03 16:10:18 -08:00
MinRK
3897b1c39f don't populate sanitized.safe by default
since it's potentially expensive.

walk nodes in is_safe
2014-03-03 16:10:18 -08:00
MinRK
6384502e47 sanitize untrusted HTML output
rather than checking is_safe
2014-03-03 16:10:18 -08:00
MinRK
3d0957c7bc trust latex
If mathjax is insecure, we have big problems.
And we already trust mathjax in markdown cells,
so this is consistent.
2014-03-03 16:10:18 -08:00
MinRK
4b01948200 check trust of data-attributes in sanitization 2014-03-03 16:10:18 -08:00
MinRK
367b4f85c2 wrap caja.sanitizeAttribs to trust data-* attributes 2014-03-03 16:10:17 -08:00
MinRK
c298670a4b use html-sanitizer instead of html-css
always scrub css (for now)
2014-03-03 16:10:17 -08:00
MinRK
eec5d427a4 add cmp_tree, in case caja log can't be trusted
(spoiler: it can't)
2014-03-03 16:10:17 -08:00
MinRK
0da66543a0 move security js test 2014-03-03 16:10:17 -08:00
MinRK
890c0be1dd always sanitize markdown
don't check if it's safe or not
2014-03-03 16:10:17 -08:00
MinRK
2a0451fdde use google-caja for sanitization 2014-03-03 16:06:41 -08:00
Brian E. Granger
07cdb1e195 Adding first round of security tests of is_safe. 2014-03-03 16:06:41 -08:00
Brian E. Granger
3b262912a1 Display safe HTML+SVG even if untrusted, but don't set trusted=1. 2014-03-03 16:06:40 -08:00
Brian E. Granger
31c9e08fa8 Don't render insecure Markdown and show warning. 2014-03-03 16:06:40 -08:00
Brian E. Granger
fa3f998295 Adding security.js with 1st attempt at is_safe. 2014-03-03 16:06:40 -08:00
Brian E. Granger
6f4263dc74 Removing conditionals that are not needed. 2014-03-03 16:03:06 -08:00
Paul Ivanov
6c8cccf9e3 fix test suite
is_hidden expects the file to actually exist, so I've rearranged the
logic such that is_hidden is called only after it's clear that the file
exists.
2014-03-03 16:02:07 -08:00
Brian E. Granger
e374ca5ebb Refactoring Notebook.command_mode. 2014-03-03 15:32:05 -08:00