Commit graph

475 commits

Author SHA1 Message Date
Alexander Butenko
5f1cd907ad Some tiny Adblock speed-ups with regex optimization 2011-06-08 19:59:18 +02:00
Alexander Butenko
4e656cc127 10x speed-up in loading of CSS rules for Adblock 2011-06-08 19:51:26 +02:00
Alexander Butenko
fc842d9751 Add URL cache in adblock extension
We can bypass all tests on the second load of the URL.
2011-06-02 00:48:02 +02:00
Paweł Forysiuk
dfb7225af5 Double check that we're not adding addons twice 2011-05-26 21:05:07 +02:00
Paweł Forysiuk
6cc4c9db4e Clean up data file handling in Form History 2011-05-22 15:49:49 +02:00
Christian Dywan
a95f2f0f7f Remove pre-WebKitGTK+ 1.1.4 support from Form History 2011-05-22 14:35:14 +02:00
Paweł Forysiuk
03254c22af Merge HTTP logins with Form History in Clear Private Data 2011-05-22 14:32:10 +02:00
Christian Dywan
f97395dab1 Validate URIs and render entry red if invalid
Fixes: https://bugs.launchpad.net/midori/+bug/710855
2011-05-15 16:46:23 +02:00
Alexander Butenko
6885c35886 Fix loading of lists from https
Fixes: https://bugs.launchpad.net/midori/+bug/699978
2011-05-15 13:17:25 +02:00
Christian Dywan
fad55dc8a1 Avoid allocating rest_of_line and file extension 2011-05-13 16:29:40 +02:00
André Stösel
c7e70f6808 Allow cancelling the History List with Escape
Just like Alt+Tab.
2011-05-03 20:42:59 +02:00
Christian Dywan
47437114c7 Implement new libsoup cache for >= WebKitGTK+ 1.3.11
The web cache extension is automatically hidden/ disabled if
WebKitGTK+ is new enough, the new cache is a core feature.

By default 100 MB of pages can be cached on disk.

The 'Applications' preference tab is resurrected.

The same folder ~/.cache/midori/web is used for old and new cache.
2011-05-01 06:59:00 +02:00
André Stösel
ed0024390b Let History List properly override tab switching 2011-04-30 12:19:30 +02:00
Paweł Forysiuk
bbfa7f6030 Fix GCC 4.6 warnings about set but unused variables 2011-04-29 04:03:33 +02:00
Christian Dywan
cd4cd3f52e Make Tab Panel use the correct foreground colours
In particular when used in combination with Colorful Tabs.
2011-04-25 17:56:56 +02:00
Paweł Forysiuk
908081813e Don't set tooltip twice on user script/style delete button 2011-04-18 01:37:09 +02:00
Tomasz Szatkowski
7691130cc3 Implement 'Customize...' on toolbar right-click
The new MidoriBrowser::populate-toolbar-menu allows
extensions to add menu items.

