Google Keep received a seemingly minor update this week, bringing the version number up from v3.2.354 to v3.2.415. There aren't any visible new features or even any particularly notable changes, but that doesn't mean the only changes are bug fixes. A teardown shows that Keep is due to receive its own built-in drawing mode so users can easily record their own doodles, scribbles, and sketches. Additionally, users will be able to annotate imported images like photos and screenshots.

Teardown

Disclaimer: Teardowns are necessarily speculative and usually based on incomplete evidence. It's possible that the guesses made here are totally and completely wrong. There is always a chance that details may change or plans may be cancelled prior to the launch of a new feature discovered in a teardown. Much like rumors, nothing is certain until it's officially announced.

Drawing Mode & Annotations

I doubt I need to explain drawing mode to our readers, so instead I'll simply begin with the explanation Google plans to show when the feature launches. This will be the text that goes into a pop-up dialog or possibly into a card pinned to the top of Google Keep until it's manually cleared.

<string name="whats_new_description">"For ideas that are outside the box - try Keep's new drawing feature! Create a drawing from scratch, or draw on an existing image. As with all Keep notes, drawings sync across your devices, and are fully collaborative when shared with other Keep users."</string>

That passage explains the feature very succinctly. It's a pretty traditional drawing mode that also allows users to draw shapes on top of an image they've imported. And like most of Google's apps, particularly those in the Drive suite, which Keep technically is, syncing across devices is supported. It's not entirely clear if live (simultaneous) collaboration on an individual drawing is supported, but since that's not even working on basic text notes, I wouldn't count on it for drawings.

All of the basic strings for the interface are present and accounted for. It looks like Drawing mode will be accessible through an "Add drawing" menu option next to "Add Image" in the overflow menu. Likewise, an "Edit drawing" option will be available when an image is open in Keep.

Drawing & Annotation Strings

<string name="menu_new_drawing">New drawing</string>
<string name="menu_add_drawing">Add drawing</string>
<string name="menu_edit_drawing">Edit drawing</string>
<string name="ga_action_new_annotation">New Annotation</string>
<string name="ga_action_edit_annotation">Edit annotation</string>
<string name="menu_add_drawing_to_image">Add drawing to image</string>
<string name="widget_note_type_drawing">Drawing</string>
<string name="ga_action_new_drawing_from_editor">New Drawing From Editor</string>
<string name="ga_action_edit_drawing">Edit drawing</string>
<string name="ga_category_drawing_note">Drawing Note</string>
<string name="ga_action_opened_drawing_fragment">Opened drawing fragment</string>
<string name="drawing_not_available">Drawing not currently available.</string>
<string name="ga_action_annotation_background_config_error">Annotation background image config is incompatible with Ink</string>
<string name="ga_action_drawing_editor_document_replaced_error">Document replaced in drawing editor fragment</string>
<string name="ga_action_drawing_editor_fatal_error">Fatal error in drawing editor fragment</string>
<string name="invalid_drawing_background_image">Cannot draw on this image.</string>
<string name="loading_drawing">Loading drawing…</string>
<string name="local_drawing_replaced">This drawing has been edited elsewhere, and your changes have been replaced</string>

Keep's Drawing mode is going to stick to some fairly simplistic functions, falling in line with other note-taking applications like Evernote. It's going to offer the four standard tools in eight sizes:

  • Pen (round edges)
  • Marker (straight edges)
  • Highlighter
  • Erase
  • Tiny
  • Smaller
  • Small
  • Medium
  • Large
  • Larger
  • Huge
  • Enormous

There is also a "Clear" command for wiping everything off of the page and starting fresh.

icons

Icons exist for the tools and settings, but two particularly interesting icons exist for "ink selection." There aren't any strings to go along with that, so it's hard to say precisely what it will do, but this could work like a precision banding box to limit the area a tool can affect, or it may even be used for changing the properties (e.g. line thickness or color) after a line has already been drawn. There is also an image named ic_drawing_placeholder that will help to identify that a particular note contains a drawing.

ic_drawing_placeholder

drawing_placeholder

Along with the sizes and styles, users can also pick from different colors. However, there is a discrepancy about the full list. There are names for 28 different colors named in the strings, but a second list exists with only 12, about half of which have variations on the names. Perhaps each group is used in different places or for different purposes, but there's not enough information to make any clear guesses yet. There is a string with the words "Toggle full color palette" which may switch between the short and long sets.

  • Amber
  • Avocado Green
  • Black
  • Blue
  • Brown
  • Cobalt Blue
  • Crimson
  • Cyan
  • Dark Brown
  • Dark Gray
  • Deep Purple
  • Green
  • Hot Pink
  • Lavender
    • Light Blue
    • Light Gray
    • Light Green
    • Light Orange
    • Light Pink
    • Light Teal
    • Lime
    • Orange
    • Purple
    • Red
    • Teal
    • Violet
    • White
    • Yellow

