Commit graph

1781 commits

Author SHA1 Message Date
Christian Dywan
9d3c884194 Implement midori_browser_get_proxy_items
This supersedes midori_browser_get_proxy_array as a means to
access the KatzeItem* items. The new name is clearer.
2010-04-25 23:38:59 +02:00
Christian Dywan
d2d5086e3b Unset save file dialog when it is destroyed
If the window manager closes the dialogue rather than one of the
buttons, it is destroyed implicitly.
2010-04-25 00:57:21 +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
0d4b041de3 Security with background color and secondary icon 2010-04-21 02:47:21 +02:00
Christian Dywan
aaf0d4b395 Guards around midori_browser_add_download_item
The function is guarded already but of course the declaration
needs to be guarded as well.
2010-04-20 21:38:02 +02:00
Christian Dywan
999af1d164 Fix use of priv in GtkIconEntry code 2010-04-17 01:42:09 +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
586469fa73 Only hide find implicitly if invoked by typing, . or / 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
f71e86d879 Update copyright in --version and about dialogue 2010-04-10 00:58:15 +02:00
Christian Dywan
130eb0e46a Make the license in the about dialogue localizable 2010-04-10 00:58:15 +02:00
Christian Dywan
1cdd7cc643 Add an i18n comment for Clear Private Data dialog
Since there is a button with the same wording, it is good to
point out the difference.
2010-04-08 23:54:25 +02:00
Christian Dywan
5146e5182c Add an explaining i18n comment for 'Reset Midori...' 2010-04-08 23:51:52 +02:00
Christian Dywan
b389c5bcde Refer to regular expression as PATTERN like grep 2010-04-08 23:27:04 +02:00
Christian Dywan
51b1f87400 Reindent author and license definitions 2010-04-04 21:38:16 +02:00
Christian Dywan
82ee513a96 Reindent entries, toggle_entries, encoding_entries 2010-04-04 21:38:16 +02:00
Christian Dywan
23b093a248 Reindent actions in Tools menu in MidoriBrowser 2010-04-04 21:38:16 +02:00
Christian Dywan
2b66adabf2 Reindent ui_markup definition in MidoriBrowser 2010-04-04 21:38:16 +02:00
Christian Dywan
bde7495e6c Implement -b, --blocked-uris command line option
Using a regular expression of blocked URIs makes it possible to
restrict the locations that can be visited. Any URI matching
the expression will be replaced with "http://.invalid".

The option works in --app and normal mode.
2010-04-04 01:43:56 +02:00
Christian Dywan
e886293ebf Implement 'Proxy type' preference which can be Auto, HTTP or None 2010-04-02 20:41:39 +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
Christian Dywan
12b4859dc7 Use gtk_widget_get_visible rather than GTK_WIDGET_VISIBLE 2010-04-02 18:38:56 +02:00
Christian Dywan
2f1ae3feba Make use of the XScreenSaver extension optional
The extension is only needed for the --inactivity-reset option,
so most users building Midori won't need it.
We also need to check for the according header file.
2010-04-01 18:25:30 +02:00
Christian Dywan
37e2216775 Implement -i, --inactivity-reset command line option
The use case is kiosk systems where leaving the application
idle for a period of time means that the user left, and the
session is reset so the next user starts off clean.

The implementation uses libXss and uses XScreenSaverQueryExtension
which means it is for now supported on X11 only.

Right now reset means closing any opens web pages and opening
the original web page.

Currently --inactivity-reset is only supported with --app.
2010-04-01 00:05:08 +02:00
Christian Dywan
832b2e9922 Change remaining GET_PRIVATE to priv in GtkIconEntry 2010-03-31 21:02:37 +02:00
Christian Dywan
67b9fc013a Use priv instead of GET_PRIVATE in GtkIconEntry 2010-03-31 19:05:17 +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
Enrico Tröger
05488d8bd3 Filter keyboard state against modfifier default mask
The modifier state does in fact incorporate modal keys such as
NumLock. So code assuming that state be 0 if no modifier is
pressed is wrong, if NumLock, CapsLock and the like are active.

The solution is to filter out these modal keys with
gtk_accelerator_get_default_mod_mask(), and compare the result.

This fixes the problem of being unable to type keys used as
single-letter shortcuts.
2010-03-30 01:05:36 +02:00
Christian Dywan
fdf075513c Don't propagate key events more than once
This fixes problems with dead keys used to type accented letters.
2010-03-26 20:48:33 +01:00
Dale Whittaker
3f8b34853d Update year in Copyright headers 2010-03-25 23:06:38 +01:00
Dale Whittaker
ff63a5f7bd Wrap the location completion in a GtkFrame
That's what GtkEntryCompletion does as well, so it gives our
completion consistent appearance.
2010-03-24 23:26:51 +01:00
Christian Dywan
a15c70ec61 Add behavior preference 'Allow scripts to open popups' 2010-03-23 20:52:06 +01:00
Christian Dywan
9587fde97b Spawn new apps with the original executable name
Opening a web app or private mode should open Midori from the
same executable it was originally opened with.
2010-03-22 02:55:10 +01:00
Christian Dywan
3682b7755e Clarify MidoriApp signal documentation 2010-03-19 20:16:48 +01:00
Christian Dywan
b4a18b2aef Only print error if completion actually failed 2010-03-18 23:26:45 +01: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
Samuel Creshal
b10b311b07 Don't overwrite uri in _action_location_secondary_icon_released 2010-03-13 19:58:06 +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
André Stösel
283005e217 Implement and use sokoke_recursive_fork_protection
As Midori may call external tools to open URIs it cannot handle,
and at the same time Midori is commonly the default browser,
this can end in recursion when the external tool also calls Midori.

See the description of sokoke_recursive_fork_protection().
2010-03-12 23:31:14 +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
e69ee84b6b Cancel completion if we don't have an entry 2010-03-06 19:18:09 +01:00
Christian Dywan
e7005abd55 Bail out of Export if no bookmarks or hidden 2010-03-06 19:16:52 +01:00
Christian Dywan
cf6cffe2bc Relate completion height to browser window height
To prevent the completion from obscuring other windows, it will
relate to 2/3 of the browser window and screen height respectively.
2010-03-05 00:02:07 +01:00
Christian Dywan
6ae3633dce Always append tabs added from a loaded session
We shouldn't honor user preferences for new tabs when loading
the session. Rather we append in the order they were saved in.

