Commit graph

590 commits

Author SHA1 Message Date
Christian Dywan
9ca1271020 Implement MD5 and SHA1 Link Fingerprint support
If a URL has an embedded link fingerprint the checksum
and algorithm is shown in the download prompt. After a
file has been saved to disk a warning icon will be shown
if the checksum doesn't match and clicking the icon will
explain that the file is erroneous and not open it.

See http://mdhashtool.mozdev.org/lfinfo.html
2011-03-12 21:10:01 +01:00
Christian Dywan
02d095cae0 Check for 'rel' links should be case insensitive 2011-03-12 03:38:26 +01:00
Paweł Forysiuk
88f7b72526 Introduce thumb:// pseudo-uri to serve thumbnails from disk cache 2011-03-09 02:10:41 +01:00
Christian Dywan
fb9629c1aa Work around copying bug in WebKitGTK+
Fixes: https://bugs.launchpad.net/midori/+bug/707888
2011-03-06 18:13:54 +01:00
Christian Dywan
de0ede905f Focus the view on key press if nothing's focussed 2011-03-06 17:26:41 +01:00
Alexander Friesen
353924a117 Always links by number with Return and remove styles
Return is always required to confirm the typed number, which
is consistent and more usable with Control for new tab.

Hiding links now actually removes the extra spans.

Opening links in a new tab keeps the links visible.

Escape resets the typed digits.
2011-03-05 00:23:33 +01:00
Christian Dywan
0e30ea3779 Propagate URI changes and update Back, Forward actions
Fixes: https://bugs.launchpad.net/midori/+bug/725826
2011-02-27 01:48:06 +01:00
Tomasz Szatkowski
ddd660b45a Copy email addresses without mailto: prefix
Fixes: https://bugs.launchpad.net/midori/+bug/358650
2011-02-26 16:05:39 +01:00
Christian Dywan
3eba817d50 Move plugin list from about:plugins to about:version 2011-02-26 03:31:52 +01:00
Paweł Forysiuk
66544898fa Show 'No plugins' if there are no plugins installed
Also free the return values.
2011-02-24 23:26:55 +01:00
Christian Dywan
667c94389a Implement internal about:plugins page 2011-02-24 22:27:55 +01:00
Christian Dywan
ac7ce0f792 Move 'Menubar' menuitem down and make it 'Navigationbar'
The menu item that appears in the context menu if all toolbars
are hidden is easy to miss, so moving it to the bottom makes it
more visible. It should also show the Navigationbar.
2011-02-24 21:26:49 +01:00
Christian Dywan
997db05a9e Rename 'Download link destination' to 'Save as'
Fixes: https://bugs.launchpad.net/midori/+bug/699989
2011-02-21 19:42:48 +01:00
Paweł Forysiuk
00b116a940 Use page title for inspector window tile 2011-02-17 21:38:54 +01:00
Christian Dywan
d19396a065 Add hidden setting for close buttons on the left
This value can be changed by distributions using window
decorations on the left side.

Fixes: https://bugs.launchpad.net/midori/+bug/699972
2011-02-17 20:57:57 +01:00
Christian Dywan
f4875ceb7c Escape title to be set on error pages 2011-02-17 19:54:35 +01:00
Christian Dywan
296ede80f7 Append fallback icon instead of checking the theme 2011-02-15 21:32:08 +01:00
Christian Dywan
b55ab3afa9 Fallback to file icon if no MIME icon is found 2011-02-15 00:58:34 +01:00
Christian Dywan
6ebcc4e21c Translate explanation in about:version 2011-02-02 01:46:14 +01:00
Christian Dywan
2d4afde696 Make download folder and notifications obligatory 2011-02-02 01:31:16 +01:00
Christian Dywan
e8d2dc3ee7 Show error dialogue for invalid bookmark export filename 2011-02-02 01:31:16 +01:00
Christian Dywan
8f489ca872 Unify settings update and title assignment 2011-01-11 21:08:27 +01:00
Christian Dywan
7e00e760ba Allow image zoom if text and images can be zoomed 2011-01-05 19:21:50 +01:00
Alexander Butenko
1f15d17c5f Use existing event if available to ensure link URI
This partially resolves problems with Midori opening the
wrong link when opening tabs in the background.
2011-01-02 01:24:50 +01:00
Christian Dywan
9b3d90ec73 Always construct the child web view right away 2011-01-01 21:43:29 +01:00
Christian Dywan
6780ed8be3 Replace midori_view_new_with_uri with _new_with_title
The old function is actually being removed because it breaks
monitoring of page loading. It was only used internally so far.

