Commit graph

2265 commits

Author SHA1 Message Date
Andre Klapper 64044ab830 Remove more obsolete IE9 filter CSS syntax
Summary:
Same game as rPe38f5457 but hadn't realized before:
IE5.5 to IE8 released 03/2009 supported the `filter: alpha()` syntax.
(IE8 and IE9 supported `-ms-filter` which was deprecated in IE9 and is unsupported since IE10 released 09/2012.)
See
* https://learn.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/ms532847(v=vs.85)
* https://learn.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/ms532967(v=vs.85)
* https://learn.microsoft.com/en-us/previous-versions/ms530752(v=vs.85)
* https://stackoverflow.com/questions/40389599/firefox-declaration-dropped-errors

`filter` is a valid standard CSS3 property unrelated to IE's obsolete `filter: alpha()` syntax.
Standard `filter` does not support `alpha()` per https://developer.mozilla.org/en-US/docs/Web/CSS/filter.
Thus modern browsers throw errors in the console to be avoided by removing this old syntax.

Test Plan: Read the links above, realize it's been 16 years, and agree with me.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25930
2025-03-28 10:57:51 +01:00
Andre Klapper 112174b900 Remove some pre-2013 vendor-prefixed -ms- CSS properties
Summary:
Per https://caniuse.com/ and MDN,
* `-ms-transform` superseded by unprefixed `transform` supported since IE 10 released 09/2012
* `@-ms-keyframes` superseded by unprefixed `@keyframes` supported since IE 10 released 09/2012
* `-ms-transition` superseded by unprefixed `transition` supported since IE 10 released 09/2012

Test Plan: None. Probably installing old browser versions if you don't trust documentation.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25928
2025-03-28 06:57:42 +01:00
Andre Klapper e38f545743 Remove obsolete IE9 filter CSS syntax
Summary:
IE5.5 to IE8 released 03/2009 supported the `filter: progid:DXImageTransform.Microsoft.BasicImage()` syntax.
(IE8 and IE9 supported `-ms-filter` which was deprecated in IE9 and is unsupported since IE10 released 09/2012.)
See
* https://learn.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/ms532847(v=vs.85)
* https://learn.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/ms532967(v=vs.85)
* https://learn.microsoft.com/en-us/previous-versions/ms530752(v=vs.85)
* https://stackoverflow.com/a/5705449

`filter` is a valid standard CSS3 property unrelated to IE's obsolete `filter: progid: DXImageTransform.Microsoft.BasicImage()` syntax. Thus modern browsers throw errors in the console to be avoided by removing this old syntax.

Test Plan: Read the links above, realize it's been 16 years, and agree with me.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25929
2025-03-28 06:50:49 +01:00
Andre Klapper 0470216497 Remove pre-2016 vendor-prefixed -webkit- CSS properties
Summary:
Per https://caniuse.com/ and MDN,
* `-webkit-border-radius` superseded by unprefixed `border-radius` supported since Chrome 5 released 05/2010, Safari 5 09/2010, Android Browser 2.2 05/2010
* `-webkit-box-shadow` superseded by unprefixed `box-shadow` supported since Chrome 10 released 03/2011, Safari 5.1 03/2012,  Android Browser 4 10/2011
* `-webkit-box-sizing` superseded by unprefixed `box-sizing` supported since Chrome 10 released 03/2011, Safari 5.1 03/2012,  Android Browser 4 10/2011
* `-webkit-transform` superseded by unprefixed `transform` supported since Chrome 36 released 07/2014, Safari 9 10/2015,  Android Browser >4.4.4 >07/2014
* `-webkit-transition` superseded by unprefixed `transition` supported since Chrome 26 released 02/2013, Safari 9 10/2015,  Android Browser 4.4 12/2013

Test Plan: None. Probably installing old browser versions if you don't trust documentation.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25927
2025-03-27 08:33:12 +01:00
Andre Klapper f62918b019 Fix invalid CSS vertical-align value for .fancy-datepicker-core
Summary:
`vertical-align: center` is not a valid value per https://developer.mozilla.org/en-US/docs/Web/CSS/vertical-align.
Likely `middle` was meant.