This is currently a hack. In the future we should consider
public API additions to insert tabs in a particular order.
2010-03-04 02:08:49 +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
100eea41da Implement "Export bookmarks" menu item to export to XBEL 2010-03-02 23:58:17 +01:00
Christian Dywan
fe203524fe Implement Scroll actions, defaulting to Vim direction keys 2010-03-01 00:24:46 +01:00
Christian Dywan
3f886f7153 Include previous searches in History panel items 2010-03-01 00:24:46 +01:00
Christian Dywan
de89bcd2dc Store searches and completion search in the location 2010-02-25 00:44:25 +01:00
Alexander Butenko
458c5109be Dupe OS type for ident string before using it 2010-02-22 19:03:45 +01:00
Alexander Butenko
f3f53db4d7 Fallback to the first browser if one is closed
We need to keep one browser as the default for commands
and opening files externally.
2010-02-22 19:03:45 +01:00
Christian Dywan
679ecf5d84 Don't override small toolbar icon size
The hack was originally meant to fix themes with no proper
small icons, but it doesn't really help in most cases.
2010-02-22 14:23:20 +01:00
Christian Dywan
7cf326a338 Always use Icons only for panel toolbar 2010-02-21 18:03:27 +01:00
Christian Dywan
7580ecad8e Omit micro version and arch from ident string 2010-02-20 22:31:58 +01:00
Christian Dywan
142dc432ca Use content_area instead of GtkDialog->vbox in browser 2010-02-19 19:05:29 +01:00
Alexander Butenko
e94edca766 Use the correct completion model and no static
Since the model was a static variable and only set when the
popup was created, we ended up using an obsolete model in
case multiple windows were opened and closed.

As a small optimization we don't need to retrieve the database
pointer except when compiling the statement initially.
2010-02-19 18:55:16 +01:00
Christian Dywan
10591640d1 Re-implement 'Recently visited pages' based on sqlite 2010-02-19 00:34:39 +01:00
Christian Dywan
f3f9dd2b3f Be sure to save outstanding changes to the config on quit
We intentionally set a timeout before saving changes to avoid
continuous disc access and also in case opening or closing a tab
results in an immediate crash or freezing.
But closing Midori normally should save outstanding changes.
2010-02-17 23:19:16 +01:00
Peter de Ridder
aef84bfa02 Look for MidoriView resource files dynamically 2010-02-16 00:59:43 +01:00
Peter de Ridder
4774e35932 Look for user documentation dynamically on win32 2010-02-16 00:59:43 +01:00
Peter de Ridder
c90344ac44 Look for extensions relative to program folder on win32 2010-02-16 00:59:42 +01:00
Peter de Ridder
f4b2111b40 Implement sokoke_show_uri on top of explorer for win32 2010-02-16 00:59:42 +01:00
Christian Dywan
902f836810 Improve and optimize sokoke_uri_to_ascii to parse about:version 2010-02-12 02:08:05 +01:00
Christian Dywan
f19412bc70 Pass action to cell renderer callback rather than the entry
The entry pointer is only meaningful if completion was triggered
by typing or editing in an entry.
We shouldn't render a key in results if the arrow button opened the
completion popup.
We need to check the key in the callback to avoid accidentally
working with an entry of a different window.
2010-02-12 00:36:59 +01:00
Alexander Butenko
f733f453d2 Clear history via sqlite if selected in 'Clear private data' dialog 2010-02-11 23:24:28 +01:00
Christian Dywan
de12aa0078 Revise completion key handling to directly pass or compute the key 2010-02-11 01:57:42 +01:00
Christian Dywan
f494ec090b Handle external, magic URIs from command line consistently 2010-02-11 00:28:49 +01:00
Christian Dywan
532e84ea4f Set consistent flags on all properties of MidoriWebSettings 2010-02-10 23:37:33 +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
0243e26bed Only split URI if no domain pattern is found in the string 2010-02-10 19:52:11 +01:00
Christian Dywan
060c0b6940 Use strncmp instead of g_str_has_prefix to optimize sokoke_magic_uri 2010-02-10 19:52:11 +01:00
Christian Dywan
ccaf696256 Remove unused KatzeNet instance from MidoriSearchAction 2010-02-10 19:52:11 +01:00
Christian Dywan
e15fe776ed Don't update the saved window size if it didn't actually change 2010-02-10 19:52:10 +01:00
Christian Dywan
13b1c9462b Connect config change notifications after creating the first browser 2010-02-10 19:52:10 +01:00
Christian Dywan
2e5c5026bc Only set config properties which are present in the config file 2010-02-07 17:19:00 +01:00
Christian Dywan
0bf27662c5 Only update location combo arrow if there is a history at all 2010-02-07 17:19:00 +01:00
Christian Dywan
14f0a091f6 Do startup timing if MIDORI_STARTTIME environment variable is set 2010-02-07 17:19:00 +01:00
Alexander Butenko
d7f42c5d72 Fix check whether we have the latest database structure 2010-02-04 22:16:01 +01:00
Alexander Butenko
4461a16a79 Refactor location completion queries to use prepared statements 2010-02-04 22:07:30 +01:00
Alexander Butenko
db334e2921 Switch to prepared statements when adding/ updating history 2010-02-04 22:07:16 +01:00
Alexander Butenko
5887067e73 Show the combo arrow if the history table contains any rows 2010-02-04 03:30:09 +01:00
Christian Dywan
af94855fee Render search actions as one line without address 2010-02-04 03:11:52 +01:00
Alexander Butenko
c273d6c73a NULL check the key before rendering suggestions 2010-02-04 02:44:30 +01:00
Christian Dywan
4d05be6a5e Do allow internal icons for views with an unreachable URI 2010-02-03 22:18:51 +01:00
Alexander Butenko
42a29682e6 Store visited pages in the history again 2010-02-03 22:12:19 +01:00
Christian Dywan
297d38e7d0 Use the correct theme detail for < GTK+ 2.18 entry progress 2010-02-03 18:41:54 +01:00
Christian Dywan
bee4615d10 Render history dates directly without age column or render callback
Resurrect sokoke_days_between for calculating age in days.
2010-02-03 01:39:13 +01:00
Christian Dywan
b4a414f371 Load about:blank in private window if URI is empty 2010-02-02 22:29:31 +01:00
Alexander Butenko
57ce6cbe21 Do not populate the history array from sqlite at startup 2010-02-02 21:02:45 +01:00
Christian Dywan
c9c9351ffb Always enable developer extras regardless of the saved value 2010-02-01 23:55:51 +01:00
Christian Dywan
c056a21d1a Unconditionally propagae modified user-agent property value 2010-02-01 23:55:51 +01:00
Christian Dywan
24759ec86f Do not add duplicate Netscape plugins to the extensions 2010-01-31 23:02:31 +01:00
Christian Dywan
41583dc940 Guard pixbuf in location action that is not used with Hildon 2010-01-31 22:29:22 +01:00
Christian Dywan
f5489973f5 Position the suggestion popup, towards the top if below is too narrow 2010-01-31 22:12:58 +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
b447070d7d Use new GtkActivatable API in MidoriBrowser 2010-01-31 20:41:30 +01:00
Christian Dywan
cc50c6d58b Remember whether 'Clear private data when quitting' is enabled 2010-01-31 20:41:30 +01:00
Christian Dywan
5472c5d5df Fix the order of search engines in the completion 2010-01-30 17:39:32 +01:00
Christian Dywan
a436234edb Add local storage, database and offline app cache to preferences 2010-01-30 17:26:26 +01:00
Christian Dywan
3441ab45ef Default local storage, database and offline app cache to disabled 2010-01-30 17:26:03 +01:00
Christian Dywan
c43d887747 Use first search engine if the default is not set 2010-01-30 16:54:38 +01:00
Christian Dywan
3d01b7b0c3 Search engines in completion should have a distinct background 2010-01-30 01:52:22 +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
cc6bb8fddb Lookup icon size in relation to the according screen or widget 2010-01-29 22:43:39 +01:00
Christian Dywan
37d89d0986 Move declaration in search action icon callback to the top 2010-01-29 21:13:44 +01:00
Christian Dywan
218a05049c Create and release script context for --run/ -r only when needed 2010-01-29 21:12:14 +01:00
Christian Dywan
32a62a7057 Hide the combobox arrow if the history unset or is empty 2010-01-29 18:54:58 +01:00
Christian Dywan
e5c65a160c Turn browser action helpers into macros 2010-01-28 23:50:44 +01:00
Christian Dywan
88becdd669 Destroy the thumb_view with WebKitGTK+ <> 1.1.14 2010-01-28 23:28:37 +01:00
Christian Dywan
8c62689981 Initially pressing Up in completion should select the last match 2010-01-28 23:15:49 +01:00
Christian Dywan
ca9420bdfc Always hide findbar on hotkey if visible, or when it loses focus 2010-01-28 22:35:21 +01:00
Christian Dywan
b947e5d662 Re-implement search engines in the completion 2010-01-28 22:19:00 +01:00
Christian Dywan
7065767a61 Apply scrollbar size hack to get the correct completion height
GtkEntryCompletion uses a hack to ensure that the suggestion
popup has the correct height. We do the same now.
2010-01-28 02:25:52 +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
38d0022ec8 Do not validate URI or title when rendering completion matches 2010-01-26 22:07:57 +01:00
Alexander Butenko
5fa82189fa Only show the completion after resizing it properly
Showing the completion early on will result in ugly flickering,
curiously not with xfwm4.
2010-01-25 22:10:39 +01:00
Christian Dywan
3bcd5700e1 Prevent the panel buttons from shrinking below minimum width 2010-01-25 21:44:26 +01:00
Christian Dywan
36becf34c8 Re-implement location arrow popup with sqlite
All uses of populating filter model, freezing and the hash table
are replaced by populating the combo box model on popup.
2010-01-25 21:44:26 +01:00
Alexander Butenko
4854cfab5d Use notify-send only as a fallback if libnotify is not available 2010-01-25 21:44:26 +01:00
Christian Dywan
65c56f26a8 Rely on sqlite for completion, otherwise disable it entirely 2010-01-25 01:19:03 +01:00
Christian Dywan
726c7c34e0 Popdown completion if key is empty or there are no matches 2010-01-25 00:06:32 +01:00
Christian Dywan
f0bfc701d9 Correct panel toggle button tooltip to say 'Hide operating controls' 2010-01-24 11:04:17 +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
Alexander Butenko
dc25035e29 Sort completion matches by visits in complete days 2010-01-24 11:00:51 +01:00
Christian Dywan
edc6d6587c Update Firefox identification to Firefox 3.8 2010-01-21 18:59:34 +01:00
Christian Dywan
3a3fa03bf4 Implement 'Inspect page' menuitem with WebKitGTK+ >= 1.1.17 2010-01-21 18:59:34 +01:00
Christian Dywan
0442113b94 Popdown completion when location text is changed explicitly
Programmatic changes are done when adding, closing or switching
the current tab, and that should popdown completion.
2010-01-20 23:20:28 +01:00
Christian Dywan
8aba77a0e9 Allow button handling for selection and context menu in location entry 2010-01-20 23:16:29 +01:00
Christian Dywan
897af36ed5 Revise completion to react on paste/ cursor/ backspace
We need to avoid updating the real text afterall, but update it
in the event of a cursor movement.

