Commit graph

320 commits

Author SHA1 Message Date
Christian Dywan
3bb34f9f9b Fallback to the name of an app info if there's no executable
Apparently on Windows command line and executable can be NULL,
but the name appears to be the executable name.
2010-09-30 23:51:46 +02:00
Enrico Tröger
769a1dce17 Define kalistglobal only once, declare it globally
This fixes building with gcc and the -fno-common option. The
option is now added to compiler flags in full debugging mode.
2010-09-25 16:57:18 +02:00
Christian Dywan
eabf14a6ce Add g_return_val_if_fail to katze_array_peek_items 2010-09-24 23:29:23 +02:00
Christian Dywan
16ce2e9516 Write cookies to a temporary file first, to be safe
It may happen that we are running out of space in the middle
of writing the file, and fopen deleted it already.
2010-09-20 23:37:47 +02:00
Christian Dywan
016b6a6306 Remove unused katze_collfold and katze_utf8_stristr 2010-09-18 01:48:55 +02:00
Christian Dywan
d0e2433f86 Simplify definitions of katze assignment macros 2010-09-18 01:45:17 +02:00
Christian Dywan
b66902ef7a Make KatzeArrayAction::activate-item-alt fully autonomous
Implementing the signal and returning TRUE makes it unneeded
to implement activate-item as well now.
2010-09-17 22:42:52 +02:00
Christian Dywan
34ddb8c2f0 Implement KatzeArrayAction::populate-folder
To go along with that, expose katze_array_action_generate_menu
as a public function to implement the signal.

In essence, this enables populating folders from other sources
than the original array, such as a database, while still
making use of the existing menu generation.
2010-09-15 04:10:55 +02:00
Christian Dywan
b80b97b787 Require that the URI passed to katze_load_cached_icon be NULL 2010-09-15 04:10:54 +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
7ac801799f Remove katze_net_new and katze_net_get_session 2010-09-07 22:39:51 +02:00
Christian Dywan
0cc46d6285 Don't leak the filename in katze_load_cached_icon 2010-09-06 03:03:07 +02:00
Alexander Butenko
672b7ab70a Protect proxy combo box notifications against recursion
This can happen when switching between custom and other elements.
2010-08-24 23:50:47 +02:00
Christian Dywan
5b640c7f46 Store address of bookmarks for tooltip as a string in the model 2010-07-31 01:21:50 +02:00
Alexander Butenko
a49f1f7814 Introduce katze_bookmark_populate_tree_view() and rename ITEM_IS* macros 2010-07-01 23:37:13 +02:00
Christian Dywan
6822969aac Introduce katze_item_get_meta_boolean convenience 2010-07-01 20:42:42 +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
af29dcf304 Always save KatzeItem::icon as meta data
This gives us saving of the icon in XML for free.
2010-05-09 00:56:03 +02:00
Christian Dywan
4b94b63f70 Base KatzeThrobber on GtkSpinner if available 2010-05-02 16:11:18 +02:00
Christian Dywan
a25e4c5f0a Add gtk_widget_get_window and fix gtk_dialog_get_content_area 2010-04-28 23:57:22 +02:00
Christian Dywan
c213824d5f Expose items in a KatzeArray as GList 2010-04-25 23:38:59 +02:00
Christian Dywan
7e5dd2db32 Minimal support for tests and extensions in Vala 2010-04-25 00:11:57 +02:00
Samuel Creshal
6ccfb136cd Load cached icons from http and https 2010-03-13 20:08:40 +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
8c1e5e4305 Free text after proxy combo text change 2010-03-11 23:30:53 +01:00
Enrico Tröger
3583a07056 Declare widget allocation macros for GTK+ < 2.18 properly 2010-03-02 23:58:17 +01:00
Christian Dywan
515795a317 Add fallback definition of gtk_widget_get_visible in KatzeScrolled 2010-02-21 18:01:20 +01:00
Christian Dywan
1f9dbe9f25 Fix fallback gtk_widget_get_allocation definitions 2010-02-21 12:51:31 +01:00
Christian Dywan
daa04eaeb1 Avoid GtkScrolledWindow members in KatzeScrolled 2010-02-19 19:02:57 +01:00
Christian Dywan
20602673fe Use allocation accessor in katze utils 2010-02-19 17:22:34 +01:00
Christian Dywan
fa66334289 Accessors instead of widget flag macros in Katze 2010-02-19 17:10:54 +01:00
Christian Dywan
cd855b7cde Use allocation accessor in KatzeScrolled 2010-02-19 16:48:02 +01:00
Christian Dywan
ff97ec6232 Allocation/ requisition accessors in KatzeThrobber 2010-02-19 16:46:23 +01:00
Christian Dywan
42cf028781 Use accessors for widget window in KatzeScrolled 2010-02-19 16:37:43 +01:00
Christian Dywan
2e6b4debe1 Remove unused KatzeNet instance from KatzeArrayAction 2010-02-10 19:52:11 +01:00
Christian Dywan
41d41e69ad Use the colormap of the widget with KatzeScrolled 2010-01-31 20:41:30 +01:00
Christian Dywan
01daddf34c Add missing assignments to fix drag scrolling with KatzeScrolled 2010-01-31 20:41:30 +01:00
Christian Dywan
a1c598851b Use adjustment accessor functions in KatzeScrolled 2010-01-30 16:59:37 +01:00
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