Test Plan: Read CSS docs; check output of your web browser console. (Interstingly, https://jigsaw.w3.org/css-validator/validator does not complain.)

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25920
2025-03-25 14:28:08 +01:00
Andre Klapper a8c2bce6fe Remove invalid CSS border-shadow property for input.jx-tokenizer-input
Summary:
The W3C CSS validator throws `Property border-shadow doesn't exist : none` as that property does not exist.
See 404 on https://developer.mozilla.org/en-US/docs/Web/CSS/border-shadow

Test Plan: Paste `phui-oi-list-view.css` into https://jigsaw.w3.org/css-validator/; find no CSS docs for that property.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25924
2025-03-25 12:37:47 +01:00
Andre Klapper 633d4037e5 Fix invalid CSS border-left-color value for .phabricator-action-view-submenu .caret-right
Summary:
The W3C CSS validator throws `Value Error : border-left-color Too many values or values are not recognized : 71,87,120`.
The value lacks `rgb()` wrapping. See other lines in the same CSS file.

Test Plan: Paste celerity processed `phui-action-list.css` into https://jigsaw.w3.org/css-validator/; look at the browser console while editing a task.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25925
2025-03-25 12:03:13 +01:00
Andre Klapper fcd6a4c28a Fix invalid CSS transition value for .jx-scrollbar-handle
Summary:
The W3C CSS validator throws `0 is not a transition value : opacity 0 linear`.
`0` is not a valid value; likely `0s` were meant as in other existing CSS definitions.
See https://developer.mozilla.org/en-US/docs/Web/CSS/transition

Test Plan: Paste `standard-page-view.css` into https://jigsaw.w3.org/css-validator/ and read some CSS docs.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25923
2025-03-25 10:29:22 +01:00
Andre Klapper fede9f4505 Fix invalid CSS cursor value for .phabricator-main-menu-brand
Summary:
The W3C CSS validator throws `Value Error : cursor hand is not a cursor value : hand`.
`hand` is not a valid value for `cursor`; likely `pointer` was meant.
See https://developer.mozilla.org/en-US/docs/Web/CSS/cursor

Test Plan: Paste `main-menu-view.css` into https://jigsaw.w3.org/css-validator/ and read some CSS docs.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25922
2025-03-25 10:25:11 +01:00
Andre Klapper 22147cc03b Remove pre-2013 vendor-prefixed -o- CSS properties
Summary:
Per https://caniuse.com/ and MDN,
* `-o-animation` superseded by unprefixed `animation` supported initially since Opera 12.1 released 11/2012, in later Opera versions with `-webkit-` prefix instead
* `@-o-keyframes` superseded by unprefixed `@keyframes` supported initially since Opera 12.1 released 11/2012, in later Opera versions with `-webkit-` prefix instead
* `-o-transform` superseded by unprefixed `transform` supported initially since Opera 12.1 released 11/2012
* `-o-transition` superseded by unprefixed `transition` supported initially since Opera 12.1 released 11/2012

Test Plan: None. Probably installing old browser versions if you don't trust documentation.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25916
2025-03-24 12:06:40 +01:00
Andre Klapper 8353146b04 Remove pre-2013 vendor-prefixed -moz- CSS properties
Summary:
Per https://caniuse.com/ and MDN,
* `-moz-opacity` superseded by unprefixed `opacity` supported since Firefox 2 released 10/2006
* `-moz-border-radius` superseded by unprefixed `border-radius` supported since Firefox 4 released 03/2011
* `-moz-box-shadow` superseded by unprefixed `box-shadow` supported since Firefox 4 released 03/2011
* `-moz-animation` superseded by unprefixed `animation` supported since Firefox 16 released 08/2012
* `-moz-backface-visibility` superseded by unprefixed `backface-visibility` supported since Firefox 16 released 08/2012
* `@-moz-keyframes` superseded by unprefixed `@keyframes` supported since Firefox 16 released 08/2012
* `-moz-transform` superseded by unprefixed `transform` supported since Firefox 16 released 08/2012

Test Plan: None. Probably installing old browser versions if you don't trust documentation.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25915
2025-03-24 12:03:21 +01:00
Andre Klapper 645b1f5a99 Remove pre-2005 vendor-prefixed -khtml- CSS property
Summary:
Remove `-khtml-opacity: 0.5;` from CSS.
Per https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariCSSRef/Articles/StandardCSSProperties.html, standard `opacity` has been supported since Safari 2.0 released in April 2005. If you still run Safari 1.x after 20 years you have bigger problems than this line of CSS in Phorge.
This is the only `-khtml-` prefixed property in the codebase.

Test Plan: None.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25914
2025-03-24 08:59:40 +01:00
Andre Klapper c8e3ee170f Charts: Rotate x-axis labels for better readability
Summary:
Rotation is a fundamental movement pattern in our every-day activities.
Whether we play Spin The Bottle at our birthday, change our keyboard layout regularly, or do a sumersault to roll back into bed after our hair of the dog, we all regularly rely on rotation.
Thus also apply this principle to chart labels.

All credits go to http://www.d3noob.org/2013/01/how-to-rotate-text-labels-for-x-axis-of.html

Closes T16013

Test Plan:
# Go to `/project/reports/1/` after having constant task activity within that project tag for a while
# Try different viewport widths
# Take a deep breath and admit that the x-axis labels are more readable than before

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T16013

Differential Revision: https://we.phorge.it/D25908
2025-03-14 08:26:31 +01:00
Andre Klapper e3aeed5b5d Run ./bin/celerity map
Summary:
I have no freaking idea what I'm doing wrong. I did manually rebase
for the merge conflict before pushing fd6118bfa6. Sorry again.

Test Plan: Run `./bin/celerity map`

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25893
2025-02-21 14:26:06 +01:00
Andre Klapper fd6118bfa6 Fix editing Conpherence rooms on mobile
Summary:
rPd6bce34a5db1a838a988440f09f7728747c9e067 failed to replace all occurrences of `$this->getApplicationURI('update/'.$conpherence->getID().'/')` with `$this->getApplicationURI('edit/'.$conpherence->getID().'/')`. Thus editing a Conpherence room on mobile crashes due to using an old invalid path.

Closes T15513

Test Plan:
* Run `grep -r "update/" . | grep onpherenc` vs `grep -r "edit/" . | grep onpherenc` and read rPd6bce34a5db1a838a988440f09f7728747c9e067
* Go to a Conpherence room in mobile view and select "Edit Room"
* Go to a Conpherence room in desktop view and select "Edit Room"

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15513

Differential Revision: https://we.phorge.it/D25879
2025-02-20 19:19:04 +01:00
Andre Klapper 908d253cf6 Run ./bin/celerity map
Summary: No idea how I failed to manually rebase rP2574b0d1. Sorry for that.

Test Plan: Run `./bin/celerity map`

Reviewers: O1 Blessed Committers, amybones, valerio.bozzolan

Reviewed By: O1 Blessed Committers, amybones, valerio.bozzolan

Subscribers: amybones, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25885
2025-02-17 09:31:02 +01:00
Andre Klapper 2574b0d118 Leave fullscreen editor when displaying "Upload File" and "Meme" dialogs
Summary:
When being in fullscreen editor mode, the `Upload File` and `Meme` dialogs get opened behind the editor and thus are invisible.
Given the options listed in https://secure.phabricator.com/T8200, pop out of fullscreen when these buttons get clicked, as this is easiest to implement.

Closes T15901

Test Plan:
1. Go to any item which allows commenting, e.g. a task.
2. In the toolbar of the textarea, click the `Fullscreen Mode` button.
3. Click the `Upload File` or `Meme` button in the toolbar.
4. Check if the dialog is displayed.
6. Repeat the test in normal mode (not "Fullscreen mode") and see that it still works.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: avivey, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Tags: #remarkup

Maniphest Tasks: T15901

Differential Revision: https://we.phorge.it/D25764
2025-02-16 19:57:08 +01:00
Andre Klapper 0bd8388684 Strike through archived projects in navigation crumbs
Summary:
Going to e.g. the workboard of an archived project, there is no indication when the project has been archived (the blurred project icon is only displayed if the viewport width is >920px). This can lead to confusion why a workboard is completely empty.
Thus render an archived project as strike-through in the navigation bread crumbs.

Closes T15890

Test Plan:
* Go to the {Profile, Workboard, Reports, Members, Subprojects, Reports} pages of an active and an archived project and look at the navigation crumbs bar below Phorge's global top bar.
* Create an active subproject and active milestone of an archived project (and vice versa) and look at the navigation crumbs.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Tags: #projects

Maniphest Tasks: T15890

Differential Revision: https://we.phorge.it/D25774
2025-02-03 18:56:59 +01:00
Merula Turdus 4accca8420 Phriction: fix issue with icons in table of contents on wide screens
Summary:
When using icons in front of a header title, a part of the icon was
not visible in the TOC on wide screens.

| Before    | After    |
|-----------|----------|
| {F2670860}|{F2670861}|

Look at the table of contents on the left side.

Closes T15920

Test Plan:
Steps to reproduce in a Phriction document:

```
== {icon users} How to Register-in ==

=== {icon heart spin} Credits ===
```

Verify if all icons are visible in TOC.

Reviewers: O1 Blessed Committers, aklapper, valerio.bozzolan

Reviewed By: O1 Blessed Committers, aklapper, valerio.bozzolan

Subscribers: aklapper, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15920

Differential Revision: https://we.phorge.it/D25854
2024-12-12 16:51:08 +01:00
Merula Turdus 9448e81572 Show table of contents by default on wide screens
Summary:
Show table of content in left whitespace area in wide screens (width >= 1792px)

Closes T15920

Test Plan:
1) Open Phriction wiki page in browser which contain a number of chapter titles
2) Open Responsive Design Mode in browser (Ctrl-Shift-M in Firefox) and test different width's of the page (e.g. 1024, 1280, 1440, 1600, 1920, ...)
3) Open Remarkup Reference at `/book/phorge/article/remarkup/` and repeat step 2
4) Open a Differential revision to confirm that the unrelated ToC panel has no changes

