Commit Graph

637 Commits

Author SHA1 Message Date
Ailin Nemui 0b15e2f74f some scrolling updates 2014-10-24 12:26:21 +02:00
Lorenz Hübschle-Schneider 80b0d2ca6a Quick keys disappear only after releasing alt key
Other changes:
- 0.2s delay so they don't appear when pressing Alt+A etc
- don't appear when other modifier keys are pressed
2014-10-20 12:30:30 +02:00
Ailin Nemui 9827710736 Support narrowing buffer selection with Alt+0-9 after using Alt+g or when onlyUnread is enabled, and show numeric overlays for Alt+0-9 keys on the buffers 2014-10-20 11:45:56 +02:00
Lorenz Hübschle-Schneider 10dde0e7d9 Merge pull request #434 from glowing-bear/design-light-theme
Design light theme
2014-10-18 20:55:07 +02:00
David Cormier bda4e1af3e light-theme: darken most colors by 50% and add it to theme manager 2014-10-18 14:42:45 -04:00
David Cormier 7fa1b7cc9d Create dark theme by extracting theme settings from glowingbear.css
* Remove style.css as those values should be themable as well.
* Update urls in index.html to link to dark theme by default
2014-10-18 14:42:41 -04:00
Lorenz Hübschle-Schneider 66b48d83fb Fix clicking the bear on mobile
closes #469
2014-10-16 16:32:53 +02:00
Lorenz Hübschle-Schneider 4fd5ceadb2 Don't automatically show NSFW content
Fixes #472
2014-10-16 15:50:36 +02:00
Kenneth Chung fdc598c00f fix a typo and some grammar mistakes 2014-10-14 22:21:22 -07:00
Lorenz Hübschle-Schneider bc037720bd Fix plugin selectors after angular upgrade
The recent angular update changed the format of the hash keys.
They're now in the format 'object:123' (etc), which isn't a valid
CSS class name any more, but we used the $$hashKey as such.

I used this opportunity to introduce a bit of abstraction there as well
2014-09-28 21:01:13 +02:00
Lorenz Hübschle-Schneider 68adfb6cc2 Hotfix irclinky filter: only #channels
&channels match HTML-escaped special chars like " m(
2014-09-28 20:45:29 +02:00
David Cormier 1ce94f47e4 Merge pull request #463 from glowing-bear/fix-unicode-irclinky
Fix linkification of IRC channels
2014-09-27 18:02:24 -04:00
Lorenz Hübschle-Schneider de6ea98c72 Rerun async plugins after buffer switch
TODO: cache result. This is necessary at the moment because currently,
they just stop working after a buffer switch
2014-09-25 18:00:54 +02:00
Lorenz Hübschle-Schneider 565ee16990 Fix linkification of IRC channels
Closes #451
2014-09-25 17:26:18 +02:00
Ailin Nemui 081c141760 apply-exception in inputbar/bufferFilter.focus 2014-09-21 22:20:37 +02:00
David Cormier 933af6a983 Merge pull request #420 from glowing-bear/use-strict
[PLS TEST] Use strict
2014-09-17 09:44:32 -04:00
Lorenz Hübschle-Schneider 2475ad2c61 Bufferlist design attempt 2014-09-17 13:24:27 +02:00
Tor Hveem a87dc569aa Merge pull request #445 from ailin-nemui/up-down-pgup-pgdn
add pgup/pgdn keys and fix history in multiline edits
2014-09-17 12:30:05 +02:00
Tor Hveem 376c006398 Merge pull request #448 from glowing-bear/fix-scrolling-fetchMoreLines
Scroll to correct position when fetching more lines
2014-09-17 11:48:35 +02:00
Ailin Nemui 5e9fd27c89 embedded content: check if scrollIntoViewIfNeeded vendor method is available 2014-09-15 17:35:17 +02:00
Lorenz Hübschle-Schneider 121c165a39 Scroll to correct position when fetching more lines
Fixes #406
2014-09-13 18:25:12 +01:00
Lorenz Hübschle-Schneider c6e1bca78d Keep core buffer visible with 'only show unread' 2014-09-13 17:39:29 +01:00
Lorenz Hübschle-Schneider a80db339f8 Use strict
Requires turning IrcUtils into an Angular service, because the global variable
trick won't work with use strict.
Reuse is still easily possible by removing the angular wrapping around it.
2014-09-07 16:55:18 +01:00
David Cormier 8758cad336 Merge pull request #442 from glowing-bear/fix-line-fetching-after-switch
Re-enable "fetch more lines" after trimming lines on buffer switch
2014-09-05 16:45:11 -04:00
Ailin Nemui a63150e697 add pgup/pgdn keys and fix history in multiline edits 2014-09-05 18:18:05 +02:00
Ailin Nemui 156640c3ba Properly Show and hide the sidebar on mobile layout when using Alt+g 2014-09-05 18:10:12 +02:00
Lorenz Hübschle-Schneider c501215bae Re-enable "fetch more lines" after trimming lines on buffer switch
Fixes #404
2014-09-04 22:37:46 +01:00
David Cormier 658e876643 fixup font-family and font-size setting glitches
Replace fontSize placeholder by default value. Placeholders should be used
as suggestions, not effective values.

