Commits on Jun 27, 2012
  1. @laughinghan
Commits on Jun 22, 2012
  1. @laughinghan
  2. @laughinghan

    add !important to background rules of selection

    we expect rules overriding the .matrixed background:white to, y'know,
    other colors, and these rules are liable to have a specificity higher
    than the rules setting the background color of the selection, which we
    want to keep, so we have to make them !important.
    
    For an explanation from the beginning, see the wiki page Transforms
    laughinghan committed Jun 22, 2012
Commits on Jun 21, 2012
  1. @laughinghan

    tweak padding around fraction

    to take into account increased fraction bar width
    laughinghan committed Jun 21, 2012
  2. @laughinghan

    fix vertical alignment of fractions in Opera

    was pretty majorly fucked up
    laughinghan committed Jun 21, 2012
Commits on Jun 20, 2012
  1. @laughinghan

    herp derp fix monkey-patching jQuery textarea test

    man, I can't believe this was never a problem, I guess there's not a lot
    of selectors selecting for .textarea
    laughinghan committed Jun 19, 2012
  2. @laughinghan

    test case: trigger mousedown from elsewhere

    MathQuill's editable should just take it and pretend it was a mousedown
    somewhere in the editable, and put the cursor there and drag from there
    and stuff
    laughinghan committed Jun 19, 2012
Commits on Jun 19, 2012
  1. @laughinghan

    on mousedown, textarea.focus() in timeout

    or else focus doesn't happen onmousedown in IE<=8
    laughinghan committed Jun 19, 2012
Commits on Jun 11, 2012
  1. @jneen @laughinghan
Commits on Jun 8, 2012
  1. @laughinghan

    refactor focus-on-click

    Now that we're preventing default on mousedown, don't need click handler
    for Mobile Safari (which was there because Mobile Safari won't focus on
    timeouts, and without preventDefault() the focus would get transferred
    to where the mousedown happened immediately after the mousedown handler
    we needed a setTimeout())
    laughinghan committed Jun 8, 2012
Commits on Jun 6, 2012
  1. @laughinghan

    tweak numerator denominator vertical spacing

    numerator was too far, denominator was too close
    laughinghan committed Jun 5, 2012
  2. @laughinghan

    add horizontal padding to denominator to match that of numerator

    apparently I didn't notice that when the numerator was wider than the
    denominator, it has padding between its contents and the edge of the
    fraction bar, but when the denominator was wider than the numerator, the
    contents go right up to the edge of the fraction bar
    laughinghan committed Jun 5, 2012
  3. @laughinghan
  4. @laughinghan

    the Times font is slightly bigger than Symbola >_<

    at least, that's what I think the `padding-top: .075em`s are for, I
    can't actually remember and the commit that put them in according to
    blame was apparently back when I sucked at writing commit messages.
    
    Conflicts:
    
    	mathquill.css
    laughinghan committed Jun 5, 2012
  5. @laughinghan

    fix 1px shift when moving cursor in/out of blocks

    e.g. numerator of 1/x
    laughinghan committed Jun 5, 2012
Commits on Jun 1, 2012
  1. @laughinghan

    deal with setTextareaSelection correctly in textInput()

    this appears to be a leftover from 7ee00f4
    that 68d9d1a forgot to deal with
    
    if text was entered, then it should have overwritten any selection, but
    there could be a `setTextareaSelection` timeout waiting to run that was
    cleared in the `keypress` handler, and then on future changes to the
    selection, we'll check `textareaSelectionTimeout` to throttle calls and
    if it isn't `undefined`, we'll mistakenly conclude that there's a
    `setTextareaSelection` timeout that will soon run
    
    if no text was entered, then if `textareaSelectionTimeout` isn't
    `undefined`, that means that before the `keypress` handler cleared it,
    there was a `setTextareaSelection` timeout waiting to run, and no text
    was entered overwriting the selection, so we now want to
    `setTextareaSelection()`
    laughinghan committed May 31, 2012
Commits on May 30, 2012
  1. @laughinghan

    correct GitHub banner

    laughinghan committed May 30, 2012
Commits on May 29, 2012
  1. @jneen

    credit Desmos in the README

    jneen committed May 29, 2012
  2. @jneen

    alpha -> beta

    jneen committed May 29, 2012
Commits on May 15, 2012
  1. @jenseng

    Merge pull request #79 from ryankshaw/patch-1

    minor change in order to be able to pass jslint
    jenseng committed May 15, 2012
Commits on May 10, 2012
  1. @ryankshaw

    minor change in order to be able to pass jslint

    jslint will choke on something line foo.int because `int` is 
    a reserved future keword. this little change just makes it 
    so mathquill passes jslint
    ryankshaw committed May 10, 2012