Reviewers: O1 Blessed Committers, aklapper

Reviewed By: O1 Blessed Committers, aklapper

Subscribers: aklapper, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15920

Differential Revision: https://we.phorge.it/D25790
2024-12-09 18:33:33 +01:00
BlankEclair 0ea95d41a6
Fix submitting forms in a new tab using Ctrl+Return
Summary:
This commit adds a keydown listener to <input> elements to activate a flag when
Ctrl (and other keys) are pressed, which causes forms to be submitted to a new
tab.

This commit also modifies the click event listener for buttons to ignore
synthetic clicks from the browser, which is important as they clobber the
"new_tab" flag otherwise.

Closes T15914

Test Plan:
Open the Advanced Search form, and do Ctrl+Return inside one of the text boxes
to ensure that the result is opened in a new tab. Also do a plain Return, plain
click on "Search", and Ctrl+Click on Search to check for regressions.

Reviewers: O1 Blessed Committers, valerio.bozzolan, aklapper

Reviewed By: O1 Blessed Committers, valerio.bozzolan, aklapper

Subscribers: aklapper, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15914

Differential Revision: https://we.phorge.it/D25773
2024-11-25 21:09:36 +11:00
Bartosz Dziewoński d4d620fa6d Workboard: have thin scrollbars
Summary:
The original intention was to hugely improve the UX interaction on Workboards for Microsoft Windows
users, since they have BIG GIANT SCROLLBARS. So we adopted thin scrollbars, that are graphically
pleasant for all other "normal" browsers too.

