summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Dywan <christian@twotoasts.de>2018-11-12 13:34:24 +0100
committerGitHub <noreply@github.com>2018-11-12 13:34:24 +0100
commitcea30772bd380022fae37bc918a14401031496d7 (patch)
tree9ae4f3bc26e06c639c7a104daf6a828c01013c40
parent9e8ac69c5de1b49498f2ab78f5181723bc015638 (diff)
downloadmidori-git-cea30772bd380022fae37bc918a14401031496d7.tar.gz
Create independent tabs to allow for more processes (#166)
The related tab does two things: 1. Connect the scripting contexts (eg. opening a window/ tab) 2. Re-use the process between those tabs By not setting it more processes will be used.
-rw-r--r--core/app.vala1
-rw-r--r--core/browser.vala4
-rw-r--r--core/network-check.vala2
-rw-r--r--core/tab.vala2
-rw-r--r--core/urlbar.vala2
-rw-r--r--extensions/session.vala2
6 files changed, 7 insertions, 6 deletions
diff --git a/core/app.vala b/core/app.vala
index b77b8e11..44fabd55 100644
--- a/core/app.vala
+++ b/core/app.vala
@@ -104,6 +104,7 @@ namespace Midori {
Environment.get_user_cache_dir (), Environment.get_prgname ());
string icons = Path.build_path (Path.DIR_SEPARATOR_S, cache, "icondatabase");
context.set_favicon_database_directory (icons);
+ context.set_process_model (WebKit.ProcessModel.MULTIPLE_SECONDARY_PROCESSES);
// Try and load web extensions from build folder
var web_path = exec_path.get_parent ().get_child ("web");
diff --git a/core/browser.vala b/core/browser.vala
index e108ddcc..7febd032 100644
--- a/core/browser.vala
+++ b/core/browser.vala
@@ -331,7 +331,7 @@ namespace Midori {
}
void tab_new_activated () {
- var tab = new Tab (tab, web_context);
+ var tab = new Tab (null, web_context);
add (tab);
tabs.visible_child = tab;
}
@@ -348,7 +348,7 @@ namespace Midori {
uint index = trash.get_n_items ();
if (index > 0) {
var item = trash.get_object (index - 1) as DatabaseItem;
- add (new Tab (tab, web_context, item.uri, item.title));
+ add (new Tab (null, web_context, item.uri, item.title));
trash.remove (index - 1);
}
}
diff --git a/core/network-check.vala b/core/network-check.vala
index 245988b3..0e438ac3 100644
--- a/core/network-check.vala
+++ b/core/network-check.vala
@@ -28,7 +28,7 @@ namespace Midori {
void login_clicked () {
var browser = ((Browser)get_toplevel ());
- browser.add (new Tab (browser.tab, browser.web_context, "http://example.com"));
+ browser.add (new Tab (null, browser.web_context, "http://example.com"));
}
}
}
diff --git a/core/tab.vala b/core/tab.vala
index 8dc8b914..567ec36c 100644
--- a/core/tab.vala
+++ b/core/tab.vala
@@ -273,7 +273,7 @@ namespace Midori {
var action = new Gtk.Action ("text-search", _("Search for %s").printf (label), null, null);
action.activate.connect (() => {
var settings = CoreSettings.get_default ();
- var tab = new Tab (this, web_context, settings.uri_for_search (text));
+ var tab = new Tab (null, web_context, settings.uri_for_search (text));
((Browser)get_toplevel ()).add (tab);
});
menu.append (new WebKit.ContextMenuItem (action));
diff --git a/core/urlbar.vala b/core/urlbar.vala
index 25c33de5..20f2db23 100644
--- a/core/urlbar.vala
+++ b/core/urlbar.vala
@@ -138,7 +138,7 @@ namespace Midori {
Application.get_default ().activate_action ("win-new", text);
} else {
var browser = ((Browser)get_toplevel ());
- browser.add (new Tab (browser.tab, browser.web_context, text));
+ browser.add (new Tab (null, browser.web_context, text));
}
} else {
listbox.activate_cursor_row ();
diff --git a/extensions/session.vala b/extensions/session.vala
index 92bcee90..8307d5cc 100644
--- a/extensions/session.vala
+++ b/extensions/session.vala
@@ -213,7 +213,7 @@ namespace Tabby {
var app = (Midori.App)default_browser.get_application ();
browser = browser_for_session (app, id);
}
- var tab = new Midori.Tab (browser.tab, browser.web_context,
+ var tab = new Midori.Tab (null, browser.web_context,
item.uri, item.title);
connect_tab (tab, item);
browser.add (tab);