Fixes: https://bugs.launchpad.net/midori/+bug/699933
2011-04-17 22:43:54 +02:00
Christian Dywan
5107d35fe7 Remove the Page Holder extension from the tree
It is unmaintained and presumably not very popular.
2011-04-14 03:14:41 +02:00
Christian Dywan
b299608352 Don't consider scripts using GM_ functions as broken
There are cases where scripts check for the existence of such
functions and fall back to standard functions.
2011-04-04 01:50:53 +02:00
Paweł Forysiuk
728ed8570f Remove unused browser variable from addons_install_response 2011-04-04 01:15:05 +02:00
Paweł Forysiuk
61d6da99ed Fix uri matching for addon infobar on userstyles.org
We want to match a style, with a number in the URI, but not when
browsing styles.
2011-04-04 01:12:43 +02:00
Paweł Forysiuk
241a7ffb06 Display scripts using unsupported GM_ API as broken in panel 2011-03-16 21:46:05 +01:00
Alexander Friesen
f237c30e06 Add MidoriBrowser::move-tab and use it in Tab Panel 2011-03-07 22:56:20 +01:00
Christian Dywan
3e47ac9e3f Make statusbar identity combobox work like preference
So it shows a tooltip and 'Custom' works.
2011-03-05 00:23:33 +01:00
Christian Dywan
5c8a0c53c0 Fix struct definition in Mouse Gestures extension
Fixes: https://bugs.launchpad.net/midori/+bug/716885
2011-02-26 16:34:01 +01:00
Christian Dywan
215a5c1ca2 Add a zoom level combobox to Statusbar Features
Fixes: https://bugs.launchpad.net/midori/+bug/718155
2011-02-24 22:11:35 +01:00
Christian Dywan
912637025c Use distinct labels for Refresh actions in shortcut editor 2011-02-20 04:13:30 +01:00
Paweł Forysiuk
85bdfac81a Don't show infobar installer on "view source" pages 2011-02-18 02:22:11 +01:00
Paweł Forysiuk
846a7f7088 Handle addon install in view specific callbacks
Connect on the view rather than the browser and use
MIDORI_LOAD_COMMITTED which is only emitted once.
2011-02-18 02:05:51 +01:00
Paweł Forysiuk
5cdbf5e814 Free uri in adblock_is_matched_by_key after printing 2011-02-13 18:35:46 +01:00
Paweł Forysiuk
27bba3c318 Strip leading and trailing whitespace when parsing user scripts/ style 2011-02-12 16:40:57 +01:00
Paweł Forysiuk
28fbf66459 Check for destination folder before downloading userstyle/script 2011-02-09 00:22:51 +01:00
Paweł Forysiuk
dba9bb4780 Fix parsing of userscript headers containing tab chars 2011-02-09 00:16:55 +01:00
Paweł Forysiuk
7939dc1bf1 Try matching URI by extension first in script/ style infobar
Fallback to hostname if that fails
2011-02-09 00:14:27 +01:00
Paweł Forysiuk
6b48f9c639 Escape markup in user script/style tooltip and delete dialog 2011-02-09 00:10:06 +01:00
Paweł Forysiuk
7504edaa11 Fix script name extraction and re-enable installer on userscripts.org "review" pages 2011-02-04 00:33:48 +01:00
Christian Dywan
90e11d3713 Only no adblock if main frame in provisional state 2011-02-01 01:52:39 +01:00
Christian Dywan
2e35f1718b Never filter the main page itself with adblock
Fixes: https://bugs.launchpad.net/midori/+bug/706862
2011-01-30 19:25:50 +01:00
Christian Dywan
57d529d309 Don't support 'review' pages on userstyles.org for now 2011-01-30 18:58:00 +01:00
Paweł Forysiuk
1efabca2b1 Don't use GtkInfoBar api explicitly in user style/script infobar installer 2011-01-30 18:58:00 +01:00
Christian Dywan
650aa8c102 Don't error when saving addons config in test 2011-01-16 14:05:23 +01:00
André Stösel
b4e94b4f19 Be sure to end up at last opened tab after closing 2010-12-14 01:16:20 +01:00
Christian Dywan
54971fd8ae Make sure minimized tabs show up in Tab Panel 2010-12-11 20:31:18 +01:00
André Stösel
aadfd1e289 Switch to newest tabs with Ctrl+1 and Ctrl+2 2010-12-12 00:36:33 +01:00
Christian Dywan
613e78a951 Be more careful about consecuitve spaces in styles 2010-12-12 00:36:32 +01:00
Paweł Forysiuk
7bd0683869 Omit spaces and comments in user stylesheets
This fixes parsing breaking due to comments.