Note that this can be really thin now. The premise is: probably you will never notice this, since
you never try to click on the scrollbar.

In case, if you have problems, contact us. But note:

- you can use the mouse wheel as usual
- you can use keyboard navigation (try the tab key - it auto-scrolls!)
- you can use usual touch movements on relevant devices.

The non-standard CSS version is kept for compatibility.

Scrollbar examples in Microsoft Windows with Chromium-based browser:

| Before    | After     |
|-----------|-----------|
| {F312321} | {F312323} |

Scrollbar examples in GNU/Linux with KDE, on mouse hover:

| Before    | After     |
|-----------|-----------|
| {F313082} | {F313083} |

... on bar selected:

| Before    | After     |
|-----------|-----------|
| {F313084} | {F313085} |

Ref T15488

Test Plan:
View a Workboard and a Differential side panel
on Firefox with static scrollbars enabled.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: aklapper, speck, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15488

Differential Revision: https://we.phorge.it/D25305
2024-08-24 22:29:57 +02:00
Andre Klapper ec6ba69666 Add Copy file path button to file header bar in Differential/Diffusion
Summary:
When looking at a commit/revision, allow to copy the path of a file to the clipboard, so you can quickly open that file in your local code checkout from the command line.

Closes T15897

Test Plan:
Open a proposed commit in Differential or a merged commit in Diffusion. Click the "Copy file path" button, paste that clipboard content.
Change the width of the viewport and see that the button is not rendered when in phone mode.
Run `./bin/celerity map` again and no changes.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15897

Differential Revision: https://we.phorge.it/D25757
2024-08-04 11:53:24 +02:00
Andre Klapper fec00256be Allow collapsing/expanding workboard column content by clicking its header
Summary:
Reduce users' need for scrolling on smaller screens with 920px or less viewport width by using HTML5's `<details>`/`<summary>` so clicking on a workboard column header hides the content of that column, in all CSS views (mobile, tablet, desktop). Keep expanding its content by default.

On mobile and tablet devices, display an arrow in the column header box below the header text to potentially make those users aware of this functionality that benefit the most from it. Do not render these arrows on desktop devices (though the collapse/expand functionality still works there).

See https://caniuse.com/details for browser (in)compatibility.

Closes T15843

Test Plan: Go to a project workboard with several columns and tasks in them on a screen with 920px or less width. See a small arrow below the column header text. Click on a column header to collapse and expand the column content.

Reviewers: O1 Blessed Committers, valerio.bozzolan, avivey

Reviewed By: O1 Blessed Committers, valerio.bozzolan, avivey

Subscribers: avivey, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15843

Differential Revision: https://we.phorge.it/D25672
2024-07-17 15:44:47 +02:00
Andre Klapper 30257515eb Fix typo in CSS definition
Summary: Replace `-webkit-trasform` with `-webkit-transform`.

Test Plan: Read the entire CSS spec at your fireplace.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25707
2024-07-01 13:11:50 +02:00
Andre Klapper eda7a608e5 Run celerity map after rP1fa8c79b1ef86a9edda575b582b18fa24d60ea1f
Summary: I obviously failed to run `./bin/celerity map` one more time before running `arc diff`. Sorry for that.

Test Plan: Run `./bin/celerity map` and see differences.

Reviewers: O1 Blessed Committers, 20after4, chris

Reviewed By: O1 Blessed Committers, 20after4, chris

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25697
2024-06-22 23:20:41 +02:00
Andre Klapper 1fa8c79b1e Update d3 from version 5.9.2 to 6.7.0
Summary:
Update the d3 library to its last 6.x version available on https://github.com/d3/d3/releases