Commits on May 1, 2012
  1. @jneen

    Make `make cat` actually use make.

    This significantly reduces file writes on my poor hard drive.
    jneen committed May 1, 2012
  2. @jneen
  3. @jneen

    Revert "render LaTeX on a detached element for performance"

    This reverts commit cfde1d0.
    jneen committed May 1, 2012
  4. @jneen
Commits on Mar 27, 2012
  1. @laughinghan
  2. @laughinghan

    Revert "correctly parse parentheses that don't have \left and \right …

    …decorators"
    
    This reverts commit 4033cea.
    
    that's parsing them incorrectly, LaTeX treats `(`, `)` etc as normal characters,
    it's `\left` and `\right` that resize them to match their contents.
    That's also why `(`, `)` etc are in `CharCmds` not `LatexCmds`
    laughinghan committed Mar 27, 2012
  3. @jneen
Commits on Mar 25, 2012
  1. @laughinghan

    pasting => skipTextInput

    instead of vague skipTextInput, with the better
    guard in b1318e5 against mistaking a selection
    for typed text, now only need a guard for the one
    edge case of textInput() happening in between the
    paste event firing and paste() dealing with the
    pasted text. Rewire where the guard flag is set
    and unset to match
    laughinghan committed Mar 25, 2012
  2. @laughinghan

    in IE on textInput don't need to check selection

    according to http://unixpapa.com/js/key.html (and
    my own testing), IE doesn't trigger keypress (and
    hence the fake textInput) when you press
    Ctrl+X/C/V, so this part of b1318e5 should be
    unnecessary.
    
    If anything like #40 or #71 is reported in IE <9,
    revert this and include the research from b1318e5.
    laughinghan committed Mar 25, 2012
  3. @laughinghan

    fix #71, check if selection in textInput()

    Turns out the skipTextInput guard in copy never
    fully worked, there's an edge case where
    textInput() happens after the Ctrl+C keypress
    but before the copy event could set the
    skipTextInput guard, so it would see the selected
    text in the textarea and, thinking that text was
    typed by the Ctrl+C keypress, input it character-
    by-character into MathQuill.
    
    The right thing to do, then, is instead of a guard
    flag, check if there is a nonempty selection in
    the textarea. There couldn't possibly be selected
    text in the textarea if some new text was just
    typed in, because the selected text would be
    replaced by the typed text and the cursor would be
    after the typed text.
    
    There is a dearth of compatibility tables for
    selection APIs, but according to Dottoro
    selectionStart/End is supported by IE 9 and other
    modern browsers: 
    http://help.dottoro.com/ljtfkhio.php
    
    As far as I can tell, IE's proprietary
    document.selection et al are supported by at least
    IE 6+. It has no direct way to find the start nor
    end of the current selection like you can the
    standardized way, the way this works is if
    document.selection.type is anything but 'Text',
    then there is no selection or it's of HTML, not
    text in a textarea. If it is 'Text', the
    selected textarea still may not be this MathQuill
    textbox's hidden textarea. I disregard the
    possibility that document.selection.createRange is
    truthy but it's not IE's API, that possibility
    *deserves* to blow up and throw an exception.
    
    References:
    - document.selection
      http://help.dottoro.com/ljefwsqm.php
      http://msdn.microsoft.com/en-us/library/ms535869(VS.85).aspx
    - selection.type
      http://help.dottoro.com/ljitmswc.php
      http://msdn.microsoft.com/en-us/library/ms534692(VS.85).aspx
    - selection.createRange()
      http://help.dottoro.com/ljrvjsfe.php
      http://msdn.microsoft.com/en-us/library/ms536394(VS.85).aspx
    if selection.type === 'Text', then
    selection.createRange() returns a
    - TextRange
      http://help.dottoro.com/ljgbbkjf.php
      http://msdn.microsoft.com/en-us/library/ms535872(VS.85).aspx
    on which you can call
    - range.parentElement()
      http://help.dottoro.com/ljcfdmjx.php
      http://msdn.microsoft.com/en-us/library/ms536654(VS.85).aspx
    laughinghan committed Mar 25, 2012
  4. @laughinghan
  5. @laughinghan

    TextArea.select() has always been supported in IE

    since before the beginning of time, according to http://help.dottoro.com/ljwbxutr.php
    
    which actually means since version 3.0, according to http://en.wikipedia.org/wiki/Comparison_of_layout_engines_(Document_Object_Model)#HTML
    laughinghan committed Mar 24, 2012
Commits on Mar 11, 2012
  1. @laughinghan

    Revert "use an anonymous function with setTimeout"

    This reverts commit 39495e5.
    
    Conflicts:
    
    	src/rootelements.js
    laughinghan committed Mar 10, 2012
Commits on Mar 10, 2012
  1. @jneen

    Merge remote-tracking branch 'origin/master'

    Conflicts:
    	src/rootelements.js
    jneen committed Mar 10, 2012