Remove spurious default value for fontFamily (it is defined right below)
2014-09-01 09:37:17 -04:00
David Cormier 9438c3844f Ask confirmation before closing if user has unsent input 2014-08-31 11:14:56 -04:00
David Cormier 24f63be25c When closing the window, disconnect instead of asking the user to do it 2014-08-31 11:12:09 -04:00
Lorenz Hübschle-Schneider 21f8f47efe Split things up into logical blocks 2014-08-31 15:57:36 +01:00
Lorenz Hübschle-Schneider 0c2e7635ed Fix Alt+[0-9] buffer access order
WeeChat sends them in no particular order, we need to sort the buffers by
their WeeChat number. To avoid copying the potentially very large buffer
objects around needlessly, extract the relevant keys and sort, then access.

This is based on ad50220bfd
2014-08-31 14:57:16 +01:00
Lorenz Hübschle-Schneider 226068152f Hotfix strict injection to undo terrible breakage 2014-08-27 18:47:58 +01:00
Lorenz Hübschle-Schneider 69e1e1907d Use strict angular dependency injection
Prerequisite for proper minification
2014-08-27 17:28:01 +01:00
Lorenz Hübschle-Schneider 9501b9f3d3 Fix history keybindings for keypress
because ASCII != keydown code in JS m(
2014-08-26 12:44:34 +01:00
Lorenz Hübschle-Schneider 6f1f84aa62 Prevent triggering ng-focus on input during completion
$apply during another $apply is not possible, and .focus() on the input node
triggers the ng-focus on it (which hides the sidebar, if on mobile), so to
prevent the exception from being thrown, move the input node focusing
out of the $apply with a timeout of 0.
2014-08-24 18:13:24 +01:00
David Cormier 26a5a03435 Merge pull request #418 from glowing-bear/kill-the-watchers
[PLS TEST] Don't watch for changes on existing lines, s/bindonce/angular one-time binding/
2014-08-23 18:18:24 -04:00
Lorenz Hübschle-Schneider 4cdf86ed14 Remove bindonce for Angular 1.3 One-Time Bindings 2014-08-23 12:26:04 +01:00
Lorenz Hübschle-Schneider 2cb6b05498 Wrap inlinecolour filter in $sce.trustAsHtml
This is required because bo-html is unsafe whereas ng-bind-html requires
"safe" HTML (ng-bind-html-unsafe is deprecated since 1.2)
2014-08-23 12:25:26 +01:00
Lorenz Hübschle-Schneider b939bc7ca8 Check GET parameters in image embedding
This is a great candidate for the tests!
2014-08-18 16:41:30 +01:00
Lorenz Hübschle-Schneider 1235a5e148 Embed Dropbox images
We need to pass a parameter, "?dl=1", to get the actual file
2014-08-18 16:37:45 +01:00
Lorenz Hübschle-Schneider ae5f0effcf Auto-close keyboard when opening sidebar (bufferlist)
This is for mobile
2014-08-13 09:22:41 +01:00
Lorenz Hübschle-Schneider f7aa7a0871 Hide sidebar when focusing input bar
This is for mobile
2014-08-13 08:39:32 +01:00
Lorenz Hübschle-Schneider 7d13f49dab Add tweet embedding plugin 2014-08-09 14:18:13 +01:00
Lorenz Hübschle-Schneider 6d988069c7 Add asynchronous GitHub Gist embedding plugin
requires a few selectors to be more precise in our CSS
2014-08-09 14:18:13 +01:00
Lorenz Hübschle-Schneider 3d719f3671 Simplify plugins that detect URLs by eliminating redundancy 2014-08-09 14:18:13 +01:00
Lorenz Hübschle-Schneider 703fcb1668 Add support for asynchronous / lazy plugins
Fixes #253
2014-08-09 14:18:13 +01:00
Lorenz Hübschle-Schneider 0de5511544 Default to using SSL if the page is using it as well 2014-08-07 18:02:39 +01:00
David Cormier 12a8726407 Merge pull request #382 from glowing-bear/fixautoconnect
Prevent autoconnect from connecting twice
2014-08-01 15:57:24 -04:00
David Cormier 770616cf93 Merge pull request #389 from glowing-bear/fix-history-exception
Fix an exception when pressing up-arrow in a buffer without history
2014-07-31 09:26:12 -04:00
Lorenz Hübschle-Schneider cd4b5c8abe Display HTML colour codes inline 2014-07-31 14:20:42 +01:00
Lorenz Hübschle-Schneider 57ce4e252a Fix an exception when pressing up-arrow in a buffer without history 2014-07-31 14:10:18 +01:00
Lorenz Hübschle-Schneider 88424279c7 Prevent autoconnect from connecting twice
once from the watcher, once from the autoconnect call.
-> remove the autoconnect call, it is not needed
2014-07-28 10:02:43 +01:00
Lorenz Hübschle-Schneider ccf7b1c51e Adapt common plugins to make use of multiple embeds per message 2014-07-27 12:55:25 +01:00
Lorenz Hübschle-Schneider e962472414 Fix Google maps regex 2014-07-27 12:55:25 +01:00
Lorenz Hübschle-Schneider ac31901d7d Allow plugins to return an array of results and display each of them
Also fix the URL regex to match multiple URLs ('g' modifier)
2014-07-27 12:55:22 +01:00
David Cormier 04efb16424 Rename rootScope.visible -> rootScope.auto_display_embedded_content
More verbose but more descriptive
2014-07-26 09:38:24 -04:00
David Cormier ceb31c1947 contentForMessage doesn't have to care about content visibility 2014-07-26 09:38:24 -04:00
David Cormier d2a30c1d13 Plugin visibility defaults to value of rootScope.visible
And plugin content is shown if it has to be visible
2014-07-26 09:38:24 -04:00
Lorenz Hübschle-Schneider dc1ce08800 Merge pull request #384 from glowing-bear/default-font
Make sure that a favourite font is always set when using Glowing Bear.
2014-07-26 13:44:38 +01:00
David Cormier 7ee237cf3a Merge pull request #381 from glowing-bear/fix-esc
Properly iterate over modals in ESC key handler
2014-07-25 16:52:09 -04:00
David Cormier 9b55244f13 Set and bind font-family if unset
Default for desktop is monospace and default for mobile
is sans-serif
2014-07-25 09:43:03 -04:00
David Cormier 7c5a396171 Rename 'monospace' class to 'favorite-font' 2014-07-24 21:36:56 -04:00
Lorenz Hübschle-Schneider bea1cf6923 Properly iterate over modals in ESC key handler
the old way included attributes like 'length' and would raise an
exception, causing disconnection via double-esc to fail
2014-07-23 19:33:39 +01:00
Lorenz Hübschle-Schneider fec3c57da3 Don't hide the sidebar when "swiping" with the mouse on desktop 2014-07-23 19:16:48 +01:00
David Cormier 013cc03380 Merge pull request #349 from glowing-bear/dejquery
[PLEASE TEST] Remove dependency on jQuery
2014-07-21 16:18:57 -04:00
Tor Hveem 8a15690557 Merge pull request #377 from glowing-bear/historystash
Move current line into history when pressing down in input bar
2014-07-21 16:43:09 +02:00
Tor Hveem f95a84a93d Merge pull request #376 from glowing-bear/readline
fix keybindings relying on caretPos
2014-07-21 16:42:13 +02:00
Lorenz Hübschle-Schneider 0984a2f8b4 Make readline/emacs keybindings a setting
Also fix some labels while we're at it
2014-07-21 15:38:28 +01:00
Lorenz Hübschle-Schneider edb34144c7 Move current line into history when pressing down in input bar 2014-07-21 15:35:53 +01:00
Tor Hveem a5c68a8053 fix keybindings relying on caretPos 2014-07-21 15:55:50 +02:00
Tor Hveem 065d8a240d New feature: Automatically connect
Check if user saved password, and then offer to automatically connect.
Use a angular watch on the autoconnect and connect as soon as user
selects it.

Check for error messages so it doesn't try to reconnect if there is
errors.
2014-07-20 14:32:53 +02:00
Lorenz Hübschle-Schneider c9e3c1a55c Close modal with escape key 2014-07-20 11:48:51 +01:00
Tor Hveem 4081b18ed2 Add some emacs keybindings. Fixes #371
Add the most commonly used emacs/readline keybindings to input field and
document them.
Also change the wording on some of the old descritions to clarify
intent.
2014-07-20 12:21:46 +02:00
Lorenz Hübschle-Schneider 15bb4a21d9 Remove now-obsolete toggle prevention function 2014-07-19 15:05:15 +01:00
Lorenz Hübschle-Schneider e236d937e2 Simplify usage of modal 2014-07-19 15:05:15 +01:00
Lorenz Hübschle-Schneider 7d5bc0f078 Accordion without jQuery / bootstrap js
it's not quite 100% as nice though
2014-07-19 15:05:14 +01:00
Lorenz Hübschle-Schneider 23fb4da05a Implement modal without bootstrap.js and jQuery 2014-07-19 15:05:14 +01:00
Lorenz Hübschle-Schneider 8816fe221e Animate sidebar with CSS transitions 2014-07-18 13:46:01 +01:00
Lorenz Hübschle-Schneider 638aeb6697 Merge pull request #363 from glowing-bear/fixlocalstorage
localstorage: fix initial value setting
2014-07-18 13:37:32 +01:00
Tor Hveem f7ef7e95b9 Merge pull request #365 from glowing-bear/defaultsettings
Enable hierarchical server view by default
2014-07-18 14:25:47 +02:00
Lorenz Hübschle-Schneider 2c4a28f559 Enable hierarchical server view by default
Also fix its label

Fixes #331
2014-07-18 12:35:13 +01:00
Lorenz Hübschle-Schneider 74f9ac94ea Use the function form of 'use strict' 2014-07-18 12:23:25 +01:00
Lorenz Hübschle-Schneider fa6f108fe5 Make debug mode a parameter, not a setting 2014-07-18 12:17:19 +01:00
Tor Hveem bc8f86ebae Merge pull request #354 from glowing-bear/yr
Yr.no meteogram embedding
2014-07-17 15:31:36 +02:00
Tor Hveem 836b2940ce Use crossbrowser compatible attr. names 2014-07-17 15:06:39 +02:00
Tor Hveem 6318a94163 Helpers for class styling
Implement our own helpers for getting and setting class styles instead
of using jquery functions, since we are getting rid of jquery
2014-07-17 15:06:39 +02:00
Tor Hveem 6a3b4a1506 new option for overriding font size 2014-07-17 15:06:39 +02:00
Tor Hveem 16f9897964 use angular.element instead of jquery 2014-07-17 15:06:39 +02:00
Tor Hveem cdcdcb096b User configurable font choice. Fixes #351 2014-07-17 15:06:38 +02:00
David Cormier 2a2c7e1281 Merge pull request #350 from glowing-bear/keep-keyboard-open
Focus input bar after pressing the send button
2014-07-16 16:54:56 -04:00
Tor Hveem a7a8d60aea localstorage: fix initial value setting 2014-07-16 20:34:50 +02:00
David Cormier 4142883b29 Merge pull request #348 from glowing-bear/fix-initial-line-loading
[FIXED] Fix the initial loading of lines
2014-07-15 09:45:57 -04:00
Lorenz Hübschle-Schneider 8e1e871411 Fix matching (#segments) 2014-07-14 23:21:23 +01:00
Lorenz Hübschle-Schneider 885b47eaaf Add yr.no plugin 2014-07-14 22:51:07 +01:00
Lorenz Hübschle-Schneider 39b6d7a179 Fix URL regex
Old one doesn't match umlauts and other unicode stuff
New one is a lot more general and similar to what angular uses
2014-07-14 22:51:07 +01:00
Lorenz Hübschle-Schneider a2cc3558c3 Remove ngAnimate for the moment, we're not even using it
It does have a very significant performance impact, in my
measurements, buffer switching is 30% faster without it!
2014-07-07 18:54:56 +01:00
Lorenz Hübschle-Schneider 1194b170e5 Fix the initial loading of lines
This fixes a bug where the initial line loading would be triggered multiple times,
and a bug that incorrectly set requestedLines, causing this behaviour to repeat
2014-07-06 11:30:38 +01:00
Lorenz Hübschle-Schneider 4be8742ac5 Focus input bar after pressing the send button
This prevents the keyboard from closing on mobile
2014-07-04 14:45:27 +01:00
David Cormier a904add7cc Merge pull request #346 from glowing-bear/channelregexonceagain
Allow a minus sign before a #channel link
2014-07-02 08:57:34 -04:00