This also requires updating the tooltip event handling of dots in `Chart.js` to avoid an `Uncaught TypeError: d3.event is undefined` per https://observablehq.com/@d3/d3v6-migration-guide#event-management linked from https://github.com/d3/d3/releases/tag/v6.0.0

Closes T15820

Test Plan:
* Enable the Facts application, go to the Reports of a Project with task changes over time, look at charts, hover over data points, read the tooltip - e.g. on http://phorge.localhost/project/reports/1/ or http://phorge.localhost/maniphest/report/burn/
* Check HTML source of above URIs for the `<script type="text/javascript">` loading `d3.min.js` and open the JS file to verify the d3 version number bump.
* Check Console of web browser's developer tools for no errors.

Reviewers: O1 Blessed Committers, speck

Reviewed By: O1 Blessed Committers, speck

Subscribers: speck, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15820

Differential Revision: https://we.phorge.it/D25631
2024-06-22 22:42:37 +02:00
Andre Klapper 8a3b70aa7d Run ./bin/celerity map after previous commit
Summary: Followup to rP67b7181f522673b05435083ce28106bdfa320e18

Test Plan: Run `./bin/celerity map` and see changes due to my previous commit.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25637
2024-05-13 19:00:03 +02:00
Valerio Bozzolan 5b90567f64 Persistent Chat: fix de-minimize misclick
Summary:
When the persistent chat is minimized to the bottom of your window, as mentioned in T15626,
the chat bar still has an invisible square area that does nothing if you click it by mistake:

{F2184778}

That area was reserved for the Settings Icon, that appears only if you de-minimize the chat.

The Settings Icon was toggled incorrectly from CSS. It was just hiding the Font Awesome icon,
(.fa-gear), instead of hiding its clickable container.

After this change, chat can be de-minimized even if you click in that specific evil spot.

Original credit to @roberto.urbani for the original troubleshooting and original patch.

Follow-up from: D25428

Closes T15626

Test Plan:
Show the Chat, then:

- when the chat is de-collapsed:
    - you see the Settings icon (as before)
    - you can click on the Settings Icon (as before)
    - it shows the Settings menu (as before)
- when the chat is collapsed:
    - you can click in whatever point, and it de-collapse (better than before)

Additionally, use the HTML inspector in your browser (`F12` from Firefox),
to double-check that now that `<li>` has display: none when the chat is collapsed.

Reviewers: O1 Blessed Committers, aklapper

Reviewed By: O1 Blessed Committers, aklapper

Subscribers: aklapper, tobiaswiese, Matthew, Cigaryno, roberto.urbani

Maniphest Tasks: T15626

Differential Revision: https://we.phorge.it/D25628
2024-05-09 13:56:18 +02:00
Valerio Bozzolan faf43d7edf Celerity map late update
Summary:
This change is probably needed after 892f527b9f.
At that time, the unit test was successfully completed probably because of a lack
of git rebase master.

Test Plan: The unit test PhabricatorCelerityTestCase::testCelerityMaps is not screaming.

Reviewers: O1 Blessed Committers, avivey

Reviewed By: O1 Blessed Committers, avivey

Subscribers: tobiaswiese, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25553
2024-03-07 11:29:25 +01:00
Merula Turdus 892f527b9f Improve remarkup codeblock syntax highlighting when using Dark Mode
Summary:
PhabricatorDefaultSyntaxStyle works now with 'CSS-color-aliases' instead of fixed colors.

The aliases are translated in the corresponding themes CelerityPostprocessor.

| Before    | After     |
|-----------|-----------|
| {F709419} | {F709421} |

Ref T15056

Test Plan:
1) bin/celerity syntax
2) bin/celerity map
3) bin/cache purge --all
4) sign in
5) go to user's Settings > Display Preferences and select the Accessibility (user interface) "Dark Mode".
6) go to Phriction or Maniphest and add a codeblock.

Example:

``` lang=php
<?php
final class Example extends PhabricatorApplication {
}
```

7) verify that codeblock content is readable
8) also check that with/without this, nothing changes in "normal" theme

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15056

Differential Revision: https://we.phorge.it/D25509
2024-03-03 15:58:03 +01:00
Valerio Bozzolan bf15a2d98c Trigger: Add Sound "Coin"
Summary:
One preview is better than a thousand of words:

{F270656}

This Sound is probably universally recognized thanks to
videogames like Super Mario® or other popular platforms; but
this specific Coin Sound is not proprietary: it's released
with a Free as in Freedom of Speach license: Creative Commons 0.

As if that were not enough, this Coin sound, instead of
potentially creating frustration like many others - it positively
stimulates part of the human cerebral cortex involved in making
humans more addicted to Phorge. To be precise, this Coin sound is
particularly suitable to be associated with Trigger actions
such as:

- Mark as Resolved
- Move on to the next Milestone
- etc.