Further more it noticibly reduces the size of stylesheets.
2010-12-07 01:43:27 +01:00
André Stösel
cb5bdb8646 Resize History List based on the requested size 2010-11-23 23:22:47 +01:00
Paweł Forysiuk
b26df3af22 Remove unused kind_name variable in addons_uri_install 2010-11-10 00:34:31 +01:00
Paweł Forysiuk
2feb127e4b Reword userstyle/ script install message in infobar 2010-11-09 23:22:34 +01:00
Paweł Forysiuk
91390db88c Implement infobar for easy userscript/ style install 2010-11-07 23:58:26 +01:00
Paweł Forysiuk
96a276219a Handle multi-line -moz-document blocks 2010-11-05 23:27:57 +01:00
Christian Dywan
34a3c307b5 Properly omit quotes from -moz-document domain 2010-11-04 19:03:49 +01:00
Paweł Forysiuk
53a205be4d Handle single, double and absent quotes in -moz-document 2010-11-03 00:12:05 +01:00
Paweł Forysiuk
eae7ec4ac3 Recognize -moz-document domain in user stylesheets 2010-11-01 19:35:29 +01:00
Christian Dywan
ed6d44df5f Use function to access browser settings an panel 2010-11-01 16:47:32 +01:00
Christian Dywan
560ad66d48 Add 'Identify As' button to Statusbar Features 2010-10-31 21:24:34 +01:00
Christian Dywan
b86b5056f8 Remove External Applications extension 2010-10-24 21:06:28 +02:00
Christian Dywan
c78c982613 Mention Ctrl+Tab in description of History List
Otherwise people don't understand how to use it.
2010-10-22 21:50:20 +02:00
Christian Dywan
68c12e950e Slice allocations in addons, net, scrolled, transferbar 2010-10-21 21:09:01 +02:00
Christian Dywan
936758afdc Add translation comments to 'History' and 'Form History' 2010-10-21 21:09:00 +02:00
Christian Dywan
b25f27cd66 Add static keywords, fix #ifdefs and spurious lines 2010-10-20 23:48:36 +02:00
Paweł Forysiuk
30f3dc0461 Clean up redundant item lists from addons helpers 2010-10-20 23:47:14 +02:00
Christian Dywan
ce64fd3e25 Add item to clear Form History database 2010-10-17 23:11:50 +02:00
Christian Dywan
d73b471ec4 Implement sokoke_register_privacy_item facility
The new function allows registering callbacks which clear data,
with a name and label so they show up in the Clear Private Data
dialogue and the chosen items are saved.

The old enumeration still keeps history, trash and the flag
whether to clear when Midori quits.
2010-10-17 22:48:32 +02:00
Christian Dywan
52d7a43e28 Don't use "path" setting in web cache to create the folder 2010-10-14 22:20:21 +02:00
Christian Dywan
ab414bc251 Remove web cache path and size settings 2010-10-12 00:25:49 +02:00
Christian Dywan
e74f89f8c2 Remove 'filename' argument from sokoke_spawn_program 2010-10-10 13:27:06 +02:00
Christian Dywan
1e49e9f95c Don't use a custom stock icon for Cookie Manager
Due to the change of the stock icon names in GTK+ 2.22 the
stock item trick doesn't work anymore. Using the authentication
icon directly is good enough.
2010-10-05 21:43:34 +02:00
Christian Dywan
2cf3c2f5b0 Fix removal of tabs from Tab Panel treeview 2010-10-05 21:43:34 +02:00
Christian Dywan
5a0fc37d2f Don't use the deprecated GTK_IN_DESTRUCTION flag
As a workaround, the browser now sets its own flag.
2010-10-05 00:04:28 +02:00
Christian Dywan
195c5191ef Showing the (feed) panel needs to be a GtkWidget* 2010-09-12 00:59:24 +02:00
Christian Dywan
40dc38fd21 Implement and use KATZE_ARRAY_FOREACH_ITEM
Iterating an array by a GList is considerably faster than
continuously retrieving items, however it is also a lot
more complicated. So the new macro takes care of that and
uses a new semi-private function to avoid copying the list.

