Commit graph

282 commits

Author SHA1 Message Date
Christian Dywan
753af1c32e Use gtk_dialog_get_content_area if available instead of dialog->vbox 2010-01-29 22:58:36 +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
9785317a88 Move throbber class declarations to the beginning of the function 2010-01-29 21:10:05 +01:00
Enrico Tröger
af7d9428e7 Adjust permissions of saved logins to 0600 when saving logins 2010-01-24 23:40:51 +01:00
Enrico Tröger
3ed2046d50 Check 'Remember password' depending on whether it was checked before 2010-01-24 23:37:59 +01:00
Christian Dywan
a7b982eff0 Let preference notebook fill and expand, for proper resizing 2010-01-24 11:06:10 +01:00
Can Erkin Acar
b7fd68c173 Don't leak temporary icon filename and don't free icon URI too early 2010-01-19 06:09:05 +01:00
Christian Dywan
07d4964e90 Add G_GNUC_CONST to all Katze type functions 2010-01-17 18:14:48 +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
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
Alexander Butenko
045cc81b45 Use g_access instead of g_file_test consistently 2009-12-19 11:28:46 +01:00
Alexander Butenko
670ee72e3f Use g_access instead of g_file_test in katze_mkdir_with_parents 2009-12-18 21:21:56 +01:00
Christian Dywan
2733ae4f2e Connect to button press on folder menu items 2009-12-13 15:41:47 +01:00
Christian Dywan
185ff3e338 Only directly open bookmark proxy if has a URI 2009-12-12 00:04:55 +01:00
Christian Dywan
ee4776244e Support meta-data-changed::key in KatzeItem 2009-12-11 23:45:11 +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
1fa2c95bf4 Implement reverse ordering for use in Trash and RecentlyVisited actions 2009-12-05 21:33:19 +01:00
Christian Dywan
88778948ea Double check meta values before trying to convert to a long 2009-11-30 19:52:42 +01:00
Christian Dywan
2f18605656 Be sure to disconnect item notification when the proxy is destroyed 2009-11-30 19:47:41 +01:00
Christian Dywan
dd196dc942 Emit the bookmark proxy signal instead of connecting a new handler 2009-11-30 19:36:16 +01:00
Christian Dywan
a589c2a5bc Align app proxy icons, catch missing icons and respect should show 2009-11-29 14:09:29 +01:00
Christian Dywan
84f8207c51 Include config.h in KatzeArrayAction 2009-11-29 14:09:28 +01:00
Christian Dywan
35789798b1 Adjust input mode of numeric property proxies on Hildon 2009-11-29 14:09:28 +01:00
Christian Dywan
04ebfb4733 Position array menu freely to avoid a GTK+ bug 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
ea7c5f9de4 Only take bookmark button for a bookmark if it's a single item 2009-11-24 23:51:21 +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
54b96f86c9 Align preference labels homogeneously across categories 2009-11-22 15:31:53 +01:00
Christian Dywan
28c5919b0d Presumably 'sans-serif' font is really 'sans'
We want to avoid an empty font combo box.
2009-11-22 05:12:13 +01:00
Christian Dywan
77897bc173 Guard GTK+ 2.12 tooltip API in katze_property_label function 2009-11-18 19:02:42 +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
Christian Dywan
d3e5d1af23 Connect overflow toolbar bookmark items for nested folder menus 2009-11-17 19:18:14 +01:00
Christian Dywan
7d3b68d797 Set tool button labels to "" to avoid a regression in GTK+ 2009-11-16 23:46:03 +01:00
Christian Dywan
8471e76f6a Follow up preferences refactoring for Mac OSX build 2009-11-16 23:33:32 +01:00
Christian Dywan
e98731de8a Re-implement g_icon_to_string for Glib 2.20, second attempt 2009-11-16 23:32:02 +01:00
Christian Dywan
8f8a7634e0 Copy g_icon_to_string_tokenized for GIO < 2.20 and include gio.h 2009-11-16 17:52:03 +01:00
Christian Dywan
e686b8655b Remove unused function katze_preferences_add_option 2009-11-13 23:20:38 +01:00
Christian Dywan
c41d293b9a Show custom identification/ encoding in tooltip and prefill the entry 2009-11-10 00:36:48 +01:00
Christian Dywan
1c0d18bc06 Implement enumeration proxies with custom entries as well 2009-11-03 18:01:22 +01:00
Christian Dywan
ab4fb18487 Provide an entry for "custom" options in preference proxies 2009-11-03 01:51:21 +01:00
Christian Dywan
219872aa8f Recognize custom commands with "application" preference proxies
Entering commands isn't possible yet but existing commands are
preserved and shown in the combo box.
2009-11-02 22:02:16 +01:00
Christian Dywan
e29e7f62d2 Fix the size of hildon picker buttons to have the correct height 2009-10-31 05:03:20 +01:00
Christian Dywan
8b27f16590 Never span check or picker buttons, only indent them 2009-10-29 00:04:02 +01:00
Christian Dywan
c541a75ae1 Omit property labels if the proxy would have it included already
Picker buttons in Hildon contain the label.
2009-10-28 23:57:27 +01:00
Christian Dywan
6a297dd4b3 Introduce MIDORI_TOUCHSCREEN and katze_widget_has_touchscreen_mode 2009-10-28 21:07:13 +01:00
Christian Dywan
cba3abdce9 Generate Hildon picker button or check button proxies as needed 2009-10-27 23:49:12 +01:00
Christian Dywan
0c3609ac14 Don't span preferences from different categories 2009-10-27 23:47:11 +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
ef67f2539a Don't shadow type variable in katze_property_proxy 2009-10-22 23:27:58 +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
3fec0a0265 Adjust katze_(foo_)assign to work inside one-line if's 2009-10-16 20:41:35 +02:00
Christian Dywan
c64a4334f6 Only setup drag scrolling events if touchscreen mode is set
We assume that touchscreen mode is ususally always set or never set,
so we can avoid the overhead.
2009-10-15 23:47:00 +02:00
Christian Dywan
41385a9e5e Implement katze_array_find_uri for finding duplicates 2009-10-02 21:27:31 +02:00
Christian Dywan
7a5329a1e0 Count font names added to the list, to fix font combo boxes 2009-09-29 00:08:22 +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
19b7271ed1 Disconnect request-queued properly to avoid lots of dialog callbacks
The wrong user data argument passed when disconnecting request-queued
would lead to the callback not being disconnected, which led to a
number of dialogs relative to the number of opened websites being spawned.
2009-09-25 22:51:18 +02:00
Christian Dywan
0711bdf64e Add a check box Remember password to authentication dialogs 2009-09-18 00:51:41 +02:00
Christian Dywan
06bd549cb1 Lookup page icons via javascript 2009-09-16 03:06:09 +02:00
Christian Dywan
668f19c216 Only list variable-/ fixed-width fonts in either combo box
Optimize the code a little while we are at it.
2009-09-14 18:26:35 +02:00
Christian Dywan
6ee9436db4 Save logins in a text file instead of a keyring
This means GNOME keyring isn't required for saving logins.
2009-09-09 00:33:34 +02:00
Christian Dywan
ccc76f3fc6 libsoup 2.27.91 is good enough for GNOME password manager 2009-09-06 00:58:23 +02:00
Christian Dywan
af86796eab Use GNOME proxy resolver and GNOME password manager optionally 2009-08-30 04:22:55 +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
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
d450e55668 Interprete metadata integer value of -1 as unset also when setting 2009-07-18 16:40:40 +02:00
Christian Dywan
25da412215 Add katze_strip_mnemonics (formerly known as elide_underscores) 2009-07-17 21:29:57 +02:00
Christian Dywan
34c26da9f0 Fix label alignment of tool items created for bookmarks 2009-07-17 17:34:54 +02:00
Christian Dywan
3e80ed6581 Use G_GINT64_FORMAT to convert gint64 to a string 2009-07-09 18:43:08 +01:00
Christian Dywan
7ca782ec54 Implement namespace:key syntax for KatzeItem metadata 2009-07-06 18:53:22 +01:00
Christian Dywan
967b080680 Require meta keys to be non-NULL 2009-07-06 18:30:53 +01:00
Christian Dywan
5d674f9779 Add katze_item_set_meta_string 2009-07-06 18:28:28 +01:00
Christian Dywan
5f4e9ef079 Implement meta data in KatzeItem
Now KatzeItem can store arbitrary integers and strings as meta data.
2009-07-05 00:14:09 +01:00
Enrico Tröger
c182e4f788 Disconnect boolean and string property proxy callbacks on destroy
This fixes critical warnings seen when opening and closing
multiple windows, which led notification callbacks to be invoked
on invalid widgets.
2009-06-01 03:43:36 +02:00
Christian Dywan
ae945c4269 Create "toggle" property proxies as GtkCheckButton 2009-06-01 02:45:38 +02:00
Christian Dywan
551843da1d Ensure we remove all items in katze_array_clear
Apparently looping through 'all' items isn't sufficient, so now
we remove the very first item until the list is empty.
2009-05-22 02:40:02 +02:00
Christian Dywan
9569a3c060 Provide custom overflow menu items to support middle click 2009-05-15 01:55:11 +02:00
Enrico Tröger
05f403bd54 Fix missing keyboard events for bookmark menu items 2009-05-14 20:52:55 +02:00
Enrico Tröger
ae23ae0583 Implement middle click on array actions, ie. bookmark menu items
Add a new signal activate-item-alt to KatzeArrayAction which has
a button argument specifying the mouse button that was pressed. If
this signal is handled one can special case middle or right
clicks, and return TRUE to suppress the emission of activate-item.

