Liran,
Both "New" and "Save and New" buttons - or rather let's call it actions - will be a problem with the current way Record Browser is written.
Maybe this is not very related but we have now "grid" mode data entry. Basically the concept is like this:
- You are in a module for example Contacts.
- You have new module (let's say insurance data) that is linked to Contacts and therefore you show it as an add-on within Contacts.
- The plus icon within this add-on allows you to create new record for this insurance module.
- When creating a record using this method - meaning you are creating from an existing contact - add-on will already preset this contact ID as default. This is defined in the method for the add-on:
public function contacts_addon($arg) {
$rb = $this->init_module('Utils/RecordBrowser','insurance','insurance');
// $rb->set_button($this->create_callback_href(array($this,'contacts_addon_new'), array($arg['id'])));
$rb->set_defaults(array('person'=>$arg['id']));
- If you create new record directly in the insurance module you need to specify the contact.
To specify the contact you will have a select box. However with a lot of records - for example 2,000 - the select will be very long. To eliminate the overhead Record Browser automatically calculates the number of records and if this is more than 50 (which is manageable) it will display what we call auto-select - which is an input box combined with select and RB does not read all 2,000 contacts but there is AJAX query returned to the server based on what you type in the text box. This in turn is evaluated as select (we don't want the user to type a name for non-existing contact) and the contact ID is linked to the new record. This is something you should know.

Anyway - going back to creating this new "insurance" record. If there are many fields they will not fit on the screen in one line - therefore an entire form has to be shown. Because of it you leave the Contact view (form) and go to Insurance module form in Edit view. There is no way around it.
But for modules that hold just few fields - let's say the module insurance holds just 3 fields: Insurance Company (which is a CRM Company that belongs to "Insurance Company" group), Expiration Date and Account number - those 3 fields will fit on one line. Here you can use "grid mode" and be within a contact and still enter new record.
Here is the screenshot from Medical Insurance module showing this technique:

I hope you will find this info helpful.