summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Implement web app modeappChristian Dywan2018-09-125-3/+40
| | | | Fixes: #48
* Mirror app menu in the window always (#53)Christian Dywan2018-09-124-51/+24
| | | | App menus are going to go away: https://wiki.gnome.org/Design/Whiteboards/AppMenuMigration
* Add View Source item to page menu (#54)Christian Dywan2018-09-112-0/+31
| | | Fixes: #34
* Employ timeout with focussing/ loading tab (#26)Christian Dywan2018-09-111-1/+10
| | | When switching tabs, the new tab gets focus which causes it to load if it'd been delayed before. A timeout of 500ms prevents switching from triggering all tabs in-between.
* Implement private browsing intro as URI scheme (#52)Christian Dywan2018-09-116-5/+75
| | | | | | | ![screenshot from 2018-09-10 21-15-25](https://user-images.githubusercontent.com/1204189/45319206-7678de80-b53f-11e8-9982-dbd66c8d635b.png) Note: This isn't actually surfacing `about:private` but just the functionality. Fixes: #36
* Add tooltips to toolbar buttons (#50)Christian Dywan2018-09-103-2/+10
|
* More fine-grained Activatable interfaces (#42)Christian Dywan2018-09-0712-35/+159
| | | | | | | | | | | | * `Plugins.plug` now takes a type and property, consumer connects signals. * Generation of a GIR file. * Preparation for built-in extensions in `extensions` folder. * Tweaks to `Database` to avoid exposing `Sqlite` namespace in public API. Note: Avoiding `owned get; construct;` with `Activatable` interfaces as used in the definition of `Peas.Activatable` because it triggers a lot of internal compiler assertions at build time. Fixes: #35
* Add Circle CI configuration (#47)Christian Dywan2018-09-062-0/+45
| | | | | | | A CI system should be configured to - Build the code - Run the test cases - Try installing
* Metadata updates for Flatpak-compatibility (#46)Christian Dywan2018-09-065-20/+41
| | | Changing DBus name because - is not allowed by Flatpak.
* Don't reset Urlbar.secure on uri change (#45)Christian Dywan2018-09-061-7/+11
| | | | Update the icon instead so the caller doesn't have to know in what order state is updated.
* Implement (help-)--execute interface (#22)Christian Dywan2018-09-053-7/+72
| | | | | | | | | For scripting purposes `-execute`, or `-e` for short, exposes actions from the browser window on the command line. `--help-execute` accordingly lists the known actions. Example: midori -e tab-new Fixes: #31
* Identify as Chrome in the user agent (#21)Christian Dywan2018-09-051-2/+4
| | | The default user agent supplied by WebKit is based on Safari. By replacing the `Version/11.0` part we can get a result that looks like Chrome.
* Make POTFILES.in check ignore parts folder (#37)Christian Dywan2018-09-042-2/+3
| | | Otherwise building the snap fails the test.
* Implement fullscreen mode (#28)Christian Dywan2018-09-036-117/+222
| | | | | | | | | ![screenshot from 2018-08-30 18-03-16](https://user-images.githubusercontent.com/1204189/44864348-b9090400-ac7f-11e8-993d-f9b9c9c8c67c.png) Fullscreen, entered via the fullscreen button (pictured above) or F11, hides the titlebar/tabbar, panel and navigationbar (as well as the page menu). The navigationbar will reveal itself when hovering the top of the screen or ^L until it loses focus. I'm using the opportunity to move the navigationbar into its own class/ UI file. Fixes: #30
* Update/ markdownify README(.md) (#29)Christian Dywan2018-09-016-365/+324
| | | | | This change consolidates README and HACKING into an updated README.md with GitHub-compatible Markdown. Tweaks to the description which is re-used in snap and appstream descriptions are also included as well as a link to the new Telegram group. Note: The instructions for Windows with the latest sources are currently untested.
* Replace filler in Clear Private Data with actual text (#24)Christian Dywan2018-08-301-1/+1
| | | The corresponding label was clearly overlooked before. Easy fix.
* Show delete button to remove suggestions from history (#27)Christian Dywan2018-08-302-0/+20
| | | | | | ![screenshot from 2018-08-29 13-20-00](https://user-images.githubusercontent.com/1204189/44784820-25580a80-ab8f-11e8-8ca4-4f5664d16000.png) Functionality is analoguous to pressing Delete.
* Add GStreamer libav backend to snap packaging (#23)Christian Dywan2018-08-291-0/+1
| | | Notably H.264 is implemented here.
* Use full pathname for Icon in .desktop for snap (#25)Christian Dywan2018-08-293-0/+10
| | | This change adds a `DESKTOP_ICON` variable in CMake to customize the value of `Icon` in the `.desktop` file, which in the case of the snap should be an absolute filename.
* Always show title of the only pinned tab (#19)Christian Dywan2018-08-282-4/+9
| | | The only visible app should always show a title, even if it's pinned.
* Check for availability of xmllint (#17)Christian Dywan2018-08-272-0/+6
| | | xmllint is used by the gresource compiler to reduce whitespace if `xml-stripblanks` is specified.
* Use ContextMenuItem with Gtk.Action as of 2.16 (#16)Christian Dywan2018-08-273-8/+10
| | | By using WebKit.ContextMenuItem with Gtk.Action we can lower the minimum WebKit required from 2.18 to 2.16.
* Apply the unholy trinity of errors (#20)Christian Dywan2018-08-271-0/+14
| | | | | | The **unholy trinity** of errors concerns plugins, redirects and downloads. Most typically it surfaces like so: - The address typed in the urlbar leads to a downloaded file, and the tab shows an error. - A loading web page is cancelled via Esc or the toolbar button.
* Check that the surface in load_icon is non-null (#18)Christian Dywan2018-08-271-3/+5
| | | `WebKit.FaviconDatabase.get_favicon ()` can indeed return null without throwing an error.
* Implement speed dial based on recent history (#15)Christian Dywan2018-08-226-19/+163
| | | | | ![screenshot from 2018-08-18 20-45-09](https://user-images.githubusercontent.com/1204189/44302400-03a58a80-a328-11e8-8c4f-88be485e7920.png) The speed dial is implemented as an "internal" scheme handler, which won't require special-casing on the UX side except using "internal:speed-dial" as a default URI in Midori.Tab and recognizing it as "empty" in Midori.Urlbar. All items are populated automatically from the history and use favicons.
* Implement panel in the browser window (#13)Christian Dywan2018-08-222-148/+247
| | | | | | ![screenshot from 2018-08-21 23-51-20](https://user-images.githubusercontent.com/1204189/44431228-7f5c3d00-a59d-11e8-8872-9bddc1e7adc4.png) A Gtk.Paned splits the browser window into what's considered the panel and the web view. Compared to the old code, the navigationbar is inside the paned and a Gtk.StackSwitcher (in a second headerbar)/ Gtk.Stack takes the role of the toolbar/ notebook. Nothing implements a panel right now, although it's exposed via peas.
* Enable loading of Python extensions via Peas (#5)Christian Dywan2018-08-2111-318/+181
| | | Via a `Plugins` subclass of `Peas.Engine`, any object can be exposed to extensions with a function call, adding boilerplate for `Peas.Activatable`. No Midori-specific API is exposed here but properties and signals can be accessed as-is. Any extensions supplying a .plugin file in ~/(snap/midori/current/).local/share/midori/extensions will be picked up and loaded immediately; the ability to enable, disable and configure extensions is beyond the scope of this task.
* Provide app menu fallback in the form of a button (#12)Christian Dywan2018-08-193-0/+28
| | | Rather than a menubar with a single item in it.
* Update key in insert/ delete signal (#11)Christian Dywan2018-08-191-9/+14
| | | | This way, shortcuts and clipboard interactions are considered in addition to typing directly via the keyboard.
* Consider non-TLS and partially insecure sites insecure (#14)Christian Dywan2018-08-183-7/+25
| | | | ![screenshot from 2018-08-18 16-33-12](https://user-images.githubusercontent.com/1204189/44300315-296d6800-a305-11e8-8e3c-9a951760cd91.png) An additional label above the certificate details will point out, if needed, that the connection (website) isn't considered secure. In the same cases the left hand icon in the urlbar will show an "insecure" icon.
* Store Loggable state in object data (#10)Christian Dywan2018-08-091-3/+5
| | | Using static variables is wrong here because they're shared by all implementors of the interface.
* Make completion more reliable and add placeholder (#9)Christian Dywan2018-08-095-16/+27
| | | | | | Use cancellable to make populating more reliable. Also fix focussing and add a placeholder text for the empty urlbar. ![screenshot from 2018-07-31 23-36-23](https://user-images.githubusercontent.com/1204189/43488804-26b046a2-951b-11e8-9bee-fc53a3b4f6a3.png)
* Override context menu for links, images, videos and selection (#7)Christian Dywan2018-08-091-0/+68
| | | | | | Especially noteworthy items here are search (DuckDuckGo hard-coded for now, just like search from the urlbar) and new private browsing window, other items are being overridden mainly for the sake of a clean implementation. ![screenshot from 2018-07-30 23-51-45](https://user-images.githubusercontent.com/1204189/43425880-2849a8f4-9454-11e8-9ddd-60006e40b3c0.png)
* More consistent handling of Tab.item and Tab.create (#8)Christian Dywan2018-08-093-14/+28
| | | | | | * create normally loads a given request and emits ready_to_show, so we should support this and emulate the same behavior when emitting create. * a new browser tab should get focus. * Tab.item should be set in the case of a delayed load. * tooltips should always be set for the tally.
* Implement a context menu for tab labels (#6)Christian Dywan2018-07-312-2/+44
| | | | | | Initial context menu for tab labels (tallies) with the ability to (un)pin tabs. ![screenshot from 2018-07-30 23-41-33](https://user-images.githubusercontent.com/1204189/43425225-34ac80fa-9452-11e8-9deb-8d38962f2cfb.png)
* Honor GTK_CSD=0 to disable CSD (#4)Christian Dywan2018-07-301-0/+12
| | | | | | Make the headerbar, which is also the tab strip, the first child within the window if CSD is disabled. ![screenshot from 2018-07-25 17-18-39](https://user-images.githubusercontent.com/1204189/43210809-59e5683a-9030-11e8-9933-a550a271a4d3.png)
* Handle opening, cancelling and failing of downloads (#3)Christian Dywan2018-07-302-2/+61
| | | | | Cancel cancels a download, Open opens the file, and an error icon is shown if something went wrong. ![screenshot from 2018-07-25 16-59-22](https://user-images.githubusercontent.com/1204189/43209127-36d4314a-902c-11e8-98e8-42a07f48d575.png)
* Handle errors pages for failed loads and crashes (#2)Christian Dywan2018-07-306-0/+338
| | | | | Strings are the same as in the old code, logic becomes a little simpler by way of using WebKit URI schemes and resources. ![screenshot from 2018-07-25 16-34-07](https://user-images.githubusercontent.com/1204189/43207589-a751814c-9028-11e8-94b1-ebd1ed409204.png)
* Delayed loading of tabs (#1)Christian Dywan2018-07-184-10/+42
| | | Tabs should only take the URI to be loaded as "display-uri" and not actually load it until getting focus. To make this look smooth, the title is looked up in the history (the URI will be taken from the favicon database automatically as usual).
* Rewrite browser core completely in ValaChristian Dywan2018-07-09286-78127/+4250
|
* Launchpad automatic translations update.Launchpad Translations on behalf of midori2018-04-151-6/+6
|
* Launchpad automatic translations update.Launchpad Translations on behalf of midori2018-01-301-2/+2
|
* Launchpad automatic translations update.Launchpad Translations on behalf of midori2018-01-291-124/+123
|
* Launchpad automatic translations update.Launchpad Translations on behalf of midori2017-12-291-228/+264
|
* Launchpad automatic translations update.Launchpad Translations on behalf of midori2017-12-241-2/+2
|
* Launchpad automatic translations update.Launchpad Translations on behalf of midori2017-12-231-3/+4
|
* Launchpad automatic translations update.Launchpad Translations on behalf of midori2017-12-221-5/+6
|
* Launchpad automatic translations update.Launchpad Translations on behalf of midori2017-12-051-2/+2
|
* Launchpad automatic translations update.Launchpad Translations on behalf of midori2017-12-041-46/+67
|
* Launchpad automatic translations update.Launchpad Translations on behalf of midori2017-10-147-14/+14
|