We also need to trigger completion on backspace or paste.

We need to remove the timer when we popdown completion.

We need to make sure to not show completion for empty text.
2010-01-20 23:11:25 +01:00
Christian Dywan
33d90b247c Truly update text in location entry to make Home, End and friends work 2010-01-20 21:55:54 +01:00
Christian Dywan
e0a50c47d3 Clicking inside the location entry closes the completion window 2010-01-20 21:34:17 +01:00
Christian Dywan
4110b64ae8 Let hovering completion suggestions select rows 2010-01-20 21:28:44 +01:00
Christian Dywan
0145cb3171 Make clicking completion suggestion actually open the address 2010-01-20 21:25:39 +01:00
Christian Dywan
cabc3f0764 Fill in address if clicked on completion suggestion 2010-01-20 07:48:34 +01:00
Christian Dywan
0795c4f13c Add #define for gtk_widget_has_focus for GTK+ < 2.18 2010-01-20 07:11:20 +01:00
Christian Dywan
04f953dc0d Don't trigger completion on control characters 2010-01-19 07:11:51 +01:00
Alexander Butenko
4b35435c2c Order completion matches by most recent visit, ascending 2010-01-19 06:42:21 +01:00
Alexander Butenko
5bf92be622 Don't show completion if the entry already lost focus 2010-01-19 06:34:53 +01:00
Alexander Butenko
b5a23cec3a Show completion popup only after resizing the columns 2010-01-19 06:28:07 +01:00
Christian Dywan
1f3313424f Use a tree model filter visible function to limit recent items 2010-01-17 22:36:44 +01:00
Christian Dywan
c99921022f Implement completion with live sqlite queries
If sqlite is available, we can directly query results from the
database and populate our model on the fly.
2010-01-17 18:14:49 +01:00
Christian Dywan
07261e284c Re-implement location action with our own completion popup
Completion is triggered on key press only, with a delay of 150ms.

Completion can be triggered by input method usage.