Moreover a warning is now emitted when loading an URI before
adding a view to a browser.
2011-01-01 20:05:34 +01:00
Christian Dywan
6b38ed85cf Check if typed link number exists and check result 2011-01-01 19:25:21 +01:00
Christian Dywan
fcb4a3c3e0 Handle oddities in Russian keyboard layouts 2010-12-15 01:08:50 +01:00
Christian Dywan
f9b2a75ae4 Note on about:version that runtime versions are in brackets. 2010-11-30 18:15:33 +01:00
Christian Dywan
8cfc7c654f Use property proxy for custom print setting 2010-11-24 19:10:53 +01:00
Christian Dywan
97a7ae9955 Reference the hit test result before using it
It actually is owned by the WebKitWebView.
2010-11-23 22:59:19 +01:00
Christian Dywan
70de71d6a3 Do middle click and menu on tabs on button press
Doing close on middle click on a tab can cause the new tab
to be immediately closed because the mouse pointer happens
to be released under the tab after it appears.
2010-11-19 22:51:50 +01:00
Christian Dywan
f3831c5157 Turn view->memory into a static variable 2010-11-13 15:20:46 +01:00
Christian Dywan
61e51ea1d2 Cancel Find Links when pressing Escape key 2010-11-02 22:46:01 +01:00
Christian Dywan
a9244ad817 Use function to access web view and adjustments 2010-11-01 16:48:07 +01:00
Christian Dywan
985912a9cd Go back to conservative page next from 0.2.6
This reverts to behaviour as of commit c2be3d67cf.
2010-10-30 21:53:44 +02:00
Christian Dywan
80bd531d58 Always create a new style element for link find
Otherwise adding rules for link find on pages with
no stylesheets doesn't work.
2010-10-26 23:50:59 +02:00
Christian Dywan
95f2278542 Find links opens tabs with Control and Shift respectively 2010-10-26 23:04:22 +02:00
Christian Dywan
ad6905db4d Make link number style more robust
Use bold, small font, white background, 1 line high and displayed.

Mark attributes with !important to ensure the style is not
changed due to styling on the page.
2010-10-26 23:04:21 +02:00
Christian Dywan
8b7640731d Don't display link numbers at all instead of hiding 2010-10-26 23:04:21 +02:00
Christian Dywan
39253b94c5 Implement Find Links with '.', type number and Return
Inline Find is now ',' because '.' is common in some browsers
which have a Find Links feature.
2010-10-26 00:26:54 +02:00
Christian Dywan
ba161aeeae Don't show 'Add to Speed Dial' with no configuration
As it won't be saved, it's not helpful to offer it.
2010-10-24 23:48:58 +02:00
Christian Dywan
1e12cb208b Ensure action menu items don't show all 2010-10-24 21:06:26 +02:00
Christian Dywan
68c12e950e Slice allocations in addons, net, scrolled, transferbar 2010-10-21 21:09:01 +02:00
Christian Dywan
b25f27cd66 Add static keywords, fix #ifdefs and spurious lines 2010-10-20 23:48:36 +02:00
Christian Dywan
fc23eac478 Ask GIO for supported URI schemes
sokoke_external_uri supersedes hardcoded support for tel:
and callto: and notably doesn't count http(s).
2010-10-20 20:56:05 +02:00
Christian Dywan
26081c67f6 Expose midori_view_add_info_bar properly
All infobars are automatically removed if the location changes
or reloads now. The button arguments are dynamic. The infobar
look-alike is also closer to a real GtkInfoBar.
2010-10-20 01:24:43 +02:00
Christian Dywan
32988e55af Use accessors for window and allocation of a widget 2010-10-19 00:53:01 +02:00
Christian Dywan
5d7bbe6eb1 Plug leak of icon path when loading icons 2010-10-14 21:07:55 +02:00
Christian Dywan
54d037f689 Free script code in thumb_view_load_status_cb with g_free
Allocating and releasing must match.
2010-10-14 21:07:55 +02:00
Christian Dywan
89c0975e66 Present an infobar when an HTML5 database is saved
The infobar code is refactored into midori_view_add_info_bar
2010-10-14 01:37:10 +02:00
Christian Dywan
bcc622c456 Let private mode inherit preferences
Private mode should retain most preferences, while menus for
Bookmarks, Tools and Panel are hidden.