The browser utilizes this to open new tabs when middle clicking
on bookmark menu items.
2009-05-03 12:42:47 +02:00
Christian Dywan
44b1590100 Fix saving changes to the Download folder 2009-04-30 01:17:57 +02:00
Dale Whittaker
ffd58a06a8 Implement katze_strv_assign 2009-04-25 16:01:28 +02:00
Christian Dywan
ad82a73ab8 Show only image buttons in Statusbar Features in statusbar 2009-04-17 03:16:37 +02:00
Christian Dywan
eed273b35e Fix memory leaks in a number of places 2009-04-05 23:46:15 +02:00
Enrico Tröger
529aadc648 Always use WebKit's session in KatzeNet
This fixes corruption of expiration dates.
2009-03-31 18:20:31 +02:00
Christian Dywan
fb37688db3 Optimize list iterations in KatzeArray 2009-03-31 03:25:48 +02:00
Christian Dywan
ed2a35d70b Don't expressly use libkatze in extensions to avoid -fPIC problem 2009-03-30 00:14:43 +02:00
Christian Dywan
32d17cf2c2 Add "move-item" and katze_array_move_item 2009-03-24 23:53:50 +01:00
Christian Dywan
a75a94c388 Merge KatzeArray and KatzeList, we only ever use the array 2009-03-24 01:55:46 +01:00
Christian Dywan
15790565e8 Create cookie jar on startup instead of waiting for an HTTP request 2009-03-24 01:10:15 +01:00
Christian Dywan
530542f07d Use libSoup unconditionally in KatzeNet 2009-03-16 23:54:45 +01:00
Christian Dywan
a6ac02daf3 Drop libSoup guards in KatzeHTTPAuth and Katze HTTPCookies 2009-03-16 02:20:58 +01:00
Christian Dywan
bc3e1408b7 Check for and link with libm 2009-03-12 18:20:14 +01:00
Christian Dywan
aa181a4a6f Make the proxy insensitive if the array is unset 2009-03-07 13:58:32 +01:00
Christian Dywan
ff9085b400 Disable WebKit's authentication dialog if needed
We need to handle WebKit possibly having an authentication
dialog more expressly. Obviously we only ever want to
see one dialog and we choose our own simply because it
is localized.
2009-02-28 23:46:41 +01:00
Christian Dywan
f2d5d6e29d Fix build running with libSoup < 2.25.2 2009-02-20 00:53:21 +01:00
Christian Dywan
5aaff908cb Only add the Auth feature if WebKit didn't already 2009-02-17 18:34:27 +01:00
Christian Dywan
79ed3a06c3 Factor persistent cookies into a soup feature 2009-02-14 04:14:01 +01:00
Christian Dywan
e87f5f2455 Factor HTTP authentication into a soup feature 2009-02-14 02:34:56 +01:00
Christian Dywan
a89a178a05 Implement KatzeSeparatorAction 2009-01-29 00:52:27 +01:00
Christian Dywan
7d3ac8fa37 Move {sokoke,katze}_tree_view_get_selected_iter proper 2009-01-28 01:08:51 +01:00
Christian Dywan
3e18b780ac Implement katze_item_copy and a virtual method for subclasses 2009-01-26 03:41:12 +01:00
Christian Dywan
5b5e6bd71a Spare a separate g_file_test, let GdkPixbuf handle missing files 2009-01-23 21:45:40 +01:00
Christian Dywan
c5070bfcac Correct documentation of katze_object_get_string and _get_enum 2009-01-23 21:41:15 +01:00
Christian Dywan
b7a9d724b0 Add a function to obtain the session from a net 2009-01-15 03:26:15 +01:00
Enrico Tröger
3520fff923 Fix signal prototypes and translation typos 2009-01-12 21:17:38 +01:00
Nick Schermer
b6e33e5399 Implement 'full' debug-level and fix according warnings 2009-01-09 23:56:00 +01:00
Christian Dywan
2c1b05913a Propagate mime icons from views to proxy items 2009-01-06 02:09:35 +01:00
Christian Dywan
8370b2f2c9 Add a missing return in KatzeNet to fix a crasher 2009-01-06 00:23:09 +01:00
Christian Dywan
aebd813c68 Update Waf to 1.5.2 and update build scripts accordingly 2009-01-05 20:23:56 +01:00
Christian Dywan
ee9e8d77e5 Update Waf to 1.5.1 and update build scripts accordingly 2009-01-04 21:38:06 +01:00
Christian Dywan
6821cb4bd6 Allow for a NULL widget in katze_net_load_icon 2009-01-02 01:38:23 +01:00
Christian Dywan
770b6d9e11 Optimize KatzeArray a little 2008-12-24 04:44:02 +01:00
Christian Dywan
7c3cb9a1bd Add "parent" property to KatzeItem 2008-12-24 04:07:08 +01:00
James Turner
517e67cc0a Allow for loading of https favicon files 2008-12-17 22:23:24 +01:00
Christian Dywan
94cb65d6ad Make proxies for string and boolean properties truly synchronous 2008-12-09 01:23:35 +01:00
Christian Dywan
191a613fc8 Share one session among all KatzeNet instances 2008-12-07 21:36:42 +01:00
Christian Dywan
e1ca9028c7 Remove autotooled build system once and for all 2008-12-04 02:03:11 +01:00
Christian Dywan
8da012bac1 Use blurb as tooltip in katze_property_proxy 2008-12-01 23:39:19 +01:00
Christian Dywan
5806954562 Add katze_object_has_property 2008-12-01 23:33:47 +01:00
Enrico Tröger
417493caa3 Don't use grep in sokoke_get_desktop and fix memory leaks 2008-11-29 00:16:57 +01:00
Christian Dywan
2bc42bfd8d Remove the page holder from the core 2008-11-25 23:55:54 +01:00
Christian Dywan
03ffd05e0a Do not load icons other than in tabs 2008-11-20 01:41:58 +01:00
Brian Vuyk
dc59d66eb9 Print file saving errors to the standard output 2008-11-18 23:18:53 +01:00
Christian Dywan
1e6c22d94a Add more katze_object_get_foo functions 2008-11-18 23:06:02 +01:00
Christian Dywan
3cd50f419b Introduce a C extension interface 2008-11-18 02:07:53 +01:00
Christian Dywan
d60166aa02 Add katze_get_object 2008-11-18 01:57:33 +01:00
Christian Dywan
4e8236c95c Use gint64 instead of goffset, the latter is too new 2008-11-18 01:55:49 +01:00
Enrico Tröger
c49ed67ab0 Correct usage of datatypes in a number of places 2008-11-16 01:04:12 +01:00
Enrico Tröger
744f9ce56f Save files with permissions of 0700 instead of 0755 2008-11-16 00:21:22 +01:00
Brian Vuyk
e019c677bb Arrange file saving for error handling to fix warnings 2008-11-16 00:10:39 +01:00
Christian Dywan
0c093cb335 Do not load icons automatically everywhere
KatzeNet won't attempt to load icons that are not
cached unless the caller provides an icon callback.
For the moment, this means much less loading
for items that are not actually visible, but for
visiting pages or looking at bookmark menus.
2008-11-08 03:24:02 +01:00
Dale Whittaker
0246eeb124 Implement sorting location items by the number of visits
For the moment, a define in the code decides whether items
are sorted based on when they were added or how often
a page was visited. The 'visits' property and respective
database column is unused (we keep it for compatibility).
It turns out it's enough to store that information in
the tree model.

