WordPress update not saving

The problem is here:

$instance['content'] = (!empty( $newInstance['content'])) ? $oldInstance['content'] : '';

This translates to:

if newinstance content is not empty and has something in it
    then use the old instance content
else if it is empty
    use ''

Should it not be using new instance instead of old?

For example, here’s the example in the WP Codex docs:

/**
 * Sanitize widget form values as they are saved.
 *
 * @see WP_Widget::update()
 *
 * @param array $new_instance Values just sent to be saved.
 * @param array $old_instance Previously saved values from database.
 *
 * @return array Updated safe values to be saved.
 */
public function update( $new_instance, $old_instance ) {
    $instance = array();
    $instance['title'] = ( ! empty( $new_instance['title'] ) ) ? strip_tags( $new_instance['title'] ) : '';

    return $instance;
}

So your save function does work after all, it’s just saving the old value, not the new value