App mode now hides the navigationbar by default.
2010-10-13 23:41:11 +02:00
Christian Dywan
717bc948b0 Remove MidoriView::net property completely 2010-10-13 03:23:09 +02:00
Christian Dywan
eb0848e42b Present an infobar when a website asks for location
Based on a patch by Arno Renevier <arno@renevier.net>
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
120c5bf40f Move app spawning to sokoke_spawn_app and use in MidoriView 2010-10-10 13:02:50 +02:00
Christian Dywan
579108e4e6 Don't leak the inspector_view in showing and detaching 2010-10-05 21:43:34 +02:00
Christian Dywan
4c90286e09 Make sure there are search engines before populating the menu 2010-09-24 23:35:01 +02:00
Christian Dywan
e1ae60627e Don't treat « or » as sub page indicators 2010-09-22 23:56:30 +02:00
Christian Dywan
5bdf376487 Ensure link URI is updated before it is used
Apparently the URI obtained from hovering-over-link can be
mangled, so a # would be interpreted as a fragment identifier.
2010-09-21 00:08:10 +02:00
Christian Dywan
648befe7ca Implement and use midori_view_new_with_uri
The function provides an optimised and quick way to creating
visible views with uri, title and settings. This is how virtually
all views are created.
2010-09-17 22:42:52 +02:00
Christian Dywan
d34da1c500 Remove pointless FIXME and TODO comments from Midori classes 2010-09-12 20:23:39 +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
7d3fa2a478 Move WebKitGTK+ 1.1.6 guards to disable delayed pages 2010-08-28 01:43:44 +02:00
Christian Dywan
7d049555a5 Explicitly reset 'delay' status when reloading or changing location 2010-08-23 20:08:43 +02:00
Christian Dywan
5a86115a9a Rename 'Minimize Tabs' to 'Show Tab Icon Only' 2010-08-23 19:38:11 +02:00
Christian Dywan
bae41b45a8 Make 'Inspect Element' always show the inspector
Without scripts enabled, this doesn't happen implicitly.
2010-08-14 21:12:02 +02:00
Christian Dywan
0870196942 Show tooltip text on tab icon, not only the label 2010-08-07 15:30:56 +02:00
Alexander Butenko
e2ac49a76d Dont store about:* pages in history, Reset history step counter 2010-07-24 13:53:57 +02:00
Alexander Butenko
fd48f850a3 Emmit uri signals after after item uri is set 2010-07-24 13:53:12 +02:00
Alexander Butenko
46c80ad2d1 Create MidoriView proxy item during initialization 2010-07-23 21:16:46 +02:00
Alexander Butenko
74278e6449 Properly create proxy item and cleanup history agregation 2010-07-22 00:21:03 +02:00
Alexander Butenko
3aa48c34b5 Stop listening to notify::uri signal. load-status is enough 2010-07-22 00:09:54 +02:00
Christian Dywan
94fbf158f6 Remove conditional guards for sqlite 2010-07-17 21:31:29 +02:00
Christian Dywan
57683d45b1 Use no border (shadow) on views by default 2010-07-16 21:23:11 +02:00
Christian Dywan
3336938418 Always toggle source mode except for source code views 2010-06-29 07:36:45 +02:00
Alexander Butenko
08dab16bc2 Refactoring of bookmarks add functions 2010-06-26 17:24:53 +02:00
Christian Dywan
bc6849494d Add 'Open in New Window' to page context menu
While we're at it, the label of the according tab menu item
should be the same.
2010-06-21 22:19:59 +02:00
Christian Dywan
61add83eeb Iterate links and anchors for next/ previous labels 2010-06-11 21:36:18 +02:00
Christian Dywan
fd2e0b7aed Implement MIDORI_UNARMED variable for 'dry run' 2010-06-07 22:01:41 +02:00
Christian Dywan
997d8df49c Ensure the web view of the thumb view is realized 2010-06-05 00:50:06 +02:00
Christian Dywan
57b05a458e Replace {enter_dial_size}, not {enter_dial_width} 2010-06-03 22:21:55 +02:00
Peter de Ridder
4422f640cb Combined speed dial resize and thumbnail sizes 2010-06-02 02:09:43 +02:00
Christian Dywan
fa4de7b723 Connect view *after* mime-policy-decision-requested
In order to allow extensions to override the MIME handling,
we need to be late in the order.
2010-06-01 22:19:11 +02:00
Tsahee Zidenberg
ea7e627e3b Implement loading delayed pages at startup
Each view has a meta value 'delay' which indicates whether it be
loaded or needs to be loaded manually before it shows content.

One way to trigger this is that Midori crashes and if it is
configured to 'Show last open tabs', all tabs will now be
delayed. To allow Midori to safely open without crashing again.

The other way is to change the 'Load on Startup' preference to
'Show last tabs without loading'. This causes all tabs restored
from the session to be delayed.

One interesting aspect is that it is possible to have delayed
tabs, use 'Show last open tabs' and tabs will remain as they are,
so delayed tabs will be delayed over following sessions.
2010-06-01 00:12:30 +02:00
Christian Dywan
c2be3d67cf Recognize more characters as next page and be more tolerant 2010-05-26 22:48:33 +02:00
Christian Dywan
dc047272d7 Always bring the inspector window in the foreground 2010-05-25 22:24:41 +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
Christian Dywan
6c4d94942f Render stock:// as pixbufs and pass as data URIs
Stock icons do not match filenames in many icon themes and the
appropriate sizes may not be available. Thus we now always
render the icon through the theme engine and encode it as a
data URI with BASE64/ PNG.

As a side effect, we use stock sizes now instead of pixel sizes,
where 1 means menu size, 4 means button size and 6 dialog size;
the value 16 is translated to 4 to keep existing files working.
2010-05-21 02:23:15 +02:00
André Stösel
7753db46e0 Pass the frame to midori_view_load_alternate_string
The frame where an error occurs may not be the main frame, and
coincidentally there is a race condition where the main frame
isn't valid, so this actually reolves a crash.
2010-05-20 23:21:55 +02:00
Peter de Ridder
84d4865e22 Allow custom shortcut and column count in speed dial 2010-05-19 00:58:03 +02:00
Christian Dywan
be0fe03eee Refactor error display into midori_view_display_error
Further more midori_view_load_alternate_string now abstracts the
different ways to load data in different WebKitGTK+ versions.
2010-05-16 02:02:09 +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
Christian Dywan
d522efa23c Hide the tab label properly if it's minimized initially 2010-05-09 00:30:24 +02:00
Christian Dywan
3b9a4a5705 Hide the tab label if it's minimized at creation 2010-05-09 00:27:02 +02:00
Christian Dywan
743b264a72 Rework rendering of raw XML as source
We need to be stricter with what counts as raw XML, for instance
not SVG images. And we shouldn't break explicit source view.
2010-05-07 20:31:41 +02:00
Christian Dywan
fb72bcfeae Unify content type/ MIME type handling and plug leak 2010-05-07 20:17:53 +02:00
Christian Dywan
affde90e2c Consistently focus the view, which propagates
Rather than trying to determine and focus the web view
from different places, the parent view should simply
propagate focus by default. The child needs to be
constructed implicitly if focus comes in early.
2010-05-06 22:49:47 +02:00
Christian Dywan
4b94b63f70 Base KatzeThrobber on GtkSpinner if available 2010-05-02 16:11:18 +02:00
Christian Dywan
001d9e463a Rely on WebKitWebView::icon-uri for icon discovery 2010-05-02 12:19:37 +02:00
Christian Dywan
efa81643c5 Expose midori_view_populate_popup for use in extensions 2010-04-29 02:19:20 +02:00
Christian Dywan
34984c7ac1 Fix gtk_widget_set_no_show_all and g_filename_to_uri calls 2010-04-23 00:02:46 +02:00
Christian Dywan
aade642897 Conditionalize SSL validation on libsoup 2.29.91
The flag in the SoupMessage to verify secure connections is
only available in recent versions of libsoup. So we continue
to be oblivious to certificates with older versions.
2010-04-14 22:41:24 +02:00
Christian Dywan
2507f971ca Validate SSL against root certificates
If one of two known root certificate files is available, we
enable certificate validation, otherwise a warning is emitted.
Not using validation means that we trust any certificate. We
should consider doing the opposite.