The popup size adjusts to the entry size and closes if focus is lost.
2010-01-17 18:14:49 +01:00
Christian Dywan
27634e4f1e Use prepared statement to read history array instead of exec 2010-01-17 18:14:49 +01:00
Christian Dywan
7f26cc7384 Remove 'Search engines in completion' functionality
The feature doesn't work well with more than two engines.
2010-01-17 18:14:49 +01:00
Christian Dywan
2d8c8bebf5 Add G_GNUC_CONST to all Midori type functions 2010-01-17 18:14:48 +01:00
Christian Dywan
86d060f250 Change db_ helpers in main.c into direct sqlite3_ calls
This means 1 function call instead of 2 or 3 calls for each
query and should reduce some overhead.
2010-01-15 07:07:00 +01:00
Christian Dywan
8dbc86361d Implement 'Close other tabs' menu item in tab context menu 2010-01-14 02:49:19 +01:00
Dale Whittaker
96178e60b7 Check page icons of search engines first, afterwards icon names 2010-01-13 06:55:49 +01:00
Christian Dywan
789485a086 Do no extra type checking when querying the history database 2010-01-13 00:10:32 +01:00
André Stösel
4e561eeef3 Fixup the key value to allow Ctrl + Shift + Tab 2010-01-12 23:34:10 +01:00
Christian Dywan
dab3505e0c Store argument vector and display it in about:version 2010-01-12 23:34:10 +01:00
André Stösel
ca5bfa1b1d Allow the panel to expand, to stop it from ever-growing in fullscreen 2010-01-11 21:55:12 +01:00
Christoph Wickert
96a03e91bf Use FileTransfer category rather than Network for download managers 2010-01-10 22:02:46 +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
16947894d4 Make %u in command lines work just like %s
This is not strictly by the spec but it works in practise.
2010-01-10 22:02:46 +01:00
Christian Dywan
9cf6f6a3cc Move around preferences so Open panels in Windows is always shown 2010-01-10 07:22:21 +01:00
André Stösel
de4eede5cc It should be 'gint position', not gboolean 2010-01-10 07:22:20 +01:00
Christian Dywan
a7cbc73981 Add i18n comments for Paste Proceed as well as Go to next/ previous page 2010-01-10 07:22:20 +01:00
Christian Dywan
9db458ba9c Hide panel toolbooks when there is only a controls button in there 2010-01-08 01:43:33 +01:00
Christian Dywan
317eefa1c8 Prevent a recurive loop when toggling operating controls 2010-01-08 01:08:37 +01:00
Christian Dywan
dba473e069 Move the logo on special pages to the background 2010-01-08 00:42:23 +01:00
Christian Dywan
a8cd1499ab Move panel icons to the bottom and always remove the labels
This is an attempt at simplifying the panel, in the hope
that it is still discoverable enough.
2010-01-08 00:16:56 +01:00
Christian Dywan
cbebda0db4 Remove Plugins panel, instead add Netscape plugins to Extensions
Netscape Plugins cannot actually be activated or deactivated
at the moment.
2010-01-08 00:16:56 +01:00
Christian Dywan
f4c7df59b4 Connect accelerators of implicitly created panel actions 2010-01-08 00:16:55 +01:00
Christian Dywan
139132afbd Implement about:version page with important build configuration aspects 2010-01-08 00:16:55 +01:00
André Stösel
5c89cc8bd2 Spell accept language header as 'Accept-Language' 2010-01-08 00:16:55 +01:00
André Stösel
b5b32495f9 Implement 'Preferred languages' preference, ACCEPT_LANGUAGE header 2010-01-07 01:35:51 +01:00
Christian Dywan
b7d09f38bb Handle window raising without the help of unique 2010-01-06 23:40:46 +01:00
Christian Dywan
996f1a86d3 Omit an unused config variable when loading extensions 2010-01-06 23:40:45 +01:00
Christian Dywan
5d5d2517c8 Rename 'Spell checking languages' to 'Spelling dictionaries' 2010-01-06 23:40:45 +01:00
Christian Dywan
66d72c915e Add a label 'Spell checking languages:' in front of the spell entry
The entry by itself is confusing to many users, and a label is better
than nothing while we don't have a better interface.
2010-01-04 23:42:30 +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
97d6137ea8 Disable developer extras in web app mode 2010-01-03 23:00:27 +01:00
Christian Dywan
bb9ec27402 Build only main.c in the progressive midori target 2010-01-03 22:58:04 +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
af43d5a761 Construct entry in location action, obsoleting location entry class 2010-01-02 01:25:57 +01:00
Christian Dywan
d55e771b3a Merge MidoriLocationEntry progress drawing into GtkIconEntry 2010-01-02 00:21:49 +01:00
Christian Dywan
fb04846992 Fix a macro typo in the GtkIconEntry implementation 2010-01-01 23:45:29 +01:00
Christian Dywan
d81f84aa9c Show bookmarkbar if 'Show in the toolbar' is used on a bookmark 2010-01-01 23:37:13 +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
2f202f8020 Implement "Paste and proceed" menuitem in location context menu 2010-01-01 23:01:56 +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
3aff0a34d0 Disable 'inline' completion, it causes a huge extra matching overhead 2010-01-01 21:53:28 +01:00
Christian Dywan
8039785073 Move up/ down key handling from the entry into MidoriLocationAction 2010-01-01 18:23:15 +01:00
Christian Dywan
15658145b2 Build katze, core and panels as one, and allow non-progressive build
This simplifies the build and possibly helps with linking problems
on some platforms. The 'progressive' option allows building
without an intermediate static library except for unit tests.
2010-01-01 18:20:08 +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
35d99286d6 Enable page cache by default with WebKitGTK+ 1.1.18 2010-01-01 04:48:36 +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
b1ee80d55e Implement katze_utf8_stristr, katze_collfold and use in completion
Evidently normalizing any whole string is too slow for completion,
so we need to even out case and composition while iterating through
the strings.

The decompositing version of katze_utf8_stristr is disabled, since
it is too slow, and an ascii only version is used, for now.

