summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Use `PLUGINDIR` tolocale system-wide plugins in the web process (#257)Christian Dywan2019-02-181-1/+1
| | | Fixes: #218
* Stop changing checkbox sensitivity of data to clear (#232)Christian Dywan2019-02-182-30/+5
| | | | | | | | * Stop changing checkbox sensitivity of data to clear Fixes: #190 * Drop new unit test ClearPrivateDataTest
* Re-introduce inactivity-reset without relying on X11 (#263)Christian Dywan2019-02-182-1/+22
| | | Fixes: #262
* Load extensions from ZIP archives (#255)Christian Dywan2019-02-175-35/+568
| | | | | | | | | | | | | | | | | | | | | | * Load extensions from ZIP archives * Use regular int64 offset type with read_data_block * Don't use new load_bytes{,async} method * Add libarchive VAPI to address bugs in older Vala releases * Add extension_scheme method, d'oh * Drop unused extract/ group bits from libarchive.vapi * Go back to using Archive.int64_t and depend on posix * Also get background scripts through resources * Use int64 type exclusively * Double-check that injected resources are valid
* Better handling of browser action icon and content scripts (#256)Christian Dywan2019-02-171-9/+27
| | | cf. https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts
* Initial support for cross-browser Web Extension API (#250)Christian Dywan2019-02-0813-10/+470
| | | | | | | | | | | | | | | | | | * Initial support for cross-browser Web Extension API * Json-GLib is a introduced as a new dependency to read manifest.json * The README contains a new section to summarize the Web Extension API * Web extension support is implemented as a Peas plugin * Web extensions can be built-in, system-wide or user-installed * The Javascript interface is added to the core GLib.Resource * Midori.Tab shares a WebKit.UserContentManager per WebKit.WebContext Fixes: #244 * Only insert loaded web extensions and employ a delay installing the API Otherwise opening a new window with many extensions would result in significant delay.
* Lower GLib requirement to 2.46.2 (#251)Christian Dywan2019-02-082-3/+3
| | | Fixes: #248
* Updated development dependencies for Debian/ SUSE (#242)Christian Dywan2019-01-311-2/+6
| | | | - CMake is required to build Midori - RPM packages on openSUSE have different names
* Add Report Problem to About dialog (#235)Christian Dywan2019-01-032-2/+8
| | | Fixes: #228
* Forward URIs we can't display to show_uri (#236)Christian Dywan2019-01-031-0/+10
| | | | | This handles for example apt:foo style links. Fixes: #234
* android: save last visited website (#225)Christian Dywan2018-12-311-0/+8
| | | The URL will be loaded next time the browser is opened.
* android: add request desktop site toggle (#224)Christian Dywan2018-12-313-1/+25
| | | | | | | Provide a menu item - to change the user agent platform from Android to X11 Linux - drop the 'Mobile' keyword from the user agent - change view port to desktop behavior
* Move appdata file to new location (#217)James Buren2018-12-271-1/+1
| | | | | | | According to lintian on Debian, the old appdata location of /usr/share/appdata is deprecated and these files should instead be placed in the new location of /usr/share/metainfo. See here for more information: https://lintian.debian.org/tags/appstream-metadata-in-legacy-location.html
* android: Add Clear Private Data to app menu (#221)Christian Dywan2018-12-264-0/+24
| | | | | Add a `Clear Private Data` menu item to the app menu. All data is erased unconditionally. The feature is currently not configurable.
* Map Back/ HomePage keys to the respective actions (#215)Christian Dywan2018-12-211-2/+2
| | | These are special keys found on some external keyboards.
* Add Gradle/ Kotlin/ Android frontend (#213)Christian Dywan2018-12-1925-0/+796
| | | | | | | | | - Native Android activity - Uses system WebView component - Urlbar with search capability, autohiding when scrolling - Share button to pass URL to other apps - CircleCI configuration Fixes: #203
* Carry error state and tls certificate in tab (#187)Christian Dywan2018-12-162-4/+21
| | | | | | In case of errors the WebView won't save the certificate so it needs to be saved in the error handler. Fixes: #74
* Change zoom level in statusbar (#196)I bins hoid2018-12-162-1/+46
| | | | | I have added a new function to the statusbar-features plugin. It is a combobox widget to change the zoom level. I also changed the ui to move the statusbar to the right side, so it doesnt flip around when the mouse goes over a link.
* Release Midori 7.0 (#198)v7Christian Dywan2018-11-303-5/+15
| | | | | | | - Bump to 7.0 - Updated `ChangeLog` - Updated release steps in `README.md` to include tarball prefix Fixes: #150
* Open external links in default browser in app mode (#184)Christian Dywan2018-11-291-0/+23
| | | | | | Note: Using ^Click or Middle Click to open new tabs is also disabled since it wouldn't make sense here. Fixes: #177
* Don't consume the tab's focus in event (#185)Christian Dywan2018-11-271-1/+1
| | | | | | WebKit needs to handle focus events to update the visibility of the cursor. Fixes: #181
* Always build menu models from scratch (#183)Christian Dywan2018-11-271-4/+8
| | | | Adapting to the small layout shouldn't depend on the initial value of the window state.
* (Re)store last window width and height (#180)Christian Dywan2018-11-263-2/+24
| | | | - Save the size of a non-tiled/ -maximized/ -fullscreen browser - Use the last known dimensions as the default size
* Implement network proxy settings (#174)Christian Dywan2018-11-253-4/+129
| | | | | | | | - Implement WebKit.NetworkProxy{Mode,Settings} - Expose the settings under Network preferences ![screenshot from 2018-11-19 22-09-55](https://user-images.githubusercontent.com/1204189/48732351-19d52680-ec48-11e8-923a-b5bb43d444ad.png) Fixes: #125
* Don't add bookmarks UX when in app mode (#172)Christian Dywan2018-11-221-0/+5
| | | It makes little sense to bookmark a website in app mode when there's only one website to be shown.
* Implement notifications for downloads and web (#175)Christian Dywan2018-11-226-3/+36
| | | | | | | | - Finished downloads when there's no active browser window - Web notifications with favicon if available for background tabs Notes: - The .desktop file is renamed to match the application ID. - Only one notification of each is allowed.
* Hide page and browser actions when window is small (#171)Christian Dywan2018-11-219-100/+228
| | | | | | | | | | | | | | | - At a width of less than 500 the browser window is considered small and the left-hand page action buttons as well as the right-hand window actions are hidden and added to the respective menus. - Downloads show relative to the app menu if there's no visible button. - The shrink constraint is moved from the navigationbar to the tab itself. - Urlbar margins are moved to CSS. - Effective minimum width becomes 269px with Adwaita w/o title buttons. To make this work the relevant actions need to be enabled and disabled when they're available and unavailable respectively. ![screenshot from 2018-11-19 08-34-09](https://user-images.githubusercontent.com/1204189/48690203-3cc6f280-ebd6-11e8-8b0d-148ee912dc64.png) ![screenshot from 2018-11-19 08-36-05](https://user-images.githubusercontent.com/1204189/48690202-3c2e5c00-ebd6-11e8-8813-22a8a6429515.png)
* Go back to using WebKit-provided user agent (#173)Christian Dywan2018-11-204-6/+4
| | | | | | | | As of #49 the user agent was hard-coded in an effort to reduce fingerprinting. Unfortunately this breaks websites such as YouTube which incorrectly sniff for features. The Midori version can remain decoupled. Fixes: #160
* Reduce spacing around delete suggestion button (#170)Christian Dywan2018-11-192-0/+7
| | | | The delete button shouldn't increase the overall size of the suggestion row.
* Locate system-wide plugins at Config.PLUGINDIR (#168)Christian Dywan2018-11-196-9/+8
| | | Fixes: #165
* Don't block regular key input in app mode (#167)Christian Dywan2018-11-192-5/+5
| | | | | Also allow editable context menus. Fixes: #152
* Always set key regardless of location guess (#169)Christian Dywan2018-11-152-11/+7
| | | | | `location` is set based on the guessing the difference between search terms and a domain or local path. The mistake here was only setting `key` if it's unset. Fixes: #162
* Create independent tabs to allow for more processes (#166)Christian Dywan2018-11-126-6/+7
| | | | | | | The related tab does two things: 1. Connect the scripting contexts (eg. opening a window/ tab) 2. Re-use the process between those tabs By not setting it more processes will be used.
* Double-check that extension folder contains Vala sources (#161)Christian Dywan2018-11-071-3/+4
| | | Fixes: #157
* Show tab popover relative to urlbar with no opacity changes (#164)Christian Dywan2018-11-073-6/+25
| | | | | | | | | | | | | | | Popovers really don't work well unless they're given an explicit position. So for a tab that may be the tab itself or better yet the urlbar of the containing browser. With some themes the entire tabs goes blank due to opacity changes, and even if it doesn't the translucency may leave the user unclear as to what's happening. So let's not do this. Fixes: #163 Also use the popover to re-implement permission requests. Fixes: #158
* Check for space in text before other URI magic (#153)Christian Dywan2018-11-061-3/+4
| | | A space anywhere should lead to a web search.
* Fix handling LINGUAS with unsupported languages (#156)Michał Górny2018-11-041-6/+20
| | | | | | Fix the LINGUAS parsing code to strip unsupported languages. Otherwise, the build will fail when user's LINGUAS contains a value that is not supported by midori (e.g. 'pl'). While at it, also make sure that empty LINGUAS is handled distinctly from unset.
* Hide downloads and clear model when clicking Clear (#154)Christian Dywan2018-11-042-1/+7
| | | The "Clear" button should clear all downloads, and consequently hide the downloads button.
* Require CMake 3.2 for the "continue" command (#155)Christian Dywan2018-11-041-2/+1
| | | | | The actual CMake required is version 3.2. This should've been increased when starting to use the `continue` command. Note: The policy command is redundant if it matches the required version.
* Replace leftover libsoup-gnome pkg-config check with libsoup (#151)Michał Górny2018-11-041-1/+1
| | | | | | | | | Update the libsoup-gnome pkg-config check to use libsoup instead. All of libsoup-gnome has been deprecated in 2.41.3, and packages ought to depend purely on libsoup these days. Looking at the 'PKGS' below, I think the pkg-config check was only leftover. Midori builds just fine after the replacement. It is necessary since Gentoo no longer ships libsoup-gnome.
* Highlight finished download(s) via style class (#149)Christian Dywan2018-11-031-1/+8
| | | | | | | ![screenshot from 2018-11-01 16-07-25](https://user-images.githubusercontent.com/1204189/47860187-438cf180-ddf0-11e8-9733-c8fed7e1419c.png) After looking at the downloads popover the style class is removed and no longer visually demanding attention. I thought the "needs-attention" style class might be appropriate here but it doesn't seem to work since it's only an animation, so I opted for the "suggested action" instead.
* Link action names to shortcut items (#148)Christian Dywan2018-11-013-25/+46
| | | | | | - Action names can be specified for shortcuts so that they need not be duplicated. - `^F4` is a common alias for closing the tab. - `^n` is a common alias for switching tabs. - `^F1` and `⇧?` are great for viewing the shortcuts overview.
* Release Midori 6.0 (#147)v6Christian Dywan2018-10-314-4/+25
| | | | | | - Bump top `6.0` - Updated `ChangeLog` - Steps to release in `README.md` - Updated CMake/ snap to take revision or version only
* Don't modify the urlbar text based on the selected row (#145)Christian Dywan2018-10-311-11/+2
| | | | | Modifying the urlbar based on the selected row is what's causing surprising behavior in some cases. Leaving the entry alone fixes that at the cost of not showing explicitly what url is going to be opened. Fixes: #117
* Drop unnecessary Escape key handing from Preferences (#141)Christian Dywan2018-10-311-9/+0
| | | This was previously needed when `Midori.Preferences` was implemented as a `Gtk.Window`.
* Implement built-in session extension (#65)Christian Dywan2018-10-3111-18/+540
| | | | | | | | | | | | | | | | | - The database schema is compatible with the original tabby. - Every browser is a "session". - Each tab is part of a session and can be closed. - The last closed session (window) is restored as a fallback. - `Midori.Database.insert/ update/ delete` become virtual. - `Midori.Browser.tabs` is made public. - `Midori.Browser.add` ensures there's at least one visible tab. - The new `ClearPrivateDataActivatable` allows adding buttons and clearing data used by an extension, in this case previously open tabs. Follow-ups: - See #70 for closed storing tabs in the session - See #71 for historing tab history - See #142 for re-rodering of tabs Closes: #41
* Hide timerange combo from Clear Private Data dialog (#143)Christian Dywan2018-10-301-2/+1
| | | | | The user experience of selecting a specific timespan needs more discussion, and for the moment we don't lose anything by going back to clearing everything.
* Don't make untrue assertions in incognito teaser (#144)Christian Dywan2018-10-301-3/+0
| | | | | | | | | - Right now these assertions don't hold true. - Even before the core revamp the WebKit2 port didn't implement these. - The respective privacy-related features may be re-implemented in the future. Closes: #120 Closes: #121 Closes: #122
* Check that the destination of a new download is not null (#140)Christian Dywan2018-10-301-1/+1
| | | This is an otherwise harmless warning with no known side effects. Nevertheless warnings dilute visibility of actual bugs.
* Revised tabbar styling and organized stylesheet (#137)Christian Dywan2018-10-286-10/+77
| | | | | | | | | | | | | | | - Handle single tab titlebar case completely in CSS - Distinct active tab style - Visually merge active tab and navigationbar - Add style classes `close`, `tabbar`, `navigationbar` and `urlbar` - Comments to explain stylesheet effects ![screenshot from 2018-10-26 15-30-16](https://user-images.githubusercontent.com/1204189/47569552-2d84ba00-d934-11e8-8d80-e1339e6b9bbb.png) Note: - There's a visual glitch with the Elementary theme because it relies on bottom-padding in the titlebar (no other themes do afair): ![screenshot from 2018-10-26 15-33-47](https://user-images.githubusercontent.com/1204189/47569711-979d5f00-d934-11e8-9098-f7fe49557400.png)