The new property MidoriView:security is set during load
and indicates the security status. midori_view_get_security can
be used to determine the status later on.

midori_location_action_set_security_hint is implemented to
present security status visually. For now, this only changes
the icon, we need to find a more visible solution.

MidoriBrowser updates the security hint for the current view in
_midori_browser_update_interface.
2010-04-14 04:20:56 +02:00
Christian Dywan
b4a7bb928b Use view source mode for XML that isn't XHTML 2010-04-14 03:55:19 +02:00
Christian Dywan
2ba9b1b65f Remove bookmark, open and image in window from Link context menu 2010-04-14 03:55:18 +02:00
Christian Dywan
476f64e9bc Pass the correct parent in the web-view-ready callback
This was overlooked when changing the packing of the view.
2010-04-02 19:14:22 +02:00
Christian Dywan
f2f0f16dd2 Update uses of deprecated GTK+ macros and API 2010-04-02 18:54:29 +02:00
Arno Renevier
c3238d7c12 Change MidoriView into a subclass of GtkVBox
This change makes it possible to pack widgets, notably info bars,
into a MidoriView.
2010-03-31 00:18:42 +02:00
Arno Renevier
3e67ce525f Implement midori_view_get_web_view function
This provides access to the child web view even if we change
the internal packing of MidoriView.
2010-03-31 00:18:41 +02:00
André Stösel
555f7a57e4 Implement sokoke_resolve_hostname
sokoke_prefetch_uri is extended take a callback and user data.

sokoke_resolve_hostname is implemented for resolving hostnames
based on a maximum timeout.

sokoke_magic_uri resolves localhost and uris with a / to verify
if there is a local domain, otherwise falls back to search.

Thanks to Andy Kittner <andkit@gmx.de> for input on proceeding
the event loop while resolving asynchronously.
2010-03-17 02:20:58 +01:00
Christian Dywan
ba7f73891f Also update icon URI when a new icon was loaded 2010-03-16 00:26:38 +01:00
Samuel Creshal
f4b4c53166 Always pass view pointer to icon callback 2010-03-15 17:45:00 +01:00
Christian Dywan
25bbea02e2 Use a boolean 'special' to identify special pages
We used to load special pages, such as error pages as 'blank'
pages internally and try to identify them indirectly. This
breaks navigating back to and forward to such pages and makes
it difficult to allow stock icons for them.

Now a boolean 'special' is used which is reset on any
navigation attempt and any finished load. It is set only
if a special page is loaded.

This should make icons in error pages work reliably.
2010-03-13 16:46:45 +01:00
Christian Dywan
c7ee74610e Normally reload error pages with WebKitGTK+ 1.1.14
For older versions we used a workaround for reloading
special pages like error pages. This is not needed
with recent versions of WebKitGTK+.
2010-03-13 15:07:02 +01:00
Christian Dywan
b5f8334360 Merge KatzeNet icon loading into MidoriView
MidoriView is the only place where icons are and should be
loaded, elsewhere we just use cached icons.

midori_view_get_icon_uri allows distinguishing whether a view
has an icon or a default icon, and using the filename.
2010-03-11 23:30:54 +01:00
Christian Dywan
044f1f96fb Only middle click search if the selection contains :// or Alt
Accidentally searching is annoying. Presumably when a proper
address is selected it was intentional.
2010-03-03 00:31:35 +01:00
Christian Dywan
fe203524fe Implement Scroll actions, defaulting to Vim direction keys 2010-03-01 00:24:46 +01:00
Peter de Ridder
aef84bfa02 Look for MidoriView resource files dynamically 2010-02-16 00:59:43 +01:00
Christian Dywan
713091134f Handle search engines in MidoriBrowser and simplify sokoke_magic_uri 2010-02-10 19:52:12 +01:00
Christian Dywan
4d05be6a5e Do allow internal icons for views with an unreachable URI 2010-02-03 22:18:51 +01:00
Christian Dywan
4f9d726c55 Merge ident-string setting into user-agent for old and new WebKit
Since the existence of two properties causes confusion among users
we merge the two, and actually remove ident-string.
2010-01-31 22:10:24 +01:00
Christian Dywan
1a0573e2f3 Use gtk_widget_is_toplevel if available instead of the macro 2010-01-29 22:54:42 +01:00
Christian Dywan
88becdd669 Destroy the thumb_view with WebKitGTK+ <> 1.1.14 2010-01-28 23:28:37 +01:00
Christian Dywan
3a949ac407 Use about:blank as speed dial resource root with WebKitGTK+ 1.1.14 2010-01-27 23:17:15 +01:00
Christian Dywan
82cb12b605 Revise and unitfy behavior modulating modifier handling
We define modfifier macros that indicate whether a modifier
indicates a new window, new tab, background tab or scrolling.