Note that the macro can't be nested, which basically isn't
useful in practise anyway.
2010-09-12 00:59:24 +02:00
Christian Dywan
3b4ae37664 Always free uri of the web view after applying addons 2010-09-01 23:56:03 +02:00
Paweł Forysiuk
f7a6011d1b Provide a context menu for scripts and styles 2010-09-01 22:39:09 +02:00
Paweł Forysiuk
8448eabd26 Add button to open folder of scripts/ styles 2010-09-01 22:28:32 +02:00
Paweł Forysiuk
65338e5ab0 Remove button labels and separator from addon toolbar 2010-09-01 22:08:21 +02:00
Paweł Forysiuk
d7b68b9d94 Add button to open addon in text editor 2010-08-30 00:59:57 +02:00
Paweł Forysiuk
ce56f60ccd Show addon filename and/ or description in tooltip 2010-08-29 23:49:38 +02:00
Paweł Forysiuk
1640aedd44 Make addons delete confirmation dialog more readable 2010-08-29 23:49:38 +02:00
Paweł Forysiuk
dc90ad18e9 Provide gui dialog for adding addons to user directories 2010-08-28 02:14:29 +02:00
Paweł Forysiuk
eee7cbcff9 Add button for deleting user addons 2010-08-28 01:59:54 +02:00
Paweł Forysiuk
49d249e6e1 Show full path to addon in tooltips 2010-08-28 01:46:17 +02:00
Christian Dywan
5a86115a9a Rename 'Minimize Tabs' to 'Show Tab Icon Only' 2010-08-23 19:38:11 +02:00
Christian Dywan
99a9cfc34c Show the Feed Panel after adding a new news feed 2010-08-23 19:38:11 +02:00
Christian Dywan
233ff2602d Switch to Tab Panel after activating it for the first time 2010-08-23 19:38:11 +02:00
Paweł Forysiuk
ac1ba277e4 Clean up redundant user addons item list copies in helper functions 2010-08-22 03:08:46 +02:00
Paweł Forysiuk
8bea9b586d Fix mistype in addons monitoring to enable watching userscript dirs 2010-08-22 03:07:39 +02:00
Christian Dywan
94fbf158f6 Remove conditional guards for sqlite 2010-07-17 21:31:29 +02:00
Dale Whittaker
0fcc460312 Handle news feeds with empty date and update them correctly 2010-07-15 00:06:15 +02:00
Christian Dywan
c3e145f540 Localize Vala extensions and mark strings for translation
The -include switch is passed to the compiler to work around
Vala failing to include gi18n.h first. This works for
clang and gcc at least.
2010-07-04 10:53:21 +02:00
Alexander Butenko
a04bf24b5e Properly disconnect add-tab on destruction in adblock 2010-06-30 22:41:32 +02:00
André Stösel
07053d49a0 Re-implement History List extension in Vala 2010-06-30 22:27:52 +02:00
Alexander Butenko
e7e2181858 Escape special chars in formhistory array keys 2010-06-30 21:09:55 +02:00
Alexander Butenko
f759fe921a Improve duplicate skipping logic in form history extension 2010-06-30 21:09:55 +02:00
Alexander Butenko
3d972f11e4 Skip '+' sign in adblock rules 2010-06-30 21:09:55 +02:00
Alexander Butenko
0d5a18b69c Skip values from the inputboxes with disabled autocompletion 2010-06-30 21:09:55 +02:00
Alexander Butenko
896cc75f57 Don't inject autosuggest bits where we dont need it 2010-06-30 21:09:55 +02:00
Christian Dywan
a25553edba Add Statusbar Clock extension to POTFILES.in 2010-06-26 22:11:13 +02:00
MonkeyOfDoom
09af931756 Disconnect tabs_minimized_add_tab_cb when deactivating 2010-06-19 22:37:46 +02:00
Alexander Butenko
633b7ed294 Inline functions in adblock for 0.5 percent speedup 2010-06-19 16:22:16 +02:00
MonkeyOfDoom
89e72b73d3 Add extension 'Minimize new Tabs'
Once it is activated the extension will minimize all newly opened
tabs by default.
2010-06-19 00:32:05 +02:00
MonkeyOfDoom
8cbdd61c97 Add extension 'Copy Addresses of Tabs'
The extension adds a menu item to copy the addresses of all tabs
to the clipboard.
2010-06-19 00:30:46 +02:00
André Stösel
0aa24037bd Connect tab switcher to child web view key events
The parent view will do its best to forward the focus to the
child web view, so  the tab switcher should listen to it.
2010-06-01 22:16:47 +02:00
Christian Dywan
c571a6394f Don't pass around KatzeNet instances anymore
The KatzeNet is always a singleton, no need to pass it around.
2010-05-25 19:03:01 +02:00
Enrico Tröger
bab6124cff Guard debug variables in Adblock with G_ENABLE_DEBUG 2010-05-15 01:06:17 +02:00
Christian Dywan
25a08b36ee Move construction of ExternalApplications inside the class 2010-05-15 01:06:17 +02:00
Christian Dywan
9241afa0db Implement FTP support in External Applications
For the moment 'gftp' is hardcoded for ftp://.
2010-05-13 01:06:58 +02:00
Arno Renevier
7c0e58a835 Refactor userscripts and userstyles as an extension 2010-05-02 11:53:05 +02:00
Christian Dywan
6a5585254a Implement gesture button setting and default to right 2010-04-29 02:31:11 +02:00
Christian Dywan
43baf4706a Tweak mouse gestures to properly support right button
We need to be more considerate when to indicate that button
signals were 'handled' and we need to popup the context menu
if we override the default handler.
2010-04-29 02:22:12 +02:00
Christian Dywan
0533e67902 Implement External Applications extension 2010-04-28 23:48:47 +02:00
Christian Dywan
3aad0189c4 Remove incomplete Javascript extension 2010-04-27 23:54:38 +02:00
Christian Dywan
7a7f4c6a44 Provide midori.vapi for App, Browser, Extension and WebSettings
With this API description extensions can be written in Vala. Mind
it is not complete yet, missing interfaces can be added later.
2010-04-27 23:49:45 +02:00
Christian Dywan
ccb60bb8d4 Only pick up .vala files if Vala is available 2010-04-25 23:39:00 +02:00
Christian Dywan
7e5dd2db32 Minimal support for tests and extensions in Vala 2010-04-25 00:11:57 +02:00
Christian Dywan
779c582058 Guard WebKitDownload to WebKitGTK+ 1.1.2 2010-04-24 23:59:07 +02:00
Christian Dywan
efc5252048 Revise MIDORI_ADBLOCK so 1 is parsing and 2 is timing
Huge amounts of console output affect performance, so timing
should be taken separately.
2010-04-10 00:58:15 +02:00
Christian Dywan
63a5eeb0f0 Output adblock debug if variable MIDORI_ADBLOCK set
If Midori is compiled with full debug mode, and the environment
variable MIDORI_ADBLOCK is set, Adblock will output a lot of
debugging information.
This spares testers from editing code. grep is recommended.
2010-04-08 21:39:05 +02:00
Christian Dywan
95358acc82 Handle https:// URIs in Adblock properly
We mark URIs as 'disabled' by replacing the : with a -. This
fails if there is an https:// URI and we want to restore it.