A unit test 'compare' is added that solely measures performance of
katze_collfold and katze_utf8_stristr.
2009-12-28 23:59:54 +01:00
Christian Dywan
8b7fdb7a56 Check that g_utf8_normalize was non-NULL, fallback otherwise 2009-12-27 22:18:02 +01:00
Peter de Ridder
10d3733f2d Reword history error messages to be more accurate 2009-12-27 17:20:42 +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
bd078ed1dd Print error on console if script execution failed 2009-12-27 16:54:34 +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
f51785f0aa Make completion 'inline' which makes it instanteous
Against expectation making the entry completion 'inline' does not
show the first match inline but completes instantly when typing.
2009-12-26 23:02:20 +01:00
Christian Dywan
bf11be2cfe Normalize text when matching location completion 2009-12-26 22:57:18 +01:00
Christian Dywan
0f988af446 Tweak location match rendering by reducing conditions 2009-12-26 15:21:39 +01:00
Christian Dywan
3686061033 Update location icon for the correct view, and update it properly 2009-12-26 15:20:57 +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
407e4dd5d3 Enable web inspector by default and remove the preference
Apparently the web inspector is not discoverable and a lot of
people who would use it, are not aware of its existence. So
we enable it by default.
2009-12-23 16:24:51 +01:00
Christian Dywan
a671f8fd5b Remove unused Original cookies only preference
If we implement it, a new value in accept-cookies is good enough.
2009-12-23 16:03:04 +01:00
Christian Dywan
973e4aa907 Bookmarking a link is a new bookmark, hence pass TRUE for new_bookmark
This used to work by accident as long as the code wasn't optimized
to avoid removing and adding existing bookmarks.
2009-12-23 15:26:34 +01:00
Christian Dywan
7801ecfeb5 Return TRUE when starting inline find, to prevent inserting . or / 2009-12-23 15:24:51 +01:00
Christian Dywan
cec6b31044 Initialize diagnostic_dialog to FALSE by default 2009-12-22 01:07:01 +01:00
Alexander Butenko
613979a579 Declare fd_recv early at the top of socket.c 2009-12-21 23:22:04 +01:00
Christian Dywan
d0e72f5d33 Fix crasher in sokoke_hostname_from_uri and add additional tests 2009-12-21 18:26:50 +01:00
Christian Dywan
4e25f72768 Fix two typos from replacing g_file_test with g_access in sokoke 2009-12-21 18:26:49 +01:00
Christian Dywan
8f0d632ef5 Add -d, --diagnostic-dialog command line switch 2009-12-21 18:26:49 +01:00
Alexander Butenko
045cc81b45 Use g_access instead of g_file_test consistently 2009-12-19 11:28:46 +01:00
Christian Dywan
a94cf71700 Turn libnotify into a build-time dependency, mind notify-send
libnotify support is decided at build-time now, to avoid so name
issues. notify-send is still optional at runtime as a fallback.
2009-12-15 00:03:28 +01:00
Christian Dywan
f905420967 Show spell checking preferences unconditionally 2009-12-14 23:25:33 +01:00
Christian Dywan
e04a078de4 Check for libnotify.so.1 and libenchant.so.1 explicitly
Some distributions only install versioned libraries by default
while the generic files reside in development packages. This is
because later versions may break ABI, so we explicitly use
the supported version.
2009-12-14 18:54:32 +01:00
Christian Dywan
c9da1beb1c Fix visibility of the Statusbar action 2009-12-14 18:52:16 +01:00
Christian Dywan
a6a4f0ffec Make sure there is an URI when spawning private browsing
This is mainly an issue for unit tests.
2009-12-13 15:59:54 +01:00
Christian Dywan
d2d5bf33b6 Implement context menu in menu items, forward buttons from the menubar 2009-12-13 15:44:02 +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
ff2e042898 Show Manage Search Engines in the context menu of the address entry 2009-12-12 21:55:37 +01:00
Christian Dywan
fb5d74d53f Validate uri and title in completion in case of invalid UTF-8 2009-12-12 18:04:48 +01:00
Christian Dywan
63e3672632 Validate formatted URI, otherwise pass the original URI
Apparently g_uri_unescape_string can return invalid UTF8, so
until we can replace or fix it, we double check to avoid
crashing in g_markup_escape_text and other places.
2009-12-12 01:21:06 +01:00
Christian Dywan
e403f2259b Don't remove edited bookmark from parent if it's at the toplevel 2009-12-12 00:14:20 +01:00
Christian Dywan
79101c3350 Revise saving bookmarks to file, recursively 2009-12-11 23:59:08 +01:00
Christian Dywan
7ce27f542f Revise populating and updating of the bookmarkbar
Avoid removing items except when actually newly added.
2009-12-11 23:58:21 +01:00
Christian Dywan
50b37c3f28 Parse meta info for array from xmlNodePtr 2009-12-11 23:43:56 +01:00
Daniel Michalik
d6457fd085 Check for the correct dialogue response for Save As
This fixes choosing Save As in file download fialogues.
2009-12-09 20:58:15 +01:00
Christian Dywan
8d3b12629c Omit Hildon customizations in MidoriBrower that can be configured 2009-12-09 20:58:15 +01:00
Christian Dywan
0542a0fcf2 Only write settings with values that differ from the defaults 2009-12-09 20:58:15 +01:00
Christian Dywan
a08caa02b9 Retain the visibility of the navigationbar in fullscreen mode
It can be hidden manually, the way it used to be in 0.2.0
2009-12-08 23:57:58 +01:00
Daniel Michalik
7c80307642 Use more common Ctrl + Return to open a new tab from the location 2009-12-07 23:59:06 +01:00
Christian Dywan
4f5262df42 Make internal link element search a truly anonymous function 2009-12-07 22:31:43 +01:00
Christian Dywan
88b720295f Implement middle click on the bookmark button in the bookmarkbar 2009-12-07 21:14:10 +01:00
Christian Dywan
47514c180e Set an invalid config dir in app mode to prevent accidental pickup
We don't want web apps to accidentally use configuration files from
the default folder, eg. for speed dial.
2009-12-07 20:58:07 +01:00
Christian Dywan
9adf9458b0 Support executing multiple passed commands one after another 2009-12-07 20:52:32 +01:00
Christian Dywan
23a2d8e491 Handle -e/ --execute in Midori web application mode 2009-12-07 20:44:29 +01:00
Christian Dywan
38205dd351 Implement Quit in Midori in web application mode 2009-12-07 20:41:13 +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
Daniel Michalik
61e51c1991 Update default search engine if the according search engine is modified 2009-12-07 20:38:02 +01:00
Christian Dywan
fadd0f31c2 Allow Ctrl+C to break normally while still handling it well 2009-12-07 20:38:02 +01:00
Christian Dywan
9c40d3b5ba Handle Empty menu item in bookmarks and not in KatzeArrayAction 2009-12-05 23:58:40 +01:00
Christian Dywan
ca6174ba6c Support RDF bookmarks, and add Epiphany to Import bookmarks 2009-12-05 23:43:12 +01:00
Christian Dywan
1fa2c95bf4 Implement reverse ordering for use in Trash and RecentlyVisited actions 2009-12-05 21:33:19 +01:00
Christian Dywan
05d9c26e37 Add Konqueror to the Import bookmarks dialogue 2009-12-05 20:14:41 +01:00
Christian Dywan
3a1b795b9e Add Custom option to Import bookmarks dialogue 2009-12-04 02:55:08 +01:00
Christian Dywan
da0304964e Refactor XBEL writing to use GString and filter out control characters
The writing becomes faster because we avoid some redundant allocations
and we improve XML compatibility by filtering out control characters
which are not supported in Midori.
2009-12-03 23:13:15 +01:00
Christian Dywan
c7601bdb9a Use Preferences icon for Tools if used in the toolbar 2009-12-03 00:06:53 +01:00
Christian Dywan
ded1573054 Handle long lines when importing Opera bookmarks 2009-12-02 23:46:34 +01:00
Christian Dywan
718d832537 Add 'Import bookmarks' button into the bookmark panel 2009-12-02 23:11:59 +01:00
Christian Dywan
a35b548589 Add 'Web Cache' to Delete private data dialogue 2009-12-02 19:02:59 +01:00
Christian Dywan
2ea4ae7079 Revise handling of application paths when importing bookmarks 2009-12-02 00:39:56 +01:00
Christian Dywan
aa5b5850c0 Optimize string assignments and comparisons in XBEL loading
We can do fast string comparisons in places where we know that
strings are not NULL.

We can directly assign values to items we create ourselves.
2009-12-01 03:17:50 +01:00
Christian Dywan
557fdda228 Try hard to open bookmarks if they have an incomplete address 2009-11-30 19:36:16 +01:00
Christian Dywan
a1cdf0bf4e Load default accels file from /etc/xdg/midori if no accels present 2009-11-30 19:36:16 +01:00
Christian Dywan
56b0a55a2d Improve XBEL format compatibility and support bookmark sharing
Loading of XBEL needs to handle title and desc children of the root
element. This is equal to using the according properties.

MicroB uses metadata without an owner and uses children rather than
properties. This is against the spec but we want to handle that.

A key value leak was plugged.