Modifier checks in the address entry, the search entry and view
now use the same consistent modifiers.
2010-01-24 11:00:52 +01:00
Christian Dywan
8dbc86361d Implement 'Close other tabs' menu item in tab context menu 2010-01-14 02:49:19 +01:00
Christian Dywan
dab3505e0c Store argument vector and display it in about:version 2010-01-12 23:34:10 +01:00
Christian Dywan
a4a9cd91d3 Use an alignment the image size request to adjust close buttons 2010-01-10 22:02:46 +01:00
Christian Dywan
dba473e069 Move the logo on special pages to the background 2010-01-08 00:42:23 +01:00
Christian Dywan
139132afbd Implement about:version page with important build configuration aspects 2010-01-08 00:16:55 +01:00
Christian Dywan
b8037dc906 Ctrl + Right-click to suppress javascript button handling
Pages like Google Maps handle right-clicks and either provide
their own sort of context menu or just disable the menu. We
want the option to always get our proper menu.
2010-01-04 23:42:30 +01:00
Christian Dywan
bebacc8565 Determine whether we can view the source via g_content_type_is_a 2010-01-03 22:26:15 +01:00
Christian Dywan
83f68c90d9 Use mnemonic s instead of C for 'Copy Link destination'
It can conflict if Copy is visible due to a selection.
2010-01-02 22:03:32 +01:00
Christian Dywan
3163c659e5 Implement 'Open Link as Web A_pplication' in link context menu 2010-01-02 21:59:34 +01:00
Christian Dywan
578f74a308 Merge compat.h into sokoke and remove gtk_show_uri implementation 2010-01-01 23:24:03 +01:00
Christian Dywan
311a5a8a1b Store searches with tokens in the completion as a distinct item
Currently searches won't be stored persistently in the database.
2010-01-01 22:47:24 +01:00
Christian Dywan
fc7689f906 Move DNS prefetching into the core
The feature is going to be included with WebKitGTK+ and
having it in the core allows us to prefetch bookmarks as well.
2010-01-01 18:16:55 +01:00
Christian Dywan
df6f4a16b8 Show error message if bookmarklet/ javascript: fails 2009-12-31 05:15:24 +01:00
Enrico Tröger
9183f8e16d Connect callbacks for gtk_widget_destroy where signature differs
Apparently dependent on architecture and compiler, mismatching
callback signatures can cause segmentation faults.
2009-12-29 23:49:10 +01:00
Christian Dywan
b973527239 Remove SelectionSourceView action stubs
The web inspector is more than good enough for inspecting select
parts of a page.
2009-12-27 17:05:40 +01:00
Christian Dywan
2d80e60106 Include 'Inspect element' in all menus and show Copy in link menus 2009-12-27 17:02:32 +01:00
Christian Dywan
b45fe5cca2 Implement Next and Previous buttons and add to the default toolbar 2009-12-27 13:41:37 +01:00
Christian Dywan
be5c679b39 Optimize icon handling in MidoriView and use Find for blank page
We return early where appropriate and use icon names when possible.
2009-12-26 15:20:56 +01:00
Christian Dywan
fc8145aa41 Add workaround for wrong context menus in forms and certain links
There is no API currently to tell if the pointer is over a form
control and there seem to be cases of wrongly reported context.
2009-12-23 23:13:25 +01:00
Christian Dywan
112966fe67 Implement web inspector attaching/ detaching properly 2009-12-23 22:01:42 +01:00
Christian Dywan
7801ecfeb5 Return TRUE when starting inline find, to prevent inserting . or / 2009-12-23 15:24:51 +01:00
Alexander Butenko
045cc81b45 Use g_access instead of g_file_test consistently 2009-12-19 11:28:46 +01:00
Christian Dywan
18ec1f25cb Add primitive Private Browsing based on Midori web app mode
Essentially it's just an instance of Midori that doesn't load or
write any preferences or personal data. The main drawback is that
it doesn't load any extensions either.
2009-12-12 21:56:11 +01:00
Christian Dywan
4f5262df42 Make internal link element search a truly anonymous function 2009-12-07 22:31:43 +01:00
Christian Dywan
427ae90f08 Try to search for it, if middle click open encounters a non-URI 2009-12-07 20:38:02 +01:00
Christian Dywan
565e32599e Use icon names for search engines directly instead of pixbufs 2009-11-29 14:09:28 +01:00
Christian Dywan
1d68dc9fb7 Implement and optimize for portrait mode support for Fremantle
Listen to accelerometer movement.
Hide tool items in portrait mode.
Omit Homepage and View Source from app menu.
Include Compact Add, View Source and Fullscreen in context menu.
Hide buttons in portrait mode in preferences.
2009-11-29 14:09:28 +01:00
Christian Dywan
76cf21146d Guard midori_web_view_menu_background_tab_activate_cb for WebKitGTK+ 1.1.15 2009-11-25 23:42:09 +01:00
Christian Dywan
d02d1db97f Support tel:, callto: and refactor MIME supporting (including Hildon) 2009-11-24 23:54:29 +01:00
Christian Dywan
34e02640cf Do not treat URIs passed externally like files, pass them as they are 2009-11-21 02:35:14 +01:00
Christian Dywan
3e5937fe33 Use an unknown content type if GIO fails to determine the type 2009-11-20 01:34:16 +01:00
Christian Dywan
427a482033 Only use internal res:// server with WebKitGTK+ < 1.1.14 2009-11-19 23:14:48 +01:00
Christian Dywan
83f07d7de9 Allow reloading regardless of whether a load is already in progress 2009-11-18 19:36:37 +01:00
Christian Dywan
fd7d778e0c Remove sokoke_widget_popup and replace all call sites 2009-11-15 18:21:59 +01:00
Christian Dywan
6e6f6e867a Remove sokoke_image_menu_item_new_ellipsized 2009-11-15 17:58:43 +01:00
Christian Dywan
fc10f156d2 Display Open Link in Foreground/ Background Tab 2009-11-15 01:55:59 +01:00
Christian Dywan
cc7bc356e8 Open all links in the current tab if Open new pages in: Current Tab is set
There is a small flaw in that we also open all windows opened by scripts
in the current tab and we don't treat popup windows specially.
2009-11-10 22:01:54 +01:00
Woo Youngho
657822c15c Add Korean encoding to the available of character encodings 2009-10-31 22:51:35 +01:00
Christian Dywan
d550d2c520 Hide permanently unavailable actions instead of disabling them 2009-10-31 22:43:58 +01:00
Christian Dywan
9c9165c3f9 Assume selections containing :// are links of some kind 2009-10-28 22:55:18 +01:00
Christian Dywan
c9dc0c5d55 Make midori_view_get_snapshot a public function 2009-10-27 22:58:11 +01:00
Christian Dywan
552c99cd56 Show script, image and plugin options and views source in app menu 2009-10-26 18:08:54 +01:00
Christian Dywan
09498f2473 Initialize icon theme in midori_view_update_icon to avoid warning 2009-10-23 18:07:19 +02:00
Christian Dywan
421460741d Move midori_web_view_set_clipboard inside 1.1.15 guards 2009-10-22 22:59:02 +02:00
Christian Dywan
4257bd2bbc Add Undo close tab to the tab context menu
It is very useful and some people who rarely use the page
context menu will look for it in the tab menu.
2009-10-22 22:54:52 +02:00
Christian Dywan
ce5c6ec91b Move the version check for res:// handling where it belongs 2009-10-22 02:20:27 +02:00
Christian Dywan
f875144aa3 Handle res:// and stock:// with resource request if available
This makes these URIs functional in case of network issues.
2009-10-22 02:20:27 +02:00
Christian Dywan
cbd0668fd0 Handle load-error in the view late so it can be overridden 2009-10-22 02:20:27 +02:00
Christian Dywan
0cdcefd4e8 Make all Copy items in the context menu also use primary clipboard 2009-10-22 02:20:27 +02:00
Christian Dywan
ecde50cb31 Fix conflicting mnemonic in link/ image context menu 2009-10-14 23:35:31 +02:00
Christian Dywan
c49a7d1e04 Keep the thumbnail view around to avoid a WebKitGTK+ bug
The thumbnail view will be destroyed when the tab is closed, so
it's a minor memory surplus if a user actually opens many
speed dial pages.
2009-10-14 21:29:04 +02:00
Christian Dywan
847f18f643 Implement tap and hold with emulated motion and button click events
There is no pointer movement on a touchscreen, so we need to pretend
there is, to trigger a proper context menu.
2009-10-13 22:58:50 +02:00
Christian Dywan
8a9599d5a9 Hide redundant items from the default context menu on Hildon 2009-10-13 02:40:38 +02:00
Christian Dywan
8fdb284b54 Implement Compact Add button, and readjust the Hildon toolbar
Actions AddNewsFeed and AddDesktopShortcut are introduced and the
toolbar layout for Hildon is changed.