The visit based sorting is not enabled because it is
simply delaying startup incredibly. It will have to be
decided whether to introduce a preference, or always use
a visited based sorting once the startup delay is fixed.

History items are also deleted from the tree model now
if they are too old, according to the preference.
2008-11-08 02:39:45 +01:00
Christian Dywan
d1b64e6d48 Fix tab icon alignment and hiding throbber fallback when needed 2008-10-30 22:17:19 +01:00
Christian Dywan
27d5b35f1d Ellipsize bookmarkbar items reasonably 2008-10-29 04:07:37 +01:00
Enrico Tröger
86af851d4c Don't doublicate the "." in cached filenames 2008-10-27 22:36:41 +01:00
Christian Dywan
0ca873cb08 Cache icons in memory and fix a redirection crasher bug 2008-10-27 03:03:20 +01:00
Christian Dywan
dc8e8891e7 Correct a missing differentiation between proxy widgets 2008-10-27 03:01:52 +01:00
Christian Dywan
23e784922e Revamp bookmarkbar items based on KatzeArrayAction
Some refactoring in KatzeArrayAction and the addition
of a function to create arbitrary bookmark tool items
allows us to easily revamp the bookmarkbar so that
it finally reflectls changes to the bookmarks,
including adding and removing items.
2008-10-26 22:22:26 +01:00
Christian Dywan
cefcb42eef Recognize favicons in domains with no trailing slash 2008-10-25 16:16:48 +02:00
Christian Dywan
b53a2ebb37 Finish soup messaging cleanly and free private data 2008-10-24 19:58:58 +02:00
Christian Dywan
5c69e0269d Implement KatzeNet as a generic URI loader
KatzeNet can from now on be used where
URIs are handled and one would have used
libSoup and/ or local file handling as
appropriate, whereas KatzeNet does both.