For clarity, the macros ADBLOCK_FILTER_SET and
ADBLOCK_FILTER_IS_SET are introduced to handle the details.
2010-04-06 02:41:29 +02:00
Arno Renevier
dc90c7f093 Use midori_view_get_web_view in extensions 2010-03-31 00:18:42 +02:00
Dale Whittaker
9607f2107e Take text from each feed element for tree and web view 2010-03-27 14:22:31 +01:00
Dale Whittaker
3f8b34853d Update year in Copyright headers 2010-03-25 23:06:38 +01:00
Dale Whittaker
181d62dc01 Don't skip CDATA section nodes in feeds 2010-03-25 23:01:46 +01:00
Dale Whittaker
a8c055bdbc Ignore navigation for clicks in news feeds 2010-03-23 20:27:00 +01:00
Christian Dywan
6496dd5403 Update tab panel colours in icon callback
Since Colorful Tabs now updates colors in the icon callback,
we also need to update in the icon callback.
2010-03-22 22:34:03 +01:00
Arno Renevier
9b9440d49e Use a 60 second timeout if format has no seconds 2010-03-22 21:52:06 +01:00
Samuel Creshal
3cbce9896b Implement page icon based tab colors
Colorful Tabs now uses the icon of a page as the basis for the
tab color, if it has one, otherwise falls back to the previous
address based hash.
The forground color is also adjusted for dark colored tabs.
2010-03-19 21:10:22 +01:00
Arno Renevier
0d27d6f17d Implement Status Clock extension 2010-03-19 20:50:34 +01:00
Samuel Creshal
8f23dcfd33 Disconnect tab callback when disabling Colorful Tabs 2010-03-04 02:08:49 +01:00
Peter de Ridder
6ad713c6d5 Look for the formhistory javascript dynamically 2010-02-16 00:59:42 +01:00
Peter de Ridder
b993cdc553 Add win32 specific linker flags for Midori extensions 2010-02-16 00:59:42 +01:00
Christian Dywan
c21807bc4a Use g_unlink for G_FILE_CREATE_REPLACE_DESTINATION with Glib < 2.20 2010-02-12 02:19:54 +01:00
Christian Dywan
8414836c76 Remove conditionals to disable Toolbar Editor on Hildon 2010-02-06 17:37:15 +01:00
Christian Dywan
458252d053 Localize 'Block image' and 'Block link' menuitems in adblock 2010-02-06 17:32:09 +01:00
Alexander Butenko
c550d36649 Implement an 'Edit rule' dialogue when blocking images 2010-02-03 18:58:07 +01:00
Alexander Butenko
27653d6670 Only connect liststore after populating the model with filters
We don't want to reload the rules for each row.
2010-02-03 18:30:48 +01:00
Alexander Butenko
de7818b7aa Don't cache local adblock filters, and remove disabled filter files 2010-02-03 18:26:44 +01:00
Alexander Butenko
ce43fb3c03 Rebuild formhistory script on reload and do not leak the script
1. Don't leak the script in formhistory_window_object_cleared_cb ()
2. Disconnect add-tab signal in the right place
3. Rebuild the base javascript code on extension reload
2010-02-02 21:32:20 +01:00
Alexander Butenko
62dac745d6 Rebuild adblock js after download a new filter file 2010-02-02 21:26:05 +01:00
Alexander Butenko
7b42792caf Prevent styles with a "'" character from breaking adblock 2010-01-26 22:07:57 +01:00
Enrico Tröger
8f37e3802e Always expand rows when trying to restore the selection 2010-01-20 07:19:11 +01:00
Enrico Tröger
3af420622c Restore selection in cookie manager after deleting items 2010-01-19 06:53:48 +01:00
Alexander Butenko
97a5eb0df2 Read cache asynchronously, use GOutputStream, plug a leak
1. We are now reading from the cache asyncronously. Fixing UI freezes.

