summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* 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)
* Make web process aware of core settings (#132)Christian Dywan2018-10-269-88/+76
| | | | | | | | | | - Expose `Settings` API natively to web process - Use `Config.PROJECT_NAME` to find config folder - Automatically reload external changes to Settings - Changed values on `get_boolean/string` access - Unify plugin loading in `Plugins` Fixes: #116 Fixes: #118
* Scroll new(ly) activated tab into view (#134)Christian Dywan2018-10-251-0/+18
| | | Fixes: #124
* Add Duplicate Current Tab menu item (#135)Christian Dywan2018-10-252-2/+10
| | | Fixes: #127
* Don't state that extensions be disabled in private (#128)Christian Dywan2018-10-251-1/+0
| | | Fixes: #119
* Make the Clear Private Data dialog fixed size (#130)Christian Dywan2018-10-251-0/+1
| | | | | Changing the size of the dialog is at best confusing. This is a trivial tweak that came out of some informal user testing.
* Update spinner position according to close button (#133)Christian Dywan2018-10-251-0/+2
| | | Small bug fix: the spinner isn't moved when the close button and favicon are moved around according to the position of the close button.
* Lower default window size to be fine at 800x600 (#129)Christian Dywan2018-10-251-2/+2
| | | And 1600x1200 at 2x scaling respectively.
* Fix reset of tally foreground color (#131)Christian Dywan2018-10-251-3/+3
| | | | Otherwise the color will be stuck at the last adjusted value after eg. disabling Colorful Tabs.
* More robust download handling (#110)Christian Dywan2018-10-243-24/+32
| | | | | | | | | | More robust download handling - Using `SYNC_CREATE` for property bindings - Deduplicating state updating code - Replacing `bool failed` with `string? error` to be shown in a `Gtk.Label` - Using the appropriate `WebContext` from `Browser` Fixes: #126
* Remove smarts to detect incognito from new window action (#113)Christian Dywan2018-10-243-17/+9
| | | Fixes: #112
* Revert to existing strings for menus and shortcuts (#114)Christian Dywan2018-10-234-21/+35
| | | With a new translation setup pending (see #85) it should be a good idea to re-use existing strings as much as possible.
* Add combo box to pick default search engine (#111)Christian Dywan2018-10-231-0/+10
| | | | Make this setting an actual part of the preferences rather than exposing it through the urlbar context menu.
* Port Adblock extension to Peas API (#109)Christian Dywan2018-10-2316-13/+887
| | | | | | | | | | | | | | | | | | | | | | | | | | | - A button in the toolbar allows enabling and disabling - Settings to select active filter lists - Adblock-compatible filter lists will be parsed Improvements: - More robust abp URI parsing - Always include default filters in preferences - Automatically reload after toggling enabled state Omissions: - CSS element hiding - Automatic updating - Custom filters Notes: - Pass built-in extension path in init - Pick up extension sources from folders - Generic Peas.Activatable exposes WebPage Closes: #43 ![screenshot from 2018-10-21 19-41-57](https://user-images.githubusercontent.com/1204189/47270302-630f5900-d56a-11e8-9b72-e5b1d1c9fd6d.png)
* Implement caret browsing toggle via F7 (#115)Christian Dywan2018-10-234-0/+40
| | | | | | This accessibility feature works simply: F7 enables a caret for the entire website that's normally limited to editable elements. A confirmation dialog is shown to avoid confusion when accidentally enabling it. ![screenshot from 2018-10-22 18-37-58](https://user-images.githubusercontent.com/1204189/47305571-273bc880-d62a-11e8-85b1-c590d5511d5a.png)
* Port Colorful Tabs to Peas API (#107)Christian Dywan2018-10-215-6/+93
| | | | | | | | - Plug TabActivatable even before delayed load - Add Tab.color which is purely informative - Implement (background) color in Tally - Compute colors in ColorfulTabs extension ![screenshot from 2018-10-19 14-03-55](https://user-images.githubusercontent.com/1204189/47217253-10863f00-d3a8-11e8-84bf-d1bcd0e73023.png)
* Port Statusbar Features to Peas API (#106)Christian Dywan2018-10-197-11/+101
| | | | | | Statusbar Features are buttons providing quick access to oft-used settings, readily available in the statusbar. Traditionally only usable with a persistent statusbar the overlay automatically switches to a hybrid mode where the buttons remain accessible regardless of the main text. ![screenshot from 2018-10-19 00-58-24](https://user-images.githubusercontent.com/1204189/47191349-0718ba80-d347-11e8-86eb-2c8d7b7743fd.png)