If the bookmark file is absolute, we assume it is a foreign file
and we shouldn't overwrite it.
2009-11-30 19:36:15 +01:00
Christian Dywan
baaca9a061 Remove Hildon specific icon and shortcut values 2009-11-30 19:36:15 +01:00
Christian Dywan
2973df0f9b Enable Zoom and Fullscreen with hardware keys on Hildon 2009-11-29 15:09:00 +01:00
Christian Dywan
d9eb5dcec9 Build an invisible menubar in Hildon to retain hotkey functionality
GtkUIManager requires existing proxies for hotkeys to work at all.
2009-11-29 15:01:57 +01:00
Christian Dywan
a7ca507b3a Don't prioritize key presses because that breaks inline find
This 'breaks' using single character shortcuts in conjunction
with inline find, but we can live with that.
2009-11-29 14:31:23 +01:00
Christian Dywan
dd97edf856 Refactor compact add and error message dialogues 2009-11-29 14:09:29 +01:00
Christian Dywan
5a65ed6253 Optionally open panels in standalone windows by default 2009-11-29 14:09:29 +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
2ace79c85a Replace Bookmarks with Tools in the Hildon toolbar layout 2009-11-29 14:09:28 +01:00
Christian Dywan
206fee346b Use a standard entry widget in the location on Hildon 2009-11-29 14:09:28 +01:00
Christian Dywan
183878db8c Omit Help in Adblock and Search Engines dialogues on Hildon 2009-11-29 14:09:28 +01:00
Christian Dywan
7d89c3c357 Don't capitalize bookmark addresses automatically on Hildon 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
ffee6e3850 Open bookmarks from the panel as apps or internal consistently 2009-11-26 23:16:07 +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
e65606fd06 Do not hardcode any default settings for Hildon
The proper way is to provide a customized config file.
2009-11-25 00:05: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
3b573328cc Only show bookmarks in the toolbar which are marked as such 2009-11-23 20:46:00 +01:00
Christian Dywan
c26d1775e9 Back to case folding and handling completion actions properly 2009-11-23 20:41:10 +01:00
Christian Dywan
99ff111e69 Show a popup menu to choose from multiple available news feeds 2009-11-22 20:40:21 +01:00
Christian Dywan
21f7bd7c68 Display application icons in the Import bookmarks dialogue 2009-11-22 05:12:13 +01:00
Christian Dywan
641c37a8de Add Kazehakase to the applications to import bookmarks from 2009-11-22 05:12:13 +01:00
Christian Dywan
a38574473f Do address matches with a simple strstr for now
The way we originally folded strings didn't work in all cases of
unicode strings and the last attempt to improve that broke it
on some systems while it improved on others.
So for now we go back to the safe way.
2009-11-22 05:12:13 +01:00
Christian Dywan
94ee507492 Fold strings before matching to improve the comparabillity 2009-11-21 07:17:45 +01:00
Christian Dywan
6ed99001fc Check that new-window did return a browser before adding a tab 2009-11-21 06:45:01 +01:00
Christian Dywan
83dbe3417f Only prefill inline find entry if there is actually a selection 2009-11-21 06:42:16 +01:00
Christian Dywan
0af9c0cc9d Bail out of BookmarksImport action if no bookmarks or hidden browser 2009-11-21 06:39:18 +01:00
Christian Dywan
3253f1605a Only set search in the browser if we have any search engines
This fixes the test case which broke when we made settings obligatory.
2009-11-21 06:36:35 +01:00
Christian Dywan
7bfd4e147d Catch failure to unescape Uris and don't escape ' ' or '+' 2009-11-21 02:35:14 +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
Peter de Ridder
5580b62e00 Use %%llu with sqlite3_mprintf since it expects that even on Windows
Apparently the formats sqlite3 supports are not the same as the
runtime library printf supports.
2009-11-19 23:52:01 +01:00
Christian Dywan
974ba431d8 Only connect input output channel if socket was successfully created 2009-11-19 23:34:13 +01:00
Christian Dywan
427a482033 Only use internal res:// server with WebKitGTK+ < 1.1.14 2009-11-19 23:14:48 +01:00
Peter de Ridder
6658afb885 Replace a '\' in the display name with a '_'
On Windows, display names can contain backslashes which results
in an error in the socket implementation.
2009-11-19 22:56:46 +01:00
Christian Dywan
18526f2ac6 Implement 'Run as web application' option on bookmarks
If enabled, the bookmark will run as a standalone process by default.
2009-11-18 23:10:47 +01:00
Christian Dywan
104a2712f8 Open pages from the trash as foreground tabs
This is the same behaviour as Undo close tab shows.
2009-11-18 20:08:54 +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
6faa15412d Omit frequent mkdir and writable checks at startup
This means that using file attributes to control permissions
is not supported anymore.
2009-11-18 19:13:07 +01:00
Christian Dywan
9eefb25bb6 Refactor loading cached page icon into katze_load_cached_icon
The function is optimized for loading icons and independant from
a KatzeNet instance.
2009-11-17 23:22:08 +01:00
Peter de Ridder
ba70a6fd5a Use only signals which are defined, since not all are portable
For instance Windows has support for unix signals but only for
some of the signals.
2009-11-17 19:18:14 +01:00
Christian Dywan
3fc0c192fd Support new GtkStatusbar layout and the old layout 2009-11-17 19:18:14 +01:00
Christian Dywan
d154158d0c Implement "Small icons" toolbar style and preference 2009-11-17 19:18:14 +01:00
Christian Dywan
2c6233d201 Handle unicode in location matching and fix match emphasis 2009-11-17 03:15:07 +01:00
Christian Dywan
8471e76f6a Follow up preferences refactoring for Mac OSX build 2009-11-16 23:33:32 +01:00
Christian Dywan
830553e85e Add BookmarksImport action to dummy actions 2009-11-16 21:22:09 +01:00
Christian Dywan
99c3f54012 Fix uselib of main executable to link OpenSSL properly 2009-11-16 21:14:24 +01:00
Christian Dywan
f79bbe1eef Prefill entry with selected text when using inline fine manually 2009-11-16 20:12:39 +01:00
Christian Dywan
308b9dd07d Support importing bookmarks from Opera 6 bookmark files 2009-11-16 17:45:09 +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
c012a1e5bd Implement importing bookmarks, from Arora XBEL only for now 2009-11-15 17:56:05 +01:00
Christian Dywan
fc10f156d2 Display Open Link in Foreground/ Background Tab 2009-11-15 01:55:59 +01:00
Christian Dywan
1324c1db31 Reduce the maximum days history is saved for to a number
No need for a boolean flag, 0 days are just as good.
2009-11-14 22:50:21 +01:00
Christian Dywan
ab7e219656 Set Hildon input mode to not capitalize automatically in the location 2009-11-14 22:50:20 +01:00
Christian Dywan
f212c1542b Allow closing the last tab, while a blank tab will take its place 2009-11-14 22:50:20 +01:00
Christian Dywan
e5d8016bf4 Wrap file chooser into the function sokoke_file_chooser_dialog_new 2009-11-14 22:50:20 +01:00
Christian Dywan
a5ecd0b493 Use inline icon for 'Use current page as homepage' instead of button 2009-11-13 19:42:30 +01:00
Christian Dywan
ca5230d2ef Remove remaining cases checking if browser->settings is set 2009-11-13 18:27:49 +01:00
Christian Dywan
694526704d Omit instances of if (browser->settings) 2009-11-13 18:24:16 +01:00
Christian Dywan
8ab4123c3f Ensure that the menubar/ compact button visibility follows settings
When toggling the menubar it wouldn't always update all windows
to the same state.
2009-11-13 02:18:18 +01:00
Christian Dywan
2fc6a2be89 NULL-check exception in sokoke_js_script_eval 2009-11-12 23:55:36 +01:00
Yves-Alexis Perez
42174b473a Explicitly link to X11 to not rely on indirect library linking
It is recommended by Debian and required for the gold linker.
2009-11-11 23:41:08 +01:00
Christian Dywan
5417a4f52b Allow hiding the menubar in Hildon, effectively disabling it 2009-11-11 23:31:54 +01:00
Christian Dywan
21e42ac8c7 Disable -c --config command line switch on Hildon 2009-11-11 23:30:56 +01:00
Christian Dywan
0f156fa932 Implement MidoriApp based on libOsso application interface 2009-11-10 22:01:54 +01:00
Christian Dywan
ae0c01705a Swap Next Tab and Previous Tab menu items 2009-11-10 22:01:54 +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
Christian Dywan
d0dff4dd05 Show the menubar when restoring from fullscreen and it was visible before 2009-11-09 21:49:01 +01:00
Christian Dywan
b799be5386 Hide navigationbar in fullscreen but toggle when focussed 2009-11-08 22:08:21 +01:00
Christian Dywan
a6fb391f94 Override image, script and Netscape plugin properties
The properties come from WebKitGTK+, are thus not localized but
we want to have localized proxies in the compact (Hildon) menu.
2009-11-08 21:55:36 +01:00
Christian Dywan
04e9255a9a Show 'Menubar' item in compact menu to toggle the menubar 2009-11-08 21:54:34 +01:00
Christian Dywan
4dbc02d444 Don't quote arguments given to g_file_new_for_commandline_arg 2009-11-08 14:39:46 +01:00
Christian Dywan
f980d5ad91 Ellipsize long panel titles to keep the buttons visible 2009-11-08 14:39:46 +01:00
Christian Dywan
1954b8a00c Remove statusbar/ progressbar hacks and let it size freely 2009-11-08 14:39:46 +01:00
Christian Dywan
76b575e42f Improve placement of the 'Autodetect proxy server' preference 2009-11-08 14:39:46 +01:00
Christian Dywan
51dce2c84d News aggregators use "News", not only Network, that's what we assume now 2009-11-08 14:39:46 +01:00
Christian Dywan
d0215c4032 Support keyboard hotkeys that GTK+ considers invalid
We re-implement the usual key handling by overriding the key press
handler, emulating the according steps but leaving out the
validation that normally rejects certain combinations.

