sympy/sympy_gamma — pull request #5 by lidavidm (2012-10-16 02:13:17+00:00)
Title: Resizable plots, plot options, mobile operator keyboard, and refactored plotting

Changes:

- Click and drag the edge of a plot to resize it. This won't change the domain/range yet and panning does not work.
- A light grid is displayed on plots
- Under 'More...' there are options to hide points, lines, the grid, and axes.
- On mobile, focusing the input box brings up a toolbar where the logo used to be. The toolbar inserts operators (+, -, *, /, and ()) and moves the cursor.
- Refactored plotting to use a backend. Hopefully canvas and WebGL backends will be implemented; the WebGL backend should support 3D. I'm planning to use [Three.js](https://github.com/mrdoob/three.js/) as it supports both Canvas and WebGL rendering (so theoretically we should be able to get 3D on mobile, which supports canvas, and on desktop).

Issues:

- Resizing doesn't work on mobile.
- Using the toolbar on mobile causes the keyboard to pop down and up, due to the textarea temporarily losing focus.

Deployed at http://sympy-gamma-li.appspot.com/

Pictures:

![Mobile toolbar](https://gist.github.com/raw/3896877/8e2350ed5f9d0d953f41eb05ecf120b913faa35c/mobile-toolbar.png)

![Plot options](https://gist.github.com/raw/3896877/8feceaef9a57dac09a67dd960ec8c1a932859528/Screenshot%20from%202012-10-15%2019:08:28.png)

![Resized plot](https://gist.github.com/raw/3896877/8f14c385aa6ca591dc905667ca519ce6ed4298d7/Screenshot%20from%202012-10-15%2019:08:39.png)