Desktop shortcuts are not implemented yet.
2009-10-12 23:06:04 +02:00
Christian Dywan
123475d6ea Don't advertise zooming when having an image open
Images cannot be zoomed.
2009-10-12 13:17:53 +02:00
Christian Dywan
fa8f109da9 Conditionalize restoring of the scrolling position
Ensure that we differentiate an unset value from a valid value
as well as having restored the position already so we don't
accidentally restore a wrong position.

Restoring after having loaded a page is still not ideal but there
doesn't seem to be a better way at this point.
2009-10-08 20:56:24 +02:00
Christian Dywan
c624048c21 Enable integrated page setup combo box for printing 2009-10-05 20:52:34 +02:00
Christian Dywan
7aaf59ec9a Format addresses nicely, with no percents and no punycode 2009-10-05 20:50:08 +02:00
Christian Dywan
a6ee2320e8 Add Copy to the refactored context menu 2009-10-02 00:00:00 +02:00
Christian Dywan
1535bc8970 Show 'Send a message to <mail address>' when hovering email links 2009-09-30 23:55:39 +02:00
Christian Dywan
037be4dda4 Offer 'Send message to <mail address>' for selections 2009-09-30 23:45:02 +02:00
Christian Dywan
96093d9067 Implement drag (finger) and kinetic scrolling with KatzeScrolled
The feature is primarily interesting for mobile devices and
by default enabled with gtk-touchscreen-mode.
2009-09-28 22:12:41 +02:00
Christian Dywan
f294d79a74 Show "Menubar" menu in context menu if menubar and navibar are hidden
It happens that users hide all toolbars and don't find a way to make
them visible again. A menu item will be there for this case.
2009-09-26 22:19:34 +02:00
Christian Dywan
55a2ecf710 Enable new context menu code with WebKitGTK+ 1.1.15 afterall
To avoid regressing we keep the hacked document menu for now
and add a small improvement to fix image context menus with
older WebKitGTK+ versions.
2009-09-26 22:19:34 +02:00
Christian Dywan
1ead8e8886 Save back and forward history in the session (disabled) 2009-09-26 22:19:34 +02:00
Christian Dywan
d5ed3e9b28 Reset the statusbar text (in the location) when leaving the view 2009-09-23 02:10:08 +02:00
Christian Dywan
d26113fa1e Bump new context menu handling to WebKitGTK+ 1.1.16
The API in 1.1.15 is not sufficient to implement the context menu
without regressions.
2009-09-21 23:49:42 +02:00
Christian Dywan
ebb3b5f374 Fix build with WebKit < 1.1.14 2009-09-20 21:49:57 +02:00
Christian Dywan
72ba3a700b Implement Ask for destination folder
The option determines whether 'Save image' and 'Save link destination'
in the context menu prompt for a location or not.
2009-09-20 21:23:52 +02:00
Christian Dywan
d73ccf2c3f Forward mailto: links to external default application 2009-09-20 20:56:52 +02:00
Christian Dywan
0250d762c1 Implement menu items after refactoring the context menu changes 2009-09-20 17:26:28 +02:00
Christian Dywan
eaba9f0acf Improve context menu and middle click pasting using hit test result 2009-09-19 04:06:44 +02:00
Christian Dywan
9d1fdd7a05 Remember the scrolled positions of views 2009-09-16 23:37:39 +02:00
Christian Dywan
06bd549cb1 Lookup page icons via javascript 2009-09-16 03:06:09 +02:00
Christian Dywan
f65b87f05f Fix a misplaced #endif that breaks WebKit < 1.1.14 builds 2009-09-10 15:57:59 +02:00
Christian Dywan
d1b672068b Add Undo and Redo menu items to the menubar and context menu 2009-09-10 02:36:26 +02:00
Christian Dywan
2bff26f90a Don't middle click open when there's an editable
This is still not a complete solution but better than before.
2009-09-04 23:37:00 +02:00
Christian Dywan
f259d082f2 Say 'Error - URI' in place of 'Error' in the title
When several pages fail at the same time, for instance due to
network issues, it can be important to tell those pages apart.
2009-09-02 23:58:53 +02:00
Christian Dywan
b4a6de2e96 Show Print background images option in print dialog 2009-08-24 23:30:09 +02:00
Christian Dywan
6fac0fa22c Do not make the inspector window transient 2009-08-24 23:30:08 +02:00
Christian Dywan
74457cfd75 Always show news feed icon, and show URI if no aggregator was specified 2009-08-14 23:28:18 +02:00
Christian Dywan
4f0cb14f2b Avoid a warning in case the speed dial head isn't available
Ideally we wouldn't depend on a file for essential data, for
now we ignore it.
2009-08-08 23:52:51 +02:00
Christian Dywan
49bd5762fc Show the view when duplicating a tab 2009-07-31 00:52:05 +02:00
Christian Dywan
0057f32f1e Apply URI magic when opening selected text in a tab 2009-07-30 23:30:07 +02:00
Christian Dywan
d0d0b3bba7 Ellipsize titles and show tooltips in the tab panel 2009-07-27 03:40:38 +02:00
Christian Dywan
b478db85ab Enforce icons for webpage menu items and search menu items 2009-07-25 23:06:17 +02:00
Christian Dywan
414f9412b8 Add a New Tab menu item to the tab context menu 2009-07-22 23:56:16 +02:00
Christian Dywan
7192fa38f9 Implement "minimized" views, with a context menu option
The flag is saved as meta data of the proxy item. A new signal
meta-data-changed is implemented in KatzeItem to allow the view
to update the tab state as the meta data value is changed.
2009-07-22 01:49:09 +02:00
Christian Dywan
7a3535afac Load data files from system data dirs
A new helper function in sokoke is added to keep the code simple.
2009-07-20 09:10:53 +02:00
Christian Dywan
143ec96581 Don't do LRE title trick on Win32, it doesn't work as expected 2009-07-20 07:49:04 +02:00
Christian Dywan
35f11238a4 No Print or Reset Zoom in context menu, but Print in compact menu 2009-07-17 19:37:49 +02:00
Christian Dywan
3f62d9e0e6 Add Duplicate Tab to tab context menu 2009-06-30 22:54:55 +02:00
Christian Dywan
c76a468d16 Refactor tab context menu into public midori_view_get_tab_menu 2009-06-27 23:52:48 +02:00
Christian Dywan
85cdadcdee Implement a basic context menu for tab labels 2009-06-25 01:02:01 +02:00
Christian Dywan
eb98806722 Add Encoding menu to the context menu 2009-06-22 22:18:16 +02:00
Christian Dywan
35ef1f7485 Add zooming items to the context menu 2009-06-22 21:29:39 +02:00
Christian Dywan
7e01ea42df Remove Preferences and Menubar items from the context menu 2009-06-22 21:27:52 +02:00
Christian Dywan
75e3dae39a Implement a tree view of open tabs in the Tab Panel 2009-06-21 19:30:51 +02:00
Christian Dywan
18fa1d0fa3 Use an index to iterate news feeds to avoid compiler warnings 2009-06-19 03:06:22 +02:00
Christian Dywan
4c3ac6f86f Remove now unused speed dial menu item callback 2009-06-19 03:03:06 +02:00
Christian Dywan
6e2f1db63b Use action proxies for context menu items that correspond to actions 2009-06-19 02:58:06 +02:00
Christian Dywan
6a38cb7ed6 Add Menubar and Preferences to the default context menu 2009-06-19 02:36:36 +02:00
Christian Dywan
2834db080b Always show Open in Download dialogues, regardless of the file type
Just too often the reported MIME type is wrong or undetermined, so
we give the user the opportunity to know better.
2009-06-13 03:43:49 +02:00
Christian Dywan
491b89bcb3 Adjust mnemonics to not conflict when used in the same context 2009-06-11 23:57:42 +02:00
Christian Dywan
ce455c2986 Disable thumbnails in tab label tooltips
For now they aren't acceptable because they effectively slow
switching tabs with the mouse wheel down significantly.
2009-06-08 20:46:53 +02:00
Michael Opitz
891d89e3fd Propagate button press event explicitly from the view
Apparently the button events tend to be stuck and not properly
propagated, so we resort to emitting the signal ourselves.
2009-06-07 00:48:19 +02:00
Christian Dywan
fb316e7873 Use MDATA instead of DATA to avoid naming conflict
The header file objidl.h on Windows uses DATA in a different way,
so we need to avoid that name.
2009-06-06 06:22:35 +02:00
Christian Dywan
e9ee1bcfbe Render tab tooltip thumbnails smaller and a lot faster 2009-06-04 01:00:50 +02:00
Christian Dywan
28b9571444 Special case reloading speed dial views 2009-06-02 19:05:42 +02:00
Christian Dywan
af25a8bc0f Show the title in tab tooltips if available, not the URI 2009-06-01 19:47:14 +02:00
Christian Dywan
ec4a10c385 Show Open in download dialogue only with known file types 2009-06-01 19:45:10 +02:00
Christian Dywan
842a83d481 Implement a Save As button in the download dialogue 2009-06-01 19:33:44 +02:00
Christian Dywan
1bd94a4d28 Show thumbnail tab tooltips with Gtk 2.12 if speed dial is enabled 2009-06-01 09:35:16 +02:00
Enrico Tröger
1dee538e41 Revisit inline find bindings to support the numpad '/' key 2009-05-31 03:43:15 +02:00
Christian Dywan
a2d89bc37b Load thumbnails when needed and not from a filename
We actually pack views solely needed to take snapshots in the
notebook of the parent browser but try to keep them hidden.
2009-05-28 02:44:24 +02:00
Christian Dywan
faae6e9b40 Move midori_view_get_snapshot to MidoriView 2009-05-27 23:38:51 +02:00
Christian Dywan
5bf2662bad Don't re-implement New Window in context menus, it just works
This in fact prevents a second window from being opened.
2009-05-26 07:50:37 +02:00
Christian Dywan
441db87647 Don't show 'Add to speed dial' on blank pages 2009-05-23 00:16:39 +02:00
Christian Dywan
16912f4cdf Implement a hack to keep the text direction left-to-right 2009-05-22 04:01:56 +02:00
Christian Dywan
1b094dda75 Replace FindQuick with direct '.' and '/' search hotkey support
Using an action for a single character turned out to be a bad idea
and rather than trying to work around it, we implement '/' and '.'
hotkeys directly in the view.
2009-05-18 22:40:13 +02:00
Christian Dywan
7fc6c46c9a Allow WebKit to catch key presses first
If we connect to key presses after WebKit processes them this
resolves the conflict between hotkeys and inline search.
2009-05-18 02:43:56 +02:00
Christian Dywan
907f7a72ce Implement Open new pages in: New window preference 2009-05-17 20:29:31 +02:00
Christian Dywan
c8493b4c04 Treat "about:blank" and "" equally in midori_view_set_uri
This solves the problem of open speed dial tabs in the session
coming back as blank tabs after a restart of Midori.
2009-05-17 00:01:52 +02:00
Jean-François Guchens
0717e42458 Protect speed dial against quoting in titles 2009-05-15 23:49:01 +02:00