But the only limitation here, as usual in Phorge, is
your imagination.

Insert a Coin and have fun with Phorge.

Complete sound credits:

https://freesound.org/people/Jocabundus/sounds/678385/

2023, Jocabundus, Creative Commons Zero (public domain dedication)

This change also introduces a Credits page in Diviner to mentions this
kind of things. Future contributions in that page are encouraged.

Insert a Coin. Play again with Phorge.

Ref T15178
Ref T15248

Test Plan:
- Create a Project with a Workboard
- Create a Column
- Column > Gear > New Trigger...
- Action > Play Sound > "Coin"
- Create a Task on the Backlog column, and drop it on your new Column
- Turn on audio, have fun!

Reviewers: O1 Blessed Committers, Cigaryno, avivey, aklapper

Reviewed By: O1 Blessed Committers, Cigaryno, avivey, aklapper

Subscribers: avivey, aklapper, chris, speck, tobiaswiese, Matthew, Cigaryno

Maniphest Tasks: T15178, T15248

Differential Revision: https://we.phorge.it/D25079
2024-03-03 12:17:48 +01:00
Benjamin Kausch 89a5d3132c Implements copy button in clone repo modal
Summary:
This diff adds a copy button to every repo uri in the clone repo modal. I have made the button to select the text to a merely structural span before the input - it just shows the type of the repository uri. When you click inside the input, the entire uri will be selected. Also I have uncluttered the HTML structure. A table is not needed here, nothing a flex block can't handle.

| Before    | After     |
|-----------|-----------|
| {F1360344} | {F1368592} |

