[IPython-dev] IPython Notebook for mobile web clients ?

Matthias BUSSONNIER bussonniermatthias at gmail.com
Mon Feb 4 16:17:43 EST 2013


Le 4 févr. 2013 à 21:47, Fernando Perez a écrit :

> On Sun, Feb 3, 2013 at 1:05 PM, Aaron Meurer <asmeurer at gmail.com> wrote:
>> - have more options to edit a non-code cell, because double tap doesn't edit it in touch devices due to being filtered by touch web browsers to zoom in/out. For example, add an "Edit" item in "Edit" or "Cell" menu, as well as an "Edit" icon in the toolbar;
> Also, things like Shift-Enter are impossible on most mobile keyboards. 
> 
> Fortunately our toolbar always exposes the 'play' button that does Shift-Enter, so it seems to me that the only show-stopper for mobile editing is an 'Edit' icon.

Use the snippet at the end of this mail to add an "Edit" button to each "CellToolBar" (select the "Mobile" Preset in the main toolbar) 
It will need a CSS fix that will be released soon (need to be written though) to look nice.

> Is that the case?  While, as Brian mentioned, full mobile support is a ways off, if we could make a simple tweak to the existing code that *allows* for mobile use (albeit with a sub-par UI), it would already help a lot of early adopters start using the notebook.

No need to tweak anymore ! 
(you can also add button in the MainToolbar if you whish)
Cf example 
http://elacave.lmdb.eu/~carreau/yui/classes/IPython.ToolBar.html#method_add_buttons_group

> 
> So having a list of the minimal blockers that can be fixed easily would be useful.

Yes, We should open a Meta-Issue with a tasklist
-- 
Matthias

> 
> Cheers,
> 
> f
> _______________________________________________
> IPython-dev mailing list
> IPython-dev at scipy.org
> http://mail.scipy.org/mailman/listinfo/ipython-dev


In your custom.js
------
mobile_preset = []
var edit = function(div, cell) {
        var button_container = $(div);
        var button = $('<div/>').button({icons:{primary:'ui-icon-pencil'}});
            button.click(function(){
                cell.edit()
                    })
        button_container.append(button);
}

IPython.CellToolbar.register_callback('mobile.edit',edit);
mobile_preset.push('mobile.edit');

IPython.CellToolbar.register_preset('Mobile',mobile_preset);


More information about the IPython-dev mailing list