Since we are displaying icons in several
places KatzeNet also provides an icon
loader that saves us from doublicating
even more code.

All bookmarks and also history items have
icons now, since KatzeNet makes that
incredibly easy.

Search engines are also using favicons
now, and right now custom icons don't
work, we still need to fix that.

Note that only icons are cached, nothing
else and the code is known to have a
hidden, hard to reproduce crasher which
may appear when an icon is newly loaded.
2008-10-24 00:09:12 +02:00
Christian Dywan
53c5bd3c9c Use fallback stock icon if there is no throbber animation 2008-10-22 00:46:53 +02:00
Christian Dywan
ee3b7a3b51 Finish essential KatzeArrayAction functionality 2008-10-17 23:14:21 +02:00
Christian Dywan
a12f3d10e0 Hitting Return or Enter in a Preferences entry applies it 2008-10-16 20:36:42 +02:00
Dale Whittaker
49a4b00b71 Implement number of days history is saved
Note that this will 'break' any existing history
and all dates will suddenly jump the beginning
of the unix epoch.
2008-10-16 01:31:47 +02:00
Christian Dywan
58255d19aa Do not localize object properties, except WebSettings
Property name localization is only useful if the
strings are meant to be used in a user interface,
such as is the case with WebSettings, or for
graphical interface builders, which are not of
our concern, since we don't use Glade and friends
and nobody else is going to use our widgets.

In short, make translation work much easier.
2008-10-15 03:32:11 +02:00
Christian Dywan
c1aff9030f Add license note to lots of files and add EXPAT file. 2008-10-11 07:27:52 +02:00
Christian Dywan
e1b828edf2 Finish refactoring the toolbar to use only actions
Finally the trash, which was the last item that
needed to be implemented as an action, is an
action, a KatzeArrayAction to be exact.

This simplifies more code and also makes Window
and RecentlyVisited generically implementable.

Incidentally this change also fixes a bug where
the browser tried to add a new tab when the last
one was closed, even while destroying itself.

Furthermore sokoke_image_menu_item_ellipsized
and sokoke_widget_popup were promoted to Katze.
We're still keeping the old functions for now.
2008-10-10 22:31:37 +02:00
Christian Dywan
63fc20b6f4 Assign KatzeItem property strings properly 2008-10-07 03:24:27 +02:00