While at it, I have extended the used javascript copy behavior. First of all: `document.execCommand('copy')` [[ https://developer.mozilla.org/en-US/docs/Web/API/Document/execCommand | could stop working every moment in every browser ]]. The [[ https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Interact_with_the_clipboard | new clipboard API ]] is the way to go, so I have implemented it as the preferred method. The old method is kept as a fallback. And I have added a very nice feature: If defined, the behavior will now issue success or error notifications. See the changed UIExamples for that.

To support the shrinking of JS code with async functions I have patched the JsShrink source.

Test Plan: Go to a repository, hit the clone button and use the new copy button. You will see a shiny notification as a reward.

Reviewers: O1 Blessed Committers, avivey, valerio.bozzolan

Reviewed By: O1 Blessed Committers, avivey, valerio.bozzolan

Subscribers: avivey, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25536
2024-02-15 19:38:39 +01:00
Aviv Eyal 9c9fbc3d04 unbreak celerity/map
Test Plan: phorge will load and serve pages

Reviewers: O1 Blessed Committers, aklapper

Reviewed By: O1 Blessed Committers, aklapper

Subscribers: aklapper, philj0st, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25532
2024-02-05 20:08:09 +02:00
Aviv Eyal d9919ddb06 Revert "Added cross-platform default fonts"
Summary:
Revert rPf8ffa393c4427f8b9026075e6dc490990a12df12 (D25021). This Commit caused more grief then fun.

Ref T15630

Test Plan: Site should still be readable on most platforms

Reviewers: O1 Blessed Committers, aklapper

Reviewed By: O1 Blessed Committers, aklapper

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15630

Differential Revision: https://we.phorge.it/D25530
2024-02-04 23:14:59 +02:00
Benjamin Kausch 87db482897 Adds "Locate File" input to every browse directory view in Diffusion
Summary:
Ref T15645

The very helpful "Locate File" input in Diffusion was so far only visible in the homepage route of any repository (`/repository`).

With this revision you can now locate a file from every browsed directory and in any selected commit.

The finder was already "directory sensitive" meaning: if you are trying to locate a file from within a browsed directory, only the children of this path will be searched.

For the searching in a specified commit (for example: https://we.phorge.it/source/phorge/browse/master/src/;05f4d5071fdca02123bd1ff4c0935b847c7f9963), I had to do a little JS magic adding the commit to the URI on the client side.

Test Plan: Checkout, browse through your repos with Diffusion trying to find files. (I tested only with Git repos.)

Reviewers: O1 Blessed Committers, speck

Reviewed By: O1 Blessed Committers, speck

Subscribers: speck, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15645

Differential Revision: https://we.phorge.it/D25521
2024-01-28 12:51:35 +01:00
Benjamin Kausch f8db94f2bf Add flexible line height to remarkup headers
Summary:
The text in remarkup has a fixed line height. The headers will have the same fixed line height, even if their font size can be bigger than this line height. Especially on mobile this results in ugly sticked together lines which are less readable.

This revision will give the header a flexible line height of `1.3`. Unitless means relative to the font size.

| Before    | After     |
|-----------|-----------|
| {F717418} | {F717419} |

(I have moved the same margin attribute for every `h{2-6}` into the new declaration.)

Close T15716.

Test Plan: Just checkout and look in wiki articles with headers to see if everything looks nice and neat.

Reviewers: O1 Blessed Committers, 20after4

Reviewed By: O1 Blessed Committers, 20after4

Subscribers: 20after4, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15716

Differential Revision: https://we.phorge.it/D25523
2024-01-28 12:45:04 +01:00
Benjamin Kausch b035743ce3 Show title entirely and cut of secondary information gracefully in typeahead results of main search
Summary:
This revision increases the usability of the typeahead results of the main search (on the right in the top bar).
The result texts wont't overflow in a reasonable way.

| Before    | After     |
|-----------|-----------|
| {F715296} | {F715385} |

The result title (red box) will now break so the user can read and understand it.
The result type (blue box) will be cut off inside the padding with an ellipsis.

See T15715

Test Plan:
Check it out and use the main search in the top bar to create typeahead result with very long titles ;)

Nothing changes for short titles.

Reviewers: O1 Blessed Committers, valerio.bozzolan, avivey

Reviewed By: O1 Blessed Committers, valerio.bozzolan, avivey

Subscribers: avivey, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15715

Differential Revision: https://we.phorge.it/D25520
2024-01-22 17:35:27 +01:00
Benjamin Kausch 2f1e271c5f Remove bottom margin from embedded remarkup images
Summary:
{T15473} created a very small but annoying regression. Every embedded images has now an margin at the bottom:

{F718091}

I don't think this is intentional. If you click on the margin the image itself is opened not the lightbox. This revision removes the margin.

Test Plan: Look at tasks with embedded images and see if there is still an margin.

Reviewers: O1 Blessed Committers, valerio.bozzolan, aklapper

Reviewed By: O1 Blessed Committers, valerio.bozzolan, aklapper

Subscribers: aklapper, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25522
2024-01-22 17:06:16 +01:00
Andre Klapper cc964550f9 Ellipsize long labels in Add Action area to avoid text overlap
Summary:
Add CSS to ellipsize long labels and disable text wrapping

Closes T15707

Test Plan:
Set a long custom "action" label in `/config/edit/maniphest.points/`; go to a Maniphest task; open all items in the "Add Action..." dropdown.

Example config:

```
{
  "enabled": true,
  "label": "Points",
  "action": "Set Points Yeah Points Points Much Points"
}
```

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15707

Differential Revision: https://we.phorge.it/D25511
2024-01-13 03:30:10 +01:00
Andre Klapper 49c3fe6193 Fix invalid CSS property value
Summary: `x` is not a valid unit.

Test Plan: Open a Maniphest task in the web browser; inspect the CSS of the label of any items in the "Add Action" dropdown.

Reviewers: O1 Blessed Committers, speck

Reviewed By: O1 Blessed Committers, speck

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25510
2024-01-11 13:54:29 +01:00
Waldir Pimenta c49eeb235e Improve command line prompts in setup issue pages
Summary:
This is a follow-up to D25425, where these improvements to the CLI prompt markers were discussed.

Changes included in this revision:

- Build all prompts the same way
- Remove space after the prompt marker (add it via CSS instead)
- Add server path prefix
- Make the prompt unselectable

Test Plan:
- Visit any of the setup issue pages, e.g. <PHORGE_URL>/config/issue/auth.config-unlocked/ (after ensuring that the corresponding issue is present — in this case, by doing `./bin/auth unlock`)
- For example, Deactivate all PHP extensions to trigger each /config/issue/extension.gd/ etc.
- For example, update at least up to `dc10a7e69ea3` to see the database upgrade tip etc.
- Confirm that the command line prompts now include the path prefix
- Confirm that selecting the command via double-click (or click-and-drag) does not select the prompt

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Tags: #ux, #config

Differential Revision: https://we.phorge.it/D25466
2023-12-07 16:22:24 +00:00
Waldir Pimenta e59702569f CSS adjustments to Conpherence
Summary:
**Fix Conpherence messages overlapping header in mobile mode**

Before:
{F413544}
After:
{F413546}

**Make Conpherence input box be one line even in desktop mode**

Before:
{F413541}
After:
{F413540}

This second change, in particular, is motivated by the fact that pressing `Enter` sends the message, whereas the multi-line box gives the impression that the `Enter` key would simply introduce a line break in the message. (That's still possible via `Shift`+`Enter`, btw.)

Test Plan:
- Visit a Conpherence room with some content in mobile mode;
  scroll down and notice that the messages no longer slightly overlap the header.
- Visit a Conpherence room in desktop mode;
  verify that the input box now has the height of a single line.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: speck, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Tags: #conpherence

Differential Revision: https://we.phorge.it/D25485
2023-12-06 15:36:23 +00:00
Matthew Bowker 4d4712b58d Remove Chatlog entirely
Summary:
This commit removes ChatLog entirely.  All of the application files are removed, and the migrations used are stubbed out. I stubbed the migrations as that allows for existing installs to make no changes, but new installs will not create the database.

Fixes T15126

Test Plan: Loaded up http://phorge.local/chatlog and confirmed the 404.  Loaded up http://phorge.local/applications/view/PhabricatorChatLogApplication and confirmed the 404.  Created a new database prefix and ran `bin/storage upgrade` against it, confirmed that the chatlog database was not created.  Restored another prefix (an old one) and ran `bin/storage upgrade` and confirmed database was not deleted.

Reviewers: O1 Blessed Committers, avivey

Reviewed By: O1 Blessed Committers, avivey

Subscribers: avivey, tobiaswiese, valerio.bozzolan, Cigaryno

Maniphest Tasks: T15126

Differential Revision: https://we.phorge.it/D25480
2023-11-27 11:38:37 -07:00
Zero King aa8af1d79e Align logo image and text in site header
Summary: Ref T15666. Center wordmark vertically to align with logo in site header.

Test Plan:
- Check alignment visually.
- With browser DevTools, verify that wordmark is 44px tall.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15666

Differential Revision: https://we.phorge.it/D25467
2023-11-13 17:56:35 +08:00
roberto.urbani 94aefaa31d Replacing the deprecated -moz-outline-style with outline-style
Summary:
Replacing the deprecated -moz-outline-style with outline-style: none.

According to "Can I Use", this change is supported in whatever non-ridiculously-old browser web in the universe,
like Firefox 2 and Chrome 4 and Internet Explorer 8.

https://caniuse.com/outline

Ref T15585

Test Plan: The outline in the <a> tags should look as usual, that is, none.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15585

Differential Revision: https://we.phorge.it/D25416
2023-10-13 10:47:12 +02:00
Valerio Bozzolan 761134a1a9 Line counters: do not wrap when over 999 on mobile
Summary:
| Before    |  After    |
|-----------|-----------|
| {F335620} | {F335621} |

Closes T15615

Test Plan:
Create a very long Diff with soooo much lines (e.g. 1000+).
Reduce the window and check that line numbers do not wrap anymore.

Reviewers: O1 Blessed Committers, avivey

Reviewed By: O1 Blessed Committers, avivey

Subscribers: tobiaswiese, Matthew, Cigaryno

Maniphest Tasks: T15615

Differential Revision: https://we.phorge.it/D25407
2023-08-18 09:53:53 +08:00
bob 17befe9bca Fix source code viewer background color when using Dark Mode in Diffusion
Summary:
This CSS fix replaces the hard coded white background value by the diff.background CSS variable. This is a proposal
to address this issue but it may be a good idea to create a different CSS variable (for instance source.background)
in order to avoid any potential side effect in the future.

| Before  | After   |
|---------|---------|
|{F333617}|{F333618}|

Fix : T15056

Test Plan:
- Flush all Phorge caches
- Sign in
- Open a diffusion repository
- Open any file
- Check that viewer background color is consistent with the theme.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Differential Revision: https://we.phorge.it/D25396
2023-08-17 10:31:51 +02:00
bob 3f5fcdf4dd Fix icon background color when using Dark Mode
Summary:
This CSS fix replaces the hard coded background gradient (white) value of icons when using Dark Mode.

Now the "Choose User Icon" popup has visible icons.

| Before  | After   |
|---------|---------|
|{F331622}|{F331623}|

Ref T15056

Test Plan:
- Flush all Phorge caches
- Sign in
- Go to user's Settings > Display Preferences and select the Accessibility (user interface) "Dark Mode".
- Go to user's profile, edit profile and click on Choose icon.
- Check that now the icons in "Choose User Icon" are visible.
- Do these steps for each user interface theme in order to check against regression.

Reviewers: O1 Blessed Committers, Matthew, valerio.bozzolan

Reviewed By: O1 Blessed Committers, Matthew, valerio.bozzolan

Subscribers: speck, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15056

Differential Revision: https://we.phorge.it/D25384
2023-08-16 10:30:22 +02:00
Valerio Bozzolan 840a7fab2b Hide Archived Panels from Dashboards
Summary:
In edit mode, Archived Panels are shown differently,
with content text in grey and with the usual red tag.

In view mode, Archived Panels are just not rendered.

This makes it easier to design Dashboards with individual
components that can be de-activated and re-activated on the fly.

Closes T15366.

{F325637}

Test Plan:
Have a Dashboard somewhere (e.g in your homepage).

Visit a Panel (W-ID) and Archive it.

See that now the Panel is not shown anymore on the Dashboard.

Edit the Dashboard and you see the Panel again as "Archived".

Anything around is just normal.

Reviewers: O1 Blessed Committers, avivey

Reviewed By: O1 Blessed Committers, avivey

Subscribers: avivey, speck, tobiaswiese, Matthew, Cigaryno

Maniphest Tasks: T15366

Differential Revision: https://we.phorge.it/D25368
2023-08-01 09:51:18 +02:00