2. Cache writing switched to GOutputStream. One open/ close per file

3. Plugged a leak of cache headers in web_cache_message_rewrite ()

4. We don't need the URI in web_cache_mesage_got_headers_cb ()
2010-01-17 22:56:41 +01:00
Alexander Butenko
57865955dc Simpler element hiding and some adblock optimizations
1. Less hungry and simpler blocked element hider

2. We are now also adding a context menuitem for uris in
preparation for creating rules from the web inspector

3. Removed old hack for blocked element hider

4. Element hider javascript fixes

5. Unit test for small sized rules

6. Removed unneeded WebKitWebView casts
2010-01-17 20:04:17 +01:00
Enrico Tröger
e6163a761f Only define adblock_prepare_urihider_js() if it is used 2010-01-15 07:07:00 +01:00
Alexander Butenko
9b01e48975 Tell the soup message it was finished to allow it to release memory 2010-01-14 02:23:00 +01:00
Alexander Butenko
bb4c381b43 Use a script to hide images and frames that are blocked 2010-01-14 02:19:38 +01:00
Enrico Tröger
27567de620 Guard image with #define to prevent unused variable warnings 2010-01-14 02:01:30 +01:00
Alexander Butenko
4dae65d802 Speedup adblock by removing greedy regex if we have 1 or 2 signatures 2010-01-14 01:52:43 +01:00
Christian Dywan
d536d90d33 Do not call xmlCleanupParser after parsing news feeds
This function is an aggressive means of releasing memory that may
leave libxml in an unusable state.
2010-01-13 06:52:42 +01:00