Single key hotkeys work unless an entry is focussed, in which case
the entry receives the input, and Control+Tab works as well.

The shortcuts extension is adjusted to accept any hotkeys.
2009-11-04 14:31:16 +01:00
Christian Dywan
1c0d18bc06 Implement enumeration proxies with custom entries as well 2009-11-03 18:01:22 +01:00
Christian Dywan
2d790a47a3 Don't prepend the current folder to absolute filenames 2009-11-02 22:33:37 +01:00
Christian Dywan
4fbbc43e42 Use GAppInfo to spawn programs and support tokens like %f or %u 2009-11-02 22:00:30 +01:00
Christian Dywan
1b8def494d Create actions that can have hotkeys for all panel items
Bookmarks have Ctrl+B by default.
2009-11-01 19:11:28 +01:00
Christian Dywan
f320e0fc5f Preserve action visibility when adding menu items to the compact menu 2009-10-31 23:07:15 +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
Avan Anishchuk
1133bc4449 Catch SIGHUP, SIGINT, SIGTERM and SIGQUIT and quit peacefully 2009-10-31 04:49:57 +01:00
Christian Dywan
3efbc1b462 Leave setting up windows to the app, which is a lot faster
With a mature history setting up a browser window can be slow, but
if it's setup at creation time it is extremely fast.