Second list:

  • Black
  • Off-white
  • Orange
  • Yellow
  • Pink
  • Red
  • Light green
  • Dark green
  • Light purple
  • Dark purple
  • Teal
  • Blue

I also couldn't help but notice the strings use the 'gray' spelling while one of the icons listed above went with the 'grey' spelling. It doesn't matter in the least, but I can't help but notice when that happens.

Color Strings

<string name="ink_clear_canvas">Clear canvas</string>
<string name="ink_clear_dialog_cancel">Cancel</string>
<string name="ink_clear_dialog_ok">Clear</string>
<string name="ink_clear_dialog_text">This will clear all drawings from this page.</string>
<string name="ink_clear_dialog_title">Clear Page?</string>
<string name="ink_clear_select">Select none</string>
<string name="ink_color_amber">Amber</string>
<string name="ink_color_avocado">Avocado Green</string>
<string name="ink_color_black">Black</string>
<string name="ink_color_blue">Blue</string>
<string name="ink_color_brown">Brown</string>
<string name="ink_color_cobalt">Cobalt Blue</string>
<string name="ink_color_crimson">Crimson</string>
<string name="ink_color_cyan">Cyan</string>
<string name="ink_color_darkbrown">Dark Brown</string>
<string name="ink_color_darkgray">Dark Gray</string>
<string name="ink_color_deeppurple">Deep Purple</string>
<string name="ink_color_green">Green</string>
<string name="ink_color_hotpink">Hot Pink</string>
<string name="ink_color_lavender">Lavender</string>
<string name="ink_color_lightblue">Light Blue</string>
<string name="ink_color_lightgray">Light Gray</string>
<string name="ink_color_lightgreen">Light Green</string>
<string name="ink_color_lightorange">Light Orange</string>
<string name="ink_color_lightpink">Light Pink</string>
<string name="ink_color_lightteal">Light Teal</string>
<string name="ink_color_lime">Lime</string>
<string name="ink_color_orange">Orange</string>
<string name="ink_color_purple">Purple</string>
<string name="ink_color_red">Red</string>
<string name="ink_color_teal">Teal</string>
<string name="ink_color_violet">Violet</string>
<string name="ink_color_white">White</string>
<string name="ink_color_yellow">Yellow</string>
<string name="ink_erase">Erase</string>
<string name="ink_highlighter">Highlighter</string>
<string name="ink_marker">Marker</string>
<string name="ink_pen">Pen</string>
<string name="ink_select">Select</string>
<string name="ink_size_0">Tiny</string>
<string name="ink_size_1">Smaller</string>
<string name="ink_size_2">Small</string>
<string name="ink_size_3">Medium</string>
<string name="ink_size_4">Large</string>
<string name="ink_size_5">Larger</string>
<string name="ink_size_6">Huge</string>
<string name="ink_size_7">Enormous</string>
<string name="ink_toggle_colors">Toggle full color palette</string>
<string name="ink_width_label">Width</string>

<string-array name="drawing_color_palette_descriptions">
<item>Black</item>
<item>Off-white</item>
<item>Orange</item>
<item>Yellow</item>
<item>Pink</item>
<item>Red</item>
<item>Light green</item>
<item>Dark green</item>
<item>Light purple</item>
<item>Dark purple</item>
<item>Teal</item>
<item>Blue</item>
</string-array>

To close out the list of functions for the drawing mode, there's also a pair of buttons in the action bar that will provide Undo and Redo operations.

Undo / Redo Strings

<string name="undo">Undo</string>
<string name="redo">Redo</string>

<menu
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:icon="@drawable/ic_undo" android:id="@id/drawing_editor_undo" android:title="@string/undo" app:showAsAction="always" />
<item android:icon="@drawable/ic_redo" android:id="@id/drawing_editor_redo" android:title="@string/redo" app:showAsAction="always" />
</menu>

I also noticed many of these resources found their way into the Android Wear app, so we will probably see some limited functionality appear there as well. At the very least, we can expect to be able to view drawings on Wear. Editing doesn't have to be completely out of the question, but how that will work on such a small screen is, to say the least, very dubious.

As for when this should launch, the resources look fairly complete, which leads me to believe it's plausible with a server-side switch. However, Keep hasn't generally been an app to activate features remotely. Most of the Drive apps seem to avoid this practice, even though it happen occasionally. Whether we get a server-side switch or have to wait for an update, I think we'll see Drawing mode activated fairly soon.

Download

The APK is signed by Google and upgrades your existing app. The cryptographic signature guarantees that the file is safe to install and was not tampered with in any way. Rather than wait for Google to push this download to your devices, which can take days, download and install it just like any other APK.

File Name: com.google.android.keep_3.2.415.0-32415030_minAPI14(nodpi).apk

Version: 3.2.415.0 (32415030)