The signal prototype of MidoriBrowser::new-window had to change,
all call sites were adjusted.
2009-10-31 04:29:15 +01:00
Christian Dywan
ec9ea0233e Hide Extensions panel if no extensions are available at all. 2009-10-30 21:43:42 +01:00
Christian Dywan
133c03b08b Add directory and preferences mappings for Hildon icons 2009-10-30 21:12:32 +01:00
Christian Dywan
0f9865b56f Make detached panels normal Hildon windows on Hildon
The window should not be hidden from the task launcher and not be
transient either. Further more the toolbar needs to go to the bottom.
Last but not least, we don't need the option button.
2009-10-30 21:02:45 +01:00
Christian Dywan
adea95e3f9 Only show Spell Check preferences if dictionaries are installed 2009-10-30 01:13:14 +01:00
Christian Dywan
9c9165c3f9 Assume selections containing :// are links of some kind 2009-10-28 22:55:18 +01:00
Christian Dywan
f955da564b Add 'Add Bookmark' to the available toolbar items 2009-10-28 22:54:42 +01:00
Christian Dywan
edb28df168 Don't disable ellipsizing of statusbar text 2009-10-28 22:51:21 +01:00
Christian Dywan
6a297dd4b3 Introduce MIDORI_TOUCHSCREEN and katze_widget_has_touchscreen_mode 2009-10-28 21:07:13 +01:00
Christian Dywan
bda19771c3 Rearrange statusbar packing to keep themes happy 2009-10-28 20:34:39 +01:00
Christian Dywan
c9dc0c5d55 Make midori_view_get_snapshot a public function 2009-10-27 22:58:11 +01:00
Christian Dywan
aff65928b3 Fix preferences, don't destroy child widgets 2009-10-26 23:43:17 +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
8cf6f4fa6c Don't load icons when rendering completion on Hildon 2009-10-26 18:05:56 +01:00
Christian Dywan
91113a189c Use Hildon banners for notifications on Maemo 2009-10-26 18:05:16 +01:00
Christian Dywan
f28d6e78d7 Optimize inline find for mobile use 2009-10-26 02:11:09 +01:00
Christian Dywan
4b633b6006 Hide application preferences on Hildon and preset text editor 2009-10-26 00:27:14 +01:00
Christian Dywan
66079c987b Map Maemo icons to stock icons 2009-10-26 00:18:56 +01:00
Christian Dywan
55d735fcf6 Layout preferences with a scrolled and no tabs on Hildon 2009-10-25 19:48:12 +01:00
Christian Dywan
9f68b17036 Remove cache and form history preferences
These features are implemented as extensions, so the preferences
don't belong in the core.
2009-10-25 14:58:22 +01:00
Christian Dywan
4c5807529b Hide download, font, proxy, developer, location preferences on Hildon 2009-10-25 14:54:31 +01:00
Christian Dywan
725f717ee8 Open pages in windows on Hildon by default 2009-10-25 14:49:00 +01:00
Christian Dywan
a2891e0ddb Wrap variables in location entry in Hildon guards as appropriate 2009-10-23 18:08:25 +02: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
4b912f17de Fix underscores in labels in app menu and compact add 2009-10-22 23:27:03 +02:00
Christian Dywan
7c1caed409 Wrap panel title callback in Hildon guards 2009-10-22 23:26:35 +02:00
Christian Dywan
e4dbbf8a27 Remove unused code from after preferences refactoring 2009-10-22 23:19:02 +02:00
Christian Dywan
d37194cd7a Fix brackets around bookmark URI check 2009-10-22 23:18:23 +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
f3cf2561ff Regard data: and javascript: URIs as allowed when adding bookmarks 2009-10-22 02:20:26 +02:00
Christian Dywan
620ccd8384 Load icons in the completion lazily to boost startup
This is a partial regression since some icons that come from
XML tags don't show up that way.
2009-10-20 18:25:40 +02:00
Alexander Butenko
90a4acfc6e Check the non-existence of folders before creating them 2009-10-20 18:24:24 +02:00
Christian Dywan
cef6532429 Refactor MidoriPreferences into KatzePreferences base class
The goal is to get rid of detailed table setups in favour of
automatic alignment with few hints as well as abstracting away
the exact layout to allow reimplementing it in a different form.
2009-10-19 23:15:44 +02:00
Christian Dywan
47c5f15684 Implement combos for choosing applications 2009-10-18 17:25:13 +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
1451026160 Implement app menu and progress indicator on Hildon 2.2 2009-10-14 00:48:25 +02:00
Christian Dywan
b2c9fb3cfc Manually pack OK button for crash dialogue on Hildon 2.2 2009-10-13 23:26:48 +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
Alexander Butenko
8a62c9ee7a Void Page Up/ Page down in the address entry
It is presumably not an important binding, and accidentally
using it is more annoying than helpful.
2009-10-12 23:17:57 +02:00
Christian Dywan
625ad79631 Remove unused variable and MidoriLocationEntryItem struct 2009-10-12 23:11:53 +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
7e8f6d5633 Omit any icons in the location in the Hildon version 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
406572c4fb Be sure to focus the web view rather than the scrolled widget 2009-10-12 13:05:43 +02:00
Christian Dywan
641553d312 Use compact menu as the main menu when building for Maemo 2009-10-12 13:02:39 +02:00
Christian Dywan
b9d4266d27 Refactor IDN handling and related unit tests
Most code is shared despite different available libraries now and
can more effeciently be tested.
2009-10-10 11:09:10 +02:00
Christian Dywan
0ac4de8aa5 Properly pass external addresses with libSoup 2.27.90 2009-10-09 14:21:55 +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
3ed9e482cd Fix display formatting of URIs and unit test it properly 2009-10-07 01:50:10 +02:00
Christian Dywan
ca81aeb034 Regard file:// URIs as valid for bookmarks 2009-10-06 20:40:43 +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
1998219933 Refactor location action to not use MidoriLocationEntryItem 2009-10-04 05:13:37 +02:00
Christian Dywan
acb2104128 Encode IDN addresses passed externally
Apparently libUnique can't handle international domains and
won't pass them onto the destined instance, so we encode
them beforehand.
2009-10-04 03:12:10 +02:00
Christian Dywan
b53c39b82e Remember text typed in the location when switching tabs
The API of the location action is adjusted so that any typed
text can be retrieved, distinguished from a confirmed URI.
2009-10-04 02:32:50 +02:00
Christian Dywan
d4c9c87f79 Fix a leaked folder string when activating extensions 2009-10-04 00:02:52 +02:00
Christian Dywan
136f5d981f Use "orientation" property of the toolbar instead of the function
The function is superseded with the introduction of the orientable
interface in new GTK+ releases, but the property is the same.
2009-10-03 23:59:57 +02:00
Christian Dywan
ce5a959840 Use MIDORI_NLSPATH instead of NLSPATH
A small number of systems uses NLSPATH in a way that breaks
localization in Midori. It is unclear what the correct way is to
use NLSPATH, so we switch to using a prefixed variable.
2009-10-03 02:27:51 +02:00
Christian Dywan
93e846bf47 Display IDN hostnames decoded in address completion 2009-10-03 02:16:15 +02:00
Christian Dywan
a51b8f18dc Fix a memory leak in the address completion match handling 2009-10-03 02:04:15 +02:00
Christian Dywan
18ab34bdc8 Load extension settings from global config folders
For example, /etc/xdg/midori/extensions/extension_name/config
2009-10-02 23:07:36 +02:00
Christian Dywan
255018aeaa Do not add history items for URIs that were visited on the same day 2009-10-02 21:29:08 +02:00
Christian Dywan
a6ee2320e8 Add Copy to the refactored context menu 2009-10-02 00:00:00 +02:00
Christian Dywan
e4b09739fa Don't use gtk_action_get_tooltip since it is GTK+ 2.16 only 2009-10-01 23:19:01 +02:00
Christian Dywan
2d1481699a When hovering menu items, show descriptions in the statusbar 2009-10-01 02:35:15 +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
60a96b9d8b Implement 'Open last session' menu item 2009-09-30 23:02:10 +02:00
Christian Dywan
c848b24733 Backup the old session when resetting it in the Crash dialog 2009-09-30 22:30:19 +02:00
Christian Dywan
3686db6f6f Add Window > Focus Current Tab 2009-09-30 22:18:17 +02:00
Christian Dywan
df88be1aff Reduce the mount of casts in the browser 2009-09-29 22:25:09 +02:00
Christian Dywan
f530218492 Notify MidoriBrowser::tab property properly 2009-09-29 20:49:30 +02:00
Christian Dywan
6d31faecf3 Default to Ctrl+Alt+U instead of Ctrl+U for View source 2009-09-28 23:10:31 +02:00
Christian Dywan
1d634247c7 Only if a preriod follws is a typed number the start of an IP address 2009-09-28 23:01:48 +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
7259066e20 Apply the correct settings to source view tabs 2009-09-27 23:37:08 +02:00
Christian Dywan
b70a2569df Open source of local files directly with no temporary copy 2009-09-27 16:19:10 +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
249b8e4669 Use brackets when checking bookmark address to avoid compiler warning 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
ba1084d236 Merge userstyles into the userscript panel 2009-09-22 23:50:31 +02:00
Christian Dywan
b3817bfc52 Actually require http(s):// in bookmark address 2009-09-21 23:58:47 +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
59c43d08e0 Include TabNew in the toolbar by default 2009-09-20 20:57:30 +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
4f8deae24d Do not put statusbar text in the location entry if it's focussed
This prevents overwriting what the user may be typing while
accidentally moving the mouse.
2009-09-19 21:06:33 +02:00
Christian Dywan
16e00c379e Disable Save/ add button in bookmark dialog if address lacks protocol 2009-09-19 17:25:10 +02:00
Christian Dywan
eaba9f0acf Improve context menu and middle click pasting using hit test result 2009-09-19 04:06:44 +02:00